Conan Exiles

Conan Exiles

View Stats:
Ziggy Feb 7, 2017 @ 7:25pm
How I fixed desync, lag, and slow base loads on my dedicated server...
Edited numbers to be more realistic for larger servers
Thanks Serashen
Also Edited which files locations to match devs input
Thanks Scooper

Im running a Dedicated Server with 4-5 guys on it. our base got big enough to where we would walk away to get resources, come back and have to restart the game to load the base.

I made a few changes to network speed related settings. I was seeing max traffic on the server at ~300Kbps... im now seeing 2.3Mbps with spikes to 5+ for initial loads (instant loads)

On the SERVER I changed..

...ConanSandbox/Saved/Config/WindowsServer/Engine.ini

[/script/onlinesubsystemutils.ipnetdriver]
MaxClientRate=100000
MaxInternetClientRate=100000

...ConanSandbox/Saved/Config/WindowsServer/Game.ini

[/script/engine.gamenetworkmanager]
TotalNetBandwidth=4000000
MaxDynamicBandwidth=100000
MinDynamicBandwidth=40000


On your CLIENT

...\common\Conan Exiles\Engine\Config\BaseEngine.ini

[/script/engine.player]
ConfiguredInternetSpeed=100000
ConfiguredLanSpeed=100000



Im not 100% sure if all those changes were needed to get my desired effect. Maybe a Dev can chime in or use this as info for debugging.

most of the issues I had experienced with slow base loads, rubberbanding, lag and other problems seemed to be a result of the client getting ahead of the server. that to me was seeming like the network was choked when logging back in fixed it. From there watching a friend load the base over a 45 second period with the server only sending ~100-140kbps then dropping off after it loaded is why I tried removing the default network restrictions in UE4. Like I said above now i see a split second 5Mbps spike when loading the game at the base and it appears instantly.

Im assuming this fix is only needed because the game is still not optimized network traffic wise, but this change was a total game changer for me.


FYI I found this which is what prompted me to make the changes I did
https://answers.unrealengine.com/questions/353439/how-can-i-increase-network-bandwidth-limit.html

glhf
Last edited by Ziggy; Feb 9, 2017 @ 11:46am
< >
Showing 16-30 of 125 comments
Ziggy Feb 8, 2017 @ 12:46am 
Originally posted by thrawn:
also i can confirm that our big base realy load in 1 or 2 seconds now

Great news!
danielsdna Feb 8, 2017 @ 12:50am 
Originally posted by Simon1279™:
Originally posted by Atr3au:
Desync comes with the game unfortunantly, its a feature.. Just gotta re-log every 20-30 min..
I can assure you it is not coming with the game, i own a Nitrado server and lag/desync is very rare there, it something very present in cheap servers machines or providers

I also own a Nitrado server, still have lagg especially around large buildings
Ziggy Feb 8, 2017 @ 12:52am 
Originally posted by uBestemt:
Devs need to give an answer on this, why the client netspeeds etc. before i change it. Seems this is something that could lag out the server because of bandwith spikes, and I don't understand why you would change Tickrate, do you understand what this does(to your server)?

Your client side changes couldnt lag out a server, because you cant request more that the server is willing to provide. If the server has max values set the changes made would just allow you to take full advantages of that increase.

And for what its worth I found this by searching limitations of Unreal Engine 4 not conan.. or ark

source for my inspiration

https://answers.unrealengine.com/questions/353439/how-can-i-increase-network-bandwidth-limit.html
Wartai Feb 8, 2017 @ 12:54am 
I tried it but found bases loaded slower for us ..
Toooni Feb 8, 2017 @ 1:01am 
Devs? Can you please change that for all of us with a patch?
Jojozityjo Feb 8, 2017 @ 1:01am 
commenting to keep track of
also, should make this a guide lol
Acris-7300 Feb 8, 2017 @ 1:11am 
i dont have basegame.ini , basengine ini etc with nitrado server.. solution ? Devs
Thrawn Feb 8, 2017 @ 1:34am 
thats the reason why i use my own Server, because there i can do what i want to do^^
Last edited by Thrawn; Feb 8, 2017 @ 1:34am
Scooper Feb 8, 2017 @ 1:55am 
Hello there.

You have indeed found some settings here that affect player desync and building loading, but there are important things to consider before doing these changes.

The most important change you did:
[/script/engine.player]
ConfiguredInternetSpeed=500000
ConfiguredLanSpeed=700000

