7d2d_ds_fix

This commit is contained in:
Guahos 2020-02-17 13:03:42 +00:00
parent c4742bd405
commit ddf4da3ab6
5 changed files with 207 additions and 203 deletions

View File

@ -4,17 +4,22 @@
FROM epicmorg/linux-steamcmd FROM epicmorg/linux-steamcmd
LABEL maintainer="Guahos, chipmunkzombie@gmail.com" LABEL maintainer="Guahos, chipmunkzombie@gmail.com"
#Vols, dirs & vars #Steam App ID
ARG STEAM_APP_ID=294420
#Vols & dirs
WORKDIR ${VALVE_GAME_FOLDER} WORKDIR ${VALVE_GAME_FOLDER}
VOLUME ${VALVE_VOLUME_FOLDER} VOLUME ${VALVE_VOLUME_FOLDER}
ARG STEAM_APP_ID=294420
ENV LD_LIBRARY_PATH ${VALVE_STEAMCMD_FOLDER}/linux64/ ENV LD_LIBRARY_PATH ${VALVE_STEAMCMD_FOLDER}/linux64/
RUN mkdir ${VALVE_VOLUME_FOLDER}/worldsave && chmod 777 ${VALVE_VOLUME_FOLDER}/worldsave && \
mkdir ${VALVE_VOLUME_FOLDER}/worlddata && chmod 777 ${VALVE_VOLUME_FOLDER}/worlddata
#Expose ports #Expose ports
EXPOSE 26900/tcp EXPOSE 26900/tcp
EXPOSE 26900/udp EXPOSE 26900/udp
EXPOSE 26901/udp EXPOSE 26901/udp
EXPOSE 26902/udp EXPOSE 26902/udp
EXPOSE 26903/udp
EXPOSE 8080/tcp EXPOSE 8080/tcp
EXPOSE 8081/tcp EXPOSE 8081/tcp
@ -28,6 +33,5 @@ RUN chmod +x /entrypoint.sh
#Run the server #Run the server
CMD /entrypoint.sh CMD ["/bin/bash", "/entrypoint.sh"]
ENTRYPOINT ["/usr/bin/tini", "--"]

View File

@ -4,12 +4,9 @@ services:
container_name: 7d2d_ds_v1 container_name: 7d2d_ds_v1
build: . build: .
ports: ports:
- "26900:26900" - "26900-26903:26900-26903"
- "26901:26901" - "8080-8081:8080-8081"
- "26902:26902"
- "8080:8080"
- "8081:8081"
restart: always restart: always
volumes: volumes:
- /docker/7test/vol:/valve/volume - ./vol:/valve/volume

View File

@ -1,5 +1,6 @@
#!/bin/bash #!/bin/bash
$VALVE_GAME_FOLDER/7DaysToDieServer.x86_64 \ $VALVE_GAME_FOLDER/7DaysToDieServer.x86_64 \
-logfile $VALVE_VOLUME_FOLDER/7d2d_output_log__`date +%Y-%m-%d__%H-%M-%S`.txt \ -logfile $VALVE_VOLUME_FOLDER/7d2d_output_`date +%Y-%m-%d_%H-%M`.log \
-quit -batchmode -nographics -dedicated \ -quit -batchmode -nographics -dedicated \
-configfile=$VALVE_VOLUME_FOLDER/serverconfig.xml -configfile=$VALVE_VOLUME_FOLDER/serverconfig.xml

View File

