Skip to content

Custom Music and Ride Music Objects

AuraSpecs edited this page Sep 25, 2022 · 2 revisions

Custom music in OpenRCT2

NB: Ride Music objects were added in version 0.4.0 make sure you on this or a later version of the game.

Video Tutorial

Recommended applications:

  • WinRar / 7-Zip
  • Audacity
  • Notepad++

Making a custom .parkobj file.

Create a zip file and rename the .zip extension to .parkobj.
(It has to be a zip file! 7z or rar formats do not work!)
Make sure to use the following standard format when naming your files!
<username>.<type>.<name>.parkobj
For <type> in this case, just use "music". (For Example: auraspecs.music.galaxy.parkobj)

This renamed zipfile needs to contain the following files:

  • object.json and .wav

Making the object.json

Create as text document and rename this file to object.json.

Copy and paste the following code in the object.json.

    "id": "<username>.music.<name>",
    "authors": [
        "<author name>"
    ],
    "version": "1.0",
    "objectType": "music",
    "properties": {
        "tracks": [
            {
                "source": "<name>.ogg",
                "name": "<artist> - <song name>"
            }
        ]
    },
    "strings": {
        "name": {
            "en-GB": "<name you want displayed in the game>"
        }
    }
}

Replace the follow:

  • <username> : Your username
  • <name> : Name of your file, make it something recognizable.
  • <author name> : Full name of the artist.
  • <artist> : Artist name of the creator.
  • <song name> : Song title.
  • <name you want to displayed in the game> : This is the name you will see in the drop down menu and object selection.

Please keep in mind if the language file doesn't exist for a specific language it defaults to "en-GB".

Example:

    "id": "auraspecs.music.galaxy",
    "authors": [
        "Karst van Galen Last"
    ],
    "version": "1.0",
    "objectType": "music",
    "properties": {
        "tracks": [
            {
                "source": "galaxy.ogg",
                "name": "Jalmaan - Pandora"
            }
        ]
    },
    "strings": {
        "name": {
            "en-GB": "Galaxy style"
        }
    }
}

Make sure your JSON file is correct by testing it in JSONLint.

Adding the audio file

OpenRCT2 accepts three audio formats, WAV, FLAC and OGG Vorbis. Due to the differences in size it's highly recommended to use OGG Vorbis format to keep the size low without losing too much in audio quality. If you really care about some of the high frequencies please use FLAC, but this will be barely noticeable in the game.

You can drag and drop an MP3 or any audio file into an online audio converter, DAW or a audio editing program like Audacity. You can export this to OGG Vorbis in whatever quality you like. Recommended is 192kbps. Make sure to rename the file to exactly match <name>.ogg in the JSON file.

Add both the .json and audio file to the parkobj file and you are set.

Put the parkobj file in \Documents\OpenRCT2\object\ and you are now able to select your own tune in the game!

And there you go! You have successfully added custom music to the game!

Afternote: If you want to update the file after you have already shared it around, please update the version number in the json file! For minor change it to 1.1, or for major changes to 2.0 or something higher if you already made changes before.

Custom music in vanilla

RollerCoaster Tycoon 2 supports two custom music tracks that could be used by rides. OpenRCT2 also supports this feature.

In RCT2's Data directory, you can find a file called CUSTOM.TXT. Inside that file are instructions on how to correctly create the two custom songs.

Quotes from that file:

 Custom ride music
 -----------------
 Additional ride music may be added as follows:
 1. Convert the new music file into a .WAV file, PCM format, 22,050Hz,
    16bit, Stereo.
 2. Move the file into the 'Data' subfolder in the RollerCoaster Tycoon 2
    installed folder, and rename it to either CUSTOM1.WAV or CUSTOM2.WAV
 3. Run the game as normal. The additional music file should be recognized
    by the game, and will appear in music selection menus as "Custom Music 1"
    or "Custom Music 2".

Third-party software to make this process easier is available. An example is Music Manager by Robert Jordan (also known as Trigger-death).

Keeping the size of a WAV File low.

!Disclaimer: Only use WAV if you are using version 0.4.0 or want to replace CUSTOM1.WAV and CUSTOM2.WAV.!

The wav file can be any music file that is rendered with PCM encoding. It's recommended to re-render any audio file in Audacity to the following settings to minimize the size of the file:

  1. Set the project bitrate (see the lower left of audacity) should be set to 22050 Hz. // This so the bitrate is low enough to make the file size small, but not so low that it's noticable in game.

  2. Export as WAV, and when saving you can set the Encoding to the following: "Unsigned 8-bit PCM".
    Please make sure the file is named the same as <name>.wav so it matches with the json file.

Clone this wiki locally