Skip to content

Releases: JohnyCoolHD/RetroDisc-System

Version 2.2

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 20 Sep 07:39
f0eac74
  • Major loading improvements on startup via Proton

Version 2.0

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 01 Sep 21:37

Automatic config creation

The game configuration is now stored directly inside the game's persistent data directory.

When --datapath is used, the configuration is created at:

<datapath>/config.json

Without --datapath, it is stored at:

~/Games/RetroDisc/<gameId>/config.json

If the configuration file does not exist, RetroDisc automatically creates it when the game is started. The default configuration is generated from the embedded runtime configuration.

However, this does not guarantee that every game will run correctly with the default configuration. Some games require additional configuration depending on their engine, Wine/Proton version, or compatibility requirements.

In such cases, the generated config.json may need to be adjusted manually. For example, a game may require specific DllOverrides, a different Windows version, graphics settings, synchronization options, or other Wine/Proton settings.

The configuration is persistent, so once it has been adjusted for a game, the changes are kept in the game's data directory and reused on subsequent launches.

Version 1.1.5

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 31 Aug 14:12
577b847

Added custom Datapaths

  • start the programm with --datapath < selected path >
    to set a manual folderpath for gamedata & pfx

Version 1.1

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 12 Aug 20:16
aa8f0e0
v1.1

C++ Version of RetroDisc

Version 1.0

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 11 Aug 22:47
aa8f0e0

A RetroDisc release contains the original game files, a manifest, a launcher and optionally a preconfigured Wine/Proton prefix.

📦 Create a RetroDisc

Create the following structure:

MyGame/
├── RetroDisc
├── manifest.json
├── gamedata/
└── pfx/              # optional ( unless the game has compatibility issues without it )

1. Add the game files

Before installing the game, start RetroDiscInstaller.sh from the terminal.

Install the game using the installation wizard.

Skip this step if the game does not require files outside of its normal installation directory.

Put the original game files into gamedata/.

The executable path in the manifest must point inside this directory.

Example:

gamedata/
├── Game.exe
├── data/
└── ...

2. Create/Edit manifest.json

{
    "game": {
        "id": "my-game",
        "name": "My Game",
        "executable": "gamedata/Game.exe"
    },
    "runtime": "proton"
}

Supported runtimes:

wine
proton

3. Configure the game

Start ConfigSetup.sh from the terminal and create the configuration for your game.

The configuration contains the runtime settings, launch arguments, environment variables and compatibility options required by the game.

An optional preconfigured pfx/ can be included with the release.

The bundled prefix itself is never modified.

▶️ Run

Make sure the required runtime dependencies are installed:

fuse-overlayfs
fuse3
util-linux

Then install Wine or Steam/Proton according to the selected runtime.

Start the release with:

./RetroDisc

RetroDisc creates a temporary writable overlay for gamedata/, uses the persistent prefix and launches the game.

The original gamedata/ remains unchanged.

💾 Persistent Data

RetroDisc stores writable data outside the release:

~/Games/RetroDisc/<gameId>/

This includes saves, configuration, registry changes and the persistent Wine/Proton prefix.
The original RetroDisc release remains portable and unchanged.