All Projects → lhark → Truckersmp Cli

lhark / Truckersmp Cli

Licence: mit
A simple launcher for truckersMP to be used with wine

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Truckersmp Cli

BNSBoost
A simple launcher for Blade & Soul patches. Working as of the Fire and Blood game update.
Stars: ✭ 19 (-82.88%)
Mutual labels:  mod, launcher
equine
Mod manager/launcher for Diablo 1
Stars: ✭ 27 (-75.68%)
Mutual labels:  mod, launcher
OneLauncher
Launcher and Addon Manager for LOTRO and DDO
Stars: ✭ 21 (-81.08%)
Mutual labels:  launcher, wine
Gdlauncher
GDLauncher is a simple, yet powerful Minecraft custom launcher with a strong focus on the user experience
Stars: ✭ 386 (+247.75%)
Mutual labels:  launcher, mod
Opencage
A modding toolkit for Alien: Isolation that covers a wide range of game content and configurations.
Stars: ✭ 98 (-11.71%)
Mutual labels:  mod
Cairoshell
Cairo is a customizable, intuitive desktop environment for Windows.
Stars: ✭ 1,307 (+1077.48%)
Mutual labels:  launcher
Gaucho
Minimalist task launcher
Stars: ✭ 90 (-18.92%)
Mutual labels:  launcher
Eidolon
Provides a single TUI-based registry for drm-free, wine and steam games on linux, accessed through a rofi launch menu.
Stars: ✭ 85 (-23.42%)
Mutual labels:  wine
Antiqueatlas
A Minecraft mod that adds a fancy interactive map item.
Stars: ✭ 110 (-0.9%)
Mutual labels:  mod
D2 Plugy Qol
QOL Mod Pack for Diablo II.
Stars: ✭ 105 (-5.41%)
Mutual labels:  mod
Githubdesktopportable
A portable build of GitHub Desktop packaged in compliance with the PortableApps.com format specifications.
Stars: ✭ 99 (-10.81%)
Mutual labels:  launcher
Armourers Workshop
Minecraft armour customization mod.
Stars: ✭ 92 (-17.12%)
Mutual labels:  mod
Tvlauncher
A TV Launcher UI use ViewPager+CustomView as Main Frame, like win8 style, including several specially good effect CustomWidget, such as FlyBorderView, PosterView, ReflectView, RippleLayout, TextImageView and so on. Also it defines some animation effects and functional utils.
Stars: ✭ 102 (-8.11%)
Mutual labels:  launcher
Iconshowcase
Full-of-features, easy-to-customize, free and open source, Material Design dashboard for icon packs.
Stars: ✭ 91 (-18.02%)
Mutual labels:  launcher
Voxelman
Plugin-based client-server voxel game engine written in D language
Stars: ✭ 105 (-5.41%)
Mutual labels:  launcher
Leanbacktvsample
Leanback Demo
Stars: ✭ 85 (-23.42%)
Mutual labels:  launcher
Dotweb
Simple and easy go web micro framework
Stars: ✭ 1,354 (+1119.82%)
Mutual labels:  mod
As
VCV Rack Modules
Stars: ✭ 104 (-6.31%)
Mutual labels:  mod
Bombsquad Community Mod Manager
A Mod Manager for BombSquad
Stars: ✭ 98 (-11.71%)
Mutual labels:  mod
Fast
FAST App Search Tool
Stars: ✭ 96 (-13.51%)
Mutual labels:  launcher

truckersmp-cli

A simple launcher for TruckersMP to play ATS or ETS2 in multiplayer.

truckersmp-cli allows to download TruckersMP and handles starting TruckersMP through Wine while supporting the Windows versions of American Truck Simulator and Euro Truck Simulator 2.

The Windows version of Steam should already be able to run in the same Wine prefix. The Windows versions of ATS and ETS2 can be installed and updated via SteamCMD while all running Steam processes will be stopped to prevent Steam from loosing connection. Your Steam password and guard code are required by SteamCMD once for this to work.

On Linux it's possible to start TruckersMP through Proton. A working native Steam installation is needed for this which has the desired game installed or with an update pending. SteamCMD can use your saved credentials for convenience.

