Table of Contents

How to add custom train retextures for MTR

This guide will tell you how to retexture existing trains for MTR mod.

MTR4 format is used in this tutorial.

Before we get started

Minecraft Transit Railway mod utilises Blockbench models (BBMODEL) for all train models. One single PNG file is used as the UV for each model. By specifying another file in mtr_custom_resources.json, you can create a train retexture without modifying the texture from the main mod.

Dependencies

  1. Blockbench. You will need this to view the models and check the UV position.
  2. A Raster graphics editor that supports transparency. You will need this to edit the textures. You can use editors such as Paint.NET and Photoshop. Microsoft Paint for Windows 10 or below does NOT support transparency.
  3. A text editor. Using Notepad is sufficient, but you can use applications designed for coding such as VS Code.

Editing a texture

Some train textures may share the same model (such as Class 802 and all LRVs).

Adding a texture

pack.mcmeta
{
    "pack": {
        "description": "put your pack description here",
        "pack_format": 9
    }
}

The pack format is what version of Minecraft the pack is for. If you are only adding MTR models or textures, this is not important.
However, if you feel the need to add a number, it is recommended to use 8 or 9, as they correspond to versions 1.18 and 1.19 respectively.
If a pack tells you it's “not compatible”, just remember that the only thing that changes that is this number, so it really doesn't say much.

JSON files

The mtr_custom_resources.json defines all custom resources that you want to add. The template is provided below.

mtr_custom_resources.json
{
    "vehicles": [],
    "signs": [],
    "rails": [],
    "objects": [],
    "lifts": []
}

Adding your custom texture

Note that you can only use a-z, 0-9, - and _ for the folder name. CAPITAL LETTERS, white spaces and any other characters are not acceptable.

Typically, an icon for signs is 128 x 128 in size.

Registering the sign data

If you want to have a train without the door overlay, simply remove the models with door overlay properties and models defined.

Please remember to validate your JSON file. Websites such as JSONLint may be used to validate your JSON. Minecraft will NOT load any custom resources in a mtr_custom_resources that is invalid!

Adding it to the game