The Front

games
Report Issue

The Front is a survival open-world crafting shooter. You play the role of a resistance fighter sent back in time to stop the rise of a tyrannical empire.

Contributors:
README

The Front

Author & Contributers

Name Github Profile Buy me a Coffee
gOOvER https://github.com/gOOvER Donate

Special Thanks

Special thanks to KRServers for spending me the Key

The Front

The Front is a survival open-world crafting shooter. You play the role of a resistance fighter sent back in time to stop the rise of a tyrannical empire.

Steam: https://store.steampowered.com/app/2285150/The_Front/

Server Ports

The Server needs 4 Ports. You can choose every Port you want

Port default
Game 27015
Beacon 27016
Query 27017
ShutDownService 27018

Updating the Server

Until the devs fix their linux server, you must reinstall the server on every update. Autoupdate is disabled and should NOT activated, because it can break your installation.

Hardware

You need a min of 10GB for the Server.

Special Note

[!WARNING] DO NOT ADD STARTUP FLAGS AFTER THE SERVER PASSWORD FLAG, else you are not longer able to login into your server. The Passwort Flag MUST be everytime the LAST flag

Server Tags

You can use Server Tags with this Egg. But max is 5

To be used in the variable as follows: 0,1,2,3,4

Available Server Tags

0 = PVP 1 = PVE 2 = EXP Multiplikator 3 = GatheringRate 4 = KeepInventory 5 = 45d wipe 6 = 15d wipe 7 = 30d wipe 8 = 60d wipe

Troubleshooting

  • I get the error "Server Connection has expired!"
    • Allocate and open all ports in your Firewall.
Docker Images (1)
Name Image
ghcr.io/ptero-eggs/steamcmd:debian ghcr.io/ptero-eggs/steamcmd:debian
Startup Command
./ProjectWar/Binaries/Linux/TheFrontServer  ProjectWar_Start?DedicatedServer -server -game -log -ServerTags="{{SRV_TAGS}}" -UseSteamSocket={{STEAMSOCKET}} -Port="{{SERVER_PORT}}" -BeaconPort="{{BEACON_PORT}}" -ShutDownServicePort="{{SHUTDOWN_PORT}}" -QueryPort="{{QUERY_PORT}}" -ConfigServerName="{{CFG_NAME}}" -OutIPAddress={{SERVER_IP}} -UserDir="/home/container/TheFrontManager/{{CFG_NAME}}/" -ServerName="{{SRV_NAME}}" -EnableParallelCharacterMovementTickFunction -EnableParallelCharacterTickFunction -UseDynamicPhysicsScene -Game.PhysicsVehicle=false -ansimalloc -Game.MaxFrameRate=35 -MaxQueueSize=50 -QueueValidTime=120 -QueueThreshold={{MAX_PLAYERS}} -ServerFightModeType={{GAMEMODE}} -IsCanSelfDamage={{SELFDMG}} -IsCanFriendDamage={{DMGALLIES}} -SaveWorldInterval={{SRV_SAVETIME}} -GMOverlapRatio=2 -GreenHand={{GREENHAND}} -SensitiveWords={{SENSITIVE_WORDS}} -UseACE={{ANTI_CHEAT}} -ServerAdminAccounts={{SRV_ADMIN}} -IsShowGmTitle={{ADMIN_LABEL}} -ServerPassword={{SRV_PW}}
Variables (21)

[SERVER] Server Name

no spaces und special signs

Environment:
SRV_NAME
Default:
Pterodactyl hosted Server
User Viewable:
User Editable:
Rules:
required|string|max:50

[SERVER] Max Players

The max number of players on your server.

Environment:
MAX_PLAYERS
Default:
10
User Viewable:
User Editable:
Rules:
required|integer|between:1,80

[SERVER] Config Name

Name of the savefile. NO SPACE or SPECIAL signs

Environment:
CFG_NAME
Default:
new
User Viewable:
User Editable:
Rules:
required|string|max:20

[SERVER] Server Password

Environment:
SRV_PW
Default:
None
User Viewable:
User Editable:
Rules:
nullable

[SERVER] PvE

off = PvP; on = PvE

Environment:
GAMEMODE
Default:
0
User Viewable:
User Editable:
Rules:
required|boolean

[SERVER] Use Steam Socket

Use Steam servers for network penetration. Enable this if you don't have a public IP but you want to allow players from outside your network to join your server. If disabled, only you and other players on your LAN can join. If you have a public IP, you do not need to enable this. Enabling this feature will affect latency. When Steam servers are busy, you may not be able to join this server.

Environment:
STEAMSOCKET
Default:
0
User Viewable:
User Editable:
Rules:
required|boolean

[SERVER] Damage self?

Allows players to damage themselves.

Environment:
SELFDMG
Default:
true
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[SERVER] Damage allies?

Allows squadmates to damage each other.

Environment:
DMGALLIES
Default:
true
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[SERVER] Server Admins

Enter a 17-digit Steam ID. Use semicolons between each ID. GM level defaults to highest level (Lv. 25)

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

[ADVANCED] Label admin

Toggles special admin icon.

Environment:
ADMIN_LABEL
Default:
false
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[ADVANCED] Server save interval

Server archive interval (in seconds)

Environment:
SRV_SAVETIME
Default:
300
User Viewable:
User Editable:
Rules:
required|integer|between:150,600

[ADVANCED] Enable novice protection?

When enabled, new characters will receive novice protection.

Environment:
GREENHAND
Default:
true
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[ADVANCED] Server Tags

MAX 5 -> 0= PVP | 1= PVE | 2= EXP Multiplikator | 3= GatheringRate | 4= KeepInventory | 5= 45d wipe | 6= 15d wipe | 7= 30d wipe | 8= 60d wipe |

Environment:
SRV_TAGS
Default:
None
User Viewable:
User Editable:
Rules:
nullable

[ADVANCED] Enable anticheat?

Toggles anticheat.

Environment:
ANTI_CHEAT
Default:
true
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[ADVANCED] Enable profanity?

When disable, profanity will be blocked.

Environment:
SENSITIVE_WORDS
Default:
true
User Viewable:
User Editable:
Rules:
required|string|in:true,false

[SERVER] Auto Update

Autoupdate your Server on start/restart

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

[SYSTEM] SRCDS_APPID

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

[SERVER] BeaconPort

port+1

Environment:
BEACON_PORT
Default:
27016
User Viewable:
User Editable:
Rules:
required|integer|between:1024,65536

[SERVER] QueryPort

port+2

Environment:
QUERY_PORT
Default:
27017
User Viewable:
User Editable:
Rules:
required|integer|between:1024,65536

[SERVER] ShutDownServicePort

port +3

Environment:
SHUTDOWN_PORT
Default:
27017
User Viewable:
User Editable:
Rules:
required|integer|between:1024,65536

WINDOWS_INSTALL

DO NOT REMOVE !!!

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
# steamcmd Base Installation Script
#
clear
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'

echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}The Front  Installscript${NC}"
echo -e "${YELLOW}Egg by gOOvER | https://goover.dev${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"

#apt -y update
#apt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates jq dos2unix

echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}download and install steamcmd. please wait...${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"

## 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
echo -e "${GREEN}..done..${NC}"

## install game using steamcmd
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${YELLOW}install game using steamcmd. please wait...${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"

./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update 1007 +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6
echo -e "${GREEN}..done..${NC}"

## 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

## install end
echo -e "${BLUE}-------------------------------------------------${NC}"
echo -e "${GREEN}Installation completed...${NC}"
echo -e "${BLUE}-------------------------------------------------${NC}"