Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] ich777 - Gameserver Dockers

Featured Replies

4 minutes ago, ich777 said:

It's right there:

.../valheim/.config/unity3d/IronGate/Valheim

 

For a specific seed you have to create that on your client and copy the world file over to the server.

ok will try that

  • Replies 12.6k
  • Views 2.3m
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Just thought I'd share my experience setting up a Valheim server with this docker app from @ich777(thank you!)   You don't need to worry about Steam authentication for Valheim, the default a

  • Dockers Available:   SteamCMD DedicatedServers: CounterStrike: Source CounterStrike 2 TeamFortress 2 ArmA3 - requested by @MrSage Deathmatch Classic

  • This will hopefully shed some light on the underside working bits of building a cluster of servers for ARK:SurvivalEvolved.   With the inspiration (read thievery) from @growlith I present th

Posted Images

3 minutes ago, RazorX said:

just tried that, the seed still wasn't the same

Yes generating a seed on windows will be different on linux even when using the same seed.

On 1/25/2024 at 10:12 AM, ich777 said:

PALWORLD ANNOUNCEMENT

 

Palworld now supports automatic backups.

 

If you want to make use of the new feature update the container with the "force update" button on the Docker page (with advanced view enabled) and then create these variables in the template:

 

  1. Key: BACKUP
    Value: true
    Description: Can be either true or false and will enable or disable the Backup function.
     
  2. Key: BACKUP_INTERVAL
    Value: 120
    Description: Backup interval in minutes
     
  3. Key: BACKUPS_TO_KEEP
    Value: 12
    Description: Number of backups to keep

(YOU HAVE TO CREATE ALL THREE VARIABLES OTHERWISE YOU WILL GET ERRORS)

 

In the template it should look something like that:

grafik.png.65277b8c4bc532c581a2f02117a20568.png

 

 

Another method would be to delete the existing container (but not the directory for Palworld) and re-pull it from the CA App to get the new Variables, just make sure to write down any custom things you did in the first installed template and transfer that over to the new template.

 

Quick question about the automated backups: does this process restart the server?

  • Author
12 minutes ago, therave39 said:

Quick question about the automated backups: does this process restart the server?

No, it takes a backup in the given intervals and keep the number of specified backups.

 

That's why I said above you should create a User Script and enable RCON to restart the container.

6 minutes ago, ich777 said:

No, it takes a backup in the given intervals and keep the number of specified backups.

 

That's why I said above you should create a User Script and enable RCON to restart the container.

Perfect! Just wanted to confirm. Thanks again!

 

For anyone else looking to add a User Script for server restarts, here's what I threw together:

#!/bin/bash
SERVER_IP=127.0.0.1
RCON_PORT=25575
RCON_PASS=password

rconCmd () {
    command rcon -a $SERVER_IP:$RCON_PORT -p $RCON_PASS "$@"
}

if rconCmd info | grep "Welcome to Pal Server" >/dev/null
then
    echo "Palworld is running"
    rconCmd "broadcast Server_will_restart_in_5_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_4_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_3_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_2_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_60_seconds" >/dev/null
    sleep 30
    rconCmd "broadcast Server_will_restart_in_30_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_25_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_20_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_15_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_10_seconds" >/dev/null
    sleep 5
    rconCmd save >/dev/null
    rconCmd "shutdown 5 Server_will_restart_in_5_seconds._Get_the_fuck_out" >/dev/null
else
	echo "Palworld not running"
fi

 

This assumes you have ich777's RCON plugin installed (and RCON enabled on your server, obviously). It's extra verbose with the warnings/broadcasts, so you can adjust to your liking.

 

Any feedback is greatly appreciated!

Edited by therave39

Hey

Anyone had success with migrating their local data to the server? 

A friend ist asking me to host it on unraid. I don't play the game itself. We created the server (without the community server parameters). I copied over the level and player files. 
His friends could connect. 

I used this python file to fix his file:

