diff --git a/README.md b/README.md index a0215e5..ee7ba90 100644 --- a/README.md +++ b/README.md @@ -45,6 +45,7 @@ services: - MULTITHREADING=true - RCON_ENABLED=true - RCON_PORT=25575 + - TZ=UTC - ADMIN_PASSWORD="adminPasswordHere" - COMMUNITY=false # Enable this if you want your server to show up in the community servers tab, USE WITH SERVER_PASSWORD! # Enable the environment variables below if you have COMMUNITY=true @@ -71,6 +72,7 @@ docker run -d \ -e MULTITHREADING=true \ -e RCON_ENABLED=true \ -e RCON_PORT=25575 \ + -e TZ=UTC \ -e ADMIN_PASSWORD="adminPasswordHere" \ -e COMMUNITY=false \ --restart unless-stopped \ @@ -96,6 +98,7 @@ It is highly recommended you set the following environment values before startin | Variable | Info | Default Values | Allowed Values | |------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------|----------------| +| TZ | Timezone used for time stamping backup server | UTC | See [TZ Identifiers](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#Time_Zone_abbreviations) | | PLAYERS* | Max amount of players that are able to join the server | 16 | 1-31 | | PORT* | UDP port that the server will expose | 8211 | 1024-65535 | | PUID* | The uid of the user the server should run as | 1000 | !0 | diff --git a/docker-compose.yml b/docker-compose.yml index 0665c1e..12fb347 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,6 +15,7 @@ services: - MULTITHREADING=true - RCON_ENABLED=true - RCON_PORT=25575 + - TZ=UTC - ADMIN_PASSWORD="adminPasswordHere" - COMMUNITY=false - BACKUP_ENABLED=true diff --git a/k8s/configmap.yaml b/k8s/configmap.yaml index 41785c3..266b340 100644 --- a/k8s/configmap.yaml +++ b/k8s/configmap.yaml @@ -13,4 +13,77 @@ data: COMMUNITY: "false" # Enable this if you want your server to show up in the community servers tab, USE WITH SERVER_PASSWORD! # Enable the environment variables below if you have COMMUNITY=true # SERVER_PASSWORD: "yourServerPassword" - SERVER_NAME: "Server_Name" # Note, it seems spaces are not supported, so use underlines. \ No newline at end of file + SERVER_NAME: "Server_Name" # Note, it seems spaces are not supported, so use underlines. +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: palworld-settings +data: + PalWorldSettings.ini: >- + [/Script/Pal.PalGameWorldSettings] + + OptionSettings=( + Difficulty=None, + DayTimeSpeedRate=1.000000, + NightTimeSpeedRate=1.000000, + ExpRate=1.000000, + PalCaptureRate=1.000000, + PalSpawnNumRate=1.000000, + PalDamageRateAttack=1.000000, + PalDamageRateDefense=1.000000, + PlayerDamageRateAttack=1.000000, + PlayerDamageRateDefense=1.000000, + PlayerStomachDecreaceRate=1.000000, + PlayerStaminaDecreaceRate=1.000000, + PlayerAutoHPRegeneRate=1.000000, + PlayerAutoHpRegeneRateInSleep=1.000000, + PalStomachDecreaceRate=1.000000, + PalStaminaDecreaceRate=1.000000, + PalAutoHPRegeneRate=1.000000, + PalAutoHpRegeneRateInSleep=1.000000, + BuildObjectDamageRate=1.000000, + BuildObjectDeteriorationDamageRate=1.000000, + CollectionDropRate=1.000000, + CollectionObjectHpRate=1.000000, + CollectionObjectRespawnSpeedRate=1.000000, + EnemyDropItemRate=1.000000, + DeathPenalty=All, + bEnablePlayerToPlayerDamage=False, + bEnableFriendlyFire=False, + bEnableInvaderEnemy=True, + bActiveUNKO=False, + bEnableAimAssistPad=True, + bEnableAimAssistKeyboard=False, + DropItemMaxNum=3000, + DropItemMaxNum_UNKO=100, + BaseCampMaxNum=128, + BaseCampWorkerMaxNum=15, + DropItemAliveMaxHours=1.000000, + bAutoResetGuildNoOnlinePlayers=False, + AutoResetGuildTimeNoOnlinePlayers=72.000000, + GuildPlayerMaxNum=20, + PalEggDefaultHatchingTime=72.000000, + WorkSpeedRate=1.000000, + bIsMultiplay=False, + bIsPvP=False, + bCanPickupOtherGuildDeathPenaltyDrop=False, + bEnableNonLoginPenalty=True, + bEnableFastTravel=True, + bIsStartLocationSelectByMap=True, + bExistPlayerAfterLogout=False, + bEnableDefenseOtherGuildPlayer=False, + CoopPlayerMaxNum=4, + ServerPlayerMaxNum=32, + ServerName="Default Palworld Server", + ServerDescription="", + AdminPassword="", + ServerPassword="", + PublicPort=8211, + PublicIP="", + RCONEnabled=False, + RCONPort=25575, + Region="", + bUseAuth=True, + BanListURL="https://api.palworldgame.com/api/banlist.txt" + ) \ No newline at end of file diff --git a/k8s/deployment.yaml b/k8s/deployment.yaml index 3169897..cfca36c 100644 --- a/k8s/deployment.yaml +++ b/k8s/deployment.yaml @@ -20,10 +20,10 @@ spec: imagePullPolicy: IfNotPresent ports: - containerPort: 8211 - name: 8211-palworld + name: server protocol: UDP - containerPort: 27015 - name: 27015-palworld + name: query protocol: UDP env: - name: ADMIN_PASSWORD @@ -37,7 +37,13 @@ spec: volumeMounts: - mountPath: /palworld name: datadir + - name: palworld-settings + mountPath: /palworld/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini + subPath: PalWorldSettings.ini volumes: - name: datadir persistentVolumeClaim: - claimName: palworld-server-datadir \ No newline at end of file + claimName: palworld-server-datadir + - name: palworld-settings + configMap: + name: palworld-settings \ No newline at end of file diff --git a/k8s/service.yaml b/k8s/service.yaml index 41c8b15..1455f3b 100644 --- a/k8s/service.yaml +++ b/k8s/service.yaml @@ -6,14 +6,14 @@ metadata: name: palworld-server spec: ports: - - name: 8211-palworld + - name: server port: 8211 protocol: UDP - targetPort: 8211-palworld - - name: 27015-palworld + targetPort: server + - name: query port: 27015 protocol: UDP - targetPort: 27015-palworld + targetPort: query selector: app: palworld-server type: LoadBalancer \ No newline at end of file