Development of module-script generator for lr-mess, lr-mame and mame standalone
-
Hi all. I have been contributing over in the handheld thread, but I think this question is better put here. I've been trying to get the microvision system set up and while it works, I can't see a way to get overlays set up for it automatically. I've found both screen overlay pngs and overlay pngs for the whole handheld for each game, but it doesn't seem like there are mame artwork .zips that already have the layout set up to make it work right laid over the screen during gameplay. I am capable of creating the overlay files in retroarch to just put the simple screen backgrounds over the screens, but because each of these games had different controls (even different buttons), it really needs the full artwork to be playable. Does anyone know if these exist somewhere? They're beyond my capability to create, unfortunately...
Actually I got ahead of myself - even the screen backgrounds I found don't work with a straightforward overlay (like how it works for game and watch games) because they are meant to have the screen fully inside them. When I created the overlay the "border" is covering gameplay. I'm sure it wouldn't be that hard to make it display inside the border but I don't know how.
-
In the past I have seen artwork for systems, like microvsn, that had multiple "views" in them for multiple games.
An good existing example is vectrex .
However the challenge is finding them.Indeed, for mame standalone you need to switch the view in the gameplay.
I think it's possible to make runcommands to load each artwork game-wise but it would probably be overkill for many users and it could get a real "mess", if you know what I mean.
Though I have experimented with this in the past but it has been some time ago.
What I did back then was making artwork for vectrex_frogger only as a test.
What I found was that If you do this then you need to add the system name to the game artwork. Otherwise you mix up artwork for other games, the normal frogger, for instance.In the past I have been busy witch making background overlays for lr-mess for some dual screen game & watch games.
Here I had the same issue that you describe.
The issue that backgrounds don't fit the game screen.
I think what I did was selecting the zoomed view in mame standalone.
(with that you need to have the mame artwork of course)
Then I made a print screen of the lr-mess game-play too.
I used gimp to see how the screens together with the background images match using some layers.
I stretched or cropped the background overlay to match the game-play area.
Then I made a new image using the correct width and height and pasted the new background overlay and save it.
Overall a lot of work ;-)Can you share some files on your gdrive so I can have a look ?
-
Thanks for your detailed response! Thoughts interspersed below.
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
In the past I have seen artwork for systems, like microvsn, that had multiple "views" in them for multiple games.
An good existing example is vectrex .
However the challenge is finding them.This is the case for the Game and Watch artwork too, no? And some of the classic handhelds. Basically, if there is a .zip file that downloads when you use the script to download MAME artwork, and you move it to bios/mame/artwork, it automatically loads the artwork when you launch the game. And that .zip uses something named default.lay to assign where all the artwork goes, I just don't have the slightest idea how to make that.
Indeed, for mame standalone you need to switch the view in the gameplay.
This works in lr-mame/mess too, you just still have to go into the mame menu and change it. It's not through retroarch. But your choice in that menu "sticks" when you exit the game so it will reload with whatever view you left it as.
In the past I have been busy witch making background overlays for lr-mess for some dual screen game & watch games.
Here I had the same issue that you describe.
The issue that backgrounds don't fit the game screen.
I think what I did was selecting the zoomed view in mame standalone.
(with that you need to have the mame artwork of course)
Then I made a print screen of the lr-mess game-play too.
I used gimp to see how the screens together with the background images match using some layers.
I stretched or cropped the background overlay to match the game-play area.
Then I made a new image using the correct width and height and pasted the new background overlay and save it.
Overall a lot of work ;-)Yeah full honesty I don't follow most of that. I bet I could find tutorials somewhere but you would think there would be some relatively easy way to just shrink the screen display of the game by some percentage in retroarch, no? Or I guess in the mame menu in standalone. I checked the scaling options in the video settings in RA and couldn't find anything helpful though. If that worked, you could at least use the basic backgrounds to make sense of the gameplay.
Can you share some files on your gdrive so I can have a look ?
Here is a link with the screen background images I found, they seem like they would be perfect if you could shrink the game image displaying to be within the "border" of each. I also added a subfolder with a few examples of the art of the whole handheld... that's the best I could find.
-
@bbilford83 said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
Thanks for your detailed response! Thoughts interspersed below.
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
In the past I have seen artwork for systems, like microvsn, that had multiple "views" in them for multiple games.
An good existing example is vectrex .
However the challenge is finding them.This is the case for the Game and Watch artwork too, no? And some of the classic handhelds. Basically, if there is a .zip file that downloads when you use the script to download MAME artwork, and you move it to bios/mame/artwork, it automatically loads the artwork when you launch the game. And that .zip uses something named default.lay to assign where all the artwork goes, I just don't have the slightest idea how to make that.
Yes, it works like that.
However a systems like microvsn isn't a standalone game it's a handheld that can accept different cartridges that is the difference with game&watch.
So you would have an artwork-file called microvsn.zip which would contain multiply game "screens". However mame will not detect which game is running so if you use a normal runcommand you have to select the game-view each time you play another game. That is when using mame standalone.Indeed, for mame standalone you need to switch the view in the gameplay.
This works in lr-mame/mess too, you just still have to go into the mame menu and change it. It's not through retroarch. But your choice in that menu "sticks" when you exit the game so it will reload with whatever view you left it as.
Sure, it can work like this but on the raspberry pi gameplay will be too slow.
That is why we used background overlays for RetroArch instead.In the past I have been busy witch making background overlays for lr-mess for some dual screen game & watch games.
Here I had the same issue that you describe.
The issue that backgrounds don't fit the game screen.
I think what I did was selecting the zoomed view in mame standalone.
(with that you need to have the mame artwork of course)
Then I made a print screen of the lr-mess game-play too.
I used gimp to see how the screens together with the background images match using some layers.
I stretched or cropped the background overlay to match the game-play area.
Then I made a new image using the correct width and height and pasted the new background overlay and save it.
Overall a lot of work ;-)Yeah full honesty I don't follow most of that. I bet I could find tutorials somewhere but you would think there would be some relatively easy way to just shrink the screen display of the game by some percentage in retroarch, no? Or I guess in the mame menu in standalone. I checked the scaling options in the video settings in RA and couldn't find anything helpful though. If that worked, you could at least use the basic backgrounds to make sense of the gameplay.
Can you share some files on your gdrive so I can have a look ?
Here is a link with the screen background images I found, they seem like they would be perfect if you could shrink the game image displaying to be within the "border" of each. I also added a subfolder with a few examples of the art of the whole handheld... that's the best I could find.
Yes indeed, perhaps a bit too much.
Will have a look at your files first. -
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
Here is a link with the screen background images I found
I searched for the microvsn artwork file but found nothing.
I looked at the files and I see what you mean.
I think you want to keep the border, right ?
Then for both mame artwork and also for RetroArch overlays we need to customize the view.
Will have a look at that later. -
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
I looked at the files and I see what you mean.
I think you want to keep the border, right ?That's an interesting point, I guess if we removed the outer border from each of the pictures they would work so long as what was left was more or less what would be displaying over the screen in the game originally. That could be a last resort option of course. I think ideally having the full border would be better, especially given that the resolution on these was so insanely low that it doesn't really matter to have the screen space shrunk a bit.
-
@Folly One other question if you don't mind. I had never gotten R-Zone working before for some reason and now I did. But do you know, did these games have no background art at all? They were just projected onto the little reddish glass? All the youtube videos I've found are like that, so I guess that is how it was played, but boy they look awful....
-
Nice to hear you got it working now.
Indeed they look awful .
Don't really know if they had background art.
My guess is that they didn't have it. -
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
Indeed they look awful .
On the opposite side, I also just got the Jakk's games working and some are surprisingly quite good!
I don't know why I had trouble when I tried years ago but they just worked out of the box. And it's nice not having to worry about art!
Regardless I am re-doing the gamelists on these too now - there is no good descriptions on any of the scraping sources but there is a fansite/wiki that has lots of great info that should make it easy to provide more detail. I will add that to my google drive at the end too in case it is helpful.
-
I created a very basic microvsn artwork file for you with 2 views of 1 game :
https://drive.google.com/drive/folders/1HQKNcrzR7AC7y4FShFT7N1hr0QHb-Gq1This might be helpful as I used the first link for the basic layout :
https://www.mameworld.info/ubbthreads/showthreaded.php?Cat=&Number=153190&page=0&view=expanded&sb=5&o=&fpart=1&vc=1The resolutions in the layout are from the unit file, the bezel file and the display part.
The display part resolution can be found by selecting the display part in a picture editor and cropping to that part.
Most picture editing software will show the coordinates of where the mouse pointer is with this you can find the bounds.
(x counting from left, y counting from above)
I usedgimp
and pasted parts in a new file with transparent background which is needed so the display can be viewed when running in mame.This basic file lacks the background part which can be improved.
This structure, probably, can't be used to create RetroArch overlay stuff, for that we probably need an other approach.
-
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
I created a very basic microvsn artwork file for you with 2 views of 1 game :
https://drive.google.com/drive/folders/1HQKNcrzR7AC7y4FShFT7N1hr0QHb-Gq1This might be helpful as I used the first link for the basic layout :
https://www.mameworld.info/ubbthreads/showthreaded.php?Cat=&Number=153190&page=0&view=expanded&sb=5&o=&fpart=1&vc=1The resolutions in the layout are from the unit file, the bezel file and the display part.
The display part resolution can be found by selecting the display part in a picture editor and cropping to that part.
Most picture editing software will show the coordinates of where the mouse pointer is with this you can find the bounds.
(x counting from left, y counting from above)
I usedgimp
and pasted parts in a new file with transparent background which is needed so the display can be viewed when running in mame.This basic file lacks the background part which can be improved.
This structure, probably, can't be used to create RetroArch overlay stuff, for that we probably need an other approach.
I won't be near my computer for a while but this looks phenomenal! Thank you for taking the time to do this. I assume it should work the same as the art currently downloaded by the script - i.e. move the zip to bios/mame/artwork and it will automatically load? I love the idea of the option of playing it with the screen in the middle and the whole console on the sides. I will check out the stuff you sent and see if I can create them for all of the games... they are not many but I am not too optimistic about my own skills :).
-
@bbilford83 said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
I won't be near my computer for a while but this looks phenomenal! Thank you for taking the time to do this.
Thanks, your welcome.
I assume it should work the same as the art currently downloaded by the script - i.e. move the zip to bios/mame/artwork and it will automatically load?
Yes, but as far as I can see for mame standalone it will be :
roms/mame/artwork
For lr-mame / lr-mess I think it would be :
BIOS/mame/artworkI love the idea of the option of playing it with the screen in the middle and the whole console on the sides. I will check out the stuff you sent and see if I can create them for all of the games... they are not many but I am not too optimistic about my own skills :).
Great ;-)
-
@Folly I spent some time with this but honestly I'm not sure I can replicate what you did for the other ones. I won't give up quite yet but even the transparency process in gimp is new to me. Anyway I will prioritize doing new gamelists for Jakk's and maybe all-in-one too first, since at least I know I can do some good there :).
Actually I am now working on something else you and @DTEAM might want me to share. Seeing how you guys keep adding the newly-promoted handheld/plug&play system games over time made me think to check if other systems I have were updated at all... i.e. if MAME's "Software List" roms have been updated for any of my systems since I added them with this script. Turns out, some have been updated a LOT. For example, whenever I last added the Hartung GameMaster (what a turd that thing is), it had 12 working games out of the 19 that were released. Now, all 19 are working, but I checked and confirmed the gamelists and art in the google drive don't have the new seven. So I am adding art and gamelist entries for those after testing them. I would be happy to share again when I am done with those updated systems. The GameMaster is the one with the most additions but I see several others where I am going to add at least 2-3 new games (svision, megaduck, etc.).
-
You can get transparency background in gimp when starting a new image and selecting advanced options, then select transparency as background.
PNG's will keep the transparency and can be save with export as.You are most welcome to suggest new systems / games.
Just let us know in the handheld tutorial what these systems are and then we can check if we can implement them.
Try to add also the short name so we can find it much easier.
Remember all the systems in those lists are non-arcade (mess) systems and that merging arcade and non-arcade isn't possible because of the split up of lr-mame and lr-mess (for libretro it's using one or the other)
If possible adding a system then we can add the game list stuff too.
If it is simply a cartridge game from a system we already "support" then it's probably also possible to add it to the game lists without adding to our system lists, if you know what I mean.Here is how we implement new stuff.
We check the "what's new in mame" every time.
If it's a good system we add it to a list and hopefully I can add it to my automatic filter rules to create the new database.At first I created simple text lists (ini files) from them and used that to build up the database for the script.
Later I automated the list creation simply by filtering on the things we are looking for.
So basically I converted @DTEAM selection into filer rules so the automation of these list were made possible.
So when @DTEAM suggests new systems I create the new lists automatically and that is also the check, so both lists should then be the same.
Here you can check how some ini's are automatically created using the latest mame version. -
The script is updated to 259.00
I found a minor bug in the script as it will create a patched cdimono1.cfg file every time as system or category is installed.
It seems this bug has been in there for a while.
Not a big issue though but I will try to remove that bug later.Edit :
Bug should be fixed now in 259.01 :
https://github.com/FollyMaddy/RetroPie-Share/commit/71fedbe2396ca96f05151574d8d803fb87a9eeda -
@Folly said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
If it is simply a cartridge game from a system we already "support" then it's probably also possible to add it to the game lists without adding to our system lists, if you know what I mean.
Thank you, I'm sorry I wasn't being fully clear, I just meant that the gamelists themselves don't have all the games that are now available to use for some of the existing systems. So I wasn't suggesting adding new systems, just replacing the gamelists that are there now with ones that have added content for all the games that currently work now. I understand now how the scripts are automated to work with whichever games are playable, but I assume you guys still update the gamelists manually, right? So I am just saying like I did for the handhelds I would offer new game lists and some new art so that it would include all the games that now work.
-
Thanks for the good explanation.
Understood ;-) -
@bbilford83 said in Development of module-script generator for lr-mess, lr-mame and mame standalone:
@Folly I spent some time with this but honestly I'm not sure I can replicate what you did for the other ones. I won't give up quite yet but even the transparency process in gimp is new to me. Anyway I will prioritize doing new gamelists for Jakk's and maybe all-in-one too first, since at least I know I can do some good there :).
Actually I am now working on something else you and @DTEAM might want me to share. Seeing how you guys keep adding the newly-promoted handheld/plug&play system games over time made me think to check if other systems I have were updated at all... i.e. if MAME's "Software List" roms have been updated for any of my systems since I added them with this script. Turns out, some have been updated a LOT. For example, whenever I last added the Hartung GameMaster (what a turd that thing is), it had 12 working games out of the 19 that were released. Now, all 19 are working, but I checked and confirmed the gamelists and art in the google drive don't have the new seven. So I am adding art and gamelist entries for those after testing them. I would be happy to share again when I am done with those updated systems. The GameMaster is the one with the most additions but I see several others where I am going to add at least 2-3 new games (svision, megaduck, etc.).
Just to add a little bit of context, 2 years ago (maybe more) Folly and me start to work on Lr-Mess and MAME potential following Valerino script. Folly worked a lot on the script generator and more (he is the whiz, 75% of the work or more ) and me on a theme for that (cygnus blue flames, all systems from the Tutorial , gamelists for some systems not suported by Screenscraper and other) and a little bit of homemade MAME artworks. It was a lot of work!!!!!. I cut in the descriptions of the games because it was too much work for me. Now, I'm very happy to see more people on that project. That's why I'm exited to see you working on the game descriptions. With the recent release of the new PI5, maybe we will see lot more possibilities with 32 bit systems such as GP32.
-
@DTEAM I'm happy to contribute in whatever way I can. The technical side you guys did creating the scripts and everything is so well beyond what I'm capable of so I am happy to fill in gaps with descriptions and the like. I'm sure for every one person to comment in this thread there are 100 who has benefited from all your hard work so thank you again!
-
OK @DTEAM and @Folly, some quick updates that might help. Before I shared the google drive link with the handheld updated gamelists and art (here) that I finished so far, gameandwatch, konamih, tigerh, and classich. I have now added a bunch more that are for systems you currently have set up in the script to download gamelists/art. They are gamate, gamecom, gmaster, gx4000, megaduck, pv1000, and tigerrz. I did them the same as the others - they are set up in the same folder structure as retropie with one normal gamelist file and one no .7z version (named to indicate). And then the art folder is where it should be for the gamelists.
Some of these are identical to yours except for what I think is improved art (some probably didn't exist when you guys made the gamelists originally), but most actually have new entries for games that aren't on your gamelists, I think because they became playable on mame only since you did the gamelists originally too (like gmaster having seven new games).
There are also a couple I haven't uploaded yet because they aren't yet in your google drive, but I'm pretty sure I set up the systems on my retropie using your script, so you might want them. I think these are: gamepock (Epoch Game Pocket Computer) and svision (Watara Supervision). If I'm right and I should add those too, let me know.
I did these because it was pretty quick compared to all the work I have left to do on Jakk's/AllinOne...
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.