Empress Gameboy Emulator
Adds a Game Boy console to the REPO truck that boots a user supplied ROM from config and syncs live gameplay across the lobby.
About this mod Author’s original text
Empress Gameboy Emulator v1.0.1
Empress Gameboy Emulator adds an in world Game Boy console to REPO. Put a Game Boy ROM that you legally dumped yourself into the configured ROM folder, walk up to the cabinet, and press E to play it inside the game.
What It Does
In singleplayer:
- Loads a.gb ROM, and may also load some.gbc ROMs that retain original Game Boy compatibility
- Runs the game directly inside REPO
- Plays ROM audio only while someone is actively interacting with the cabinet
- Supports configurable controls, audio, and runtime settings
- If no ROM is present, the cabinet still appears, but no game runs until you add one
In multiplayer:
- The host ROM is the one that runs
- The ROM file itself is not shared to clients
- The host simulates the game session and transmits frames, audio, and interaction state to the rest of the lobby
- Clients see and hear the host session instead of their own local ROMs
- Clients can still interact with the cabinet because button presses are networked back to the host when they are the active player
- Only one player can actively control the cabinet at a time
- Press E or Esc to stop controlling the cabinet
This is closest to a host authoritative remote-play style setup inside REPO.
Original Empress Work
Original Omniscye/Empress work in this mod includes:
- a custom Game Boy APU and ROM audio implementation
- REPO and BepInEx integration work
- the in-world cabinet, interaction flow, and multiplayer behavior
- synchronized multiplayer frame, audio, and input networking
- 3D speaker playback from the cabinet itself
- config-driven controls and runtime tuning
- the host-authoritative mirror system for clients inside multiplayer lobbies
Features
- Game Boy console placed directly inside REPO
- Boots user-supplied Game Boy ROMs from a configurable folder
- Shared host-authoritative multiplayer session so everyone sees the same game
- 3D speaker playback while someone is actively using the cabinet
- Optional boot ROM path if you want one, but no BIOS is required
- Configurable controls, audio settings, sync settings, and file paths
- Automatic cartridge save flushing for supported battery-backed games
- No ROMs bundled
Audio
ROM audio plays from the cabinet itself while a player is actively using the Empress Gameboy. In multiplayer, clients hear the host session through the in-world speaker.
Saving
Battery-backed cartridge save data is flushed automatically to the configured save folder.
This is not a full emulator save-state snapshot. If a game supports normal cartridge saves, those saves persist between sessions.
Default Controls
- D-Pad: WASD or arrow keys
- A: J or Z
- B: K or X
- Start: Enter or Numpad Enter
- Select: Right Shift or Space
- Exit console control: E or Esc
Config
You can configure:
- ROM folder
- preferred ROM file
- optional boot ROM path
- save folder
- network frame sync rate
- audio volume and distance
- control bindings
- cabinet screen offset
If no preferred ROM file is set, the first compatible.gb or.gbc file found in the configured ROM folder is used.
By default, users should place ROMs in the roms folder next to the plugin DLL (If no folder exist just create one called roms. In a typical install this is usually:
- BepInEx/plugins/Empress-Gameboy/roms
You can edit the config file directly, or use REPOConfig from the in-game mods menu to adjust settings in game.
Legal
This mod does not ship any ROMs or BIOS files. Supply only ROMs you legally dumped yourself. A boot ROM is optional and not required.
Licensing
Empress Gameboy is licensed under the MIT license by Omniscye/Empress. See LICENSE.
- Original Empress work and project authorship are called out in NOTICE.md.
- Third-party emulator-core attribution for adapted CODE-DMG portions is preserved in THIRD_PARTY_NOTICES.md.
- Full legal files are included with the mod package.
Need support or have questions?
Join my Discord server here
- Omniscye/Empress
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: