Transport Fever is a pure and awesome sandbox railroad-focused tycoon simulator game. Players start in 1850 and build up a thriving transport company. As an emerging transport tycoon, the player constructs stations, airports, harbors and makes money by connecting areas requiring transport services.
Every game has a slightly different means of sharing user developed mods.
After struggling with publishing my first Transport Fever mod I decided to attempt this guide.
There are already other guides on this subject written by folks who obviously know a LOT more about the subject than I do. Some cover what this guide covers and a whole lot more. Others just cover the details in a different format. I’ve tried to organize the information here in a way that I found most logical. Perhaps other newcomers like myself will find some of this information useful.
I encourage you to leave any comments or suggestions that you may have and by all means, check out the other guides that touch on these issues.
Staging a new Mod
These must be placed in the staging area if you wish to submit a mod . It’s a convenient place to do testing as well.
In order for a workable mod to be published to Steam, the Staging Area must contain a directory that contains all of the mod’s components.
Components may vary from mod to mod but the following is a bare minimum
- an LUA file called mod.lua –
- This contains instructions on how to fill the required fields on Steam
- Depending on how you structure the mod.lua you may also need a strings.lua
- an image in TARGA format called image_00.tga
- This is the image that will be used in any mod list that Steam generates.
- It should be 320×180 px.
- Do NOT use RLE compression on this image
- Downscale it to 20px tall and store a second copy in a sub-folder (in my case \res). I understand that this is needed if the image is to appear on some lists but am not sure which.
- an image called workshop_preview.jpg – This is the image that will be featured prominently in the full page display that Steam generates about your mod.
- If you wish to have more than one image in a gallery style the other images should be here as well called workshop_preview(1).jpg, workshop_preview(2).jpg, workshop_preview(3).jpg etc.
- a res directory – this contains any resources that you need to add to the game as well as any resources that you want your mod to change or overlay
You will note that in my example there’s a file called workshop_fileid.txt this will be generated when your mod is uploaded and and contains your userid number
The lua may be as simple as this
A Sample Strings LUA
- It’s possible to code markup language (such as lists, bolds & italics) into the description . If you’ll look at my actual mod you will see that I’ve done so but in this example, it would just confuse the Steam editor.
- s double hyphen (–) is LUA syntax making the rest of what is on that line a comment
- backslash n (\n) is the LUA syntax for a new line
- A very long line of quoted text may be broken into pieces by closing a string of quoted text with a closing quote and using two dots (..) as the LUA syntax for a continuation and then restarting the quoted string on the next line with a quote in order to continue the the quoted string.
- When writing LUA syntax, it is imperative that you balance opening and closing brackets, opening and closing quotes and opening and closing braces. Notepad++ helps with that to some degree but one should always do a spot check.
- I didn’t need it here but backslash quote (\”) indicates that the quote mark is part of the text string and NOT an LUA quote
Once you’ve met the requirements of having a properly named mod directory in the staging area and having all the components that Steam and Transport Fever know that you need, a Publish Mod Button will appear.
If everything goes to plan the next screen you see will be
Note the yellow circle around the word Publish?
Do NOT click on it yet.
The Mod Name and Description fields will have been filled based on what you entered in the LUAs.
- You can make any last minute changes by typing them in here, but is generally better to go back and re-edit the LUAs themselves.
STILL don’t click that PUBLISH!
Instead try starting a new free-game or a saved game that you wouldn’t mind corrupting with your mod as it resides in the staging area
Notice that there are two version of my mod? The one circled in Yellow is the Staging Area version. It will appear once you’ve successfully gotten to this point.
The one with the Steam logo (pointed to here by the green arrow) will only appear when you’ve actually shipped it up to the Steam Workshop
To activate a mod just click on the slider to the right of its listing.
NOTE: Even after successfully shipping a mod to Steam, only you (and any co-creators) will be able to see it as long as it is still marked private. Don’t switch that to Public until you are certain that your mod will not corrupt anyone’s dearly beloved save-game.
Notepad++ is a free open-sourced code editor that works well with LUA language files.
Blender is a great open sourced modelling suite that many find useful in creating the models for new assets such as rolling stock, locomotives and buildings.