EURO TRUCK SIMULATOR 2 · SERVER MODS GUIDE · NOVEMBER 2026

How to Install Mods on a Euro Truck Simulator 2 Server

An ETS2 Convoy dedicated server never holds a single mod file. It only knows what your game exports for it. Here is how to build the mod list, export and upload the server packages, make optional mods really optional, and keep friends joining after every Workshop or game update.

Your PC is the master copy

The exporting profile is the source of truth for map, DLC checks and mod order. The dedicated server only advertises what that profile exported.

Required beats optional for shared content

Map mods are always required. Local screen and sound changes are the safest optional candidates because they do not need a shared world state.

Most “wrong version” errors are update drift

Workshop mods update on players’ PCs, but the server keeps advertising the old export until you replace both package files and restart.

Above 8 players needs three settings

Raising the convoy size is not just one server change. The server and every player must raise g_max_convoy_size, and the server must also raise max_players.

How mods work on an ETS2 Convoy server

An ETS2 dedicated server is a referee, not a mod host. It does not own DLC, cannot download Workshop items, and never mounts your .scs or .zip mod files. What it does load is a session configuration plus two exported package files that describe the map, DLC requirements and mod list for the convoy.

That is why the export step matters so much. The profile on your PC is the real master copy: whatever was active there, in that order, becomes the server’s advertised truth. The files are not linked to your account, so you can export on one machine and upload on another, but the server still depends on that export being current.

Item Where it lives Who needs it Why it matters
server_config.sii Server home folder Server Session settings such as name, password and player cap. It does not contain the actual mod files.
server_packages.sii Exported from a game client, then uploaded to the server home folder Server Contains the exported server_packages_info block: version, DLC lists, mod list, map name, map dimensions, roads data file name and timestamp. This is what the server advertises to players.
server_packages.dat Exported from a game client, then uploaded to the server home folder Server Contains the internal map data the server needs for the right map. This is why map mods still work even though the server has no mod files itself.
Mod files On the exporting PC and on each joining player’s PC Clients, not the server The game client mounts the actual assets. For downloaded mods that is usually Documents\Euro Truck Simulator 2\mod\; Workshop subscriptions appear in Mod Manager.
DLC On players’ game installs Exporting PC and any player whose active mod set depends on that DLC Players do not all need the same map DLCs in Convoy, but a mod with dlc_dependencies cannot be activated without that DLC, so that mod effectively forces it on everyone who needs that mod active.

Think of the process as a pipeline from one known-good profile out to the server and then to the joining players.

How a mod list gets from your PC to the convoy
On your PC
Convoy profile: mods active, in order
load into the map
export_server_packages
writes two files
server_packages.sii + .dat
On the server, then for players
Upload to server home, restart
lists mods
Session browser shows required mods
sync
Players match and join
The server never downloads or loads the mods. Every player’s PC does.
Change the mod list, and you export and upload both files again.
The profile you export from is the master copy: the server only repeats what that export says.

Plan the mod list before you export

Make a separate Convoy profile just for the modded server, and back up Documents\Euro Truck Simulator 2\profiles before you start changing the list. That is not overcautious: SCS warn that, in rare cases, removing or changing a crucial mod can damage a profile. A separate profile contains that risk and makes update rollback easier.

Also keep the list disciplined. When SCS added mod support to Convoy in 1.42, they capped a session at 70 mods. Treat that as a ceiling, not a target. A long list mainly increases admin overhead, player-side storage and mismatch risk; it does not make the server better.

Use this rule: if a mod changes the shared world, shared vehicles or anything friends are meant to see, lean towards required. If it only changes your own screen or sound, lean towards optional.

Mod type Default decision Can it be optional? Why
Map mods and map dependencies Required No Map mods ignore the optional flag. The server’s exported road data and every player’s world must match.
Truck, trailer and cargo mods Usually required Only if your group accepts inconsistent visuals Other players need proper traffic models to see them correctly. If those models are missing or the mod is not shared, friends may see defaults or not see the intended asset.
Traffic or other shared-world content mods Usually required Only if the author built them for optional use and your group accepts differences These are poor optional candidates because they affect what the session is trying to represent collectively.
Graphics, weather or other local screen changes Often optional Yes, if the mod is marked optional and only changes the local client They only change one player’s screen. The trade-off is that players do not all see the same presentation.
Sound mods Good optional candidate Yes Sound is local only anyway, and remote trucks use simpler soundbanks. Making sound required adds join friction without improving sync.
Any mod with dlc_dependencies Plan carefully Not for players who lack that DLC If a mod declares a DLC dependency, it cannot be activated without that DLC. Since 1.48 authors can build DLC-aware parts more flexibly, but the dependency rule still applies if the mod uses it.