GitHub - JannikBirn/palworld-host-save-fix: A variation of the Palworld Host Save Fix from xNul with additional bug fixes. This script can be used in a similar way to convert co-op games to dedicated server and vice versa.

Basically it should rewrite the 0000*1.sav file to whatever his GUID file is. 

He can see his map state and so on, but none of the pals or the skill tree. 

Is this a known issue?

Thanks for the support!
Best regards

  • Author
4 hours ago, Beryllium said:

Anyone had success with migrating their local data to the server? 

I had one user IIRC.

 

4 hours ago, Beryllium said:

He can see his map state and so on, but none of the pals or the skill tree. 

Then the conversion was not done properly.

 

I really can't help with that since I've never done that but it should be totally doable.

On 2/5/2024 at 2:40 PM, therave39 said:

Perfect! Just wanted to confirm. Thanks again!

 

For anyone else looking to add a User Script for server restarts, here's what I threw together:

#!/bin/bash
SERVER_IP=127.0.0.1
RCON_PORT=25575
RCON_PASS=password

rconCmd () {
    command rcon -a $SERVER_IP:$RCON_PORT -p $RCON_PASS "$@"
}

if rconCmd info | grep "Welcome to Pal Server" >/dev/null
then
    echo "Palworld is running"
    rconCmd "broadcast Server_will_restart_in_5_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_4_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_3_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_2_minutes" >/dev/null
    sleep 60
    rconCmd "broadcast Server_will_restart_in_60_seconds" >/dev/null
    sleep 30
    rconCmd "broadcast Server_will_restart_in_30_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_25_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_20_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_15_seconds" >/dev/null
    sleep 5
    rconCmd "broadcast Server_will_restart_in_10_seconds" >/dev/null
    sleep 5
    rconCmd save >/dev/null
    rconCmd "shutdown 5 Server_will_restart_in_5_seconds._Get_the_fuck_out" >/dev/null
else
	echo "Palworld not running"
fi

 

This assumes you have ich777's RCON plugin installed (and RCON enabled on your server, obviously). It's extra verbose with the warnings/broadcasts, so you can adjust to your liking.

 

Any feedback is greatly appreciated!

I don't know about the rcon plugin but you can simply put the mcrcon binary and call it. That's how I'm using it. I agree that your way with the function is cleaner, was too lazy when I created that for my conan servers years ago


 

#!/bin/bash
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restart in 5 minutes"
sleep 60
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restart in 4 minutes"
sleep 60
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restart in 3 minutes"
sleep 60
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restart in 2 minutes"
sleep 60
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restart in 1 minutes"
sleep 55
/mnt/cache/mcrcon/mcrcon -H 192.168.0.4 -p pass -P 25575 -w 5 "broadcast Server restarting now"
sleep 5

 

  • Author
20 minutes ago, Nodiaque said:

I don't know about the rcon plugin but you can simply put the mcrcon binary and call it. That's how I'm using it. I agree that your way with the function is cleaner, was too lazy when I created that for my conan servers years ago

On 2/5/2024 at 8:40 PM, therave39 said:

For anyone else looking to add a User Script for server restarts, here's what I threw together:

You could also create a .yaml file that the new RCON plugin can read, see here (be aware that you have to store the file somewhere on the Cache or Array).

Oh that's nice. I'll have to play with that later on. Waiting on app data backup to have per container script to have it fire before the backup start 

On 1/25/2024 at 1:07 AM, ich777 said:

Can you please post your ligs?

Usually you just restart the FiveM container and it will check for the latest FiveM version.

 

TBH I‘m not sure if the latest version from txAdmin ships with FiveM

As far as I'm aware txAdmin doesn't ship with FiveM it's an addon. I just see in the web ui it want's to update more frequently than fiveM

image.thumb.png.2ae87e6a6fadf4bd94cc3e884234714b.png

Anyone having issues with Icarus? For some reason Direct Connect isn't even working I'm not seeing any attempts in the logs either. As far as I can tell it looks like everything is booting normally, just not seeing my server on the list, direct connect doesn't work, and I've port forwarded.