Known issues

  • It was reported that "ProMods + ETS2MP" crashes with Proton 5.13 but Proton 5.0 works (issue #147)
  • If (default) OpenGL rendering backend is used, game crashes due to a bug in Multiplayer DLL when trying to choose a color for "Player tag" or "Players on the world map" (issue #91)
    • A workaround is to use D3D11 rendering backend by specifying -d (--enable-d3d11)
  • If D3D11 rendering backend is used, TruckersMP login screen is not shown without Windows native 64-bit d3dcompiler_47.dll
    • truckersmp-cli provides --activate-native-d3dcompiler-47 option as a workaround: When this is specified with -s (--start), truckersmp-cli downloads/activates the DLL
      • Once the DLL is activated, there's basically no need to specify the option again
      • When downgrading Proton, the native DLL is removed: Then --activate-native-d3dcompiler-47 is needed again

Install

From repository (recommended)

System repository (recommended)

If available install from your repository. Updates will ship through your normal system update process.

Python Package Index

Operation System-wide Per-user (recommended)
Installation python3 -m pip install truckersmp-cli python3 -m pip install --user truckersmp-cli
Optional dependencies python3 -m pip install truckersmp-cli[optional] python3 -m pip install --user truckersmp-cli[optional]
Update python3 -m pip install truckersmp-cli --upgrade python3 -m pip install --user truckersmp-cli --upgrade
Additional information This usually requires root permission and can interfere with other python packages installed through your normal repository so be careful. Make sure the binary path (e.g. $HOME/.local/bin) is in your $PATH.

Manual download

You can get the latest pre-built release from the release page and decompress it into the desired folder. This version is capable to update itself by running --self-update so make sure it's placed in a folder where your user has write permissions.

Runtime dependencies

Required

Optional

  • pkg_resources (part of setuptools) to get the version information from the Python package
  • vdf to automatically detect the steam account with saved credentials
  • wine as a possible replacement to Proton

Usage options

Short option Long option Description
-h --help Show help
-a --ats Use American Truck Simulator
-b VERSION --beta VERSION Set game version to VERSION, useful for downgrading (e.g. temporary_1_35)
-d --enable-d3d11 Use Direct3D 11 instead of OpenGL
-e --ets2 Use Euro Truck Simulator 2 [Default if neither ATS or ETS2 are specified]
-g DIR --gamedir DIR Choose a different directory for the game files [Default: $XDG_DATA_HOME/truckersmp-cli/(Game name)/data]
-i APPID --proton-appid APPID Choose a different AppID for Proton (Needs an update for changes)
-l LOG --logfile LOG Write log into LOG, -vv option is recommended [Default: Empty string (only stderr)] Note: Messages from Steam/SteamCMD won't be written, only from this script (Game logs are written into My Documents/{ETS2,ATS}MP/logs/client_*.log)
-m DIR --moddir DIR Choose a different directory for the mod files [Default: $XDG_DATA_HOME/truckersmp-cli/TruckersMP, Fallback: ./truckersmp]
-n NAME --account NAME Steam account name to use
-o DIR --protondir DIR Choose a different Proton directory [Default: $XDG_DATA_HOME/truckersmp-cli/Proton]
-p --proton Start the game with Proton [Default on Linux if neither Proton or Wine are specified]
-s --start Start the game [Default if neither start or update are specified]
-u --update Update the game [Default if neither start or update are specified]
-v --verbose Verbose output (none:error, once:info, twice or more:debug)
-w --wine Start the game with Wine [Default on other systems if neither Proton or Wine are specified]
-x DIR --prefixdir DIR Choose a different directory for the prefix [Default: $XDG_DATA_HOME/truckersmp-cli/(Game name)/prefix]
(Not available) --activate-native-d3dcompiler-47 Activate native 64-bit d3dcompiler_47.dll when starting (Needed for D3D11 renderer)
(Not available) --check-windows-steam Check for the Windows Steam version on updating when using Proton
(Not available) --disable-proton-overlay Disable Steam Overlay when using Proton
(Not available) --native-steam-dir Choose native Steam installation, useful only if your Steam directory is not detected automatically [Default: auto]
(Not available) --self-update Update files to the latest release and quit
(Not available) --singleplayer Start singleplayer game, useful for save editing, using/testing DXVK in singleplayer, etc.
(Not available) --skip-update-proton Skip updating already-installed Proton when updating game with Proton enabled
(Not available) --use-wined3d Use OpenGL-based D3D11 instead of DXVK when using Proton
(Not available) --wine-desktop SIZE Use Wine desktop, work around missing TruckerMP overlay after tabbing out using DXVK, mouse clicking won't work in other GUI apps while the game is running, SIZE must be 'WIDTHxHEIGHT' format (e.g. 1920x1080)
(Not available) --wine-steam-dir Choose a directory for Windows version of Steam [Default: C:\Program Files (x86)\Steam in the prefix]
(Not available) --without-wine-discord-ipc-bridge Don't use wine-discord-ipc-bridge for Discord Rich Presence
(Not available) --version Print version information and quit

Proton versions and AppIDs

Version AppID
5.0 (Default) 1245040
4.11 1113280

Build

  1. Clone or download this repository
  2. Run make in the main folder to build the injector executable. Bash/zsh completion files will also be generated if genzshcomp is available.
  3. Optional run setup.py to manually start the installation process.

Buildtime dependencies

Required

Optional

  • genzshcomp to generate bash/zsh completions
  • git to clone this repo and help developing
  • setuptools to run setup.py

bash/zsh completion

If genzshcomp is installed, make generates shell completion files for bash (bash-completion) and zsh. They enable tab-completion of available command-line options.

System-wide installation

Shell System-wide search paths
bash $(pkg-config --variable=completionsdir bash-completion) (e.g. /usr/share/bash-completion/completions/), /usr/local/share/bash-completion/completions/
zsh /usr/share/zsh/site-functions/, /usr/local/share/zsh/site-functions/
  • The bash-completion file truckersmp-cli.bash needs to be renamed to truckersmp-cli
  • Debian-based systems are using the /usr/share/zsh/vendor-completions/ directory for zsh completions

Per-user installation

bash

Copy truckersmp-cli.bash to $XDG_DATA_HOME/bash-completion/completions/truckersmp-cli.

$ mkdir -p "${XDG_DATA_HOME:-~/.local/share}/bash-completion/completions"
$ cp truckersmp-cli.bash "${XDG_DATA_HOME:-~/.local/share}/bash-completion/completions/truckersmp-cli"
zsh

Copy _truckersmp-cli to a directory that is part of $fpath and run compinit.

Usage examples

Basic

Everything default

To just try out TruckersMP (ETS2) on Linux with nothing already downloaded you can simply run truckersmp-cli which will download everything needed to get you going with Proton and a native Steam installation.

Install and update Euro Truck Simulator 2

$ truckersmp-cli --ets2 --update

Start American Truck Simulator with TruckersMP

$ truckersmp-cli --ats --start

Advanced

Install, update and start TruckersMP (ATS) with Proton from a custom location

$ truckermsp-cli --ats --update --start --gamedir "/path/to/gamedir"

Start TruckersMP (ETS2) using Wine

$ truckersmp-cli --ets2 --start --wine

Make sure that

  • The Windows version of Steam is already running in the same Wine prefix or
  • The Windows version of Steam is installed in C:\Program Files (x86)\Steam in the same Wine prefix or
  • You're specifying the path to the Window version of Steam with --wine-steam-dir

Using a different prefix location

$ truckersmp-cli --ets2 --start --proton --prefixdir "/path/to/prefix"
$ truckersmp-cli --ets2 --start --wine --prefixdir "/path/to/prefix/pfx"
  • While the prefix for Wine will point directly to the prefix location, Proton uses a subfolder pfx for the actual prefix and points to the parent folder.
  • Your prefix must be 64bits, the mod is not 32bits-compatible.

Rendering backends

OpenGL (default)

  • Stable and faster than wined3d. But slower than DXVK.
  • Useful if you're not using Vulkan-capable GPU.

Direct3D 11 (DXVK or wined3d)

  • Faster than OpenGL when DXVK is used.
    • DXVK requires Vulkan support.
    • DXVK 1.4.6 or newer is needed because older versions have rendering issue. If you're using Proton, use 4.11-10 or newer.
  • Proton uses DXVK by default.
    • When using Proton, wined3d can be used by specifying --use-wined3d, but it's not recommended because this is slower than OpenGL.
  • Used only when -d or --enable-d3d11 is specified.

Default directories

Game data

Game Path
ATS $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/
ETS2 $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/

Wineprefix

Game Path
ATS $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/
ETS2 $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/

Game logs

Game Proton Wine
ATS $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/steamuser/My Documents/American Truck Simulator/game.log.txt $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/(os_login_name)/My Documents/American Truck Simulator/game.log.txt
ATSMP $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/steamuser/My Documents/ATSMP/logs/ $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/(os_login_name)/My Documents/ATSMP/logs/
ETS2 $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/steamuser/My Documents/Euro Truck Simulator 2/game.log.txt $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/(os_login_name)/My Documents/Euro Truck Simulator 2/game.log.txt
ETS2MP $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/steamuser/My Documents/ETS2MP/logs/ $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/(os_login_name)/My Documents/ETS2MP/logs/

Singleplayer mods and ProMods

Game Proton Wine
ATS $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/steamuser/My Documents/American Truck Simulator/mod/ $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/(os_login_name)/My Documents/American Truck Simulator/mod/
ETS2 $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/steamuser/My Documents/Euro Truck Simulator 2/mod/ $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/(os_login_name)/My Documents/Euro Truck Simulator 2/mod/

Season (weather) mods for ETS2MP/ATSMP

Game Proton Wine
ATS $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/steamuser/My Documents/ATSMP/mod/ $XDG_DATA_HOME/truckersmp-cli/American Truck Simulator/prefix/pfx/drive_c/users/(os_login_name)/My Documents/ATSMP/mod/
ETS2 $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/steamuser/My Documents/ETS2MP/mod/ $XDG_DATA_HOME/truckersmp-cli/Euro Truck Simulator 2/prefix/pfx/drive_c/users/(os_login_name)/My Documents/ETS2MP/mod/

See TruckersMP Knowledge Base.

Additional information

  • If Steam is running while SteamCMD is being used the Steam client looses all connections and maybe asks for the password and the guard code at the next startup. This script closes all Steam processes before acting with SteamCMD so starting an update with a shortcut out of the Steam client won't work because Steam waits for the script to finish and the script waits for Steam to quit.

Credits

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].