Steam Locomotive Animation Mod

If you liked this item, please rate it up on Steam Workshop page.

Author: RonSatoyan

Last revision: 5 Feb at 05:09 UTC

File size: 20.11 KB

On Steam Workshop

Description:

Steam Locomotive Rod Animation Mod (Speed-dependent)
I not only worked on the lead car, but also on multiple-unit cars and assets with push-pull and turning functions.
Although the title is "Steam Locomotive,"
it’s essentially a mod that just moves a rod, so it can be used with any vehicle that has a rod, whether it’s a diesel locomotive or an electric locomotive.

Currently supported assets: 2026/2/5
 JNR Type9600 & OHa35series x 4 (Passenger train,Reversible)
   https://steamcommunity.com/sharedfiles/filedetails/?id=3659902857

However, asset creators must prepare assets that conform to SteamLocomotiveAnimationMOD.
We will explain how to create them at a later date.

Currently supported assets: 2026/2/5
 JNR Type9600 & OHa35series x 4 (Passenger train,Reversible)
   https://steamcommunity.com/sharedfiles/filedetails/?id=3659902857

Steam Locomotive Animation Mod Notes
1. Submesh and Material Names (Most Important)

For parts you want to animate (such as rods and wheels),
make sure the "submesh name" and "material name" are the same.
✅ Example: Submesh name C62rodwheel → Material name C62rodwheel
❌ Not Recommended: Submesh name C62rodwheel → Material name Material01

The mod searches for and controls a material with the same name as the submesh name.
→ If they do not match, the animation will not work.

2. About the XML Configuration File

Name the configuration file "SteamLocoParam.xml" and place it in the public assets folder.
For testing purposes,
it will also work if you place it in Local Disk. AppDataLocalColossal OrderCities_SkylinesAddonsAssets

Example
<?xml version="1.0" encoding="utf-8"?>
<SteamLocoParams>
<!– Lead Locomotive –>
<Param>
<AssetName>3659902857.9600R_OHa35x4_Data</AssetName>
<SubMeshIndex>2</SubMeshIndex>
<WheelDiameter>1250</WheelDiameter>
<FrameCount>16</FrameCount>
<AnimationSpeedMultiplier>1.0</AnimationSpeedMultiplier>
</Param>
</SteamLocoParams>

Meaning of Each Parameter
AssetName: Vehicle asset name (the name you can see in the Asset Editor)
Pay attention to the Trailer number! The second car from the front is "0," the third car from the front is "1."
SubMeshIndex: Submesh number to animate
The first submesh is "1." Do not confuse this with the Trailer number.
WheelDiameter: Actual driving wheel diameter [mm].
This is the diameter of the driving wheel directly connected to the rod.
FrameCount: Number of frames in the sprite sheet (16 frames recommended).
If there are too few frames, the movement will be jumpy at low speeds.
    Increasing the number of frames will result in more realistic movement,
but the file size will become extremely large.
AnimationSpeedMultiplier: Rotation speed multiplier (2.0-10.0 recommended, adjustable). Do not modify.

3. Operational Specifications
Animation stops when the game is paused.
Frames also stop when the speed is near 0, such as when the train is stopped at a station.
The train will automatically reverse rotation when making a turn.

4. Common Problems and Solutions (FAQ)
Q1. Animation doesn’t work.
Please make sure the submesh name and material name match.
Please make sure the SubMeshIndex in SteamLocoParam.xml is correct.

Q2. The animation won’t stop. Try pressing the reset button in the options to return it to normal.
   If that doesn’t work, try quitting the game and restarting it.
   If the game crashes frequently, stop using the mod immediately as it will put a heavy load on your PC.
   I take no responsibility for any damage caused by this.
   I will not be held responsible for any damages caused by this.

If you have any advice, please let me know on Discord.
Also, if you could support me, I would like to continue creating assets in the future.
   → https://ofuse.me/#users/7490

SteamLocomotiveAnimationMod by RonSatoyan 2026