SimpleFFB replaces the game's built in force feedback completely. You turn the in-game FFB off, and the plugin takes direct control of your wheel through DirectInput, generating every force itself from live telemetry.
It was written and tuned on Logitech G wheels, but it talks to the wheel through plain DirectInput, so any DirectInput force feedback wheel should work (G27/G29/G920/DFGT, Thrustmaster, Fanatec and so on), though at present I cannot test to verify how other wheels will feel with the plugin. Give it a test and let me know. I may include other presets for other wheels if other users recommend them.
EFFECTS
- Self centering that stays out of your way while parking and builds up with speed. It is computed from telemetry rather than a stock DirectInput spring, so it can be firm just off center and relax toward full lock instead of the other way around.
- Steering weight that is heavy at a standstill, lightens once you are rolling, and can get heavier with cargo load.
- Stiff steering when the engine is off. No engine means no power steering.
- Bump steer: a short tug to one side when a front wheel rides up onto a bump.
- Real road surface feel taken straight from the front suspension. Bumps kick the wheel, rough ground and offroad jolt it.
- Rumble strip vibration, triggered by the actual surface under your front wheels.
- A firm thunk when the suspension takes a hard hit.
- A subtle buzz while the engine brake is working.
- Optional light synthetic road texture so perfectly smooth roads do not feel dead.
Everything is adjustable in the ini file, and the file hot reloads: save a change while driving and you feel it about a second later, no restart needed.
INSTALLATION
1. Copy ats_ffb_plugin.dll and ats_ffb_plugin.ini into:
American Truck Simulator\bin\win_x64\plugins
Create the plugins folder if it does not exist yet.
2. In game, go to Options > Controls and set Force Feedback to 0. This step is not optional. The plugin needs exclusive access to the wheel's force feedback, and if the game's own FFB is still on, the game keeps hold of the wheel and the plugin cannot take over.
3. Match your wheel rotation (900 degrees for example) in your wheel driver and in game.
4. The game will show a warning about advanced SDK features on startup. That is normal for any telemetry plugin, just confirm it.
You can verify it worked in game.log.txt in your Documents folder. Look for the line "ATS FFB: took over wheel ... via DirectInput (exclusive)".
CUSTOMIZATION
The default settings are a sensible baseline for Logitech G wheels. Every effect has its own section in the ini with strength, speed thresholds and shaping, plus a master section at the top to scale the whole wheel at once. Speeds in the ini are in mph by default, switchable to kph or m/s, though you will have to convert the values yourself.
A few things worth knowing settings wise:
- If the wheel pushes away from center instead of centering, set spring_invert = 1. Constant force polarity differs between wheel brands and cannot be detected automatically.
- If you have more than one force feedback device connected, set device_name_filter (for example G29) so the right one gets picked.
- If the vibration effects feel dead around center on a geared wheel, raise that effect's center_compensation value. Gear stiction swallows small forces near center, and this setting boosts them back up there without touching the rest of the range.
NOTES
- No game files are modified. This is a standard SCS telemetry plugin, everything lives in the plugins folder.
- Works in ETS2 as well, same install under Euro Truck Simulator 2\bin\win_x64\plugins.
- To uninstall, delete the dll and ini files from the plugins folder.
I've included a Source folder, that contains the source code and build instructions. Feel free to make any changes to the plugin and upload at your leisure. This plugin was made in large part by the community, and it is the community's to do with as you please.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Small note to say that I really had no idea what I was doing when this was created. Special thanks to the many who helped, answered questions and responded to my messages, and especially to "Rooster", who took the time to walk me through most of this process step by step. Also, yes, AI tools were used to help me through the process of building this plugin. Without it, this would not have been possible, as I am a single dad, a caregiver for a disabled child, and a freelance trucker. There was so much I had to learn in such a short time for this project, and I used AI to help make that process a little less time consuming. Prior to this project, I have mostly written just basic Python scripts. It goes without saying, but, Rooster and I, and primarily the trucksim community did the heavy lifting. Still, if this is something that you feel strongly about, I totally understand and to some extent I do too, so I'm leaving this message here so that you can decide for yourself. At the end of the day, I started this project so that I could further enjoy the game, and I hope that you enjoy this plugin as much as I do.