Load order is part of the export. In Mod Manager, the mod at the top of the active list has the highest priority and overrides files from mods below it. For map mods and their dependencies, follow the author’s order exactly. If you export the wrong order, the server will faithfully advertise the wrong order.

Which ETS2 mods can be optional on a Convoy server?
Mod typeCan be optionalOther players see or hear it
Map mods and their dependenciesNoYes
Trucks, trailers and cargoPartlyPartly
Graphics and other screen-only modsYesNo
Sound modsYesNo
Optional needs all three: mp_mod_optional: true from the author, mods_optioning: true on the server, and the player allowing optional-mod servers.
Partly: vehicles are only seen properly by others if the mod includes traffic models.
Map mods are always required. Screen and sound mods are the best optional candidates because nobody else experiences them anyway.

Export the server packages from your PC

This is the part most short guides rush past. The reason it works is simple: you are asking the game client, which actually has the mods and DLC checks available, to produce the package description the headless server cannot build by itself.

uset g_console "1"
uset g_developer "1"
  1. Close the game and edit Documents\Euro Truck Simulator 2\config.cfg to enable the console. The first line above is the essential one. Many hosts also tell you to enable g_developer; it is commonly used alongside the console.
  2. Start ETS2 and load the profile that has exactly the mods you want. Double-check the active list and its order in Mod Manager first. The export will contain whatever is active at that moment, in that order.
  3. Load into the map, not just the menu. The export reads the loaded map and the mods mounted for it, so be in the world with your truck, then run the command.
  4. Open the console with the ~ key (below Esc).
  5. Run export_server_packages or add a filename if you want. The game writes server_packages.sii and server_packages.dat to Documents\Euro Truck Simulator 2\.
  6. Copy those two files somewhere safe. They are the server package pair you upload. Keep them together; they describe one state of one profile at one moment.

Before you upload, open server_packages.sii in a text editor and sanity-check the structure. You are looking for the right game version, the expected DLC lists and, most importantly, the expected mod_list entries in the right order.

SiiNunit
{
server_packages_info : ... {
 version: ...
 dlc_essential_list[]: ...
 dlc_non_essential_list[]: ...
 mod_list[]: ...
 map_name: ...
 map_dimensions[]: ...
 roads_data_file_name: ...
 time_stamp: ...
}
}

If the list is wrong here, the server will be wrong after upload. Fix the profile, export again, then upload. Do not try to “patch” the server by hand; the export should stay the source of truth.

Upload the packages to the server

On a rented Linux server, upload server_packages.sii and server_packages.dat into the home folder, typically .local/share/Euro Truck Simulator 2/, overwrite the old pair, then restart the server. On host panels you may see file manager, FTP and startup parameter tools, but there is no Workshop install button that solves this for ETS2 because the dedicated server never loads Workshop files.

For self-hosting a game server, the same rule applies: place the files in the server home folder, or in whatever location the server start command points to with -homedir. server_config.sii lives beside them and controls the session settings.

Always overwrite both package files together. server_packages.sii is the advertised description; server_packages.dat is the matching internal map data. Updating one without the other is how you create stale, confusing states that waste time in the browser and sync window. The cost of doing it properly is only a little disk I/O and a restart.

If the server does not start correctly, check server.log.txt. If the files are missing or in the wrong home folder, you will see:

<ERROR> [MP] Error: Server packages file not found. This is required to load proper map, DLCs and mods

If the log shows that error, fix file placement before touching the mod list. server.crash.txt is there as well if the process exits unexpectedly.

Make optional mods actually optional

Optional mods only work when three separate conditions are true. Miss one of them and the server will still force the mod on every player.

SiiNunit
{
server_config : ... {
 ...
 mods_optioning: true
 ...
}
}
  • The server must have mods_optioning: true in server_config.sii.
  • The mod author must have marked the mod optional with mp_mod_optional: true in the mod’s manifest.
  • The player must allow optional-mod servers in their session browser filter.

Map mods ignore the optional flag and are always required. Also, with mods_optioning left false, every exported mod becomes mandatory no matter what the author intended.

How do you check a mod’s flag? Read the mod’s manifest.sii, or inspect the relevant entry in the exported server_packages.sii. This is worth doing before you promise friends that a graphics or sound pack is “optional”. If it is not flagged properly, players will hit a join wall instead of getting a choice.

Optional mods are best used to cut admin friction, not to avoid proper planning. They reduce profile churn and missing-mod support work, but the trade-off is that not everyone sees or hears the same thing.

How players join a modded server cleanly

When a player highlights the server in the session browser, the mod requirements appear on the right. Each server carries an icon: green means you can join, red means you cannot (the session is full, or the map or game version does not match), and orange means you are only missing mods, which the sync window can fix.

