Jump to content

Strategy for adding Instruction Cards (Cabinet Build)


dnsmate
 Share

Recommended Posts

I've been mulling over a couple ways to add a per-game instruction card graphic for the button arrangements in my arcade cabinet and just thought I'd post here to pick the brains of any graphics gurus.

I could add the image only to my Front End, but the problem for my visitors is that once you go into the machine, remembering what each button does (even with PAC Drive running button lights) gets challenging.

Since I have a rather large 4k Monitor in use for it now, I could make MFME run in a smaller portion of the screen and then maybe run a Windows Overlay application (or another graphic display window) that superimposes a semi-transparent image in the right location (but it would need to be addressable by command line and I know of no such beast yet.

The other option might be to re-do the layouts for the games I am adding one at a time to add a graphic overlay to the machine's layout itself.  Not ideal for a number of reasons.

For reference I am thinking something like this as a graphic, ham-fisted and large, I know, it's a work in progress.... 😉 

Any ideas or knowledge to pass on? (Thank you!)

Screen Shot 2022-01-11 at 8.33.18 AM.png

Link to comment
Share on other sites

Lol, here I am answering my own Topic... again 🤓

Lots of research and study later - gotta love the INTERNET (it rivals having personal access to the ancient Library of Alexandria) -  I have it almost perfected with an AutoHotKey Script (also used to remap typical Layout Buttons to my choice of cabinet controls on a modified X-Arcade controller and to close Layout Notes Windows using the Start button so I don't have to "mouse around.").

Essentially I  use AHK's GUI function to look for an image in a path related to each Fruit Machine's window title when it is launched (and by detecting the presence of "window classes"), and if it finds an image, it will spawn a "No Activate" "No Caption" Picture window (with my instruction card specific to that Fruit Machine) overlaid on the layout.

It sits there on top silently off to the top or bottom of the screen (I have a vertical monitor setup, otherwise it would have been a bezel to the side) and the fruit machine responds to my control buttons.  I added a way to toggle the Instruction card image overlay on and off too, so I can turn it off if it can't be placed without covering an essential part of the fruit machine layout below it. (And bring it back on if I happen to forget the control layout while playing.  It wouldn't be too hard to have the layouts start without the overlay and just be able to toggle them back on when needed too... but my goal is to end up sharing screen space so both can exist without interfering with each other.)

My code and image placement still needs a little tweaking, but if anyone is ever interested in integrating instruction cards (or re-mapping controls) this way, let me know and I'll help out best I can.

It's a lot of work making instruction cards but I only need them for the more complex games... and it saves having to make personal changes to layout backgrounds to integrate them there.  But to be honest, investing a little in a "touch screen" would probably be a wiser way to kill two birds instead of integrating with an arcade controller...

[AHK can be made to work with Game Manager or any Windows Front End but does require a little folder name tweaking depending on how the original Layout Artist named their game windows.]

"No original layouts have been hurt in the making of this simple, personal mod." 😉 

  • Like 1
Link to comment
Share on other sites

If a single picture is worth a thousand words, then a video must be worth at least a million words.

This will give you a better idea of the work in progress (if anyone is interested).  I've already made some changes and eliminated the flashing that shows in the sample video below.  What's not seen is the Front End integration. I'm still working on that.

(The vertical 4k TV is too big for most fruit machines, but works well for Pinball FX3 and arcade games with 4k Bezels.)

 Youtube Video Example

IMG_0691.jpeg

  • Like 2
Link to comment
Share on other sites

7 hours ago, dnsmate said:

(The vertical 4k TV is too big for most fruit machines, but works well for Pinball FX3 and arcade games with 4k Bezels.)

 Youtube Video Example

 

I tried watching your video, but it came up "Private video", but I suspect that you have the same problem I had. I had a 41" TCL 4k screen in landscape mode, but the upscaling was non existent. Only layouts that were designed in 4k looked as they should.

I just upgraded to my old Samsung (55" 4K curved screen) and the difference is night and day.

  • Like 1

Treat every day like your last, because one day it will be!

Fruit Machine <<<My new project! 

Link to comment
Share on other sites

1 hour ago, Amusements said:

I tried watching your video, but it came up "Private video", but I suspect that you have the same problem I had. I had a 41" TCL 4k screen in landscape mode, but the upscaling was non existent. Only layouts that were designed in 4k looked as they should.

I just upgraded to my old Samsung (55" 4K curved screen) and the difference is night and day.

It is a 43" TCL 4k set vertically, but I wasn't aware I was having a problem?  Maybe you can elaborate so I can check? (I do have a Sony 4K as well with superb upscaling, and no doubt the Samsungs are way better, I would want an IPS panel if this were to be laid more horizontal for say a virtual pinball machine.)

I think the fruit machine DX layout graphics look pretty much as good as they could upscaled (my video likely doesn't do it justice) and their height and width are not consistent from layout to layout (hence the bars top and bottom since I'm not stretching this image).

I haven't for Psycho Cash Beast, but I have better results when I crop their layout backgrounds to black. Higher resolution DX layouts I've tried do look significantly better. I don't want to fill the background with wallpaper for my purpose (which is to make the fruit machine and any arcade games, look like they are "there" in close to original size.  (Sure, 4K would look better, but I am considering. going back to 1080p since most arcade bezel art and these fruit machines are less than 4k resolution.

[Ultimately the plan is to put this "Arcade on a stick" into a shop built cabinet. LED button upgrade to the X-arcade is next.]

If you watch the video to the end, that's not a wife calling me to dinner, it's an attract call from the pinball machine sitting next to the arcade emulator. lol
 

Link to comment
Share on other sites

'Problem being' that you said "The vertical 4k TV is too big for most fruit machines". That is why I mentioned the upscaling:)

My TCL is also 43" (I forgot its size) and could be the same panel? and it was terrible at upscaling small layouts:(

Treat every day like your last, because one day it will be!

Fruit Machine <<<My new project! 

Link to comment
Share on other sites

2 hours ago, Amusements said:

'Problem being' that you said "The vertical 4k TV is too big for most fruit machines". That is why I mentioned the upscaling:)

My TCL is also 43" (I forgot its size) and could be the same panel? and it was terrible at upscaling small layouts:(

OIC.  Sorry, I was mistakenly referring to the different aspect ratios of the layouts leaving parts of the screen blank more-so than their resolution or the upscaling thereof.  But yes resolution suffers from the upscaling for certain.

Layouts "could" be improved a little by Photoshopping them ahead of time (I have done so on one or two layouts - again for my personal use only).  

But yes, certainly a TV/Monitor with better upscaling would help (with the law of diminishing returns and my budget applying).  (The TCL was an amazng price so something had to give.) 😁

Edited by dnsmate
Link to comment
Share on other sites

I don’t know how to make what you guys have, I don’t think I could get close to be fair, I’ve got a old Samsung not 4k that I connect mfme via hdmi, is it Just a case of changing the orientation Mode? The input stuff is not a part of my query just yet, I’m just curious to know if I flipped my TV and changed screen orientation it’d work like that looks?!? Surely there’s a wall Mount with a rotating bolt or similar??? Thanks guys, I love seeing what’s possible!!

living the dream

 

Link to comment
Share on other sites

2 minutes ago, woodsy said:

I don’t know how to make what you guys have, I don’t think I could get close to be fair, I’ve got a old Samsung not 4k that I connect mfme via hdmi, is it Just a case of changing the orientation Mode? The input stuff is not a part of my query just yet, I’m just curious to know if I flipped my TV and changed screen orientation it’d work like that looks?!? Surely there’s a wall Mount with a rotating bolt or similar??? Thanks guys, I love seeing what’s possible!!

Hey woodsy, this is indeed easily possible. MFME generally accommodates any orientation of monitor (in my case Windows own Display portrait orientation Control Panel setting is used), it just stretches to fill the available width and puts itself in the middle of the screen (and uses any available "excess" from the pre-cropped layout background to fill in where it can.

It's simply a Television with HDMI, mounted vertically, connected to a decent PC, and in my case an X-Arcade Controller that has been upgrades with an Ultimarc iPAC Ultimate I/O encoder.

I was using a rotating TV mount found on Amazon, very substantial in some respects, but became a pain in the p*tard for my use, especially if I wanted to use my Nvidia Shield TV, and so I have another setup with that for sit down "horizontal" aspect arcade games, tv, movies, music, etc.   (Orientation sensing isn't built into televisions so there is a bit of manual control panel switching that might be needed if not automated with .bat files or other utility programs.

This vertically oriented "Arcade on a Stick" accommodates MFME, an arcade emulator called Retro Arcade 2 Vertical doing all MAME games (a CoinOps RetroFE build) and my own personally licensed (from Steam) copy of Pinball FX3 (which does run in 4K and is brilliant if you're into that sort of thing).

Where the customization and scripting comes into it (if required) is arcade control encoding and mapping, integration into a Front End (I have integrated MFME into RA2 Vertical Coin Ops using my own method scripted through AutoHotKey), and, in my case anyway, scripting in an "Instruction Card" overlay because, well when you get to a Fruity that has 12 or more individual buttons by brain couldn't' remember where anything but the Coin, three Holds, and Start were (I suspect even IF I had LED buttons activated).

If you were simply using MFME's Game Manager, then other than changing the Windows Orientation on the Display Control Panel, you're pretty much already good to go!

Once you go Vertical you bop yourself on the head and say "of course" this is how it was meant to be!  And never look back.  lol

  • Like 2
Link to comment
Share on other sites

I should mention that the vertical monitor stand I am using does not rotate, but it does "lean back" and I like that as it's closer to real video arcade CRT mountings and makes it easier to see the whole screen when as close up to it as this is meant to be.  The X-Arcade controller is only a couple inches from the bottom of the monitor on a pedestal stand.

Link to comment
Share on other sites

@dnsmate thanks loads for a clear and detailed reply, I find things difficult to follow at times but the info above is great and will help me when it comes to my attempt to do similar.. just to clarify the only connection i need is the hdmi you're not doing it via a share screen method for example.

i'm going to start another conversation   around this too, I don't use 4k i've only just got 1080p haha, my gpu says 1650 does that mean it can do a higher resolution is that what the number means?

addendum when i use mfme on my laptop 1080by1920 off top off my head, the layouts are resized to background size automatically but i could make them theoretically any size at all in ps, what would be the issue for someone like me that has a lower spec screen res if i made a layout designed for 4k screens so for example a layout with 4000hx3000w (or please give me the better pixel numbers thanks) when i play it would be resized to fit my screen why is that a bad idea? i can imagine a small 1600x1200 layout being pretty poor when upsized without scaling to 4k screen etc.. because if it made no ill effects to users it would be quite easy to release newer layouts with higher specs... but i have no idea how it would work for people like myself with lower screen res? thats if you make senses of it my query

living the dream

 

Link to comment
Share on other sites

My explanations can get wordy, so slap me around a little if that happens. 

I'll say off the bat that higher resolution layout background and button images are always going to pay back as things progress, as they will likely look just as good scaled down to a smaller resolution as they would scaled up.  4K resolution is 3840w x 2160h. the image will scale to the max available width or height depending on the orientation.

Even on a slightly crappy 4k TV like mine, the 4K arcade bezels people have worked on look so amazing as to seem almost real.  Even though the actual arcade game is running within the bezel at an approximation of it's original resolution with scan lines added for effect.  And, to be honest, the newest DX Layouts I have been trying out look absolutely fabulous on such a large monitor surface, even if they are a little fuzzy due to the original promo scanning.

1600 x 1200 is still a decent resolution for a 1080p monitor and upscales well on a 4K, but it's a 4:3 aspect ratio (the same as the old original CRT monitors).  4:3 is "revered" for old horizontally oriented arcade game emulation because that's what the original monitors were.  So I imagine that carried over for early MFME layout work.  Given that Fruit Machines are not originally games on CRT monitors, then as far as realism goes, the more the better (if it's possible).

And if you happen to be working with bezels (i.e. scaling down the playing image to a smaller area of a higher resolution monitor and then surrounding that with a bezel graphic), it looks terrific, and by the time you get to a 40 - 43" VERTICAL Monitor, a whole arcade cabinet graphich surround with bezel marquee and controls graphic comes rather close to the size of a real arcade machine (as does an MFME Fruit Machine Layout in that orientation on a large monitor).  Again, heightens the realism significantly.  And... that's how it's done in North American casinos nowadays anyway even IF the video monitors completely surround the physical reels (which has been done for more than a decade... I also collect Pachinko and Pachislo machines).

So if you build a landscape layout in 3840w, then when flipped to portrait, it will max out at 2160 pixels across (with dead space top and bottom) and therefore actually be scaled down a little on the vertical monitor.  (Build it the other way and there will be dead space side to side).  That's assuming the software doesn't stretch one of the axis and distorts the image. (MFME doesn't as far as I have tested so far, but how it treats backgrounds and cropping is still a bit of mystery to me and I am playing around to see how that works.)  People obviously add horizontally oriented backgrounds to otherwise vertically oriented Fruit Machines to help fill out the background on a 16 x 9 horizontal monitor and I find on some of the layouts that is cut out automatically (unless it's something I unknowingly did).

Plug and play if your PC has an HDMI out.  Change the Display Control Panel to Portrait Mode, and then flip the TV (one way or the other, the control panel can rotate it to left or right).  There are more complex ways to do it in some cases where an application won't work properly on a Portrait orientation but MFME appears to work just fine.

An Nvidia GeForce GTX 1650 is an extremely capable external GPU and pretty much worth gold right now (better than I have in the machine above which is a 1050ti).  Not as certain about same integrated for laptops but I think they're relatively high end at least as far as game and MFME emulation goes (and 4K capable).  The GPU model number has more to do with the manufacturer and the chip set it employs I beleive, so I don't think it corresponds to any particular attribute. 

You don't necessarily need to do any changes to the layout unless you really want to, or to re-make a DX to suit that extended resolution.  A 1080p resolution image will either appear at it's original pixel size, or be scaled up automatically (as I am relatively sure MFME does... it's early days in it for me, I am just learning).

For me all MFME layouts simply scale upward to fill the first "limit" they meet whether that's height (for landscape) or width (for portrait).  Yes, a low resolution layout background image is going to start pixellating or go fuzzy depending on how the scaling is done.

OK, go ahead. Slap me now. 😝

  • Like 1
Link to comment
Share on other sites

I should mention that a lot of the "realism" afforded to emulated arcade games at high resolutions comes from the use of shaders to give 3D effects to bezel and cabinet features and "glass effects" which are basically an overlay of some reflections or scratches to heighten the effect of looking through a typical arcade glass monitor cover.

Link to comment
Share on other sites

Thanks bud, Two dumb questions first then a half normal one!!

 What’s a bezel? How do I make one?


If I made a layout with the usual ratio I’m doing 2100h-1500w that is landscape! Yeah? 

So if i did my next one 1500h-2100w that would already be better set up for a portrait view if enlarged for example, but if it had those dimensions would it still look good on my 1080 screen when resized to background etc as the original pixel no’s are already larger than the screen allows, in my mind that means when it resized smaller from the portrait specs it would be pretty much the same reply for me but a lot better for your screen although not perfected in size, the upscale would be benefitted from the dimension being that way?!? 
 

Hope that makes sense!! 

living the dream

 

Link to comment
Share on other sites

If you have a small screen knocking about, you could play with the "Duel Screen Mode" in preferences. For example put the instructions in the small screen, and have the layout in the main screen?

On my own setup, I edit all the layouts backgrounds slightly. I make the background black, and then add blank height to the top of them to push them to the bottom of my screen, so that when I press F3, they fit nice and tight.

  • Like 1

Treat every day like your last, because one day it will be!

Fruit Machine <<<My new project! 

Link to comment
Share on other sites

2 minutes ago, woodsy said:

Thanks bud, Two dumb questions first then a half normal one!!

 What’s a bezel? How do I make one?


If I made a layout with the usual ratio I’m doing 2100h-1500w that is landscape! Yeah? 

So if i did my next one 1500h-2100w that would already be better set up for a portrait view if enlarged for example, but if it had those dimensions would it still look good on my 1080 screen when resized to background etc as the original pixel no’s are already larger than the screen allows, in my mind that means when it resized smaller from the portrait specs it would be pretty much the same reply for me but a lot better for your screen although not perfected in size, the upscale would be benefitted from the dimension being that way?!? 
 

Hope that makes sense!! 

There are no dumb questions, only dumb answers (as in "I am guessing here" take it for what it's worth and PLEASE correct me if I am wrong so that I can learn too!).  lol

A bezel is a physical piece or a graphic surrounding a main video screen (which in the graphic world would be a surrounding overlay with a transparent portion in the middle under which the main graphics peek) that separate the video screen from its cabinet or surrounding frame.  They are not graphics used in the same way in MFME, but are a mainstay of MAME. (The closest concept would be is if you put the background graphic in a fruit machine layout in front. of the reels graphics with a transparent or shadowed cut out through which the reels showed as they spun.  Correct me if I am wrong, but I am thinking how MFME works is that the background sits at the very back and every other graphic is layered on top of that (meaning you have to precisely size and place the reels to make them "look" as if they are spinning in the reel windows in the background image below them).

It is normally a graphic that would be the equivalent of the "angled" or bevelled plastic surround that sits on top of a CRT or other monitor screen that usually connects the screen to the cabinet and including any additional artwork that surrounds the screen (sometimes including instruction cards or decorative graphics).

In MFME, the Layout background IS also the bezel and cabinet graphic combined in a sense.  Real bezels can be translucent graphics on glass lit from behind.  (A marquee sits lit, north of the bezel, a control panel or "cab" sits south of the bezel, and I believe it's also referred to as a cabinet graphic in MAME (but don't quote me on that, I'm no MAME expert).

I am not entirely certain yet, once you start rotating monitors, but I am thinking that programs generally refer to the "height" as the original landscape shortest dimension and the width as the longest dimension by differing back to a standard landscape aspect ration (i.e. 4:3 or 16:9).   It can be a little confusing to see a narrower height than width defined when you are looking at a script for a vertical orientation.

But it's not always that way... it depends on how the software handles it.  Technically speaking a resolution with longer physical height than width would be portrait , and longer physical width than height would be landscape orientation.   Sometimes scripts refer to them by degrees. 0, 90, 270 degrees.  Again confusing, as if the Control panel is set to Portrait, then zero degrees IS Portrait, if set to Landscape, then zero degrees is Landscape.  This is used in some programs that can rotate the output orientation back and forth without changing the OS display orientation (such as when you use a rotatable PC monitor).

I can't answer your last questions exactly without experimenting, but I "think" it's an easy experiment to try, just substitute a simple new graphic background of the resolution dimensions you are trying for an existing layout background and then run MFME once in both Display Orientations (i.e. using the Display Orientation controls in between runs of the same background).  I DID find that MFME can get confused IF you switch orientations WHILE it is running (but I can't say I did enough discovery to determine if it was consistent or MFME, the graphics card, the OS, or the graphic, etc.)

Does anyone actually use 4:3 monitors or tvs any more? Do you need to concern yourself with that aspect ratio?  I guess if you "needed" 4:3 backwards compatibility you'd want to test out the layout on both orientations of both a 4:3 monitor and a 16:9 monitor to see what happens to be certain.

In theory, and it is something I will try later, but a 2000w x 1500h would be landscape but in 4:3 aspect ratio - for higher res monitors I "think" you'd want the design in 16:9 (since it's more popular than 9:16) but maybe MFME needs something different, I'm not that far into it to know of the top of my head yet. 

In my vertical monitor world, I could see that a 16:9 layout with a 3840w x 2160h that when cropped in vertical orientation crops out the side "wallpaper" (i.e. they sit out beyond the monitor's sides, and leaves the hi res fruit machine layout visible at full resolution in the middle of the screen would be most ideal (and should work for both orientations and all smaller resolution and aspect ratio screens as well IF the image is not squeezed in only one dimension when rendered).

What I think happens now by default is that the MFME background layout is stretched (or squeezed) to whatever is the shortest full dimension with that background evenly scaled and not squeezed or stretched out of it's original aspect ratio - which is the easiest strategy for backwards full portrait/landscape compatibility.   That strategy works BUT leaves areas of the monitor blank top and bottom in portrait mode.  And it only works on a LARGE vertical monitor.  The same strategy on a small monitor might mean an even smaller rendition of the fruit machine itself to accommodate the side wallpaper graphics.

All this being said, I have seen some layouts either without the side graphic wallpaper, or with it cropped for some reason so that the machine itself goes full height in portrait mode.

But before I go any further, I better actually test out what I am saying again.  My portrait system is out in the arcade and I am not.

Keep in mind that while I made a living as a "hack" web developer and designer for 25+ years, my graphics skills are rudimentary (and I am getting older!). I proudly admit to being a tinkerer... Jack of All Trades, Master of None.  I rely on you Masters to make me look good. 😉 

Link to comment
Share on other sites

17 hours ago, Amusements said:

If you have a small screen knocking about, you could play with the "Duel Screen Mode" in preferences. For example put the instructions in the small screen, and have the layout in the main screen?

On my own setup, I edit all the layouts backgrounds slightly. I make the background black, and then add blank height to the top of them to push them to the bottom of my screen, so that when I press F3, they fit nice and tight.

Thank you for this (I missed it while writing that small novella above).

Multiple screens is definitely a consideration, but the beauty of using a single 34-43" 4K TV/Monitor for this (or for arcade emulation) is that there is more than enough real-estate to keep everything on the one monitor (it's a brilliant strategy for an arcade machine, the Marquee, Bezel and Cabinet graphics all appear together on the one screen and keep the game screen almost exactly the physical size of the original game at an arcade).  The effect with 4K artwork is stunning.   The only downside is if the game itself stretches (as MAME and MFME do) and presents TOO LARGE on the screen, then you have to artificially shrink it to make it practical.

I have done the same with a couple of layout backgrounds, and even tightened up their sharpness which helps once you've essentially magnified a low resolution background 9and/or the upscaling isn't what you expect).  Ideally it would be nice not to have to make any alterations to an existing layout/game (that's kind of the MAME and FrontEnd philosophy - you integrate the games as found, and then an artwork pack overlays it to do whatever aspect ratio you are presenting with).

The other nice thing about the original MAME approach is that there are a set of STANDARD controls and a definition for per GAME controls (defined in an accessible text file and also manipulatable on the fly in a launchable GUI).  But I digress.

Fruit Machines are pretty much always portrait style layouts (put on landscape backgrounds) so a Vertical monitor setup is ideal after dealing with the background (and I am still learning as I perceive there is more than one way to skin that cat).

Thank you for reminding me too that I need to go back to MFME basics school again and review the F-button options.  There is a lot I "suspect" that MFME can do that I am not fully understanding or aware of yet.  But I was that kid who pulled apart a radio to try to figure out how it works, then struggle to re-build it, learning along the way, and THEN realize that I probably should have studied the manual and/or schematics first. 😉

I do wish that layout artists could make the presentation of "controls" notes screens a toggable optional though. Given that for a cabinet button scenario, they are no longer applicable and can be confusing to my friends.  An acknowledgement splash screen on boot is no problem though and a nice touch.  (I currently use scripting to detect and deal with the Notes fields but allow the original splash acknowledgement window to remain until the Start button is pressed (so no need to close the window with a mouse or obscure Windows keyboard combo).

Link to comment
Share on other sites

 Share

×
×
  • Create New...