(For the record you should be changing these settings in
ConanSandbox/Saved/Config/WindowsServer/Engine.ini.

Engine.ini settings overrides what's in DefaultEngine.ini which overrides BaseEngine.ini
Same goes for all all the configuration files. It's best to leave the Base and Default configuration files alone, since we might update them.)

Anyway! Since you are starting your server with -LANPLAY it picks the second value.
We're still in the process of optimizing this code, and due to a few planned changes you will end up seeing buildings loading faster on your clients regardless of changing these settings soon.

But be aware that changing these settings can have a massive effect on your server performance. How badly depends on how many players you have connected. Currently no server admin should expect to see their game running smoothly with these settings with 10-20+ players. And even on servers with a low population as you've described, you can get noticable lagspikes if you have a massive building loading in.

What you're configuring here is how much data (in bytes) the server is allowed to send to each player every second. Buildings have a lot of data, and with the default setting of 15kbs it currently takes a while to send them to every player. If you increase it, you allow the server to send more (in your case 700kbs). And if your clients connection can handle it, it could work out fine.
The downside is that the server is now allowed to spend up to 700kbs a second per connection doing replication(networking) of data to the clients. Which means it will spend a lot longer time doing it each frame than it did before. Which means lower server framerate, and everything else in the game will suffer from it, like AI behavior not being able to update as frequently as it requires.

But we're ontop of these issues, and we have changes planned that will help with the desyncs and loading speeds. This is very high priority for us, and we hope to show you improvements soon.

tldr;
Yes this can help building loading and desync issues on low population servers, but it can have a big negative effect on your server performance if you get too many players. We don't suggest changing these settings, but obviously you're free to experiment at your own risk! We're ontop of what is causing the issues you speak of, and we're going to fix them!

Edit: Changed my reference from ConanSandbox/Saved/Config/WindowsNoEditor/Engine.ini to ConanSandbox/Saved/Config/WindowsServer/Engine.ini. Since these are server only settings, I should have given the server path! Sorry for the confusion
Last edited by Scooper; Feb 8, 2017 @ 7:09am
Toooni Feb 8, 2017 @ 2:10am 
Originally posted by Scooper:
Hello there.

You have indeed found some settings here that affect player desync and building loading, but there are important things to consider before doing these changes.

The most important change you did:[/script/engine.player]
ConfiguredInternetSpeed=500000
ConfiguredLanSpeed=700000

(For the record you should be changing these settings in ConanSandbox/Saved/Config/WindowsNoEditor/Engine.ini.

Engine.ini settings overrides what's in DefaultEngine.ini which overrides BaseEngine.ini
Same goes for all all the configuration files. It's best to leave the Base and Default configuration files alone, since we might update them.)

Anyway! Since you are starting your server with -LANPLAY it picks the second value.
We're still in the process of optimizing this code, and due to a few planned changes you will end up seeing buildings loading faster on your clients regardless of changing these settings soon.

But be aware that changing these settings can have a massive effect on your server performance. How badly depends on how many players you have connected. Currently no server admin should expect to see their game running smoothly with these settings with 10-20+ players. And even on servers with a low population as you've described, you can get noticable lagspikes if you have a massive building loading in.

What you're configuring here is how much data (in bytes) the server is allowed to send to each player every second. Buildings have a lot of data, and with the default setting of 15kbs it currently takes a while to send them to every player. If you increase it, you allow the server to send more (in your case 700kbs). And if your clients connection can handle it, it could work out fine.
The downside is that the server is now allowed to spend up to 700kbs a second per connection doing replication(networking) of data to the clients. Which means it will spend a lot longer time doing it each frame than it did before. Which means lower server framerate, and everything else in the game will suffer from it, like AI behavior not being able to update as frequently as it requires.

But we're ontop of these issues, and we have changes planned that will help with the desyncs and loading speeds. This is very high priority for us, and we hope to show you improvements soon.

tldr;
Yes this can help building loading and desync issues on low population servers, but it can have a big negative effect on your server performance if you get too many players. We don't suggest changing these settings, but obviously you're free to experiment at your own risk! We're ontop of what is causing the issues you speak of, and we're going to fix them!

Great, thank you for the informations. So i will not touch this settings and wait for an update :)

I really hope this update will come soon because desync and slow loading is at the moment much worse than it was the first 1 - 3 days. We need to logout/login all 30 minutes because of desync.


Doublee (EE) Feb 8, 2017 @ 2:29am 
Thanks guys. Good info. The Dev is correct on saving your settings in ConanSandbox\Saved\Config\WindowsServer\*.ini so the updates won't overwrite all your hard work in the INIs. It's also good because if they add stuff then you dont have to worry about it and just put your changes in the game.ini, engine.ini, etc which overrides the default/base. ARK is the same way with the INIs.
Last edited by Doublee (EE); Feb 8, 2017 @ 2:29am
deet Feb 8, 2017 @ 2:33am 
Originally posted by 3bx:
Originally posted by Toooni:
I really hope this update will come soon because desync and slow loading is at the moment much worse than it was the first 1 - 3 days. We need to logout/login all 30 minutes because of desync.
What exactly is desync by the way? I don't believe I've ran into this issue yet, but I sure as hell run into the crafting queue bug every 15 minutes.
https://www.youtube.com/watch?v=rupdjVhhqOA

https://www.youtube.com/watch?v=7UppcTg8XyA
Ziggy Feb 8, 2017 @ 2:43am 
Originally posted by Scooper:
Hello there.

You have indeed found some settings here that affect player desync and building loading, but there are important things to consider before doing these changes.

The most important change you did:[/script/engine.player]
ConfiguredInternetSpeed=500000
ConfiguredLanSpeed=700000

(For the record you should be changing these settings in ConanSandbox/Saved/Config/WindowsNoEditor/Engine.ini.

Engine.ini settings overrides what's in DefaultEngine.ini which overrides BaseEngine.ini
Same goes for all all the configuration files. It's best to leave the Base and Default configuration files alone, since we might update them.)

Anyway! Since you are starting your server with -LANPLAY it picks the second value.
We're still in the process of optimizing this code, and due to a few planned changes you will end up seeing buildings loading faster on your clients regardless of changing these settings soon.

But be aware that changing these settings can have a massive effect on your server performance. How badly depends on how many players you have connected. Currently no server admin should expect to see their game running smoothly with these settings with 10-20+ players. And even on servers with a low population as you've described, you can get noticable lagspikes if you have a massive building loading in.

What you're configuring here is how much data (in bytes) the server is allowed to send to each player every second. Buildings have a lot of data, and with the default setting of 15kbs it currently takes a while to send them to every player. If you increase it, you allow the server to send more (in your case 700kbs). And if your clients connection can handle it, it could work out fine.
The downside is that the server is now allowed to spend up to 700kbs a second per connection doing replication(networking) of data to the clients. Which means it will spend a lot longer time doing it each frame than it did before. Which means lower server framerate, and everything else in the game will suffer from it, like AI behavior not being able to update as frequently as it requires.

But we're ontop of these issues, and we have changes planned that will help with the desyncs and loading speeds. This is very high priority for us, and we hope to show you improvements soon.

tldr;
Yes this can help building loading and desync issues on low population servers, but it can have a big negative effect on your server performance if you get too many players. We don't suggest changing these settings, but obviously you're free to experiment at your own risk! We're ontop of what is causing the issues you speak of, and we're going to fix them!

I appreciate you taking the time to comment on my post. I as you can probably tell from my huge values that I was just sticking 0's in there as an attempt to resolve the very low network traffic issue I was having.

I wasn't suggesting this for everyone with large servers. As stated in my first post I'm at about 5 friends on a private server and I'm sure you could handle a few more with no problem.

Thanks again for the explanation
Emnel Feb 8, 2017 @ 3:02am 
Originally posted by Scooper:
Hello there.


What you're configuring here is how much data (in bytes) the server is allowed to send to each player every second. Buildings have a lot of data, and with the default setting of 15kbs it currently takes a while to send them to every player.


This is the bit I don't understand. Why buildings require a lot of data transfered?

As far as I can see only information client needs to recieve from the server to render a building are:

- Type of a building
- Owner of the building
- Status of the building (hp etc.)
- XYZ coordinates of several points of the building (for example 4 top edges in case of a Foundation or a bottom and one of the points at the top for Standing Torch)

Base on those few bits of data client should be able to render everything. And that amount of data even multiplied by thousands upon thousands of structures can't possibly impress any modern server.

The way I see it you need to reevaluate what calculations are done server- and what are done client-side since both constant desync, few seconds lags spikes and a building loading issue indicate that waaaaay too much information is being sent back and forth.
Scooper Feb 8, 2017 @ 3:20am 
You are basically correct Emnel. But there's a bunch of factors involved.

- We're sending too much data per building (This will be optimized, and will be a massive gain for building speed loading)
- Each building needs to be evaluated for replication to each client. What does the client already know? What do they not know? What has changed? With hundreds of buildings this can become quite expensive, even for modern servers.
- Unreal Engine 4 uses a single threaded replication system, so we're not gaining an automatic advantage of servers having multiple cpu cores available.

When the modding tools release, you will see how the building pieces are constructed. And you might gain some insight into how much data is actually required by the clients per piece for the buildings to work.
We're going to make this system smarter so that we don't have to send all the data we're currently sending, but we haven't gotten around to optimizing everything in the short year we've spent on the game so far! But we'll fix things as fast as we can.
< >
Showing 16-30 of 125 comments
Per page: 1530 50

Date Posted: Feb 7, 2017 @ 7:25pm
Posts: 125