Edited by Milhouz

  • Author
7 minutes ago, Milhouz said:

As far as I'm aware txAdmin doesn't ship with FiveM it's an addon. I just see in the web ui it want's to update more frequently than fiveM

It sure does ship with FiveM

Go to the server folder and then to: .../citizen/system_resources/monitor <- this is txAdmin.

 

Updates are up to you, you can download it from here.

There are plenty tutorials out there about that (took me a few minutes to figure it out how this is working :D ).

 

7 minutes ago, Milhouz said:

Anyone having issues with Icarus? For some reason Direct Connect isn't even working I'm not seeing any attempts in the logs either.

Any logs or something?

2 minutes ago, ich777 said:

It sure does ship with FiveM

Go to the server folder and then to: .../citizen/system_resources/monitor <- this is txAdmin.

 

Updates are up to you, you can download it from here.

There are plenty tutorials out there about that (took me a few minutes to figure it out how this is working :D ).

 

Any logs or something?

For FiveM I'll check out some tutorials on it :)

For Icarus I'm seeing something to a similar post but I'm trying your recommendation there first of deleting the appdata directory and docker as it's fresh anyways and try to reinstall of it first.

37 minutes ago, ich777 said:

It sure does ship with FiveM

Go to the server folder and then to: .../citizen/system_resources/monitor <- this is txAdmin.

 

Updates are up to you, you can download it from here.

There are plenty tutorials out there about that (took me a few minutes to figure it out how this is working :D ).

 

Any logs or something?

So following up with Icarus.

 

2024.02.06-21.25.07:353][  0]LogWorld: Bringing up level for play took: 0.000431
[2024.02.06-21.25.07:353][  0]LogGameMode: Display: Match State Changed from EnteringMap to WaitingToStart
[2024.02.06-21.25.07:354][  0]LogLocalSessionSubsystem: Display: ResetActiveProspect - ProspectID: NULL | ProspectDTKey: NULL
[2024.02.06-21.25.07:355][  0]LogContent: Pak meta checks passed.
[2024.02.06-21.25.07:355][  0]LogDedicatedServerEntry: ------------------------------------------------
[2024.02.06-21.25.07:355][  0]LogDedicatedServerEntry: -- Dedicated server begin processing commands --
[2024.02.06-21.25.07:355][  0]LogDedicatedServerEntry: ------------------------------------------------
[2024.02.06-21.25.07:355][  0]LogIcarusGameInstance:   ====> Version: 2.1.16.119362-Shipping-Hypatia <====
[2024.02.06-21.25.07:355][  0]LogGameState: Match State Changed from EnteringMap to WaitingToStart
[2024.02.06-21.25.07:355][  0]LogIcarusGameInstance: HandlePostLoadMap - WorldMapName: DedicatedServerEntry
[2024.02.06-21.25.07:355][  0]LogLoad: Took 0.131247 seconds to LoadMap(/Game/Maps/DedicatedServerEntry)
[2024.02.06-21.25.07:355][  0]LogInit: Display: Engine is initialized. Leaving FEngineLoop::Init()
[2024.02.06-21.25.07:356][  0]LogLoad: (Engine Initialization) Total time: 9.75 seconds
[2024.02.06-21.25.07:356][  0]LogIcarusGraphicsSettings: Warning: >> r.FidelityFX.FSR.Enabled is now: 0
[2024.02.06-21.25.07:356][  0]LogIcarusGraphicsSettings: Warning: >> FSR Mode is now: 0
[2024.02.06-21.25.07:357][  0]LogIcarusGraphicsSettings: >> ResolutionScale is now 0 (0x0)
[2024.02.06-21.25.07:357][  0]LogIcarusGraphicsSettings: Warning: >> r.VolumetricRenderTarget.Mode: 1 => 1
[2024.02.06-21.25.07:357][  0]LogIcarusGraphicsSettings: Warning: >> r.VolumetricRenderTarget.UpsamplingMode: 4 => 4
[2024.02.06-21.25.07:358][  0]LogIcarusGraphicsSettings: Warning: >> r.FidelityFX.FSR.Enabled is now: 0
[2024.02.06-21.25.07:358][  0]LogIcarusGraphicsSettings: Warning: >> FSR Mode is now: 0
[2024.02.06-21.25.07:358][  0]LogIcarusGraphicsSettings: Warning: >> r.FidelityFX.FSR.RCAS.Sharpness is now: 0.950000 => 0.2
[2024.02.06-21.25.07:359][  0]LogConsoleManager: Warning: Setting the console variable 'r.RayTracing' with 'SetByGameSetting' was ignored as it is lower priority than the previous 'SetByProjectSetting'. Value remains '1'
[2024.02.06-21.25.07:359][  0]LogConsoleManager: Warning: Setting the console variable 'r.RTXGI.DDGI' with 'SetByGameSetting' was ignored as it is lower priority than the previous 'SetByProjectSetting'. Value remains 'true'
[2024.02.06-21.25.07:365][  0]LogIcarusGraphicsSettings: Warning: >> AA Method is now: 2
[2024.02.06-21.25.07:365][  0]LogConsoleManager: Warning: Setting the console variable 'r.Shadow.CSM.MaxCascades' with 'SetByScalability' was ignored as it is lower priority than the previous 'SetByGameSetting'. Value remains '2'
[2024.02.06-21.25.07:366][  0]LogConsoleManager: Warning: Setting the console variable 'r.ContactShadows' with 'SetByScalability' was ignored as it is lower priority than the previous 'SetByGameSetting'. Value remains '1'
[2024.02.06-21.25.07:366][  0]LogConsoleManager: Warning: Setting the console variable 'r.Streaming.LimitPoolSizeToVRAM' with 'SetByScalability' was ignored as it is lower priority than the previous 'SetByGameSetting'. Value remains '1'
[2024.02.06-21.25.07:366][  0]LogConsoleManager: Warning: Setting the console variable 'r.Streaming.PoolSize' with 'SetByScalability' was ignored as it is lower priority than the previous 'SetByGameSetting'. Value remains '4500'
[2024.02.06-21.25.07:440][  0]LogUObjectHash: Compacting FUObjectHashTables data took   5.99ms
[2024.02.06-21.25.07:455][  1]IcarusOSSLog: Error: OnResUserTicket : No player found