Clicking an orange server opens the sync window. The player’s active mods are on the left and the server’s required list is on the right. Missing Steam Workshop mods can be subscribed through the in-game Steam overlay. Third-party mods must be downloaded manually from the same source, and the game cannot verify their version for you.

The confirm button only activates when everything matches. That is why sending friends a clean mod pack note beforehand saves so much time: include the source for each mod, the exact order and which ones are truly optional. This does not change server CPU or bandwidth, but it removes the biggest human bottleneck in modded Convoy.

Ask players to back up their profile folder before joining a heavily modded session, or better still use a separate Convoy profile. For manual mods, the local files usually sit in Documents\Euro Truck Simulator 2\mod\.

A friend can’t join your modded ETS2 server? Work down the list
A friend can’t get into the modded convoy
Can they see the server in the session browser?
No
Convoy sizeAbove 8 players, they must raise g_max_convoy_size in their config.cfg.
Yes
Is the server icon red?
Yes
Version or mapSession full, or game version or map differs. Update the game first.
No
Is the server icon orange?
Yes
Missing modsOpen the sync window. Subscribe on the Workshop or fetch the same third-party files.
No
Mods match but it still says wrong version?
Yes
Stale exportA mod updated. Re-export, upload both files, restart.
No
Still stuck: check server.log.txt for the “Server packages file not found” error
Stop at the first yes or no that sends you sideways. Each branch matches a section of this guide.

Handle mod updates and game updates without breaking joins

If the server worked yesterday and now says wrong mod version, the usual cause is a Workshop update. Players get the new mod version automatically, but the server still advertises the old exported list until you replace the package pair. The server cannot auto-update mods because it does not have the mods in the first place.

Safe update routine

  1. Let the exporting PC update the game or Workshop items.
  2. Open the dedicated Convoy profile and make sure the mod list still loads in the intended order.
  3. Re-run export_server_packages.
  4. Upload the new server_packages.sii and server_packages.dat together.
  5. Restart the server and tell players to update and relaunch before joining.

At the time of writing ETS2 is on 1.61. After any major game update, wait for map mod updates before exporting again. Map mods are the most likely to break, and some non-Workshop mods also use compatible_versions in their manifest to block unsupported game versions.

For third-party mods, “same mod” must mean byte-identical file with the same filename. On Windows, compare the files in the mod folder with PowerShell:

Get-FileHash -Algorithm md5 *.scs

If the hashes differ, the files differ, and the game cannot sort that out on its own. You will know the fix worked when the server stops showing a mismatch and players can confirm the sync window again.

What a Workshop mod update does to your convoy
And the four steps that fix it
1. Author updates
Players’ Workshop copies
update on their own
Server still lists the old version
2. Joins fail
Players get a
wrong-version mismatch
The server cannot update mods
3. Re-export
On the master PC, in the map:
export_server_packages
Same profile, same order
4. Upload + restart
Both files together,
then restart the server
Players relaunch and join
After a major game update
  • Wait for your map mods to be updated first
  • Then re-export and re-upload the two files
Third-party mods: compare files with Get-FileHash -Algorithm md5 *.scs
Most “it worked yesterday” problems are this cycle. Re-exporting after every mod update keeps the server and players in step.

Go above 8 players without making the server disappear

Since 1.50, an ETS2 session can hold up to 128 players, but the default cap is 8. Raising it is a three-part change, not one toggle.

  • In server_config.sii, raise max_players to the size you want, up to 128.
  • In the server’s config_ds.cfg, raise g_max_convoy_size to the same value, up to 128.
  • On every player PC, with the game closed, raise g_max_convoy_size in Documents\Euro Truck Simulator 2\config.cfg to the same value, up to 128.

The last part is the one groups miss. If players leave their client at the default, they may not find the server in the browser at all. max_players controls the session cap; g_max_convoy_size controls what the server and clients consider a valid convoy size for listing and joining.

More players also mean more traffic to keep in sync and more moderation. A big map stack with lots of players asks far more of the setup than a few local-only sound mods ever will.

Symptom, likely cause, first fix

