-
Posts
775 -
Joined
-
Last visited
-
Days Won
9
Content Type
Profiles
Forums
Articles
Downloads
Gallery
Blogs
Everything posted by Klopjero
-
community COLORFUL resources
Klopjero replied to viking's topic in Third-Party Applications and Plugins (Released)
yea I made that, and no need to apologise, I thought it was great seeing it come by. Besides that I really do have to congratulate you with coming up with such a brilliant and effective way to solve the colorfull playlist problem. congratulations! placing those mascottes in front of the screen or besides the keyboard or theming the console or PC to fit with that franchise is really elegant. -
community COLORFUL resources
Klopjero replied to viking's topic in Third-Party Applications and Plugins (Released)
that custom lightgun cabs look familiar @gspawn -
so what I ended up doing is just import the whole library. close LB. wrote a different powershell that would add a custom field to each game that would contain the Arcade system metadata so I could build play lists that way. # TeknoParrot add customField to database # Author: klop # Updated: Extended to export LaunchBox Playlist XMLs by platform (from JSON metadata) and enrich the Platform DB with Arcade Platform info using CustomField blocks # ------------------ # Load TeknoParrot Platform XML # ------------------ $platformPath = "[path to]/LaunchBox/Data/Platforms/Teknoparrot.xml" [xml]$platformXml = Get-Content $platformPath $gameIndex = @{} foreach ($game in $platformXml.LaunchBox.Game) { $gameIndex[$game.Title] = $game } # Prepare for appending CustomFields after <Game> entries $launchBoxNode = $platformXml.SelectSingleNode("/LaunchBox") # ------------------ # Process each game and read associated JSON metadata # ------------------ $metadataPath = "[path to tekno parrot]\Metadata" # Path to teknoparrot $groupedGames = @{} foreach ($game in $gameIndex.Values) { $applicationPath = $game.ApplicationPath if (-not $applicationPath) { continue } $profileName = [System.IO.Path]::GetFileNameWithoutExtension($applicationPath) $jsonFilePath = Join-Path $metadataPath "$profileName.json" if (Test-Path $jsonFilePath) { try { $json = Get-Content $jsonFilePath | ConvertFrom-Json $platformName = $json.platform # Add custom field as a sibling of <Game> under root $customFieldNode = $platformXml.CreateElement("CustomField") $gameIdNode = $platformXml.CreateElement("GameID") $gameIdNode.InnerText = $game.ID $customFieldNode.AppendChild($gameIdNode) | Out-Null $nameNode = $platformXml.CreateElement("Name") $nameNode.InnerText = "Arcade Platform" $customFieldNode.AppendChild($nameNode) | Out-Null $valueNode = $platformXml.CreateElement("Value") $valueNode.InnerText = $platformName $customFieldNode.AppendChild($valueNode) | Out-Null $launchBoxNode.AppendChild($customFieldNode) | Out-Null # Group by platform for playlist creation if (-not $groupedGames.ContainsKey($platformName)) { $groupedGames[$platformName] = @() } $groupedGames[$platformName] += $game } catch { Write-Warning "Failed to parse JSON: $jsonFilePath" } } else { Write-Warning "Missing JSON for: $profileName" } } # ------------------ # Save updated Platform DB with ArcadePlatform entries # ------------------ $platformXml.Save($platformPath) Write-Host "Updated Teknoparrot.xml with Arcade Platform custom fields." # ------------------ # Create a LaunchBox Playlist XML for each platform group # ------------------ foreach ($platformName in $groupedGames.Keys) { $playlistGames = $groupedGames[$platformName] $playlistId = [guid]::NewGuid().ToString() $playlistXml = New-Object xml $root = $playlistXml.CreateElement("LaunchBox") $playlistXml.AppendChild($root) | Out-Null # Playlist metadata $playlist = $playlistXml.CreateElement("Playlist") $root.AppendChild($playlist) | Out-Null $playlist.AppendChild($playlistXml.CreateElement("PlaylistId")).InnerText = $playlistId $playlist.AppendChild($playlistXml.CreateElement("Name")).InnerText = $platformName $playlist.AppendChild($playlistXml.CreateElement("NestedName")).InnerText = $platformName $playlist.AppendChild($playlistXml.CreateElement("IncludeWithPlatforms")).InnerText = "false" $playlist.AppendChild($playlistXml.CreateElement("IsAutogenerated")).InnerText = "false" # Add games to playlist $i = 0 foreach ($game in $playlistGames) { $pg = $playlistXml.CreateElement("PlaylistGame") $root.AppendChild($pg) | Out-Null $pg.AppendChild($playlistXml.CreateElement("GameId")).InnerText = $game.ID $pg.AppendChild($playlistXml.CreateElement("GameTitle")).InnerText = $game.Title $pg.AppendChild($playlistXml.CreateElement("GameFileName")).InnerText = [System.IO.Path]::GetFileName($game.ApplicationPath) $pg.AppendChild($playlistXml.CreateElement("GamePlatform")).InnerText = "Teknoparrot" $pg.AppendChild($playlistXml.CreateElement("ManualOrder")).InnerText = "$i" $i++ } # Save $safeName = ($platformName -replace '[^a-zA-Z0-9_\- ]', '_') $playlistOutputPath = "[path to launchbox]/Playlists/$safeName.xml" #it also generates extra playlistst $playlistXml.Save($playlistOutputPath) Write-Host "Playlist '$platformName' created at $playlistOutputPath" } this is isnt the solution for the helpful unhelpful behavior when your importing Teknoparrot though
-
I thought I found the issue... I had declared the TP\userprofiles folder as the games folder for the system. but that wasn't it either
-
I'm having a difficult time importing my setup teknoparrot games. I use my sorting script that sorts the games into folders named after PC Arcade system, so i can add the games to LB by selecting the XML's and dropping them into LB and have it do it's thing. This would work for most of my systems, but for some reason LB decides that it will import all the setup games from the [TP folder]\userprofiles folder instead. which is neat, but not what i want. I'm assuming that it has to do with build in logic, I also assume that the XML files have been parsed by the import as it reads the game name and not the file name. somehow even if I'm not telling LB what I'm importing by not telling what type of game files I want it to import, or declare a default emulator for it, it will read the XML's and return to the TP\USERPROFILES folder. This would be so awesome if it would also give me the option to sort the games into seperate platforms or generate the playlists for those platforms, but right now It frustrates me. any suggestions ?
-
-
Theme Videos and Video Snaps for Nintendo Switch
Klopjero reviewed Suhrvivor's file in Nintendo Switch
-
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
-
-
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
-
Hyperspin to Launchbox/Big Box turbulence and rants
Klopjero replied to Shredder_guitar's topic in Monkeys
you have to admit that it was smoother in hyperspin -
Hyperspin to Launchbox/Big Box turbulence and rants
Klopjero replied to Shredder_guitar's topic in Monkeys
The one thing I sometimes miss in BB are the Transition animations that HS has between bespoke game themes, those were awesome. the dropping bombs or just the HS logo swishing in and out. What I dont miss : XML based databases Gatekeeping Snobbery Elitism -
community COLORFUL resources
Klopjero replied to viking's topic in Third-Party Applications and Plugins (Released)
-
Glad to see them being used. Well dne people
-
community COLORFUL resources
Klopjero replied to viking's topic in Third-Party Applications and Plugins (Released)
-
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
-
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
-
tutorial How to make 3D PC/Windows DVD Game Cases - Tutorial
Klopjero replied to Robin55's topic in Game Media
Thanks bro, i used photoshop. Using a combination of original and custom artwork and then run it through the photoshop action that should be posted somehwere in this thread -
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
I'll see what i can do -
boxart What is your favourite piece of video game box art❓
Klopjero replied to AstroBob's topic in Community Corner
Incredible right ? He recently did work for the physical limited runs for bloodstained series. realy gorgous stuf -
boxart What is your favourite piece of video game box art❓
Klopjero replied to AstroBob's topic in Community Corner
All the box art done by Tom DuBois. The man has made truely epic box art, primarily for konami regional releases outside Japan. https://retrographicbooks.com/about-tomdubois -
Starting of, the view has been my main opening view for bigbox since it was introduced. i like it very much. however, Some more control over de Game discovery view would be nice. it would be awesome if two things would be taken into consideration. 1. give user created playlists a row, that could be switched on or off in the options menu 2. give users the ability to either show platform or platform category row. anyway
-
- 1
-
-
colorful Playlist 'hardware set'images
Klopjero replied to Klopjero's topic in Playlists & Playlist Media
I see you're scratching off, just so I understand Mega man world... are those the Gameboy / genesis games ?