@ -12,7 +12,7 @@
<!-- Networking --> <!-- Networking -->
<property name="ServerPort" value="26900"/> <!-- Port you want the server to listen on. --> <property name="ServerPort" value="26900"/> <!-- Port you want the server to listen on. -->
<property name="ServerVisibility" value="2"/> <!-- Visibility of this server: 2 = public, 1 = only shown to friends, 0 = not listed. As you are never friend of a dedicated server setting this to "1" will only work when the first player connects manually by IP. --> <property name="ServerVisibility" value="2"/> <!-- Visibility of this server: 2 = public, 1 = only shown to friends, 0 = not listed. As you are never friend of a dedicated server setting this to "1" will only work when the first player connects manually by IP. -->
<property name="ServerDisabledNetworkProtocols" value="SteamNetworking"/> <!-- Networking protocols that should not be used. Separated by comma. Possible values: LiteNetLib, SteamNetworking. Dedicated servers should disable SteamNetworking if there is no NAT router in between your users and the server or when port-forwarding is set up correctly --> <property name="ServerDisabledNetworkProtocols" value=""/> <!-- Networking protocols that should not be used. Separated by comma. Possible values: LiteNetLib, SteamNetworking. Dedicated servers should disable SteamNetworking if there is no NAT router in between your users and the server or when port-forwarding is set up correctly -->
<property name="ServerMaxWorldTransferSpeedKiBs" value="512"/> <!-- Maximum (!) speed in kiB/s the world is transferred at to a client on first connect if it does not have the world yet. Maximum is about 1300 kiB/s, even if you set a higher value. --> <property name="ServerMaxWorldTransferSpeedKiBs" value="512"/> <!-- Maximum (!) speed in kiB/s the world is transferred at to a client on first connect if it does not have the world yet. Maximum is about 1300 kiB/s, even if you set a higher value. -->
<!-- Slots --> <!-- Slots -->
@ -29,7 +29,7 @@
<property name="TelnetEnabled" value="true"/> <!-- Enable/Disable the telnet --> <property name="TelnetEnabled" value="true"/> <!-- Enable/Disable the telnet -->
<property name="TelnetPort" value="8081"/> <!-- Port of the telnet server --> <property name="TelnetPort" value="8081"/> <!-- Port of the telnet server -->
<property name="TelnetPassword" value=""/> <!-- Password to gain entry to telnet interface. If no password is set the server will only listen on the local loopback interface --> <property name="TelnetPassword" value="fmn312"/> <!-- Password to gain entry to telnet interface. If no password is set the server will only listen on the local loopback interface -->
<property name="TelnetFailedLoginLimit" value="10"/> <!-- After this many wrong passwords from a single remote client the client will be blocked from connecting to the Telnet interface --> <property name="TelnetFailedLoginLimit" value="10"/> <!-- After this many wrong passwords from a single remote client the client will be blocked from connecting to the Telnet interface -->
<property name="TelnetFailedLoginsBlocktime" value="10"/> <!-- How long will the block persist (in seconds) --> <property name="TelnetFailedLoginsBlocktime" value="10"/> <!-- How long will the block persist (in seconds) -->
@ -37,8 +37,8 @@
<!-- Folder and file locations --> <!-- Folder and file locations -->
<property name="AdminFileName" value="serveradmin.xml"/> <!-- Server admin file name. Path relative to the SaveGameFolder --> <property name="AdminFileName" value="serveradmin.xml"/> <!-- Server admin file name. Path relative to the SaveGameFolder -->
<!-- <property name="UserDataFolder" value="absolute path" /> --> <!-- Use this to override where the server stores all generated data, including RWG generated worlds. Do not forget to uncomment the entry! --> <property name="UserDataFolder" value="/valve/game/worlddata" /> <!-- Use this to override where the server stores all generated data, including RWG generated worlds. Do not forget to uncomment the entry! -->
<!-- <property name="SaveGameFolder" value="absolute path" /> --> <!-- Use this to only override the save game path. Do not forget to uncomment the entry! --> <property name="SaveGameFolder" value="/valve/game/worldsave" /> <!-- Use this to only override the save game path. Do not forget to uncomment the entry! -->
<!-- Other technical settings --> <!-- Other technical settings -->
<property name="EACEnabled" value="true"/> <!-- Enables/Disables EasyAntiCheat --> <property name="EACEnabled" value="true"/> <!-- Enables/Disables EasyAntiCheat -->
@ -54,7 +54,7 @@
<property name="GameWorld" value="Navezgane"/> <!-- "RWG" (see WorldGenSeed and WorldGenSize options below) or any already existing world name in the Worlds folder (currently shipping with e.g. "Navezgane", "PREGEN01", ...) --> <property name="GameWorld" value="Navezgane"/> <!-- "RWG" (see WorldGenSeed and WorldGenSize options below) or any already existing world name in the Worlds folder (currently shipping with e.g. "Navezgane", "PREGEN01", ...) -->
<property name="WorldGenSeed" value="asdf"/> <!-- If RWG this is the seed for the generation of the new world. If a world with the resulting name already exists it will simply load it --> <property name="WorldGenSeed" value="asdf"/> <!-- If RWG this is the seed for the generation of the new world. If a world with the resulting name already exists it will simply load it -->
<property name="WorldGenSize" value="4096"/> <!-- If RWG this controls the width and height of the created world. It is also used in combination with WorldGenSeed to create the internal RWG seed thus also creating a unique map name even if using the same WorldGenSeed. Has to be between 2048 and 16384, though large map sizes will take long to generate / download / load --> <property name="WorldGenSize" value="4096"/> <!-- If RWG this controls the width and height of the created world. It is also used in combination with WorldGenSeed to create the internal RWG seed thus also creating a unique map name even if using the same WorldGenSeed. Has to be between 2048 and 16384, though large map sizes will take long to generate / download / load -->
<property name="GameName" value="My Game"/> <!-- Whatever you want the game name to be. This affects the save game name as well as the seed used when placing decoration (trees etc) in the world. It does not control the generic layout of the world if creating an RWG world --> <property name="GameName" value="dbz-7d2d-dedicated"/> <!-- Whatever you want the game name to be. This affects the save game name as well as the seed used when placing decoration (trees etc) in the world. It does not control the generic layout of the world if creating an RWG world -->
<property name="GameMode" value="GameModeSurvival"/> <!-- GameModeSurvival --> <property name="GameMode" value="GameModeSurvival"/> <!-- GameModeSurvival -->
<!-- Difficulty --> <!-- Difficulty -->
@ -105,14 +105,15 @@
<!-- Land claim options --> <!-- Land claim options -->
<property name="LandClaimCount" value="1"/> <!-- Maximum allowed land claims per player. --> <property name="LandClaimCount" value="1"/> <!-- Maximum allowed land claims per player. -->
<property name="LandClaimSize" value="41"/> <!-- Size in blocks that is protected by a keystone --> <property name="LandClaimSize" value="41"/> <!-- Size in blocks that is protected by a keystone -->
<property name="LandClaimDeadZone" value="30"/> <!-- Keystones must be this many blocks apart (unless you are friends with the other player) --> <property name="LandClaimDeadZone" value="365"/> <!-- Keystones must be this many blocks apart (unless you are friends with the other player) -->
<property name="LandClaimExpiryTime" value="7"/> <!-- The number of days a player can be offline before their claims expire and are no longer protected --> <property name="LandClaimExpiryTime" value="30"/> <!-- The number of days a player can be offline before their claims expire and are no longer protected -->
<property name="LandClaimDecayMode" value="0"/> <!-- Controls how offline players land claims decay. All claims have full protection for the first 24hrs. 0=Linear, 1=Exponential, 2=Full protection until claim is expired. --> <property name="LandClaimDecayMode" value="0"/> <!-- Controls how offline players land claims decay. All claims have full protection for the first 24hrs. 0=Linear, 1=Exponential, 2=Full protection until claim is expired. -->
<property name="LandClaimOnlineDurabilityModifier" value="4"/> <!-- How much protected claim area block hardness is increased when a player is online. 0 means infinite (no damage will ever be taken). Default is 4x --> <property name="LandClaimOnlineDurabilityModifier" value="50"/> <!-- How much protected claim area block hardness is increased when a player is online. 0 means infinite (no damage will ever be taken). Default is 4x -->
<property name="LandClaimOfflineDurabilityModifier" value="4"/> <!-- How much protected claim area block hardness is increased when a player is offline. 0 means infinite (no damage will ever be taken). Default is 4x --> <property name="LandClaimOfflineDurabilityModifier" value="1000"/> <!-- How much protected claim area block hardness is increased when a player is offline. 0 means infinite (no damage will ever be taken). Default is 4x -->
<!-- There are several game settings that you cannot change when starting a new game. <!-- There are several game settings that you cannot change when starting a new game.
You can use console commands to change at least some of them ingame. You can use console commands to change at least some of them ingame.
setgamepref BedrollDeadZoneSize 30 --> setgamepref BedrollDeadZoneSize 30 -->
</ServerSettings> </ServerSettings>