Symptom Likely cause First fix
Server packages file not found server_packages.sii and/or server_packages.dat missing, wrong folder, or wrong -homedir Put both files in the real server home folder, restart, and confirm the exact error disappears from server.log.txt.
Server shows but has an orange icon Player is missing mods that can be synced Open the sync window, subscribe to Workshop items through the overlay or install the missing third-party files, then match the active list.
Wrong version or mod mismatch after it worked yesterday Workshop updated on clients, or one third-party file changed Re-export from the master profile, upload both package files together, restart, then compare hashes for manual mods if the problem remains.
Players see each other’s modded trucks as default or invisible The vehicle mod is not shared properly, is not required, or lacks the traffic models other players need Treat that vehicle-related mod as required for the group, or accept that it is only a local cosmetic change.
Cannot activate a mod because DLC is missing The mod declares dlc_dependencies Check who owns the required DLC, or remove that mod from the exported list and re-export.
Server not listed for friends above 8 players g_max_convoy_size not raised on the server, the players, or both Set max_players and both g_max_convoy_size values consistently, with each player editing their config.cfg while the game is closed.
Map mod server will not start after a game update The map stack is not updated for the new game version Wait for map mod updates, then load the profile again and re-export the package pair.
Optional mod is still forced One of the three optional conditions is missing Set mods_optioning: true, verify mp_mod_optional: true, and check the player’s browser filter for optional-mod servers.
Profile broken after leaving A crucial mod was removed or changed Restore the profile backup, then keep a separate Convoy profile for that server in future.

If several things changed at once, debug in layers: game version first, then DLC availability, then mod files, then load order, and only then the uploaded server packages. That order saves the most time.

Tune what you have, or move to a cleaner server setup

Once the install method is correct, the next question is not “more mods or less”, but “what is actually stressing the setup?” Big player counts mostly raise CPU and bandwidth. Heavy map packs make update timing more fragile. Very long mod lists raise admin and sync overhead more than raw performance. If you want a refresher on game server hardware requirements, start there before changing plan size blindly.

Situation Tune first Consider upgrade or cleaner setup when Why it matters
Small private group, few mods, no big map changes Use one dedicated export profile, keep optional mods truly optional, and stick to an update routine Your current setup makes file replacement and restarts awkward Most failures here are process mistakes, not lack of power.
Mod list pushing towards the 70 cap Prune local-only extras, merge duplicate ideas, and stop requiring cosmetic mods You spend more time fixing joins than running sessions Near the cap, admin complexity becomes the main problem.
Large map pack with several dependencies Lock the order, wait for author updates, and export only from one master profile Starts become unreliable after updates, or the server struggles to stay consistent for the group Map stacks are the most sensitive part of the mod chain.
Regular sessions above 8 players Set all three convoy-size values correctly and keep the mod list disciplined Peak sessions need steadier CPU time, bandwidth and remote admin access Player count stresses the live server more than cosmetic mod count.
Frequent Workshop churn or mixed manual mods Nominate one exporter, document sources, and use hash checks for manual files You need faster restarts, better log access or simpler file handling This is an operations problem first, not a gameplay one.
Friends expect the server to be available at fixed times Reduce last-minute mod changes and keep a known-good backup of the package pair Your current machine sleeps, reboots, loses connectivity or is awkward to manage remotely Uptime and recoverability become more important than raw mod count.
Need a cleaner ETS2 server setup?

If your current host or machine makes file access, restarts and logs harder than they need to be, compare setups that let you replace the package pair quickly and keep mod updates under control.

Compare the best Euro Truck Simulator 2 server hosts

Euro Truck Simulator 2 server FAQ

Can you use mods on a Euro Truck Simulator 2 Convoy server?

Yes. Convoy arrived in 1.41, mod support in Convoy arrived in 1.42, and dedicated server support arrived in 1.46. On a dedicated server, the modded session works by exporting package files from a client profile and uploading those files to the server.

Do my friends need the same mods to join my ETS2 server?

They need the same game version and the same required mods in the same order. Optional mods do not have to match, but only if the mod author marked them optional, the server enables optional mod handling, and the player allows optional-mod servers in their browser filter.

Can I install Steam Workshop mods directly on an ETS2 dedicated server?

No. The dedicated server has no Workshop access, no DLC and no mod files of its own, so it cannot download or update Workshop items. What you upload is the exported server_packages.sii and server_packages.dat, not the Workshop content itself.

Why does my ETS2 server say wrong mod version after a mod update?

Because the players’ Workshop copies updated automatically while the server is still advertising the old exported mod list. Re-export the package files from the updated profile, upload both files together, restart the server and ask players to relaunch before joining.

Can players join my modded ETS2 server without the same DLC?

Sometimes, yes. In Convoy, players do not all need the same map DLCs by default, but any mod with dlc_dependencies cannot be activated without that DLC, which effectively makes that DLC mandatory for anyone who needs that mod active. In practice, the mod list decides the answer.

More Euro Truck Simulator 2 server help

The host comparison, plus our guides on running and sizing a game server yourself.

Game updates, host panels and file layouts can change. If your host’s current panel wording differs from the steps above, follow the host’s live panel for the upload and restart part, but keep the same export logic.