-McFly- Posted Monday at 05:14 PM Posted Monday at 05:14 PM What it is: A single PowerShell script that lets you temporarily "park" platforms - cleanly removing them from your library so LaunchBox/BigBox doesn't parse them at startup - and restore them later, byte-for-byte, whenever you want. No third-party software, no installer, nothing modified except your Data XMLs (which are backed up on every run). Why: LaunchBox parses every XML file in `Data\Platforms` at startup, so startup time scales with library size. On my ~1,500,000-game / 47.4 GB library, BigBox took ~11 minutes to reach the wheel. After parking the platforms I rarely browse (media pseudo-platforms, obscure systems), the same install starts in about 80 seconds - and everything comes back with one command when I want it. Why not just delete/hide platforms in LaunchBox? Deleting throws away your metadata and can cascade (removing category links, playlist placements). Parking sidesteps all of that: LaunchBox never sees an inconsistent state, so it never prunes anything, and unparking restores the exact original data. How it works For each parked platform the script saves a manifest in `<LaunchBox>\_parking\` containing: - its `<Platform>` node from `Platforms.xml` - all its category links from `Parents.xml` - all its emulator mappings from `Emulators.xml` …then moves its games XML from `Data\Platforms\` into `_parking\` and removes those entries from the live files. **Nothing is ever deleted** - your games, media, and images are not touched at all (they're just not loaded). Unparking re-injects everything and moves the games file back under its original name. Safety features - Refuses to run while LaunchBox or BigBox is open. - Backs up `Platforms.xml`, `Parents.xml`, `Emulators.xml` and `ListCache.xml` to `_parking\backups\<timestamp>` before every operation. - Saves after each platform, so an error mid-run can't leave you half-done. - Finds games files by content when the filename doesn't match the platform name (LaunchBox sometimes shortens names when creating games files — e.g. a platform called "MS-DOS Magazines & Newsletters" can live in `MS-DOS Magazines.xml`). - Deletes `ListCache.xml` after changes so the sidebar rebuilds with correct counts (skippable with `-KeepListCache`). - Writes a log of everything it does to `_parking\parker.log`. Usage 1. Save `LB-Platform-Parker.ps1` anywhere. 2. Close LaunchBox / BigBox completely. 3. Right-click the file → *Run with PowerShell* (or from a terminal: `powershell -ExecutionPolicy Bypass -File .\LB-Platform-Parker.ps1`). 4. First run: point it at your LaunchBox folder (it remembers it afterwards). 5. Use the menu: 1) Park platforms (remove from library, keep safe) 2) Unpark platforms (restore) 3) Unpark ALL 4) Status Q) Quit The park list shows each platform's games-XML size - that's its share of your startup time, so park the big ones you don't browse. Selection accepts numbers and ranges (`1,4,7-12`), `all`, or type text to filter the list first. Command-line use also works if you want to script it (e.g. park before a session, unpark for a showcase): (powershell) .\LB-Platform-Parker.ps1 -Action park -Platforms 'Platform A','Platform B' .\LB-Platform-Parker.ps1 -Action unpark-all .\LB-Platform-Parker.ps1 -Action status Requirements & notes - Windows PowerShell 5.1 (built into Windows 10/11) or PowerShell 7. No modules needed. - Always run it with LaunchBox/BigBox closed (it checks and refuses otherwise). - Parked platforms won't appear anywhere in LaunchBox - that's the point. Your images, videos, manuals and game files stay exactly where they are. - If you use cloud sync / multiple machines pointed at one install, park/unpark on one machine at a time. - Tested on LaunchBox 13.x. Standard disclaimer: it backs up everything it touches, but you're responsible for your library - keep your normal backups too. Restore path if anything ever looks wrong: copy the three XMLs back from the newest `_parking\backups\<timestamp>` folder, and move any `_parking\*.games.xml` files back into `Data\Platforms` (renaming `<name>.games.xml` → `<name>.xml`). That's the entire failure surface. The zip file includes these instructions (best read using Notepad++) and the powershell file. If you find bugs, let me know and I'll fix them. Enjoy the fast boots. Feedback welcome! Platform-Parker.zip Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.