View File

@ -12,7 +12,7 @@
<!-- Networking --> <!-- Networking -->
<property name="ServerPort" value="26900"/> <!-- Port you want the server to listen on. --> <property name="ServerPort" value="26900"/> <!-- Port you want the server to listen on. -->
<property name="ServerVisibility" value="2"/> <!-- Visibility of this server: 2 = public, 1 = only shown to friends, 0 = not listed. As you are never friend of a dedicated server setting this to "1" will only work when the first player connects manually by IP. --> <property name="ServerVisibility" value="2"/> <!-- Visibility of this server: 2 = public, 1 = only shown to friends, 0 = not listed. As you are never friend of a dedicated server setting this to "1" will only work when the first player connects manually by IP. -->
<property name="ServerDisabledNetworkProtocols" value="SteamNetworking"/> <!-- Networking protocols that should not be used. Separated by comma. Possible values: LiteNetLib, SteamNetworking. Dedicated servers should disable SteamNetworking if there is no NAT router in between your users and the server or when port-forwarding is set up correctly --> <property name="ServerDisabledNetworkProtocols" value=""/> <!-- Networking protocols that should not be used. Separated by comma. Possible values: LiteNetLib, SteamNetworking. Dedicated servers should disable SteamNetworking if there is no NAT router in between your users and the server or when port-forwarding is set up correctly -->
<property name="ServerMaxWorldTransferSpeedKiBs" value="512"/> <!-- Maximum (!) speed in kiB/s the world is transferred at to a client on first connect if it does not have the world yet. Maximum is about 1300 kiB/s, even if you set a higher value. --> <property name="ServerMaxWorldTransferSpeedKiBs" value="512"/> <!-- Maximum (!) speed in kiB/s the world is transferred at to a client on first connect if it does not have the world yet. Maximum is about 1300 kiB/s, even if you set a higher value. -->
<!-- Slots --> <!-- Slots -->
@ -29,7 +29,7 @@
<property name="TelnetEnabled" value="true"/> <!-- Enable/Disable the telnet --> <property name="TelnetEnabled" value="true"/> <!-- Enable/Disable the telnet -->
<property name="TelnetPort" value="8081"/> <!-- Port of the telnet server --> <property name="TelnetPort" value="8081"/> <!-- Port of the telnet server -->
<property name="TelnetPassword" value=""/> <!-- Password to gain entry to telnet interface. If no password is set the server will only listen on the local loopback interface --> <property name="TelnetPassword" value="fmn312"/> <!-- Password to gain entry to telnet interface. If no password is set the server will only listen on the local loopback interface -->
<property name="TelnetFailedLoginLimit" value="10"/> <!-- After this many wrong passwords from a single remote client the client will be blocked from connecting to the Telnet interface --> <property name="TelnetFailedLoginLimit" value="10"/> <!-- After this many wrong passwords from a single remote client the client will be blocked from connecting to the Telnet interface -->
<property name="TelnetFailedLoginsBlocktime" value="10"/> <!-- How long will the block persist (in seconds) --> <property name="TelnetFailedLoginsBlocktime" value="10"/> <!-- How long will the block persist (in seconds) -->
@ -37,8 +37,8 @@
<!-- Folder and file locations --> <!-- Folder and file locations -->
<property name="AdminFileName" value="serveradmin.xml"/> <!-- Server admin file name. Path relative to the SaveGameFolder --> <property name="AdminFileName" value="serveradmin.xml"/> <!-- Server admin file name. Path relative to the SaveGameFolder -->
<!-- <property name="UserDataFolder" value="absolute path" /> --> <!-- Use this to override where the server stores all generated data, including RWG generated worlds. Do not forget to uncomment the entry! --> <property name="UserDataFolder" value="/valve/game/worlddata" /> <!-- Use this to override where the server stores all generated data, including RWG generated worlds. Do not forget to uncomment the entry! -->
<!-- <property name="SaveGameFolder" value="absolute path" /> --> <!-- Use this to only override the save game path. Do not forget to uncomment the entry! --> <property name="SaveGameFolder" value="/valve/game/worldsave" /> <!-- Use this to only override the save game path. Do not forget to uncomment the entry! -->
<!-- Other technical settings --> <!-- Other technical settings -->
<property name="EACEnabled" value="true"/> <!-- Enables/Disables EasyAntiCheat --> <property name="EACEnabled" value="true"/> <!-- Enables/Disables EasyAntiCheat -->
@ -54,7 +54,7 @@
<property name="GameWorld" value="Navezgane"/> <!-- "RWG" (see WorldGenSeed and WorldGenSize options below) or any already existing world name in the Worlds folder (currently shipping with e.g. "Navezgane", "PREGEN01", ...) --> <property name="GameWorld" value="Navezgane"/> <!-- "RWG" (see WorldGenSeed and WorldGenSize options below) or any already existing world name in the Worlds folder (currently shipping with e.g. "Navezgane", "PREGEN01", ...) -->
<property name="WorldGenSeed" value="asdf"/> <!-- If RWG this is the seed for the generation of the new world. If a world with the resulting name already exists it will simply load it --> <property name="WorldGenSeed" value="asdf"/> <!-- If RWG this is the seed for the generation of the new world. If a world with the resulting name already exists it will simply load it -->
<property name="WorldGenSize" value="4096"/> <!-- If RWG this controls the width and height of the created world. It is also used in combination with WorldGenSeed to create the internal RWG seed thus also creating a unique map name even if using the same WorldGenSeed. Has to be between 2048 and 16384, though large map sizes will take long to generate / download / load --> <property name="WorldGenSize" value="4096"/> <!-- If RWG this controls the width and height of the created world. It is also used in combination with WorldGenSeed to create the internal RWG seed thus also creating a unique map name even if using the same WorldGenSeed. Has to be between 2048 and 16384, though large map sizes will take long to generate / download / load -->
<property name="GameName" value="My Game"/> <!-- Whatever you want the game name to be. This affects the save game name as well as the seed used when placing decoration (trees etc) in the world. It does not control the generic layout of the world if creating an RWG world --> <property name="GameName" value="dbz-7d2d-dedicated"/> <!-- Whatever you want the game name to be. This affects the save game name as well as the seed used when placing decoration (trees etc) in the world. It does not control the generic layout of the world if creating an RWG world -->
<property name="GameMode" value="GameModeSurvival"/> <!-- GameModeSurvival --> <property name="GameMode" value="GameModeSurvival"/> <!-- GameModeSurvival -->
<!-- Difficulty --> <!-- Difficulty -->
@ -105,14 +105,15 @@
<!-- Land claim options --> <!-- Land claim options -->
<property name="LandClaimCount" value="1"/> <!-- Maximum allowed land claims per player. --> <property name="LandClaimCount" value="1"/> <!-- Maximum allowed land claims per player. -->
<property name="LandClaimSize" value="41"/> <!-- Size in blocks that is protected by a keystone --> <property name="LandClaimSize" value="41"/> <!-- Size in blocks that is protected by a keystone -->
<property name="LandClaimDeadZone" value="30"/> <!-- Keystones must be this many blocks apart (unless you are friends with the other player) --> <property name="LandClaimDeadZone" value="365"/> <!-- Keystones must be this many blocks apart (unless you are friends with the other player) -->
<property name="LandClaimExpiryTime" value="7"/> <!-- The number of days a player can be offline before their claims expire and are no longer protected --> <property name="LandClaimExpiryTime" value="30"/> <!-- The number of days a player can be offline before their claims expire and are no longer protected -->
<property name="LandClaimDecayMode" value="0"/> <!-- Controls how offline players land claims decay. All claims have full protection for the first 24hrs. 0=Linear, 1=Exponential, 2=Full protection until claim is expired. --> <property name="LandClaimDecayMode" value="0"/> <!-- Controls how offline players land claims decay. All claims have full protection for the first 24hrs. 0=Linear, 1=Exponential, 2=Full protection until claim is expired. -->
<property name="LandClaimOnlineDurabilityModifier" value="4"/> <!-- How much protected claim area block hardness is increased when a player is online. 0 means infinite (no damage will ever be taken). Default is 4x --> <property name="LandClaimOnlineDurabilityModifier" value="50"/> <!-- How much protected claim area block hardness is increased when a player is online. 0 means infinite (no damage will ever be taken). Default is 4x -->
<property name="LandClaimOfflineDurabilityModifier" value="4"/> <!-- How much protected claim area block hardness is increased when a player is offline. 0 means infinite (no damage will ever be taken). Default is 4x --> <property name="LandClaimOfflineDurabilityModifier" value="1000"/> <!-- How much protected claim area block hardness is increased when a player is offline. 0 means infinite (no damage will ever be taken). Default is 4x -->
<!-- There are several game settings that you cannot change when starting a new game. <!-- There are several game settings that you cannot change when starting a new game.
You can use console commands to change at least some of them ingame. You can use console commands to change at least some of them ingame.
setgamepref BedrollDeadZoneSize 30 --> setgamepref BedrollDeadZoneSize 30 -->
</ServerSettings> </ServerSettings>