pufferpanel / templates

PufferPanel server templates. These templates are importable via the PufferPanel web interface.
Apache License 2.0
84 stars 140 forks source link

Add Palworld template #256

Closed adrianopteodoro closed 10 months ago

adrianopteodoro commented 10 months ago
ynixt commented 10 months ago

image

adrianopteodoro commented 10 months ago

@ynixt i've added mkdir -p on install, this path doesn't exist on clean install so need to be created before writing the config file.

zetix commented 10 months ago

Should remove creating the .ini file since Palworld comes with a default configuration in root directory.

The save file configuration is only for save specific settings, and reinstalling to update will replace any changes users made to the config.

lauridskern commented 10 months ago

why was this closed and not merged? It worked perfectly for me

spusuf commented 10 months ago

The owner deleted the repository :(

why was this closed and not merged? It worked perfectly for me

Do you have a copy of the template?

lauridskern commented 10 months ago

code is still there, if you want to try

{
  "display": "Palworld Dedicated Server",
  "type": "srcds",
  "install": [
    {
      "appId": "1007",
      "type": "steamgamedl"
    },
    {
      "appId": "2394010",
      "type": "steamgamedl"
    },
    {
      "type": "command",
      "commands": ["chmod +x Pal/Binaries/Linux/PalServer-Linux-Test"]
    },
    {
      "type": "mkdir",
      "target": "Pal/Saved/Config/LinuxServer"
    },
    {
      "type": "writefile",
      "text": "[/Script/Pal.PalGameWorldSettings]\nOptionSettings=(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=${serverplayermaxnum},ServerName=\"${servername}\",ServerDescription=\"${serverdescription}\",AdminPassword=\"${adminpassword}\",ServerPassword=\"${serverpassword}\",PublicPort=${publicport},PublicIP=\"${publicip}\",RCONEnabled=False,RCONPort=25575,Region=\"\",bUseAuth=True,BanListURL=\"https://api.palworldgame.com/api/banlist.txt\")\n",
      "target": "Pal/Saved/Config/LinuxServer/PalWorldSettings.ini"
    }
  ],
  "run": {
    "stopCode": 15,
    "command": "./Pal/Binaries/Linux/PalServer-Linux-Test Pal -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS",
    "workingDirectory": "",
    "pre": [
      {
        "type": "steamgamedl",
        "appId": "1007"
      },
      {
        "type": "steamgamedl",
        "appId": "2394010"
      },
      {
        "type": "command",
        "commands": ["chmod +x Pal/Binaries/Linux/PalServer-Linux-Test"]
      }
    ],
    "post": [],
    "environmentVars": {}
  },
  "data": {
    "serverplayermaxnum": {
      "type": "integer",
      "desc": "Maximum number of players",
      "display": "Server Player Max Num",
      "required": true,
      "value": 32
    },
    "publicport": {
      "type": "integer",
      "desc": "What port to bind the server to",
      "display": "Public Port",
      "required": true,
      "value": 8211
    },
    "publicip": {
      "type": "string",
      "desc": "What address to bind the server to (leave blank for auto)",
      "display": "Public IP",
      "required": false,
      "value": ""
    },
    "servername": {
      "type": "string",
      "desc": "You server name that will show on server list",
      "display": "Server Name",
      "required": true,
      "value": "Default Palworld Server"
    },
    "serverdescription": {
      "type": "string",
      "desc": "What is shown when selecting the server in the list.",
      "display": "Server Description",
      "required": true,
      "value": ""
    },
    "adminpassword": {
      "type": "string",
      "desc": "Sets a Admin Password to be able to use commands in game (use command /AdminPassword <password>)",
      "display": "Admin Password",
      "required": true,
      "value": ""
    },
    "serverpassword": {
      "type": "string",
      "desc": "Sets a Server Password to make it private.",
      "display": "Server Password",
      "required": false,
      "value": ""
    }
  },
  "environment": {
    "type": "tty"
  },
  "requirements": {
    "os": "linux",
    "arch": "amd64"
  }
}
au5ton commented 9 months ago

I'm not sure if this is an issue with the template or with how I'm using it, but I get the following error when using the template:

Starting process: ./Pal/Binaries/Linux/PalServer-Linux-Test Pal -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS
Shutdown handler: initalize.
Refusing to run with the root privileges.
spusuf commented 9 months ago
Refusing to run with the root privileges.

That's an issue with pufferpanel, it should not be running as root. Have you created a user and installed pufferpanel using it?

au5ton commented 9 months ago

@spusuf I'm running Pufferpanel in docker

spusuf commented 9 months ago

@spusuf I'm running Pufferpanel in docker and that runs Pufferpanel as root

I'm running on bare metal (well in an nspawn-container) and it's flawless.

Try using docker run with the --user parameter

au5ton commented 9 months ago

Thanks for your help @spusuf, I went ahead and just decided to use https://github.com/thijsvanloef/palworld-server-docker