Skip to content

Instantly share code, notes, and snippets.

@jaytaylor
Last active February 28, 2016 18:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jaytaylor/a5e1e1db90a052f2017d to your computer and use it in GitHub Desktop.
Save jaytaylor/a5e1e1db90a052f2017d to your computer and use it in GitHub Desktop.
Ark Linux Service files
[/Script/ShooterGame.ShooterGameMode]
BabyMatureSpeedMultiplier=1000.0
EggHatchSpeedMultiplier=8.0
MatingIntervalMultiplier=0.01
[ServerSettings]
DayTimeSpeedScale=0.500000
NightTimeSpeedScale=2.000000
HarvestAmountMultiplier=6.000000
PlayerCharacterFoodDrainMultiplier=0.500000
PlayerCharacterHealthRecoveryMultiplier=3.000000
ShowMapPlayerLocation=True
AllowThirdPersonPlayer=True
AlwaysNotifyPlayerJoined=True
AlwaysNotifyPlayerLeft=True
ServerPVE=True
ServerCrosshair=True
DisableDinoDecayPvE=True
;ServerPassword=
;ServerAdminPassword=nimda
RCONPort=32330
PvEDinoDecayPeriodMultiplier=1.000000
KickIdlePlayersPeriod=2400.000000
PerPlatformMaxStructuresMultiplier=1.000000
AutoSavePeriodMinutes=15.000000
ListenServerTetherDistanceMultiplier=1.000000
MaxTamedDinos=5000.000000
RCONServerGameLogBuffer=600.000000
AllowFlyerCarryPvE=True
DisableStructureDecayPvE=True
[/Script/ShooterGame.ShooterGameUserSettings]
MasterAudioVolume=1.000000
MusicAudioVolume=1.000000
SFXAudioVolume=1.000000
VoiceAudioVolume=1.000000
CameraShakeScale=1.000000
bFirstPersonRiding=False
bThirdPersonPlayer=False
bShowStatusNotificationMessages=True
TrueSkyQuality=0.000000
FOVMultiplier=1.000000
GroundClutterDensity=0.000000
bFilmGrain=False
bMotionBlur=False
bUseDFAO=False
bUseSSAO=False
bShowChatBox=True
bCameraViewBob=True
bInvertLookY=False
bFloatingNames=True
bChatBubbles=True
bHideServerInfo=False
bJoinNotifications=False
bCraftablesShowAllItems=True
bLocalInventoryShowAllItems=False
bRemoteInventoryShowAllItems=False
LookLeftRightSensitivity=1.000000
LookUpDownSensitivity=1.000000
GraphicsQuality=1
ActiveLingeringWorldTiles=6
ClientNetQuality=3
LastServerSearchType=0
LastServerSearchHideFull=False
LastServerSearchProtected=False
HideItemTextOverlay=False
bDistanceFieldShadowing=False
LODScalar=0.780000
bToggleToTalk=False
HighQualityMaterials=True
HighQualitySurfaces=True
bTemperatureF=False
bDisableTorporEffect=False
bChatShowSteamName=False
bChatShowTribeName=True
EmoteKeyBind1=0
EmoteKeyBind2=0
bNoBloodEffects=False
bLowQualityVFX=False
bSpectatorManualFloatingNames=False
bSuppressAdminIcon=False
bUseSimpleDistanceMovement=False
bUseVSync=False
MacroCtrl0=
MacroCtrl1=
MacroCtrl2=
MacroCtrl3=
MacroCtrl4=
MacroCtrl5=
MacroCtrl6=
MacroCtrl7=
MacroCtrl8=
MacroCtrl9=
ResolutionSizeX=1280
ResolutionSizeY=720
LastUserConfirmedResolutionSizeX=1280
LastUserConfirmedResolutionSizeY=720
WindowPosX=-1
WindowPosY=-1
bUseDesktopResolutionForFullscreen=False
FullscreenMode=2
LastConfirmedFullscreenMode=2
Version=5
[ScalabilityGroups]
sg.ResolutionQuality=100
sg.ViewDistanceQuality=3
sg.AntiAliasingQuality=3
sg.ShadowQuality=3
sg.PostProcessQuality=3
sg.TextureQuality=3
sg.EffectsQuality=3
sg.TrueSkyQuality=3
sg.GroundClutterQuality=3
sg.IBLQuality=1
sg.HeightFieldShadowQuality=3
;[SessionSettings]
;SessionName=Marty
[/Script/Engine.GameSession]
MaxPlayers=70
add game configs
FROM ubuntu
RUN sudo apt-get install curl lib32gcc1
RUN sudo useradd --create-home steam && sudo -u steam mkdir ~/steamcmd && sudo -u steam bash -c 'curl --location --remote-name https://gist.githubusercontent.com/jaytaylor/a5e1e1db90a052f2017d/raw/install.bash && chmod a+x install.bash && ./install.bash'
EXPOSE 27015
EXPOSE 7777
EXPOSE 32330
CMD /home/steam/server.bash
#!upstart
description "ark"
env USER=steam
env PID=/tmp/ark.pid
env STDOUT=/tmp/ark.log
env STDERR=/tmp/ark.err
start on (local-filesystems and net-device-up IFACE!=lo)
stop on [!12345]
respawn
console log
script
#mkdir -p "$(dirname $STDOUT)"
#chown -R $USER:$USER "$(dirname $STDOUT)"
echo $$ > $PID
cd "/home/${USER}"
exec sudo -H -u "${USER}" ./server_start.sh 1>>$STDOUT 2>>$STDERR
end script
post-stop script
rm -f $PID
exec sleep 5
end script
#!/usr/bin/env bash
set -o errexit
set -o pipefail
set -o nounset
set -x
# Installer, e.g. from within dockerfile.
mkdir -p ark steamcmd
cd steamcmd
curl --remote-name https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd_linux.tar.gz
cd -
./steamcmd/steamcmd.sh +login anonymous +force_install_dir ~/ark +app_update "376030 validate" +quit
echo 'update.bash
server.bash
vars
ark-ShooterGame-Saved-Config-LinuxServer-GameUserSettings.ini
ark-ShooterGame-Saved-Config-LinuxServer-Game.ini' \
| xargs -n1 -IX -P2 bash -c 'curl --location --remote-name "https://gist.githubusercontent.com/jaytaylor/a5e1e1db90a052f2017d/raw/X"'
chmod a+x *.bash
for f in *.ini; do
mv "${f}" "$(echo "${f}" | sed 's/-/\//g')"
done
#!/usr/bin/env bash
set -o errexit
set -o pipefail
set -o nounset
cd "$(dirname "$0")"
./update.sh
source vars.sh
cd ark
# "TheIsland?listen?SessionName=${ARK_SESSION_NAME}?ServerPassword=${ARK_SERVER_PASSWORD}?ServerAdminPassword=${ARK_SEVER_ADMIN_PASSWORD}?ServerCrosshair=${ARK_SERVER_CROSSHAIR}?AllowThirdPersonPlayer=${ARK_ALLOW_THIRD_PERSON_PLAYER}?MapPlayerLocation=${ARK_MAP_PLAYER_LOCATION}?alwaysNotifyPlayerJoined=${ARK_ALWAYS_NOTIFY_PLAYER_JOINED}?alwaysNotifyPlayerLeft=${ARK_ALWAYS_NOTIFY_PLAYER_LEFT}?ShowMapPlayerLocation=${ARK_SHOW_MAP_PLAYER_LOCATION}?ServerPVE=${ARK_SERVER_PVE}?DisableStructureDecayPvE=${ARK_DISABLE_STRUCTURE_DECAY_PVE}?DisableDinoDecayPvE=${ARK_DISABLE_DINO_DECAY_PVE}?AllowFlyerCarryPvE=${ARK_ALLOW_FLYER_CARRY_PVE}?MaxStructuresInRange=${ARK_MAX_STRUCTURES_IN_RANGE}?NightTimeSpeedScale=${ARK_NIGHT_TIME_SPEED_SCALE}?DayTimeSpeedScale=${ARK_DAY_TIME_SPEED_SCALE}?HarvestAmountMultiplier=${ARK_HARVEST_AMOUNT_MULTIPLIER}?PlayerCharacterHealthRecoveryMultiplier=${ARK_PLAYER_HEALTH_RECOVERY_MULTIPLIER}?PlayerCharacterFoodDrainMultiplier=${ARK_PLAYER_CHARACTER_FOOD_DRAIN_MULTIPLIER}"
~/ark/ShooterGame/Binaries/Linux/ShooterGameServer \
"TheIsland?listen?SessionName=${ARK_SESSION_NAME}?ServerPassword=${ARK_SERVER_PASSWORD}?ServerAdminPassword=${ARK_SEVER_ADMIN_PASSWORD}?ServerCrosshair=${ARK_SERVER_CROSSHAIR}?AllowThirdPersonPlayer=${ARK_ALLOW_THIRD_PERSON_PLAYER}?MapPlayerLocation=${ARK_MAP_PLAYER_LOCATION}?alwaysNotifyPlayerJoined=${ARK_ALWAYS_NOTIFY_PLAYER_JOINED}?alwaysNotifyPlayerLeft=${ARK_ALWAYS_NOTIFY_PLAYER_LEFT}?ShowMapPlayerLocation=${ARK_SHOW_MAP_PLAYER_LOCATION}?ServerPVE=${ARK_SERVER_PVE}?DisableStructureDecayPvE=${ARK_DISABLE_STRUCTURE_DECAY_PVE}?DisableDinoDecayPvE=${ARK_DISABLE_DINO_DECAY_PVE}?AllowFlyerCarryPvE=${ARK_ALLOW_FLYER_CARRY_PVE}?MaxStructuresInRange=${ARK_MAX_STRUCTURES_IN_RANGE}"
-server \
-log
#!/usr/bin/env bash
set -o errexit
set -o pipefail
set -o nounset
set -x
cd "$(dirname "$0/steamcmd")"
backupPath="${HOME}/Saved.$(date +%Y%m%d%H%M%S)"
cp -a ~/ark/ShooterGame/Saved "${backupPath}"
./steamcmd.sh +login anonymous +force_install_dir /home/steam/ark +app_update '376030 validate' +quit 2>&1 | tee ~/update.log
if [ -z "$(grep 'Update state' ~/update.log)" ]; then
# No update, remove the backup.
rm -rf "${backupPath}"
fi
export ARK_SESSION_NAME='Marty'
export ARK_SERVER_PASSWORD=''
export ARK_SEVER_ADMIN_PASSWORD='nimda'
export ARK_SERVER_CROSSHAIR='True'
export ARK_ALLOW_THIRD_PERSON_PLAYER='True'
export ARK_MAP_PLAYER_LOCATION='True'
export ARK_ALWAYS_NOTIFY_PLAYER_JOINED='True'
export ARK_ALWAYS_NOTIFY_PLAYER_LEFT='True'
export ARK_SHOW_MAP_PLAYER_LOCATION='True'
export ARK_SERVER_PVE='True'
export ARK_DISABLE_STRUCTURE_DECAY_PVE='True'
export ARK_DISABLE_DINO_DECAY_PVE='True'
export ARK_ALLOW_FLYER_CARRY_PVE='True'
export ARK_MAX_STRUCTURES_IN_RANGE='500'
#export ARK_NIGHT_TIME_SPEED_SCALE='2.0'
#export ARK_DAY_TIME_SPEED_SCALE='0.5'
#export ARK_HARVEST_AMOUNT_MULTIPLIER='6.0'
#export ARK_PLAYER_HEALTH_RECOVERY_MULTIPLIER='3.0'
#export ARK_PLAYER_CHARACTER_FOOD_DRAIN_MULTIPLIER='0.5'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment