• If you have a mod, tool or prefab, please use the Resources section. Click Mods at the top of the forums.

Improvements for the dedicated server

I wanted to add to the llp comment earlier. One thing I find frustrating is getting coords of a land claim block in-game. Standing inside of it is very in accurate. Using the F3 menu in debug mode is also very difficult to get the mouse on the keystone itself. Is it possible somehow to list all land protections near a coordinate or player? Or, add the coordinates to the webserver overlay?

Also, I find it hard to get the steam ID sometimes. When llp scrolls off the screen I can't find the username, and the web server only shows the username. So I can't get the steam ID to list or delete all of the players LCBs (unless I search the players.xml file for the coords).

Also, I noticed the removelandprotection command only works when I'm near the land claim blocks. On one server, I was trying to delete a few hundred LCBs from one steam ID, and the rlp command only worked when I was next the the LCBs. It said #400 blocks removed but it only removed the ones near me.

Thank god for the rlp command, though, even if I had to go around the map to all their coordinates each time, it's such a time saver.

 
I forgot to add: how about an option to put coords into the llp command to get the owner/SteamID of a certain block?

 
Is it possible somehow to list all land protections near a coordinate or player? Or, add the coordinates to the webserver overlay?
Sure, both possible (and the latter one will definitely come). Maybe I'll just add a LLP near player in between.

Also, I find it hard to get the steam ID sometimes. When llp scrolls off the screen I can't find the username, and the web server only shows the username. So I can't get the steam ID to list or delete all of the players LCBs
Added steamid to LP block display in the web map (just uploaded, webserver files only).

Also, I noticed the removelandprotection command only works when I'm near the land claim blocks.
Yup, the game can only modify blocks in chunks that are currently loaded. Will add a message to recheck with LLP after deleting to make sure everything has gone ;)

I forgot to add: how about an option to put coords into the llp command to get the owner/SteamID of a certain block?
Hm, hate those "put three coordinates values in here" commands but I think that command variation might actually be helpful ;)

 
You are awesome.

Hm, hate those "put three coordinates values in here" commands but I think that command variation might actually be helpful ;)
Yeah, people get confused on how to type it. Is it like the example, "<100> <100> <100>"? Is it like the lp output, "100,100,100"? Is it XYZ or XZY?? It took me a few tries to get it right, then I had to show all my admins. You may want to clear up that instruction text.

The other minor annoyance is that we can't type a player's name if it contains any spaces. I can "tele Soylent" all day, but "tele Soy Lent" would try to send Soy over to Lent...

But I think that "llp nearby" would be more useful to in-game mods, since they can just go to the location and type that to check who owns the place. But damn, rlp can be dangerous...it's easy to type in "rlp steamID" instead of "llp steamID" :shame: :chargrined:

So, I was also wondering. Do you know anything about the "mem" command? All I've found is that it clears up chunks and "calls in garbage collector". Does it do anything that the game engine doesn't already do by itself? I'm curious whether there's any advantage to using it frequently.

 
The other minor annoyance is that we can't type a player's name if it contains any spaces. I can "tele Soylent" all day, but "tele Soy Lent" would try to send Soy over to Lent...
I have always done "tele <id> <id>" where id is the players id displayed in lp command. Never tried to do it with player name didn't even know it was an option, Good catch on the space in a name btw if that's the case.

 
Added steamid to LP block display in the web map (just uploaded, webserver files only).
Maybe display the cords to the block under the player name so if an Admin sees a block where it should not be on the map he can teleport to the block using the tele cords command.

 
Added steamid to LP block display in the web map (just uploaded, webserver files only).
Can I overwrite the webserver folder while the server is online, or does it need to be shut down?

 
You may want to clear up that instruction text.
The other minor annoyance is that we can't type a player's name if it contains any spaces. I can "tele Soylent" all day, but "tele Soy Lent" would try to send Soy over to Lent...
There are overall improvements on the console handling coming up ;)

Not sure about quoting yet though.

But damn, rlp can be dangerous...it's easy to type in "rlp steamID" instead of "llp steamID"
Hm, yeah, maybe I should remove the short form of rlp so such an action is protected against mistakes.

So, I was also wondering. Do you know anything about the "mem" command? All I've found is that it clears up chunks and "calls in garbage collector". Does it do anything that the game engine doesn't already do by itself? I'm curious whether there's any advantage to using it frequently.
The only thing it does is unload unused things. And that unloading is at least done whenever a client disconnects but also in a few other places where I did not find yet what triggers them.

Maybe display the cords to the block under the player name so if an Admin sees a block where it should not be on the map he can teleport to the block using the tele cords command.
Yeah, will add that.

