Outils pour utilisateurs

Outils du site


Panneau latéral

Forum

english:collectiveadministration

Collective administration

Presentation

Yeah, that's an idea, let's give RCON to everyone, so that they can kick/ban, change maps and server settings anytime. Once people had enough fun with it, maybe they can think of what next. This page will try to elaborate on this what next, and hopefully give clues about how to obtain a playable server and a collective way to manage it. Amongst other things, we may think of:

  • what possibilities open administration of a game server brings. Everyone being administrator means not being bound to a particular server config, so then, it is possible to define collectively game setups which we would want to play, and eventually code stuff & scripts which make the switch from one to the other easy.
  • what to do to put back the server in a playable state (eventually by reinitializing it).
  • what about abuse and the fact it may persist ?

Principles behind it

  1. First, it's meant to be an experiment, but more than an experiment. That means, the intent is not to make an exception of some unique server being ruled this way, but to experiment a way of doing, call it autogestion or open administration, some people are already accustomed to it through other kind of initiatives, while we can note it is not very common amongst game servers, at least on OpenArena.
  2. Second, server admins probably notice permissions work with several layers: access to the machine (physically), remotely (ssh), and more specifically to OA: rcon access, !admin system, and votes. Each of these layer has its field of action (and non-action).
  3. Third, sharing the administration has a few advantages, amongst which anyone can fix the problem when there is one. It could be possible to nominate a few admins to share the burden, but then, when players were all equal before, this brings a level of hierarchy between them.

Free software people may already have experience of other ways to organize themselves, for instance through publishing systems like wikis or development tools like Git, and may be aware of what these solutions bring in terms of collaborative efforts. We can rejoice technical platforms evolved much in that direction, but Q3/OA and other games didn't necessarily follow yet. Cube/Sauerbraten may be an exception. ioquake3 remains to be a technical platform with a degree of openness, it could be possible to bring back anyhow this orientation in the project.

On a more general aspect, society trained us to accept authoritarian ways as a solution, in favor of other educative methods. Not relying on a hierarchical structure is a way to reaffirm authority is the worst way of dealing with issues. This subject could be largely developped, but we will stick to the idea that authority is a rude, short-term solution which only solves problems symptomatically. On the other hand, we will try to show that asking people to self-moderate isn't an as naive perspective as it may look. The logic behind could be simple: each of our individual act affects the community, which in turn, being part of the community, affects us. Rather than relying on an external, self-proclaimed, and authoritarian institution, we get the opportunity to see how our acts affect our experience within the community, since they are directly correlated. Hopefully, this will lead us to take the time to learn, mature, and eventually fix it.

You are not forced to adhere the propaghanda to use the server. But if you have complementary points, or feel like you have put more reasoning in your own propaghanda than I did, then feel free to share it.

