Assetto Corsa

games
Report Issue

Assetto Corsa (Italian for "Race Setup") is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability

Contributors:
README

Assetto Corsa

Assetto Corsa is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability.

Server Ports

Asseto Corsa requires two ports, game port is UDP and WEB HTTP port is TCP.

Port default
Game 9600
HTTP 8081

Notes

9600 is the default port, but any port can be used.

Freeroam + AI

This egg uses: GitHub Website

Docker Images (1)
Name Image
ghcr.io/ptero-eggs/steamcmd:debian ghcr.io/ptero-eggs/steamcmd:debian
Startup Command
./acServer
Variables (10)

Steam Username

A steam username of an account that owns the game is required

Environment:
STEAM_USER
Default:
None
User Viewable:
User Editable:
Rules:
required|string

Steam Password

Steam User Password

Environment:
STEAM_PASS
Default:
None
User Viewable:
User Editable:
Rules:
required|string

Steam Auth Code

Steam Auth Code required if the Steam Account is using Steam Auth. Slow installs will cause the code to expire before it can be used.

Environment:
STEAM_AUTH
Default:
None
User Viewable:
User Editable:
Rules:
nullable|string

Server Name

Name of the server

Environment:
HOSTNAME
Default:
Pterodactyl Server
User Viewable:
User Editable:
Rules:
required|string|max:45

Server Password

If enabled players must enter the password to join the server

Environment:
PASSWORD
Default:
None
User Viewable:
User Editable:
Rules:
nullable|string|max:40

Admin Password

Used to login as server administrator, type /help in-game for more

Environment:
ADMIN_PASSWORD
Default:
None
User Viewable:
User Editable:
Rules:
required|string|max:40|min:8

HTTP Port

HTTP Port

Environment:
HTTP_PORT
Default:
None
User Viewable:
User Editable:
Rules:
nullable|int

SRCDS_APPID

Environment:
SRCDS_APPID
Default:
302550
User Viewable:
User Editable:
Rules:
required|string|max:20

Auto Update

autoupdate Server on start or restart. 1 = on; 0 = off

Environment:
AUTO_UPDATE
Default:
1
User Viewable:
User Editable:
Rules:
required|boolean

Windows Install

Required to always install and update the correct version of the game.

Environment:
WINDOWS_INSTALL
Default:
1
User Viewable:
User Editable:
Rules:
required|boolean
Installation Script
Container: ghcr.io/ptero-eggs/installers:debian
Entrypoint: bash
#!/bin/bash

## just in case someone removed the defaults.
if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then
    echo -e "steam user is not set.\n"
    echo -e "Using anonymous user.\n"
    STEAM_USER=anonymous
    STEAM_PASS=""
    STEAM_AUTH=""
else
    echo -e "user set to ${STEAM_USER}"
fi

## download and install steamcmd
cd /tmp
mkdir -p /mnt/server/steamcmd
curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd
mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing
cd /mnt/server/steamcmd

# SteamCMD fails otherwise for some reason, even running as root.
# This is changed at the end of the install process anyways.
chown -R root:root /mnt
export HOME=/mnt/server

## install game using steamcmd
./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit

## set up 32 bit libraries
mkdir -p /mnt/server/.steam/sdk32
cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so

## set up 64 bit libraries
mkdir -p /mnt/server/.steam/sdk64
cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so

if [ "${STEAM_USER}" == "anonymous" ]; then
    echo -e "ERROR - STEAM USER NOT SET\n"
    echo -e "Steam account must have the dedicated server in library to install and host the game\n"
    echo -e "You must configure Steam account in the server startup variables, after that reinstall the server\n"
fi

## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"