Attract-Mode Support Forum

Attract-Mode Support => Themes => Topic started by: cools on April 29, 2020, 03:21:34 PM

Title: Verticools Deluxe
Post by: cools on April 29, 2020, 03:21:34 PM
Finally got around to smartening up Verticools. Designed on and for a vertical 15KHz 240p 4:3 CRT display, but will work anywhere - set your aspect ratio and rotation if required in the options. Will use wheel images if you have them enabled in the emulator configuration.

The below filter rules work nicely to clean out the cruft for MAME 222 as far as vertical, joystick playable games go.

Code: [Select]
global_filter       
exception            Name equals batsugunsp|cyvernj|driftout|ddpdojblk|dkongjrj|dogosokb|downtownj|ghoxj|gwarb|ikarijpb|omegafs
rule                 Rotation equals 90|270
rule                 DisplayType equals raster
rule                 DisplayCount equals 1
rule                 Control contains joystick|dial
rule                 Control not_contains gambling|positional
rule                 Category not_contains Mature|Casino|MultiGame|Redemption
rule                 Status not_equals preliminary
rule                 Title not_contains bootleg|internal build|\(prototype|prototype\)|China|Raiden II New
rule                 Manufacturer not_contains bootleg|Promat
rule                 CloneOf not_contains .
rule                 AltRomname not_equals decocass|cedmag
rule                 Year not_contains ?
rule                 Name not_equals batsugun|cyvern|ddp3|ddpdojt|dkongjr|ghox|ikari|gwar|mjleague|metlhawk|alleymas|omegaf
filter               "All Games"
filter               "Most Played"
sort_by              PlayedTime
reverse_order        true
list_limit           25
filter               "Breakout Games"
rule                 Category contains Breakout
filter               "Driving Games"
rule                 Category equals Driving.+
filter               "Fighting Games"
rule                 Category equals Fight.+
filter               "Maze Games"
rule                 Category equals Maze.+
filter               "Platform Games"
rule                 Category equals Platform.+
filter               "Puzzle Games"
rule                 Category equals Puzzle.+
filter               "Shooting Games"
rule                 Category equals Shooter.+
filter               "Sports Games"
rule                 Category equals Sport.+
filter               "© Alpha Denshi"
rule                 Manufacturer equals (Alpha.Densh.*)|(.*/.Alpha.Densh.*)
filter               "© Bally/Midway"
rule                 Manufacturer equals (Ball.*)|(Midwa.*)|(.*/.Ball.*)|(.*/.Midwa.*)
filter               "© Capcom"
rule                 Manufacturer equals (Capco.*)|(.*/.Capco.*)
filter               "© Cave"
rule                 Manufacturer equals (Cav.*)|(.*/.Cav.*)
filter               "© Data East"
rule                 Manufacturer equals (Data.Eas.*)|(.*/.Data.Eas.*)
filter               "© Irem"
rule                 Manufacturer equals (Ire.*)|(.*/.Ire.*)
filter               "© Jaleco"
rule                 Manufacturer equals (Jalec.*)|(.*/.Jalec.*)
filter               "© Kaneko"
rule                 Manufacturer equals (Kanek.*)|(.*/.Kanek.*)
filter               "© Konami"
rule                 Manufacturer equals (Konam.*)|(.*/.Konam.*)
filter               "© Namco"
rule                 Manufacturer equals (Namc.*)|(.*/.Namc.*)
filter               "© Nintendo"
rule                 Manufacturer equals (Nintend.*)|(.*/.Nintend.*)
filter               "© Psikyo"
rule                 Manufacturer equals (Psiky.*)|(.*/.Psiky.*)
filter               "© Raizing / Eighting"
rule                 Manufacturer equals (Raizin.*)|(Eightin.*)|(.*/.Raizin.*)|(.*/.Eightin.*)
filter               "© Seibu Kaihatsu"
rule                 Manufacturer equals (Seibu.Kaihats.*)|(.*/.Seibu.Kaihats.*)
filter               "© Sega"
rule                 Manufacturer equals (Seg.*)|(.*/.Seg.*)
filter               "© SNK"
rule                 Manufacturer equals (SN.*)|(.*/.SN.*)
filter               "© Taito"
rule                 Manufacturer equals (Tait.*)|(.*/.Tait.*)
filter               "© Technos"
rule                 Manufacturer equals (Techno.*)|(.*/.Techno.*)
filter               "© Tecmo"
rule                 Manufacturer equals (Tecm.*)|(.*/.Tecm.*)
filter               "© Toaplan"
rule                 Manufacturer equals (Toapla.*)|(.*/.Toapla.*)
filter               "© Universal"
rule                 Manufacturer equals (Universa.*)|(.*/.Universa.*)
filter               "© Video System Co."
rule                 Manufacturer equals (Visc.*)|(Video.System.Co.*)|(.*/.Visc.*)|(.*/.Video.System.C.*)
filter               "© Zaccaria"
rule                 Manufacturer equals (Zaccari.*)|(.*/.Zaccari.*)
filter               "Released 1970 - 1979"
rule                 Year equals 197.
filter               "Released 1980"
rule                 Year equals 1980
filter               "Released 1981"
rule                 Year equals 1981
filter               "Released 1982"
rule                 Year equals 1982
filter               "Released 1983"
rule                 Year equals 1983
filter               "Released 1984 - 1985"
rule                 Year equals 1984|1985
filter               "Released 1986 - 1987"
rule                 Year equals 1986|1987
filter               "Released 1988 - 1989"
rule                 Year equals 1988|1989
filter               "Released 1990 - 1994"
rule                 Year equals 1990|1991|1992|1993|1994
filter               "Released 1995 - 1999"
rule                 Year equals 1995|1996|1997|1998|1999
filter               "Released 2000 - 2020"
rule                 Year equals 20..
Title: Re: Verticools Deluxe
Post by: churchofsolipsism on April 30, 2020, 08:56:41 AM
I'm sorry to say it crashed AttractMode for me... when I set it to this layout, attractmode closes and I have to change the layout in the cfg-file before i can open it again.
Title: Re: Verticools Deluxe
Post by: cools on April 30, 2020, 02:02:28 PM
Are you able to run attract-console from a command prompt and get the error message?