Is what I am getting when trying to start the container each time, from what I was reading this seems like normal startup on other threads but it never shows up in the server browser nor can I direct connect.

Any ideas? I tried both with and without a steam account signed in and I keep getting the same one.

On 2/4/2024 at 3:51 PM, kernelpaniced said:

Thanks for the reply! I may end up switching to OPNsense eventually. I left Unifi because I wanted to simply my router management some and have extra software packages. Maybe pfsense isn't it and OPNsense is!

 

My unraid is assigned a static IP so I assigned the port forward to that. I have successfully done the same for Syncthing and Plex.

 

I am able to connect to my Plex and Syncthing services VIA my public IP while connected to my LAN.

 

The rule was set to TCP / UDP I have now changed it to just UDP.

 

I did another test and was still unable to connect via WAN address. The docker container's network type is bridge is that ok?

I'm on pfsense with no problem. Check your Nat and rules, also don't forget the order is very important. 

  • Author
3 minutes ago, Milhouz said:

Is what I am getting when trying to start the container each time, from what I was reading this seems like normal startup on other threads but it never shows up in the server browser nor can I direct connect.

Yes, this is indeed a normal startup from the dedicated server.

 

3 minutes ago, Milhouz said:

with and without a steam account signed in

Please only use your Steam credentials when they are not hidden away in the Show more section and are marked with a red asterisk.

 

Do you try your Public or your Server IP?

Did you change anything in the template?

11 minutes ago, ich777 said:

Yes, this is indeed a normal startup from the dedicated server.

 

Please only use your Steam credentials when they are not hidden away in the Show more section and are marked with a red asterisk.

 

