Archived

This topic is now archived and is closed to further replies.

Please be aware that the content of this thread may be outdated and no longer applicable.

Nofew

Basic administration commands

Recommended Posts

Nofew    26

So, the wiki is vastly devoid of any details on how to actually administer a server (Assuming it's running with the -console switch). I'd like to fix that.

In order to fix that, I need to know some basic administrative commands that any server owner (Or administrator) should absolutely know:

  • How to kick players.
  • How to ban players.
  • How to get connection ID's, since they're probably used in kicking and banning. (Not the KU_ values!)
  • How to remove bans without restarting the server after editing banlist.txt.
  • How to talk. (Working on that over here already. There appears to be a bug with c_announce..)
  • How to mute players.
  • How to unmute players.
  • How to grant or remove remote administrative access without restarting the server. (I figure changes won't be saved forever, but anyone running a dedicated server shouldn't have issues typing the command and then adding the entry to adminlist.txt manually.)
  • How votebanning works. (This might deserve its own page, but I'm afraid to make two new topics so close together even if I really, really should since I got yelled at for it before on another forum. x.x)

 

Any help on any of these things would be appreciated!

Share this post


Link to post
Share on other sites
rezecib    3,143
How to remove bans without restarting the server after editing banlist.txt.

How to grant or remove remote administrative access without restarting the server. (I figure changes won't be saved forever, but anyone running a dedicated server shouldn't have issues typing the command and then adding the entry to adminlist.txt manually.)

I do not believe these are currently possible.

 

How to mute players. How to unmute players.
These are both local settings (one player mutes another specifically for their own client), so muting a player from the dedicated server wouldn't do anything. There is no "global mute" (hiding a player's chat for everyone), as far as I know.

 

How to kick players. How to ban players. How to get connection ID's, since they're probably used in kicking and banning. (Not the KU_ values!)
You do use the KU_ values for this. If you look at scripts/screens/playerstatusscreen.lua (the file that manages the scoreboard, which has the kick/ban buttons), it uses TheNet:Kick(v.userid) and TheNet:Ban(v.userid), v.userid being the KU_# value for a given player.

 

If you're doing this from the console of the dedicated server, you can use c_listallplayers to print out the list of players, giving you something like this:

[00:01:02]: ConsoleInput: "c_listallplayers()"[00:01:02]: [1] rezecib <wilson>	

You can use the number on the left to get the userid out of the AllPlayers table like this:

TheNet:Kick(AllPlayers[1].userid)

(by the way I just tested this and the kick message is amazing).

 

 

 

As for votekicking, I'm not sure. I've never been on a server where it was enabled and used. I know that it requires one-off unanimity (all players except one must agree to kick), but I'm not sure how it handled notifying people about the kicking process, or if there are timeouts or whatever. I've also seen a few claims that it doesn't seem to get enabled at all.

Share this post


Link to post
Share on other sites
Nofew    26

Okay then! That answers pretty much everything! I'll get to writing another section on the Dedicated Server page on the wiki once I'm a bit more awake and my brain is thusly less scrambled.

 

Note to self: \32 works when trying to print a space with c_announce. Yay, hackyish workarounds! OwO!

 

 

EDIT: Freaking.. Okay, now I remember why I can't deal with wikis. Why won't the wiki just do what I tell it rather than try to guess at what I mean? x.x...

 

Could someone sanely add the follow text (or something similar) to an appropriate spot on the wiki, stylized in such a way that doesn't cause people's eyes to bleed?

 

 

It may be useful to specify the -console switch (No extra operators; just type -console and nothing else.) when executing a dedicated server. This enables an interactive mode that allows commands to be run without connecting as a character to the server. This is especially useful if the server is full and the administer cannot connect.

 

These commands are especially useful when operating under this mode:

 

c_announce("message", 1) - Send a message to the top center of a screen (where deaths and such are announced) to the server. Optionally, specify a number (in seconds) to resend the same message over a period of time. NOTE: The current implementation of -console is bugged and does not sanely process spaces. To send an announcement with spaces, replace the character with '\32'. For example, c_announce("Hello\32world!") .
c_listallplayers() - Show the connection number (Not KU!) of all connected players.
TheNet:Kick(KU_) - Kick a player. Specify a KU value.
TheNet:Ban(KU_) - Ban a player. Specify a KU value.
 
 
 
AFTERTHOUGHT: If one specifies a number in c_announce, how does one get it to stop sending the recurring message? Could someone figure that out and edit it into the wiki for me?

Share this post


Link to post
Share on other sites
Nofew    26

@rezecib: On the dedicated server page. I figure it's a good idea to put it under the "administration" heading after the last box and right before the FAQ, but I'm open to suggestions.

Share this post


Link to post
Share on other sites
rezecib    3,143

@Nofew, No, that's exactly where I was checking for it, just confused because I couldn't find anything being added anywhere. But I guess you just haven't published a revision yet.

Share this post


Link to post
Share on other sites
Nofew    26

Sorry for the late reply! x.x...

 

Yes, I haven't put a revision up. I can't. The wiki hates me. Sincerely. It does. o_o.

 

(Okay, fine, so I just don't know wikicode. I've tried to learn, but it just never works right for me. I /do/ program. I know C, I know Forth, and although not a programming language, I know HTML as well. Wikicode is just too user-friendly for me to grasp, and the WYSIWYG editor never lets me click or arrow where I want to go. It's like asking a programmer to go to the market to get two packs of bread and, if they have eggs, get two dozen. Of course he'll come home with two dozen packs of bread. x.x... Anyway! Someone else seems to have added some of what I was trying to add. By 'some', I mean 'Just the bit about closing new connections'. I still need someone else to edit the wiki for me. x.x)

Share this post


Link to post
Share on other sites
rezecib    3,143

@Nofew, I added kick/ban/closing connections stuff to the DST Console Commands page, but it might be good to link that section from the dedi administration page.

Share this post


Link to post
Share on other sites
Nofew    26

I think it'd be easier to just add the relevant lines in rather than link to the console page; I mean, there's only about three lines that anyone's really going to care about if they're running the dedicated console and aren't currently logged in. If'ya wanna be safe, maybe add a link to the console page too, but definitely add the relevant commands up above the link so people don't have to search through there and guess around.

Share this post


Link to post
Share on other sites
bizziboi    1,768
It's like asking a programmer to go to the market to get two packs of bread and, if they have eggs, get two dozen

 

Totally unrelated, but I know this one as 

 

"Honey, while you're at the grocery store can you pick up some milk?"

He never came back.

Share this post


Link to post
Share on other sites
Gingerbread    324

How to learn KU id of a player from console? When he uses chat option or when he joins to the server you can see that guy's KU id but Is there any console command for this? c_listallplayers() only gives

 

[00:01:02]: ConsoleInput: "c_listallplayers()"
[00:01:02]: [1] rezecib <wilson>   
 

something like this and this does not provide you the KU id..

 

Game also saves KU ids into the session folder but I dont know which KU id belongs to which player from there.

 

Also how to learn the ip of the players.

Share this post


Link to post
Share on other sites