Remarks

  • Think about it, some players never experienced RCON access (okay, they can very well have one locally, but it's not exactly the same online). We give these people some opportunity to learn about these poweruser options. :P
  • One of the interest in this is that bashing doors tend to bring new uses. OpenArena lacks flexibility on certain domains. it's hard for people to play the maps they want, they have to call votes, and nobody dares changing gametypes since it brings the mess, as a result, server configurations are rather static and inflexible. Having a collective approach makes these lack visible, and incitates us to develop tools to circumvent them. These tools likely bring more straightforward approaches, which not only benefit collective but also individual use. In some regard, OA/Q3 is designed as a rather opaque brick, most things are done from the inside when they could be done outside (chatting, rcon-ing, server browsing…).

Practice

The least I expect

  • To have a rather standard CTF/DM/TDM server with a few maps in rotation.
  • 10 playing slots would be nice not to get it crowded.
  • People not kicking all the time.
  • People not harming the server. What I really wouldn't want is people to waste the machine's ressources.
  • If all this makes sense, I wish there could be 2 servers working this way, but maybe I'm daydreaming so we will see over time.

Means to access the server

  • RCON access should be available, which also means there would be no need for the !admin systems nor for votes. Note: some alternative could have been to stick with the !admin system, which can grant powers to every default players.
  • Rcon can be accessed remotely, see below.
  • SSH access may be a big step, while I wouldn't care that much and has been thought of, but since I don't own the machine, I would prefer if we handle it by other means. A restricted shell might be a solution
  • Upload of pk3 files may be possible, first problem about it is I don't have an appropriate storage/bandwidth for that. Second problem is the security risks it brings (for the server, but also for players who download the files), though the issues on this side are rather unclear to me.

Server information

  • IP Address: 5.196.204.210
  • Port: 27960 (and 27961)
  • RCON Password: I haven't decided yet. Try: ilovepenis
  • Name: I haven't decided either. Current name is: ROFL Merzbuddha, and ROFL Socialistisches patientent kollektiv

Troubleshooting

  • It is useless to ban people. Since everyone is administrator, one should be able to unban himself.
  • It is useless to change the Rcon password. For now, the password is reset back to original every 5 minutes. Some better solution would be to throw out the whole RCON authentification code (some /rconNoPassword patch ?)
  • It is useless to insist by emitting several RCON commands to make your will respected. If someone wants to enforce his/her will, let it go. i.e: I don't want the server to change map over and over again. Use other ways than RCON to settle the situation.
  • It would be nice if you don't change the server name, since it is helpful for people to find it. On the other hand, it would be easy to ask players to use /connect ip.of.the.server:port.
  • It is not supposed to be the mess on the server, if you feel like it is, use can try using your patience with people who cause it. You can suggest them to use their time to do better things rather than wasting it. Asking what is wrong, talk to other people who assist the mess with you… share internet links, joking, participating in a community (OA), thinking (about lessons or solutions) and eventually write about it, writing sourcecode, making art, reading, watching music clips… communicating, shouting, complaining, abandonning, coming back, explaining… try to play anyway, take the situation to your own advantage, but be more reasonable than the guys who piss you off, and don't provoke more trouble to people or to the server. And don't lose too much of your own time if it gets too much on your nerves. If you don't manage to convince them there are better things to do, then you should yourself know of what better things there are to do.

What to achieve

  • It would be nice to have several sets of map rotations and gametypes. That would allow people to prepare rich gameplay, and switch between one type and another as they wish.
  • Fantasy amongst settings is possible. If you want to enable friendly fire, or use some script which regularly changes gravity during gameplay, that's up to you. The goal is to provide fun gameplay.
  • Use of custom maps, models and ressources could be not that straightforward. It would be particularly polite not to make people download huge stuff of data each time they connect to the server. There is currently no way to provide such mechanism, but it can be investigated.
  • If the idea is viable, then we will probably need a webpage (probably on this website) to provide a few administration options: empty ban list, put server back in a usable state. There should be no restriction at all.
  • I could find a way to provide stuff like the OA server logs.
  • Again, if all this makes sense, this page could be translated into other languages.
  • Other suggestions welcome.

Currently worked on

  • Nothing in particular. The servers are still running and I don't check if they are played on. Feel free to explore possibilities, and eventually talk about it on the forum.

Discussing

Whether it be technical or ideological, the setting up of the project will probably need you to ask or comment, so:

  • You can provide feedback on the forum (english, guests)
  • We can create other wiki pages for additionnal infos

Some topic about ROFL Merzbuddah with a few helpful infos was started here.

Note 1: RCON & Remote Control

You don't need to be inside and connected to the server, to send RCON commands to it. So if for some reason the server isn't accessible by players anymore, you may still have a chance to restore its state by fixing it remotely with RCON.

You need to disconnect from the current server you're on, then open console, useful cvars are:

  • /rconAddress ip.ip.ip.ip:port
  • /rconPassword ???
  • /rcon status
  • /rcon map some_map

If you want to investigate current settings, some tools like XQF which lists cvars might be useful. Otherwise, use DPMaster to check how cvars are set, since it also lists them.

Unbanning

Unbanning can be worked out like above, and with the help of such command:

  • /rcon !showbans

Note 2: Cronjob - Resetting RCON password

Only useful from within the server,

crontab -e
# m h  dom mon dow   command
*/5 * * * * /path/rcon_reset.sh
$ cat rcon_reset.sh 
#!/bin/bash
 
screen -S servername -X register p "seta rconpassword ???
"
screen -S servername -X paste p

Note 3: Scripting the server config

Here is a short example of how to do it,

In baseoa directory, I created a file named: serversetup.cfg

serversetup.cfg
rconpassword _replace_it_
 
rcon set d1 "map ps9ctf; set nextmap vstr d2"
rcon set d2 "map ctf_inyard; set nextmap vstr d3"
rcon set d3 "map ps37ctf; set g_gravity 790; set nextmap vstr d4"
rcon set d4 "map oasago2; set nextmap vstr d5"
rcon set d5 "map pul1ctf; set nextmap vstr d6"
 
rcon set d6  "map ps9ctf; set nextmap vstr d7"
rcon set d7  "map oa_spirit2; set nextmap vstr d8"
rcon set d8  "map ps37ctf; set g_gravity 790; set nextmap vstr d9"
rcon set d9  "map oasago2; set nextmap vstr d10"
rcon set d10 "map pul1ctf; set nextmap vstr d11"
 
rcon set d11  "map ps9ctf; set nextmap vstr d12"
rcon set d12  "map ctf_gate1; set nextmap vstr d13"
rcon set d13  "map ps37ctf; set g_gravity 790; set nextmap vstr d14"
rcon set d14  "map oasago2; set nextmap vstr d15"
rcon set d15  "map pul1ctf; set nextmap vstr d1"
 
rcon set nextmap "vstr d1"
 
say "Server config loaded."

Then inside OA,

/exec serversetup.cfg

It works, except it won't reset the “nextmap” cvar, and I don't know why. I have to manually change it by typing the rcon line myself, that means, I have to type rcon set nextmap “vstr d1” in the console directly, then it works.

We can check each of these variables have been changed successfully with something like:

/rcon d1
/rcon d4
/rcon nextmap

It will print out their values.

english/collectiveadministration.txt · Dernière modification: 2017/02/20 09:19 (modification externe)