Title: Re: Verticools Deluxe
Post by: jedione on April 30, 2020, 05:57:05 PM
i get the same thing, here is what it says,,,

ps thanx for the update....looking foward to it..

script Error in magic string function: Category - the index '0' does not exist
Title: Re: Verticools Deluxe
Post by: cools on April 30, 2020, 11:38:13 PM
Aha, no Category in your ROM list. I can fix that crash. Import catver.ini as an additional file for MAME to work around it.
Title: Re: Verticools Deluxe
Post by: cools on May 01, 2020, 03:44:29 AM
Crashes with barebone ROM lists should now be solved.

Also added some optional glamour to the wheel logo.

Only thing I'd like to add is a gradient on the text, but I don't understand shaders at all...
Title: Re: Verticools Deluxe
Post by: jedione on May 01, 2020, 06:03:46 AM
love how u did the glamor FX,  realy cool....
Title: Re: Verticools Deluxe
Post by: churchofsolipsism on May 01, 2020, 06:55:21 AM
Thanks a bunch mate, will try out immediately and report back!

edit: Works now, excellent. I tried to make it into a vertical layout (by which I mean make it into a vertical layout that works with a horizontal windows desktop orientation - see below for why I can't rotate windows itself), which is what I need for my cab, by inserting "Vertical Orientation" in the section

// Layout Constants
...
if...
else
{
       // Vertical Orientation

Nothing changed though, I still get horizontal orientation. (It's obvious I operate by trial and error, sorry if the solution seems obvious) If it's not too much to ask, do you think you could make it into a vertical layout in the above sense? I use a 4:3 LCD monitor at 1024x768. No worries if you won't, of course...

One more thing: apparently, vanilla MAME works well with a rotated desktop, unfortunately I use GroovyMAME. Calamity, who is (one of the) programmers on it, says in an old BYOAC post that GroovyMAME doesn't work with a rotated Windows desktop. I'm using the most recent version (0.220), and it still doesn't seem to work (4:3 games are stretched to full screen in MAME (in 3:4!), and the rotate option in the TAB-settings doesn't help.
Title: Re: Verticools Deluxe
Post by: cools on May 01, 2020, 07:28:07 AM
Only thing I'd like to add is a gradient on the text, but I don't understand shaders at all...

Figured it out! Will take a little bit of time to apply to everything, looks awesome!
Title: Re: Verticools Deluxe
Post by: cools on May 01, 2020, 01:17:52 PM
One more thing: apparently, vanilla MAME works well with a rotated desktop, unfortunately I use GroovyMAME. Calamity, who is (one of the) programmers on it, says in an old BYOAC post that GroovyMAME doesn't work with a rotated Windows desktop. I'm using the most recent version (0.220), and it still doesn't seem to work (4:3 games are stretched to full screen in MAME (in 3:4!), and the rotate option in the TAB-settings doesn't help.

Re: all this - Groovy works with rotated desktop (I use it like this! ), but to rotate the layout on a horizontal desktop just go into attract mode config and set a key to toggle rotation.

I will add a setting for this though as it's not sticky.
Title: Re: Verticools Deluxe
Post by: cools on May 01, 2020, 05:41:26 PM
Updated with a rotation setting and game style text throughout.
Title: Re: Verticools Deluxe
Post by: churchofsolipsism on May 02, 2020, 04:09:49 AM

Re: all this - Groovy works with rotated desktop (I use it like this! ), but to rotate the layout on a horizontal desktop just go into attract mode config and set a key to toggle rotation.

I will add a setting for this though as it's not sticky.

Updated with a rotation setting and game style text throughout.

Thanks, man. Nice of you to go to all this trouble for a stranger on the internet. From now on, everytime I post in the "free shit"-thread on arcadeotaku you'll have dibs on it.
Title: Re: Verticools Deluxe
Post by: cools on May 02, 2020, 05:34:51 AM
Welcome! Tbh in my constant testing I've been using a horizontal monitor and pressing toggle rotate every time!
Title: Re: Verticools Deluxe
Post by: cools on May 04, 2020, 12:28:42 PM
Fixed the initial wheel glamour flash by using a different animation routine to achieve the same effect.

Added in an optional shader for the background image along with some starfield shaders I've converted and tweaked from ShaderToy (comments added where changes have been made). They look nice but I still prefer the game video.

Hopefully I'm now done forever.
Title: Re: Verticools Deluxe
Post by: Yaron2019 on May 05, 2020, 11:13:38 AM
I like the gradient colors technique of the text, gonna experiment with that. This theme is more sophisticated then it looks.
Title: Re: Verticools Deluxe
Post by: cools on May 05, 2020, 12:52:57 PM
Thanks! Yeah there's been lot of time invested that probably isn't obvious even from the code. It's intentionally simple and "feature"less because I personally never use anything more on my cabinets.

The gradient text I'm really pleased with, its an essential look of the games I've tried to channel. I stopped a little short, the effect doesn't work on multiline text, but I think that could be achieved adding in another uniform to control the repeat rate.

Thank you for the wheel code too. Took a lot of bending into the shape I wanted but without it I'd never have started!

Title: Re: Verticools Deluxe
Post by: Yaron2019 on May 06, 2020, 08:06:03 AM

Thank you for the wheel code too. Took a lot of bending into the shape I wanted but without it I'd never have started!

My pleasure.
Title: Re: Verticools Deluxe
Post by: cools on May 11, 2020, 02:17:58 PM
Retrofitted the original Verticools list as an option for use without any wheel artwork.

And added multi-line text shading, reducing overall shader count by quite a few.
Title: Re: Verticools Deluxe
Post by: cools on May 29, 2020, 03:12:08 AM
Yeah mipmapping the wheel images doesn't look great on a 25" CRT. Disabled.
Title: Re: Verticools Deluxe
Post by: cools on July 23, 2020, 01:29:47 PM
I've been working on some better background shaders and having 2 variants of the theme (for square / non-square pixels) has been driving me mad, as well as seeing just how badly fonts were being displayed on a 1080p screen.

So I ripped out all the layout sizing and assumption making hacks, and added pixel aspect ratio calculation based on your chosen display aspect ratio. Works with a rotated desktop as well as however you fancy rotating AM.
Title: Re: Verticools Deluxe
Post by: Yaron2019 on July 24, 2020, 12:44:26 AM
You did an amazing work on this theme. There is no comparison to the older version.
This is one of the few I keep in my layouts folder that was not created by me.
Title: Re: Verticools Deluxe
Post by: Yaron2019 on July 24, 2020, 09:21:09 AM
There is an oddity with the snap videos.
I see that you perform a calculation with regards to the screen x,y,w,h in line 297:

Code: [Select]
  local bg=background.add_artwork("snap",0-(flw*0.1),0-(flh*0.1),flw*1.2,flh*1.2);
This cuts the video at the edges (see attached screenshot).

Re-coding it to this shows the video in full (of course):
Code: [Select]
  local bg=background.add_artwork("snap",0,0,flw,flh);
The question is - is this a bug or is it by design?

I am running AM 2.6.1 on a Win10 PC with a 16x9 1920x1080 display.

Title: Re: Verticools Deluxe
Post by: cools on July 28, 2020, 04:05:12 AM
It's by design because the video is being used as background art. Most games have the score/lives text surrounding the screen, if those are displayed underneath the text that is on the layout it makes the screen very busy and hard to read. I did try using unstretched video with a darker gradient mask but that didn't work as well. The background is to add motion and colour rather than clearly display the game. I experimented a lot with even bigger zooming/rotating/panning but settled on the simple 20% zoom - some games look amazing with more stuff going on and others look awful, especially on a low resolution screen, this was the best compromise.

I don't use in-game artwork (snaps, videos, titles, flyers) at all on my own cabinets, just the wheel logo. I found the more I see of the game in the frontend the less likely I am to think "I wonder if this is any good"!

Title: Re: Verticools Deluxe
Post by: Yaron2019 on July 29, 2020, 01:18:03 AM
With the permission of cools, I am posting a small mod of his theme 'Verticools Deluxe'.
'Veticools Deluxe' is ideal for CRT based arcade cabinets and since I like it but do not have one I modded it to better suit a non-CRT based setup, either PC or Arcade cabinet.

The mod includes:
- added CRT optional effects: Bloom shader, CRT shader and scanlines for video snaps
- added optional sounds to the wheel navigation
- added a default arcade font
- changed the default layout options

Download:
https://mega.nz/file/NAVWjaKb#gC3_j6Y_YCUnEAjr8ZXiirYJ3S-10mVpRc6oF2Whvvw
Title: Re: Verticools Deluxe
Post by: jclampy69 on September 13, 2020, 07:16:30 AM
With the permission of cools, I am posting a small mod of his theme 'Verticools Deluxe'.
'Veticools Deluxe' is ideal for CRT based arcade cabinets and since I like it but do not have one I modded it to better suit a non-CRT based setup, either PC or Arcade cabinet.

The mod includes:
- added CRT optional effects: Bloom shader, CRT shader and scanlines for video snaps
- added optional sounds to the wheel navigation
- added a default arcade font
- changed the default layout options

Download:
https://mega.nz/file/hNUUCCab#DvGac0ie-uBvF65wfDU6Q3oJmmRGiZErsuaPhyNNCds
Hi, just noticed the link is dead, can you reupload it please? Thanks.
Title: Re: Verticools Deluxe
Post by: Yaron2019 on September 15, 2020, 01:10:36 AM
fixed.