Can I overwrite the webserver folder while the server is online, or does it need to be shut down?
Yup, currently caching is disabled so whenever a client requests one of the files it's directly read from disk.

 
Hm, yeah, maybe I should remove the short form of rlp so such an action is protected against mistakes.
Yeah, will add that.
Please don't remove the short version of rlp, I use it all the time as well as llp and I never have a problem, Like stated before in order to remove a claim block with rlp steamid you have to be in the same chunk as the block itself I have never been able to get it too work any other way.

Also thanks for adding the cords to the block on the map.

 
Last edited by a moderator:
Please don't remove the short version of rlp, I use it all the time as well as llp and I never have a problem, Like stated before in order to remove a claim block with rlp steamid you have to be in the same chunk as the block itself I have never been able to get it too work any other way.
Also thanks for adding the cords to the block on the map.
i agree with LordIcon please don remove the short

i have no prob removing LCB with steamID or x y z

but sometimes its seems like it gets touchy and you have to use steamid

 
Thank you for adding the SteamID and coords to the land claims! Awesome improvement.

Our servers got hit hard last night, and I have some more feature requests. Would it be possible to add the playername into the log message "Player with ID 123456 has stack for "item" greater than allowed"? I'm trying to make that message trigger a PM to admins, but with the name and SteamID.

When I reset a zone (delete a region file), the webserver map still shows all the land claim blocks. Is there a way to refresh the land claims after a region has been deleted?

Would it be possible to define specific items and quantity for the message log alert? For example, nobody (on my servers) should have a stack of 64 LCB's, but it won't trigger the over-limit alert.

The other thing that I have an issue with in on the server is that it doesn't save bans to the blacklist unless I give the "restart/shutdown" command. Is it possible to have a command that will save to the XML files without needing a restart?

 
I posted in the support section about this issue but because one of the errors is about the LPE command I figured I would post a link to my other post here and the error message its stating as well.

Support Forums Link

Error Message I am getting

Code:
217.146 Error in ListPlayersExtended.Run: System.NullReferenceException: Object reference not set to an instance of an object at AllocsFixes.CustomCommands.ListPlayersExtended.Run (System.String[] _params) [0x00000] in <filename unknown>:0
Spammed with this

Code:
NullReferenceException: Object reference not set to an instance of an object at GameManager.Update () [0x00000] in <filename unknown>:0
 
Last edited by a moderator:
Setup new server fresh install getting this error from time to time.

Code:
25207.850 Error in StaticHandler.HandleRequest: System.IO.IOException: Write failure ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host.



 at System.Net.Sockets.Socket.Send (System.Byte[] buf, Int32 offset, Int32 size, SocketFlags flags) [0x00000] in <filename unknown>:0 

 at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, Int32 offset, Int32 size) [0x00000] in <filename unknown>:0 

 --- End of inner exception stack trace ---

 at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, Int32 offset, Int32 size) [0x00000] in <filename unknown>:0 

 at System.Net.ResponseStream.InternalWrite (System.Byte[] buffer, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 

 at System.Net.ResponseStream.Write (System.Byte[] buffer, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 

 at AllocsFixes.NetConnections.Servers.Web.StaticHandler.HandleRequest (System.Net.HttpListenerRequest req, System.Net.HttpListenerResponse resp, System.Net.HttpListenerBasicIdentity user) [0x00000] in <filename unknown>:0
I am thinking it has to do with when im on the server map but not sure.

 
Yeah, you can simply ignore that one. The worst thing that could happen there is that the client (browser) does not get a file to display ;)

 
@soylent

The other thing that I have an issue with in on the server is that it doesn't save bans to the blacklist unless I give the "restart/shutdown" command. Is it possible to have a command that will save to the XML files without needing a restart?
For loading a modified xml: Make a custom build where you launch a System.IO.FileSystemWatcher instance, and in the Changed event handler trigger a re-parse of the XML.

For the saving, add the serialization of the xml to the ban command.

 
Hello Alloc.

Have you have plans on making the integrated web server available to normal users? Ie. you would be able to see and browse the map but not the protection zones, inventories etc.

I think it would be cool.

 
Hey Alloc,

how can i add the favicon? I get at every start from the server the message that the server cant load the favicon. .)

 
Be nice if you could add a translation function in there so if someone in game speaks a language other than english it detects the language and then auto translates it to english then outputs to screen as "JohnDoe Said: BlahBlahBlah". No idea if you could use google translate to auto detect language in game or not.

 
how can i add the favicon? I get at every start from the server the message that the server cant load the favicon. .)
Just ignore it for now ;)

Would have to adapt the code to load the favicon.ico from the static-folder, gonna do that in a later release.

Be nice if you could add a translation function in there so if someone in game speaks a language other than english it detects the language and then auto translates it to english then outputs to screen as "JohnDoe Said: BlahBlahBlah". No idea if you could use google translate to auto detect language in game or not.
Would have to read the ToS first ... most frontend-services don't like to be used by other programs as their backend. E.g. my server got banned from SteamDB for querying the 7dtd gameinfo on a 2 minute interval ;)

 
Back
Top