ME - Dedicated Server Update errors

Le- Tinois shared this bug 18 months ago
Submitted

Hello guys !


Since 0.7.1, my dedicated server hosted by ServerBlend keep locking its listening port each time it crashes or do an update.

Some start logged attched to theis issue could maybe help.


To solve the issue I must each time file a support ticket, so that they can do a manual update on server that liberate listening port and fixes game states. Actually allowing to start and be joinable again.


Mods are not to be incriminated as it does the same rather they are installed or not.


Thanks for your time and effort ;)

Will

Comments (3)

photo
1

btw theese are the lines showing the problem:


2019-02-16 09:06:57.830|Main Thread> Starting GameServer: 87.98.221.158:27089, 8766, '0.7.1.6594225'

2019-02-16 09:06:57.990|Main Thread> Error binding server endpoint: Only one usage of each socket address (protocol/network address/port) is normally permitted


Error seems legit to me as you cannot indeed bind 2 listeners on same listening port, question is why, while crashing, the server is not freeing the port ?

photo
1

After some testing, we narrow down the problem to be exception handling on server side.


As soon as there is a FATAL exception that is not correctly catch by the server, process gets killed without properly disposing the listener on the configured port.

Making server unable to start again without external intervention that is to kill the remaining process.

I don't know if we are alone or not with this, this should appear more often as we are running fresh 0.7.1 install, fresh map and vanilla now.


(other log example attached)

photo
2

My dedicated server stopped working a few days ago due to the same error you are having. Was fine until that. I haven't changed any settings or anything. Just out of the blue.

photo
1

I'm running a local server. So basically my from what I understand my listener port is "jammed" ? Do you know of a fix on a local server?

photo
1

For now you have 2 solutions :

- find remaining process using Windows tasks manager and kill it then restart ME

- change server binding configuration to another port

- finally restart your computer... That's a bit heavy but that should work ^^


I have noticed that fatal errors are always related to AI nav mesh function. So by decreasing number of AI, you should crash less often. Seems to work on our dedicated server for now.

photo
1

- find remaining process using Windows tasks manager and kill it then restart ME

Wow, this actually worked. I restarted my machine and router and tried everything else. But this is the only thing that worked. thanks.

photo
photo
1

Hello !


Quick update :


After some testing on AI, we decided to get ride of barbarians. For a reason I can't explain all deers remains but no more barbariens.


After 2 days server did not crash at all...

As I said earlier, server had always crashed on fatal error due to Mesh or pathFinding methods.

photo
1

sorry for noob question, but i have bin trying to turn Barbarians off on my rented server. im clueless on aloot of things.. but to me <EnableBarbarians>false</EnableBarbarians> this line should have effect on them yeah? tho false/true/0 does nothing.. Barbs still around.. am i way off? so my question is.. how to i turn them off?


Best regards,

InkedUp

photo
1

Hello InkedUp

Sry for the delay. That's a tricky one and not a noob question.

Here is how I did it, even if I'm not sure it’s the correct way to do it but at least it worked.


  • Update your ME .cfg config file

<EnableHostileAI>false</EnableHostileAI>


I suppose this is enough if our start a new map however if you already have a save game it is not. So I did something more.


  • Find your game save folder (should be in Saves folder same root as your cfg file)
  • Save folder should be the name of your world
  • Inside this folder you will find a file named ‘Sandbox.sbc’, go ahead and edit it
  • See that server config is repeated in it, so add previous line in this file as well

<EnableHostileAI>false</EnableHostileAI>


This should be enough however, you must hunt down the already spawn barbarian in your save. Also, I suggest you do a backup just in case.


If you want to be more ‘fatal’ to them and don’t want to kill already spawned barbarians, simply remove their ‘Identity’ reference from the Sandbox.sdc file. Be warn that it will make them disappear but also break reference to them in barbarian house in game. It’s not a very elegant way to do it apart from hunting them I didn’t find any other way to get rid of them ^^


Enjoy !

photo