truncate history

This commit is contained in:
paul 2017-04-13 11:05:49 +02:00
commit 3150bc4818
6 changed files with 286 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
server.cfg

12
Dockerfile Normal file
View File

@ -0,0 +1,12 @@
FROM zombi/steam-base
MAINTAINER MadMaurice <madmaurice@zom.bi>, Paul <paul@zom.bi>
EXPOSE 2302-2305/udp
ADD bin/entrypoint.sh /entrypoint.sh
ADD server.cfg /home/steam
ADD player.armaProfile /home/steam
RUN chmod +xr /entrypoint.sh
USER steam
ENTRYPOINT ["/entrypoint.sh"]
CMD ["-world=empty"]

22
README.md Normal file
View File

@ -0,0 +1,22 @@
## steam-arma3
steam-arma3 is the base image for an ARMA3 Server.
### Data locations
### Building steam-arma3
first build the `steam-base` image.
```
docker build -t zombi/steam-arma3 .
```
### Running steam-arma3
```
docker run -d \
--name arma3 \
-p 2302-2305:2302-2305/udp \
-v /data/steam-games:/home/steam/games \
zombi/steam-arma3
```

71
bin/entrypoint.sh Normal file
View File

@ -0,0 +1,71 @@
#!/bin/bash
# what are we trying to install?
game_nm=arma3
game_id=233780
profile_location=~/.local/share/"Arma 3 - Other Profiles"/server
profile_name=server.Arma3Profile
# install game to this directory
installdir=/home/steam/games/$game_nm
# if path does not exist, create it
mkdir -p $installdir
if [ "$1" == "update" -o ! -d "$installdir" ]; then
install="1"
else
install="0"
fi
if [ "$install" == "1" ] # should we start update or install?
then
if [ ! -w "$installdir" ]; then
echo "Cannot write to installation dir."
exit 1
fi
echo "---- Steam login"
echo -n "Username:"
read steam_user
echo -n "Password:"
read -s steam_password
# Install or update the game in /home/steam/games/[game name]
/opt/steamcmd/steamcmd.sh \
+login $steam_user $steam_password\
+force_install_dir $installdir \
+app_update $game_id -beta legacyPorts -betapassword Arma3LegacyPorts validate \
+quit
exit 0
else
# install dir maybe mounted read-only, simply
# skip installing/updating and inform the user.
echo "Skipped game installation."
fi
# run the next commands from the installdir
cd $installdir
if [ ! -f "./server.cfg" ]; then
echo "missing server.cfg, copying default one"
cp /home/steam/server.cfg .
fi
if [ ! -f "${profile_location}/${profile_name}" ]; then
echo "missing ${profile_name}, copying default one"
mkdir -p "${profile_location}"
cp /home/steam/player.armaProfile "${profile_location}/${profile_name}"
fi
# is the game launcher not executable?
if [ ! -x ./arma3server ]
then
# we cant run the game then.
echo "game launcher not found, installed incorrectly?"
exit 1
fi
# launch the game!
exec ./arma3server -config=server.cfg -mod="mods/@nss_ac" -name=server "$@"

168
player.armaProfile Normal file
View File

@ -0,0 +1,168 @@
version=1;
blood=1;
singleVoice=0;
gamma=1;
brightness=1;
class Difficulties
{
class recruit
{
class Options
{
groupIndicators=0;
friendlyTags=0;
enemyTags=0;
detectedMines=0;
commands=0;
waypoints=0;
weaponInfo=2;
stanceIndicator=2;
reducedDamage=0;
staminaBar=1;
weaponCrosshair=0;
visionAid=0;
thirdPersonView=0;
cameraShake=1;
scoreTable=0;
deathMessages=0;
vonID=1;
mapContent=0;
autoReport=0;
multipleSaves=1;
};
aiLevelPreset=2;
skillAI=0.5;
precisionAI=0.69999999;
};
class regular
{
class Flags
{
Armor=0;
FriendlyTag=0;
EnemyTag=0;
MineTag=0;
HUD=0;
HUDPerm=0;
HUDWp=0;
HUDWpPerm=0;
HUDGroupInfo=0;
StanceIndicator=1;
AutoSpot=0;
Map=0;
WeaponCursor=0;
AutoGuideAT=1;
ClockIndicator=0;
3rdPersonView=0;
CameraShake=1;
UnlimitedSaves=1;
DeathMessages=0;
NetStats=1;
VonID=1;
ExtendetInfoType=1;
StaminaBar=1;
};
aiLevelPreset=3;
skillAI=0.60000002;
precisionAI=0.40000001;
};
class veteran
{
class Flags
{
HUD=0;
HUDWp=0;
HUDWpPerm=0;
HUDGroupInfo=0;
StanceIndicator=1;
AutoSpot=0;
WeaponCursor=0;
ClockIndicator=0;
3rdPersonView=0;
CameraShake=1;
DeathMessages=0;
NetStats=0;
VonID=1;
ExtendetInfoType=0;
StaminaBar=1;
};
aiLevelPreset=3;
skillAI=0.30000001;
precisionAI=0.69999999;
};
class mercenary
{
class Flags
{
HUD=0;
AutoSpot=0;
WeaponCursor=0;
DeathMessages=0;
NetStats=0;
VonID=1;
};
aiLevelPreset=3;
skillAI=0.60000002;
precisionAI=0.40000001;
};
};
maxSamplesPlayed=96;
activeKeys[]=
{
"BIS_ACE3.Takistan_done",
"BIS_ACE3_Base.Altis_done",
"BIS_ACE3_Base.Takistan_done",
"BIS_ACE3_Base.Zargabad_done",
"BIS_AFRF.Chernarus_done",
"BIS_ACE3_Base.Stratis_done",
"BIS_USAF.Chernarus_done"
};
difficulty = "Custom";
class DifficultyPresets
{
class CustomDifficulty
{
class Options
{
groupIndicators=0;
friendlyTags=0;
enemyTags=0;
detectedMines=0;
commands=0;
waypoints=0;
weaponInfo=1;
stanceIndicator=1;
reducedDamage=0;
staminaBar=0;
weaponCrosshair=0;
visionAid=0;
thirdPersonView=0;
cameraShake=1;
scoreTable=0;
deathMessages=0;
vonID=1;
mapContent=0;
autoReport=0;
multipleSaves=1;
};
aiLevelPreset=3;
skillAI=0.5;
precisionAI=0.7;
};
class CustomAILevel
{
skillAI=0.5;
precisionAI=0.7;
};
};
headBob=0;
sceneComplexity=1000000;
shadowZDistance=100;
viewDistance=3800;
preferredObjectViewDistance=3200;
terrainGrid=3.125;
volumeCD=10;
volumeFX=10;
volumeSpeech=10;
volumeVoN=10;
vonRecThreshold=0.029999999;

12
server.cfg.example Normal file
View File

@ -0,0 +1,12 @@
hostname="Community Server";
passwordAdmin = "password";
maxPlayers = 20;
motd[] = {"Welcome to the ARMA3 Server","Please enjoy your stay!"};
kickDuplicate = 1;
voteMissionPlayers = 1;
voteThreshold = 0.33;
onUnsignedData = "kick (_this select 0)";
onHackedData = "kick (_this select 0)";