Rob_G
Members-
Posts
171 -
Joined
-
Last visited
-
Days Won
1
Rob_G last won the day on November 3 2022
Rob_G had the most liked content!
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
Rob_G's Achievements
32-Bit GPU (5/7)
77
Reputation
-
-
It's been a long while since I last worked on "Unified Lives!" and I just don't see myself going back to it (no interest). Rather than letting it go stale, if someone is willing to put in the effort to update and maybe even maintain it then I will hand over the source code (Community Theme Creator 2.55). Rob
-
I think the 'IsCasino' boolean in the mame xml data is being used wrong, or some games have wrong metadata Megatouch XL is one example identified as a casino game when it's just another version of a Megatouch game. Rob
-
Mame rom cleanup script
Rob_G replied to Rob_G's topic in Third-Party Applications and Plugins (Released)
I've changed my approach a bit now. Instead of deleting items, I just hide them by changing the hidden element in the platform or gamelist xml. I don't have anything written for launchbox (yet), but I did write something for batocera already.. Same principle though. This keeps everything in place like bios and device files which are needed, but hides them since they aren't actually games to play. Rob -
Mame rom cleanup script
Rob_G replied to Rob_G's topic in Third-Party Applications and Plugins (Released)
Ok, one thing I had not counted on was that device roms are not included with the game roms. So for example, Arkanoid won't launch if mame cannot find m68705p3.zip which is a processor device rom. The solution is going to be to not touch device (or bios) zip files now. I have updated the script to leave these alone. Also, I have added a backup option to move files to another location instead of just deleting them if that is what you want. I updated the script in the first post. Rob -
I wrote a powershell script to cleanup a full (merged) mame romset and remove the following junk: Non working Non arcade No disk dump CHD Missing Casino Mahjong Playchoice 10 Mechanical Non Runnabl Uses Software lists Clones Filtering mame xml is NOT bulletproof. There are no explicit tags for language or genre so some filtering is tedious and/or may produce undesired results. So it's best to err on the side of caution. There will be casino/mahjong games that slip by for example and this even happens with Launchbox mame import. Final tally is that this reduces a mame merged set from 15000+ files to less than 4000 files. function deletefile($file) { #Comment next line if you don't want backup #$backupfolder = "d:\backupfolder" if (($backupfolder -ne $null) -and (($backupfolder | test-path) -eq $false)) { md $backupfolder } if ((Get-ChildItem $file -ErrorAction SilentlyContinue) -eq $null) {return} if ($backupfolder -ne $null) { write-host "Moving $file.name to $backupfolder" #$file | move-item -Destination $backupfolder } else { write-host "Deleting $file" $file | Remove-Item -Force } } if ($xml -eq $null) { #Changed to wherever your mame.exe is [xml]$xml = D:\Launchbox\Emulators\Mame\mame.exe -listxml } #Change to wherever your roms are stored $dir = "Z:\roms\mame" $xml.mame.machine | ForEach-Object { $name = $_.name $romfile = $dir + "\" + $name + ".zip" #Is a bios if ($_.isbios -eq "yes") {return} #Is a device if ($_.isdevice -eq "yes") {return} # Delete rom if it has no associated input or coins is null if ($_.input -eq $null) { deletefile $romfile return } $checkforcoin = $null $checkforcoin = ($_ | select -ExpandProperty input).coins if ($checkforcoin -eq $null) { deletefile $romfile return } #Unplayable if ($_.driver.status -eq "preliminary") {deletefile $romfile;return} #No disk dump if ($_.disk.status -eq "nodump") {deletefile $romfile;return} #Missing CHD if ($_.disk.status -eq "good") { $chdname = $dir + "\" + $_.name + "\" + $_.disk.name + ".chd" $checkdir = $null $checkdir = Get-ChildItem $chdname -ErrorAction SilentlyContinue if ($checkdir -eq $null) {deletefile $romfile;return} } #Not runnbable if ($_.runnable -eq "no") {deletefile $romfile;return} #Mechanical if ($_.ismechanical -eq "yes") {deletefile $romfile;return} #Description keywords #Playchoice isn't necessary #I think most rhythm games are unplayable as well if ($_.description -match "playchoice|mahjong|percussion|rhythm|beatmania") {deletefile $romfile;return} #Slot machine if ($_.manufacturer -match "Videos A A|QPS|IGT - International Game Technology|Aristocrat|Igrosoft") {deletefile $romfile;return} if ($_.description -match "casino|gamble|slot|fruit|mazooma|gaminator|poker") {deletefile $romfile;return} if ($_.sourcefile -match "barcrest|goldstar.cpp") {deletefile $romfile;return} #A few junk stragglers if ($_.sourcefile -match "nes_clone.cpp|att3b2.cpp|telercas|tvgames|skeleton|aristocrat|casio|yamaha|famibox") {deletefile $romfile;return} #Uses softwarelist if ($_.softwarelist -ne $null) {deletefile $romfile;return} #Is a clone. Not sure we keep or not. Disabled next line for now #if ($_.cloneof -ne $null) {deletefile $romfile;return} }
-
I almost regret including the recent games listbox in my theme since there's just no control over what it shows or how it activates. Rob
-
-
-
I roughed up a proof of concept for exporting launchbox style media to a batocera installation. It's just something to play around with I guess. This POC copied video files, renamed them appropriately and generated a new game list xml. There are going to be limitations, but it certainly beats downloading gigs of data again through very slow scrapers. $imgsourcedir = "D:\Launchbox\Images\Sammy Atomiswave" $vidsourcedir = "D:\Launchbox\Videos\Sammy Atomiswave" $destdir = "Z:\roms\atomiswave" [xml]$xml = Get-Content $destdir\gamelist.xml $xml.gameList.game | ForEach-Object { $name = $_.name write-host "Game: " $name $videos = dir $vidsourcedir -Recurse $firstvid = $null $firstvid = $videos | Where-Object {$_.name -match $name} | select -first 1 if ($firstvid -ne $null) { write-host "Video Found: " $firstvid.name $startchar = "/" $endchar = "." $pattern = @" (?<=\$StartChar).+?(?=\$EndChar) "@ $newvidname = [regex]::Matches($_.path, $pattern).Value + "-video" + $firstvid.Extension $firstvid | Copy-Item -Destination ($destdir + "\videos\$newvidname") $newvideoelement = $_.AppendChild($xml.CreateElement("video")) $newvideoelement.AppendChild($xml.CreateTextNode('./videos/' + $newvidname)) | Out-Null } } $xml.save("$destdir\gamelist.xml")
-
Launchbox-RetroPie-Batocera-Miyoo Export
Rob_G commented on dingodan's file in Third-party Apps and Plugins
I'm not a python guy, but I do powershell and am in the process of testing out Batocera. Media download is just ugly though. Rather than re-downloading gigs of data, I'm going to write a PS script to migrate my stuff over. I may even do this with workflows... It may just all be a wasted effort, but it's fun to play around. Rob -
-
13.1 is fine. When you say you installed a fresh copy, do you mean in a new folder or over top an existing installation? Try a brand new folder if you have not already. Then try importing a single game or small group of games as a test. What kind of monitor do you have? What resolution are you running? Thank you for the kind feedback Rob
-
Sometimes box images have too much transparency padding which just makes them display improperly. There is an easy fix for this! https://imagemagick.org/script/download.php If you are running windows, download ImageMagick-7.1.0-58-Q16-x64-dll.exe I don't think this warranted creating a powershell workflow for running multiple jobs at once since it's already very quick. I just choose a folder of files I want to fix and run a small powershell script. Please don't run it against ALL your images, just ones where boxes have uneven cropping. I used it on 'Vectrex' and 'SNK Neo Geo CD' 3D boxes. $foldertofix = "D:\Launchbox\Images\GCE Vectrex\Box - 3D" $exe = "c:\Program Files\ImageMagick-7.1.0-Q16\magick.exe" $files = dir "$foldertofix\*.png" -Recurse $files | ForEach-Object { $file = $_.FullName Write-host "Fixing $file" & $exe $file -fuzz 1% -trim +repage $file } Results before and after below:
-