The Front
gamesThe 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.
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
ghcr.io/ptero-eggs/installers:debianbash#!/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}"