From 29abe55141570c6e9b26130018949685798bbcf2 Mon Sep 17 00:00:00 2001 From: Thijs van Loef Date: Mon, 23 Dec 2024 09:40:58 +0100 Subject: [PATCH 1/4] fix "App '2394010' state is 0x6 after update job" --- scripts/start.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/start.sh b/scripts/start.sh index f26abec1..409c1fe1 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -29,6 +29,7 @@ if [ "$ServerInstalled" == 0 ] && [ "${UPDATE_ON_BOOT,,}" == true ]; then IsUpdateRequired=$? if [ "$IsUpdateRequired" == 0 ]; then LogAction "Starting Update" + rm /palworld/steamapps/appmanifest_2394010.acf InstallServer fi fi From 003ac5b05dd6dc31e1e6c07dd66969c939bdcaf4 Mon Sep 17 00:00:00 2001 From: Thijs van Loef Date: Mon, 23 Dec 2024 10:12:40 +0100 Subject: [PATCH 2/4] fix appmanifest issues --- scripts/start.sh | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/scripts/start.sh b/scripts/start.sh index 409c1fe1..d6d4d484 100644 --- a/scripts/start.sh +++ b/scripts/start.sh @@ -23,15 +23,10 @@ if [ "$ServerInstalled" == 1 ]; then InstallServer fi -# Update Only If Already Installed +# Always update on boot even if the server is installed, to prevent appmanifest issues if [ "$ServerInstalled" == 0 ] && [ "${UPDATE_ON_BOOT,,}" == true ]; then - UpdateRequired - IsUpdateRequired=$? - if [ "$IsUpdateRequired" == 0 ]; then - LogAction "Starting Update" - rm /palworld/steamapps/appmanifest_2394010.acf - InstallServer - fi + rm /palworld/steamapps/appmanifest_2394010.acf + InstallServer fi # Check if the architecture is arm64 From 9aac641fbbfe67e12df11cbea08567920dad1dd6 Mon Sep 17 00:00:00 2001 From: Thijs van Loef Date: Mon, 23 Dec 2024 10:49:43 +0100 Subject: [PATCH 3/4] Add new config --- README.md | 11 ++++++++++ .../configuration/game-settings.md | 10 ++++++++++ scripts/compile-settings.sh | 20 +++++++++++++++++++ scripts/files/PalWorldSettings.ini.template | 12 ++++++++++- 4 files changed, 52 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d225a7fe..8de39f1c 100644 --- a/README.md +++ b/README.md @@ -594,6 +594,7 @@ For example: | PAL_STAMINA_DECREASE_RATE | Pal stamina reduction rate | 1.000000 | Float | | PAL_AUTO_HP_REGEN_RATE | Pal auto HP regeneration rate | 1.000000 | Float | | PAL_AUTO_HP_REGEN_RATE_IN_SLEEP | Pal sleep health regeneration rate (in Palbox) | 1.000000 | Float | +| BUILD_OBJECT_HP_RATE | Damage rate to structure multiplier | 1.000000 | Float | | BUILD_OBJECT_DAMAGE_RATE | Damage to structure multipiler | 1.000000 | Float | | BUILD_OBJECT_DETERIORATION_DAMAGE_RATE | Structure determination rate | 1.000000 | Float | | COLLECTION_DROP_RATE | Getherable items multipiler | 1.000000 | Float | @@ -621,6 +622,8 @@ For example: | AUTO_SAVE_SPAN | Time between autosaves (seconds) | 30.000000 | Float | | IS_MULTIPLAY | Enable multiplayer | False | Boolean | | IS_PVP | Enable PVP | False | Boolean | +| HARDCORE | Enable Hardcore | False | Boolean | +| PAL_LOST | Lose pals on (pal)death | False | Boolean | | CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP | Allow players from other guilds to pick up death penalty items | False | Boolean | | ENABLE_NON_LOGIN_PENALTY | Enable non-login penalty | True | Boolean | | ENABLE_FAST_TRAVEL | Enable fast travel | True | Boolean | @@ -628,13 +631,21 @@ For example: | EXIST_PLAYER_AFTER_LOGOUT | Toggle for deleting players when they log off | False | Boolean | | ENABLE_DEFENSE_OTHER_GUILD_PLAYER | Allows defense against other guild players | False | Boolean | | INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX | unknown | False | Boolean | +| BUILD_AREA_LIMIT | Build area limit | False | Boolean | +| ITEM_WEIGHT_RATE | Item Weight Multiplier | 1.000000 | float | | COOP_PLAYER_MAX_NUM | Maximum number of players in a guild | 4 | Integer | | REGION | Region | | String | | USEAUTH | Use authentication | True | Boolean | | BAN_LIST_URL | Which ban list to use | [https://api.palworldgame.com/api/banlist.txt](https://api.palworldgame.com/api/banlist.txt) | string | | SHOW_PLAYER_LIST | Enable show player list | True | Boolean | | SUPPLY_DROP_SPAN | Interval for supply drop (minutes) | 180 | Integer | +| ENABLE_PREDATOR_BOSS_PALL | Enable Predator boss as pals | true | boolean | +| MAX_BUILDING_LIMIT_NUM | Maximum number of buildings per base | 0 (unlimited) | Integer | +| SERVER_REPLICATE_PAWN_CULL_DISTANCE | Server Replicate Pawn Cull Distance | 15000.000000 | Float | +ENABLE_PREDATOR_BOSS_PALL = $ENABLE_PREDATOR_BOSS_PALL, +MAX_BUILDING_LIMIT_NUM = $MAX_BUILDING_LIMIT_NUM, +SERVER_REPLICATE_PAWN_CULL_DISTANCE = $SERVER_REPLICATE_PAWN_CULL_DISTANCE ### Manually When the server starts, a `PalWorldSettings.ini` file will be created in the following location: `/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini` diff --git a/docusaurus/docs/getting-started/configuration/game-settings.md b/docusaurus/docs/getting-started/configuration/game-settings.md index af8d2822..dc477139 100644 --- a/docusaurus/docs/getting-started/configuration/game-settings.md +++ b/docusaurus/docs/getting-started/configuration/game-settings.md @@ -34,6 +34,8 @@ For example: | Variable | Description | Default Value | Allowed Value | |-------------------------------------------|----------------------------------------------------------------|----------------------------------------------------------------------------------------------|----------------------------------------| | DIFFICULTY | Game Difficulty | None | `None`,`Normal`,`Difficult` | +| RANDOMIZER_TYPE | Randomizer Type | None | `None`, ? | +| RANDOMIZER_SEED | Randomizer Seed | "" | String | | DAYTIME_SPEEDRATE | Day time speed - Larger number means shorter days | 1.000000 | Float | | NIGHTTIME_SPEEDRATE | Night time speed - Larger number means shorter nights | 1.000000 | Float | | EXP_RATE | EXP earn rate | 1.000000 | Float | @@ -51,6 +53,7 @@ For example: | PAL_STAMINA_DECREASE_RATE | Pal stamina reduction rate | 1.000000 | Float | | PAL_AUTO_HP_REGEN_RATE | Pal auto HP regeneration rate | 1.000000 | Float | | PAL_AUTO_HP_REGEN_RATE_IN_SLEEP | Pal sleep health regeneration rate (in Palbox) | 1.000000 | Float | +| BUILD_OBJECT_HP_RATE | Damage rate to structure multiplier | 1.000000 | Float | | BUILD_OBJECT_DAMAGE_RATE | Damage to structure multipiler | 1.000000 | Float | | BUILD_OBJECT_DETERIORATION_DAMAGE_RATE | Structure determination rate | 1.000000 | Float | | COLLECTION_DROP_RATE | Getherable items multipiler | 1.000000 | Float | @@ -78,6 +81,8 @@ For example: | AUTO_SAVE_SPAN | Time between autosaves (seconds) | 30.000000 | Float | | IS_MULTIPLAY | Enable multiplayer | False | Boolean | | IS_PVP | Enable PVP | False | Boolean | +| HARDCORE | Enable Hardcore | False | Boolean | +| PAL_LOST | Lose pals on (pal)death | False | Boolean | | CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP | Allow players from other guilds to pick up death penalty items | False | Boolean | | ENABLE_NON_LOGIN_PENALTY | Enable non-login penalty | True | Boolean | | ENABLE_FAST_TRAVEL | Enable fast travel | True | Boolean | @@ -85,6 +90,8 @@ For example: | EXIST_PLAYER_AFTER_LOGOUT | Toggle for deleting players when they log off | False | Boolean | | ENABLE_DEFENSE_OTHER_GUILD_PLAYER | Allows defense against other guild players | False | Boolean | | INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX | unknown | False | Boolean | +| BUILD_AREA_LIMIT | Build area limit | False | Boolean | +| ITEM_WEIGHT_RATE | Item Weight Multiplier | 1.000000 | float | | COOP_PLAYER_MAX_NUM | Maximum number of players in a guild | 4 | Integer | | REGION | Region | | String | | USEAUTH | Use authentication | True | Boolean | @@ -94,6 +101,9 @@ For example: | TARGET_MANIFEST_ID | Locks game version to corespond with Manfiest ID from Steam Download Depot. | | See [Manifest ID Table](https://palworld-server-docker.loef.dev/guides/pinning-game-version) | | ENABLE_PLAYER_LOGGING | Enables Logging and announcing when players join and leave | true | true/false | | PLAYER_LOGGING_POLL_PERIOD | Polling period (in seconds) to check for players who have joined or left | 5 | !0 | +| ENABLE_PREDATOR_BOSS_PALL | Enable Predator boss as pals | true | boolean | +| MAX_BUILDING_LIMIT_NUM | Maximum number of buildings per base | 0 (unlimited) | Integer | +| SERVER_REPLICATE_PAWN_CULL_DISTANCE | Server Replicate Pawn Cull Distance | 15000.000000 | Float | ### Manually diff --git a/scripts/compile-settings.sh b/scripts/compile-settings.sh index be07af5f..f1ebecd3 100755 --- a/scripts/compile-settings.sh +++ b/scripts/compile-settings.sh @@ -22,6 +22,8 @@ fi LogAction "Compiling PalWorldSettings.ini" export DIFFICULTY=${DIFFICULTY:-None} +export RANDOMIZER_TYPE=${RANDOMIZER_TYPE:-None} +export RANDOMIZER_SEED=\"${RANDOMIZER_SEED:-""}\" export DAYTIME_SPEEDRATE=${DAYTIME_SPEEDRATE:-1.000000} export NIGHTTIME_SPEEDRATE=${NIGHTTIME_SPEEDRATE:-1.000000} export EXP_RATE=${EXP_RATE:-1.000000} @@ -39,6 +41,7 @@ export PAL_STOMACH_DECREASE_RATE=${PAL_STOMACH_DECREASE_RATE:-1.000000} export PAL_STAMINA_DECREASE_RATE=${PAL_STAMINA_DECREASE_RATE:-1.000000} export PAL_AUTO_HP_REGEN_RATE=${PAL_AUTO_HP_REGEN_RATE:-1.000000} export PAL_AUTO_HP_REGEN_RATE_IN_SLEEP=${PAL_AUTO_HP_REGEN_RATE_IN_SLEEP:-1.000000} +export BUILD_OBJECT_HP_RATE=${BUILD_OBJECT_HP_RATE:-1.000000} export BUILD_OBJECT_DAMAGE_RATE=${BUILD_OBJECT_DAMAGE_RATE:-1.000000} export BUILD_OBJECT_DETERIORATION_DAMAGE_RATE=${BUILD_OBJECT_DETERIORATION_DAMAGE_RATE:-1.000000} export COLLECTION_DROP_RATE=${COLLECTION_DROP_RATE:-1.000000} @@ -66,6 +69,8 @@ export WORK_SPEED_RATE=${WORK_SPEED_RATE:-1.000000} export AUTO_SAVE_SPAN=${AUTO_SAVE_SPAN:-30.000000} export IS_MULTIPLAY=${IS_MULTIPLAY:-False} export IS_PVP=${IS_PVP:-False} +export HARDCORE=${HARDCORE:-False} +export PAL_LOST=${PAL_LOST:-False} export CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP=${CAN_PICKUP_OTHER_GUILD_DEATH_PENALTY_DROP:-False} export ENABLE_NON_LOGIN_PENALTY=${ENABLE_NON_LOGIN_PENALTY:-True} export ENABLE_FAST_TRAVEL=${ENABLE_FAST_TRAVEL:-True} @@ -73,6 +78,8 @@ export IS_START_LOCATION_SELECT_BY_MAP=${IS_START_LOCATION_SELECT_BY_MAP:-True} export EXIST_PLAYER_AFTER_LOGOUT=${EXIST_PLAYER_AFTER_LOGOUT:-False} export ENABLE_DEFENSE_OTHER_GUILD_PLAYER=${ENABLE_DEFENSE_OTHER_GUILD_PLAYER:-False} export INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX=${INVISIBLE_OTHER_GUILD_BASE_CAMP_AREA_FX:-False} +export BUILD_AREA_LIMIT=${BUILD_AREA_LIMIT:-False} +export ITEM_WEIGHT_RATE=${ITEM_WEIGHT_RATE:-1.000000} export COOP_PLAYER_MAX_NUM=${COOP_PLAYER_MAX_NUM:-4} export SERVER_PLAYER_MAX_NUM=${PLAYERS:-32} export SERVER_NAME=\"${SERVER_NAME:-"Default Palworld Server"}\" @@ -92,11 +99,16 @@ export SHOW_PLAYER_LIST=${SHOW_PLAYER_LIST:-True} export ALLOW_CONNECT_PLATFORM=${ALLOW_CONNECT_PLATFORM:-Steam} export USE_BACKUP_SAVE_DATA=${USE_BACKUP_SAVE_DATA:-True} export SUPPLY_DROP_SPAN=${SUPPLY_DROP_SPAN:-180} +export ENABLE_PREDATOR_BOSS_PALL=${ENABLE_PREDATOR_BOSS_PALL:-True} +export MAX_BUILDING_LIMIT_NUM=${MAX_BUILDING_LIMIT_NUM:-0} +export SERVER_REPLICATE_PAWN_CULL_DISTANCE=${SERVER_REPLICATE_PAWN_CULL_DISTANCE:-15000.000000} if [ "${DEBUG,,}" = true ]; then cat < Date: Mon, 23 Dec 2024 10:52:02 +0100 Subject: [PATCH 4/4] fix typo --- README.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/README.md b/README.md index 8de39f1c..32f5ba6e 100644 --- a/README.md +++ b/README.md @@ -643,9 +643,6 @@ For example: | MAX_BUILDING_LIMIT_NUM | Maximum number of buildings per base | 0 (unlimited) | Integer | | SERVER_REPLICATE_PAWN_CULL_DISTANCE | Server Replicate Pawn Cull Distance | 15000.000000 | Float | -ENABLE_PREDATOR_BOSS_PALL = $ENABLE_PREDATOR_BOSS_PALL, -MAX_BUILDING_LIMIT_NUM = $MAX_BUILDING_LIMIT_NUM, -SERVER_REPLICATE_PAWN_CULL_DISTANCE = $SERVER_REPLICATE_PAWN_CULL_DISTANCE ### Manually When the server starts, a `PalWorldSettings.ini` file will be created in the following location: `/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini`