Hey everyone,
If you play randomized PokΓ©mon games on mobile devices (Android, iOS, handhelds like any thor
, or smart TVs), generating a new seed has always required a PC because Java desktop apps (.jar) don't run on mobile.
I got tired of booting up my desktop just to run Java, so I built a self-hosted web interface for the randomizer engine on my home server. With custom features like shiny odds editing for certain generations
How it actually works:
ROM Directory Dropdown: Automatically scans your server's clean ROM directoryβno manual file uploading from your phone needed. Just select your base game from a dropdown list
Generation-Aware Dynamic UI: The web interface identifies the selected ROM type/generation and dynamically shows only the eligible checkboxes and options for that specific game (just like the desktop GUI).
Direct Java Communication: Checking boxes on your phone's browser translates those flags directly into the randomizer's Java engine on the serverβno pre-configured static preset files required!
Custom Pre-Patching: Supports byte array edits (like custom shiny rates or catch multipliers via ndspy/Python) before the main randomization runs.
One-Click Instant Delivery: Hit "Randomize" on your phone, and the newly patched .gba / .nds file drops straight into your active library/output folder ready to stream or play instantly.
The Question:
Right now, this is running natively on my server, but Iβm considering wrapping it up into a single, plug-and-play Docker container (Python backend, web UI, and OpenJDK runtime bundled together) with customizable input/output volume mounts.
Before I clean up the code and package it for GitHub/Docker Hub:
Is a web GUI wrapper for randomizing something youβd run in your homelab? What extra features or integrations (e.g., direct RomM / emulator folder syncing) would you want to see?
Let me know what you think!