Do you try your Public or your Server IP?

Did you change anything in the template?

This was a fresh install on mine, removed the folder from appdata and removed the container then went back to CA and downloaded it again, this was first boot after that. Upon doing the fresh install I haven't changed anything on the template or in the config page.

I tried both my public IP as well as my internal RFC1918 space with the port 17777 and I'm not getting anything.

I'm not seeing any conflicting ports in use either under docker allocations.

 

image.thumb.png.a212f14930c0b1c38b889bdf671fff2d.png

Edited by Milhouz

  • Author
5 minutes ago, Milhouz said:

IP as well as my internal RFC1918 space

?

You mean your Server IP correct? RFC1918 is the range for private addresses.

 

6 minutes ago, Milhouz said:

I'm not seeing any conflicting ports in use either under docker allocations.

I try this tomorrow, it‘s getting late over here…

23 minutes ago, ich777 said:

?

You mean your Server IP correct? RFC1918 is the range for private addresses.

 

I try this tomorrow, it‘s getting late over here…

Actually I might just be an idiot and need to have port forwarded both ports and not just the game one 🤦‍♂️

But yeah my Server one is 10.0.20.12


Port Forwarding Both worked. Sorry for bugging you! Just wish I knew more about Docker and how to do this stuff.

Edited by Milhouz

On 2/5/2024 at 5:46 PM, ich777 said:

Don't worry about the shutdown, the container will automatically restart if the game is shutdown. ;)

 

Is this for all or most of your game docker containers or only Palworld?


I actually have a few scripts to "gracefully" shutdown the server via rcon if the docker container is running, and then the container itself. But if it auto restarts and it is doing stuff again it could maybe cause issues if i then abruptly stop the container? If i needed to restart the game I've always used the docker restart command.

  • Author
11 minutes ago, Ocgineer said:

Is this for all or most of your game docker containers or only Palworld?

It should be the case for all but keep in mind some game servers have a fixed save interval and do not save when you gracefully shutdown the server.

 

11 minutes ago, Ocgineer said:

I actually have a few scripts to "gracefully" shutdown the server via rcon if the docker container is running, and then the container itself.

You usually just need to stop the container, maybe for some games it would be wise to issue a save command first through RCON and then stop the container but the containers in general are designed in that way so that they gracefully shutdown the application inside the container.

 

They all have their own shutdown routine and only a few containers (mostly WINE based containers) can‘t be stopped gracefully, but as said, only a few.

 

BTW why should they be not stopped gracefully?

 

11 minutes ago, Ocgineer said:

If i needed to restart the game I've always used the docker restart command.

A shutdown will also restart the container because I use --restart=unless-stopped

 

However if you stop the container right after the shutdown it should be fine since my containers updating steam cmd, then they are looking for updates for the game itself and then finally start the dedicated server.

4 minutes ago, ich777 said:

You usually just need to stop the container, maybe for some games it would be wise to issue a save command first through RCON and then stop the container but the containers in general are designed in that way so that they gracefully shutdown the application inside the container.

 

Ok good to know.

And yes my shutdown script first announces shutdown in-game and then issues the save command about 10-15 seconds before shutdown if available via RCON so I'm good on that regard 😆 I now can remove any "restart docker $name" from my restart scripts as that is not needed then 😄 I like to use a script to shutdown as I also let it create a fresh backup of the saved folder.

On 2/1/2024 at 11:03 PM, ich777 said:

May I ask why do you run the container in br0?

As I explained in that thread that you've found it has no real advantages...

 

I run my docker containers in br0 purely for my sanity. Ran into a networking problem long ago involving docker containers and just have done it that way since. I know the security implications, and that I can re-map a docker container's ports if needed; but I find it easier to just assign an IP so I don't have to worry about remapping.

Hey, for some reason Project Zomboid specifically is taking up a significantly larger size of my docker img file than my other services, I don't think this is proper?

 

image.thumb.png.fac063a45395425c52f4a0adf1a4b389.png

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.