Looking for a way to drive Train Sim World using your own joystick, throttle, or custom controller setup? This open-source mod and program uses UE4SS to inject input directly into the game, giving you complete control over the train and completely bypassing the raildriver interface.
✅ Customizable profiles per locomotive
✅ Cross-platform support (Windows/Linux)
✅ Works with most analog/game controllers
This software requires some configuration and set-up most of which can be found on Github
https://github.com/LiamMartens/tsw-controller-app
https://github.com/LiamMartens/tsw-controller-app/blob/main/beta.package/README.md
Explanations on the profile configurations can also be found in the repository
https://github.com/LiamMartens/tsw-controller-app/blob/main/beta.package/PROFILE_EXPLAINER.md
Previous threads where I answer questions / give suggestions
https://www.reddit.com/r/trainsimworld/comments/1jqt103/i_created_a_modsoftware_to_directly_control_in/
https://forums.dovetailgames.com/threads/i-created-a-mod-software-to-directly-control-in-game-trains-using-a-joystick-no-raildriver.90609/#post-999423
Changelog
v0.2.4 - 2025/06/15
- Fix calibration mode not exiting and writing files.
v0.2.3 - 2025/06/06
- Update the mixing of
null
values to act as free range zones instead of automatic interpolation zones. This makes for smoother actions between detents. Eg, the following steps value:[0.0, null, 0.5, 0.6, null, 1.0]
- will snap to0.5
and0.6
but allow free range of motion between0.0
and0.5
and0.6
and1.0
.
Requirements
UE4SS Code Library
Other for Train Sim World · by Luex · 12 May 2025You can also install UE4SS directly from the UE4SS GitHub repository
!! USE THE LATEST EXPERIMENTAL VERSION
https://github.com/UE4SS-RE/RE-UE4SS/releases
Installation Instructions
See Github instructions (https://github.com/LiamMartens/tsw-controller-app)
In short you will need to
- Calibrate and set-up your joystick / gamecontroller
- Disable the game controller for Train Sim World by enabling steam input and completely clearing the mappings (otherwise you get in game conflicts)
- Install UE4SS and add the UE4SS mod
- Configure your profiles (or use some of the pre-defined profiles to start)
- Run the program
Tags: gamepad joystick raildriver
Files
beta.package.zip 55 MB · Added 6 days ago · Downloaded 14×Previously uploaded files have been downloaded 55 times before being withdrawn.
Comments
Add a comment
If you wish to leave a comment, please log in .
About this mod
- Created
- 29 days ago
- Updated
- 6 days ago
- Game
- Train Sim World
- Type of content
- Utility
- Train Sim World compatibility
- Train Sim World 5
Thanks for this very useful piece of software, especially for the linux support! Quite simple to set up and just works "out of the box" with my Arduino powered DIY controller.
I've got two little suggestions for improvements:
Good to hear it works with your Arduino powered controller! I actually just updated the software to interpret the
null
values as free range motion instead of automatic interpolation. So it will now just jump to the notches where defined and between the defined notches if there is anull
value it will just send raw values. Try it out to see if that's better!Yea it's a good point; it is more difficult to print out those names because of how the internals work which is why you need to look them up through the UE4ss code generation. I'll have a look though