eggs
eggs copied to clipboard
add palworld egg
Description
This PR is adding the dedicated server egg for Palworld fixing #2669. Also "hopefully" adding all contributors from the metioned issue for helping out creating and testing this egg. @QuintenQVD0
Checklist for all submissions
- [x] Have you followed the guidelines in our Contributing document?
- [x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
- [x] Have you tested and reviewed your changes with confidence that everything works?
- [x] Did you branch your changes and PR from that branch and not from your master branch?
- If not, why?:
New egg Submissions
- [x] Does your submission pass tests (server is connectable)?
- [x] Does your egg use a custom docker image?
- [ ] Have you tried to use a generic image?
- [ ] Did you PR the necessary changes to make it work?
- [x] Have you added the egg to the main README.md and any other README files in subdirectories of the egg (e.g /game_eggs) according to the alphabetical order?
- [x] Have you added a unique README.md for the egg you are adding according to the alphabetical order?
- [x] You verify that the start command applied does not use a shell script
- [ ] If some script is needed then it is part of a current yolk or a PR to add one
- [x] The egg was exported from the panel
Does the game work so far? Unfortunately, I haven't been able to test it yet.
Does the game work so far? Unfortunately, I haven't been able to test it yet.
I have it running in my environment, works like a charm! there's some minor hiccups but that is mostly due to the nature of the game and not the server itself.
I have found after some testing (this egg specifically) doesn't seem to work on any proxmox vm ( either kvm or non kvm) or unraid and only works in a lxc container via proxmox (which is of-course not recommended by pterodactyl) or on a bare metal os like debian or ubuntu.
Not sure if this is relevant to this or not?
I have found after some testing (this egg specifically) doesn't seem to work on any proxmox vm ( either kvm or non kvm) or unraid and only works in a lxc container via proxmox (which is of-course not recommended by pterodactyl) or on a bare metal os like debian or ubuntu.
Not sure if this is relevant to this or not?
I have just tested the Egg and it starts without any problems. We virtualize via Proxmox with KVM and it runs without any problems.
-- Thanks for the work guys!
I have found after some testing (this egg specifically) doesn't seem to work on any proxmox vm ( either kvm or non kvm) or unraid and only works in a lxc container via proxmox (which is of-course not recommended by pterodactyl) or on a bare metal os like debian or ubuntu. Not sure if this is relevant to this or not?
I have just tested the Egg and it starts without any problems. We virtualize via Proxmox with KVM and it runs without any problems.
-- Thanks for the work guys!
Hmm strange @QuintenQVD0 said it wouldn't. https://gist.github.com/QuintenQVD0/8d7af6f08d716872ee609e9a203d696a?permalink_comment_id=4839855#gistcomment-4839855
Unless it's fixed.
@danymo1221 I don't see any reason why it wouldn't work on proxmox, the issue may actually be with lxc containers, proxmox itself doesn't do docker on the host machine, and that is known to have quirks with proxmox/kvm in some instances, but it should work just fine running on any system that has a proper docker/wings install.
actually another issue i ran into is that the server takes a huge amount of RAM after a while. currently after running for about 4h with 6 players on its on 16GB..... also cpu load is permanent about 100% in spikes up to 200% dont know if thats egg / their file or maybe a missconfiguration on my side related.. does anyone else have same problem?
actually another issue i ran into is that the server takes a huge amount of RAM after a while. currently after running for about 4h with 6 players on its on 16GB..... also cpu load is permanent about 100% in spikes up to 200% dont know if thats egg / their file or maybe a missconfiguration on my side related.. does anyone else have same problem?
I can see that the server is slowly using more ram as time goes on. Even when no one is on the server. Over the past 2 hours with no one in the server it has slowly crept from 4GB to 4.5GB
actually another issue i ran into is that the server takes a huge amount of RAM after a while. currently after running for about 4h with 6 players on its on 16GB..... also cpu load is permanent about 100% in spikes up to 200% don't know if that's egg / their file or maybe a misconfiguration on my side related.. does anyone else have same problem?
Yes... I'm not sure if its a memory leak from within the game itself or a configuration problem. It starts out relatively small even with 10-12 people online and after about 7-8 hours I'm at 15gb and after a few more hours I am at 20gb with the same number of players as before. My current solution is just restarting server every 12 hours in the hopes that it doesn't break before then but I've already had one "out of memory" crash when I had a hard limit set at 8gb's.
EDIT: Not that it means much but this person is running a dedicated windows 2019 server and the provided software without virtualization and hasn't crossed 8gb's in over 24 hours:
More than a few other people running PalWorld servers have confirmed the same, memory bloats over time (within a docker container) and ones running the server with just the provided GUI/SteamCMD aren't experiencing the same bloat. Not sure how to figure out the root cause beyond this.
@Ballaual I pushed some changed to this pr:
- add the steamcmd feature
- right validation for max players
- force the admin to self set the admin password
- remove the default value from the admin password
- Do not append -serverpassword= if no password is set for the users
- On reinstall the config will not just be overwritten but first backed up and then the new one is coppyed in placed
- removed an extra space before the -port
- removed an extra space before the EpicApp
Please or anyone else here test those latest changed (most important the password logic)
@Ballaual I pushed some changed to this pr:
* add the steamcmd feature * right validation for max players * force the admin to self set the admin password * remove the default value from the admin password * Do not append -serverpassword= if no password is set for the users * On reinstall the config will not just be overwritten but first backed up and then the new one is coppyed in placed * removed an extra space before the -port * removed an extra space before the EpicApp
Please or anyone else here test those latest changed (most important the password logic)
I believe you touched on this, but this is safe to use if we already have an existing server and setup? We won't lose our config?
Please or anyone else here test those latest changed (most important the password logic)
just woke up. will test it in a few minutes!
believe you touched on this, but this is safe to use if we already have an existing server and setup? We won't lose our config?
backup your Saved/SaveGames should be fine
@Ballaual I pushed some changed to this pr:
* add the steamcmd feature * right validation for max players * force the admin to self set the admin password * remove the default value from the admin password * Do not append -serverpassword= if no password is set for the users * On reinstall the config will not just be overwritten but first backed up and then the new one is coppyed in placed * removed an extra space before the -port * removed an extra space before the EpicApp
Please or anyone else here test those latest changed (most important the password logic)
I believe you touched on this, but this is safe to use if we already have an existing server and setup? We won't lose our config?
It should not brake anything, and the startup change wont even apply to already made servers.
Keep in mind that the update from the game itself broke some savegames
Please or anyone else here test those latest changed (most important the password logic)
just woke up. will test it in a few minutes!
believe you touched on this, but this is safe to use if we already have an existing server and setup? We won't lose our config?
backup your Saved/SaveGames should be fine
So if you test this please make a new server or update the startup of an already made one.
- force the admin to self set the admin password
works
- remove the default value from the admin password
works
- Do not append -serverpassword= if no password is set for the users
does not work as intended enter no pw = not asked to enter a pw enter a pw = asked to enter a pw but says they do not match
without pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
with pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
edit: should't be the startup line sth like this?
/home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port={{SERVER_PORT}} -players={{MAX_PLAYERS}} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip {{SERVER_IP}} -publicport {{SERVER_PORT}} EpicApp=PalServer -servername="{{SRV_NAME}}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword="{{SRV_PASSWORD}}""; fi) -adminpassword="{{ADMIN_PASSWORD}}"
- force the admin to self set the admin password
works
- remove the default value from the admin password
works
- Do not append -serverpassword= if no password is set for the users
does not work as intended enter no pw = not asked to enter a pw enter a pw = asked to enter a pw but says they do not match
without pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
with pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
edit: should't be the startup line sth like this?
/home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port={{SERVER_PORT}} -players={{MAX_PLAYERS}} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip {{SERVER_IP}} -publicport {{SERVER_PORT}} EpicApp=PalServer -servername="{{SRV_NAME}}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword="{{SRV_PASSWORD}}""; fi) -adminpassword="{{ADMIN_PASSWORD}}"
No you have to escape the "" arround the password else they terminate the ones around the echo and you get a fault
- force the admin to self set the admin password
works
- remove the default value from the admin password
works
- Do not append -serverpassword= if no password is set for the users
does not work as intended enter no pw = not asked to enter a pw enter a pw = asked to enter a pw but says they do not match
without pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
with pw
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port=${SERVER_PORT} -players=${MAX_PLAYERS} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip ${SERVER_IP} -publicport ${SERVER_PORT} EpicApp=PalServer -servername="${SRV_NAME}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword=\"${SRV_PASSWORD}\""; fi) -adminpassword="${ADMIN_PASSWORD}"
edit: should't be the startup line sth like this?
/home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal -port={{SERVER_PORT}} -players={{MAX_PLAYERS}} -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip {{SERVER_IP}} -publicport {{SERVER_PORT}} EpicApp=PalServer -servername="{{SRV_NAME}}" $(if [ -n "$SRV_PASSWORD" ]; then echo "-serverpassword="{{SRV_PASSWORD}}""; fi) -adminpassword="{{ADMIN_PASSWORD}}"
I just reverted the startup, should be fine.
Somethine else I saw someone add -Unatended
does it improve / add more logging to something?
Somethine else I saw someone add
-Unatended
does it improve / add more logging to something?
will test it out!
btw.. they just did updated their docs requiring min RAM of 16GB better 32GB.....
Somethine else I saw someone add
-Unatended
does it improve / add more logging to something?will test it out!
btw.. they just did updated their docs requiring min RAM of 16GB better 32GB.....
also pleasy try appending -log
at the end, it should print out way more to the console (default unity server flag)
also pleasy try appending
-log
at the end, it should print out way more to the console (default unity server flag)
its unreal engine isnt it?
edit: can't confirm that any of both parameters bring up more logging. neither inside the console or as standalone file
also pleasy try appending
-log
at the end, it should print out way more to the console (default unity server flag)its unreal engine isnt it?
edit: can't confirm that any of both parameters bring up more logging. neither inside the console or as standalone file
Yea I meant unreal and typed unity
oh wow... you know what i've just figured out!?... the server browser (recent tab) is buggy af too....... it shows the recent server i joined yea but connects with the other server i played yesterday... that was the reason why i your password logic might not worked because the game tried to connect me with the wrong server... unfortunately its not really possible to test that through the server browser tab anymore as there as soo many servers right now that you need to load so much servers in there that the game literally crashed my pc -.-
the server browser (recent tab) is buggy af too.......
The we need to test this later when they fix there shit
@Ballaual Needs -publicport=xxxx and -publicip=X.X.X.X
If you follow there docs, and this seems to be confirmed in the dc
@Ballaual Needs -publicport=xxxx and -publicip=X.X.X.X
If you follow there docs, and this seems to be confirmed in the dc
i dont understand what you mean? .... nevermind .... i see what you talking about.. the missing "="
@Ballaual Needs -publicport=xxxx and -publicip=X.X.X.X
If you follow there docs, and this seems to be confirmed in the dc
i dont understand what you mean? we already include this 2 params also the EpicApp=PalServer
the egg has -publicip ip and it should be -publicip=ip
changed it with 828dd72 but still not able to properly test the password logic with the buggy serverlists.
Any way to get logs and/or RCON through the console?
Any way to get logs and/or RCON through the console?
That's going to be a pain
Any way to get logs and/or RCON through the console?
currently no idea. already tried different logging params not doing anything..
another problem is that the copied config after a restart (press restart in panel) gets emptied -> no idea why it is doing this
edit: might be an issue by parsing the variables through the start command
- publicip
- publicport
- serverpassword
- adminpassword
- servername
will check this out later if you remove them from the startup if the file still gets deleted.