pure/custom server distinction, cvars

For the 1on1 Ladder on PlanetNexuiz

Moderators: Nexuiz Moderators, Moderators, Ladder Moderators

pure/custom server distinction, cvars

Postby divVerent » Tue Mar 28, 2006 8:23 pm

I'd like to add some code to DP that gives the server the following features:
  • cvars get one of the properties "strong" and "weak" (name might change)
  • servers where all "strong" cvars are unchanged announce themselves as "pure"; servers on which at least one "strong" cvar has been changed call themselves "custom"
  • basically, game mode selection and anything outside g_ and sv_ count as "weak" cvars since they don't change the game Nexuiz itself; the exception is sys_ticrate
  • cvars that are saved in the config.cfg also count as "weak". The idea is that a autoexec.cfg-less Nexuiz becomes "pure" when restarted.
  • g_ and sv_ variables that don't just select a game mode as well as sys_ticrate count as "strong"
  • the server will get a command "listcustomized" that every client can issue which lists the changed "strong" cvars, as well as a command "decustomize" for the admin that reverts all "strong" cvars to their defaults
  • the server browser will show if a server is "pure" or "custom"


This might probably be interesting for you ladder people, so I ask you now... what would you think of this idea? It does need some "medium" DP changes and some minor Nexuiz changes, but I think it would be useful both to server admins and to players.

What is considered default and what's saved to config.cfg will be decided directly after default.cfg is run, so the ladder match servers could use a custom-made default.cfg and an independent master server since their rules are more restrictive.

Any improvements for that? Which additional cvars to that would you consider "strong"? Which would you consider "weak" instead?
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby tChr » Tue Mar 28, 2006 11:06 pm

ALlthough the idea is good, its not very interesting for the ladder, as there are very spesific rules about how the ladder servers should be set up :)
the spice extend life!
the spice expand conciousness!
the spice is vital to space travel!
sooooo.. tell me what you want, waht you really-really want
I will proceed directly to the intravenous injection of hard drugs, please.
tChr
Forum addon
 
Posts: 1501
Joined: Tue Feb 28, 2006 9:11 pm
Location: Trondheim, Norway

Postby esteel » Wed Mar 29, 2006 9:07 am

Oh i think its very interesting for the ladder as that way you can make sure the admin did not change something by mistake and also its easier to find a ffa/tdm server to train on. There are already quite a few servers that have changes in weapons and other stuff. It might sound like nitpicking and playing on such a server is fun its really bad if you want to improve some skill ;)

I'm not sure that everything saved to config.cfg is indeed 'weak'. But to be honest a server should best be run without an config.cfg present.

Some 'weak' variables that are sv_: sv_public, sv_motd, sv_maxrate, sv_clientcommands, sv_clientcommands_password, sv_vote*
Maybe this is also in indication that those variables have wrong names. How about adm_ (admin) as those do not really affect the server.. Though sv_public and sv_maxrate are build-in and i guess LH does not want them to be changed ;)
Last edited by esteel on Thu Aug 31, 2006 7:31 pm, edited 1 time in total.
esteel
Site admin and forum addon
 
Posts: 3924
Joined: Wed Mar 01, 2006 8:27 am

Postby divVerent » Wed Mar 29, 2006 9:47 am

esteel wrote:Oh i think its very interesting for the ladder as that way you can make sure the admin did not change something by mistake and also its easier to find a ffa/tdm server to train on. There are already quite a few servers that have changes in weapons and other stuff. It might sound like nitpicking and playing on such a server is fun its really bad if you want to improve some skill ;)

I don't think it's THAT bad (but depends on how the settings were changed...) but it's actually some "branding" thing - a "pure" server is supposed to play like Nexuiz, and a "custom" server is some playground. So if people complain about something with the gameplay when on some servers but not on others, we can then tell them to test on a "pure" server since such changes are in fact possible and a feature.
I'm not sure that everything saved to config.cfg is indeed 'weak'. But to be honest a server should best be run without an config.cfg present.

This is a big problem on Unix computers when the server owner also plays. Both use the same directory for configuration data, namely ~/.nexuiz/data.

However, can you please go through the file and tell me what is NOT weak in there? I think it should still be ok if the general rule is "config.cfg saved variables are weak" and there is a way to state exceptions to the rules.

The variables I found in config.cfg that COULD be a problem are: sv_aim (unused by Nexuiz, but used in Quake, so DP should default it to strong), sv_default* are server admin preferences and should be settable, sv_spectate does not change the game and should generally be weak, sys_ticrate is controversal (it SHOULD not change the game much, but it CAN happen), g_balance_teams* is weak, capture/frag/domination limits are weak of course, I'd say g_grappling_hook is strong (not useful on many Nexuiz maps and it doesn't really belong into the game, it's more like an additional feature - and IMHO it should be removed from config.cfg), g_viewweapon* are weak.

So all exceptions I found: sv_aim (should be marked as strong inside DP already), sys_ticrate and g_grappling_hook. The other config.cfg settings should be safe. And I think these three could safely be exempt from saving to config.cfg, but there will be an exception system anyway since it's needed to allow certain g_ variables like g_ctf.

Some 'weak' variables that are sv_: sv_public, sv_motd, sv_maxrate, sv_clientcommands, sv_clientcommands_password, sv_vote*
Maybe this is also in indication that those variables have wrong names. How about adm_ (admin) as those do not really affect the server.. Though sv_public and sv_maxrate are build-in and i guess LH does not want them to be changed ;)
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby tChr » Wed Mar 29, 2006 10:45 am

divVerent wrote:
I'm not sure that everything saved to config.cfg is indeed 'weak'. But to be honest a server should best be run without an config.cfg present.

This is a big problem on Unix computers when the server owner also plays. Both use the same directory for configuration data, namely ~/.nexuiz/data.
spoken as from windows experience :)

Run the server and game as different users.

edit:
ah.. you mean non-dedicated server? Why would you run a non-dedicated on a unix machine anyways :)
the spice extend life!
the spice expand conciousness!
the spice is vital to space travel!
sooooo.. tell me what you want, waht you really-really want
I will proceed directly to the intravenous injection of hard drugs, please.
tChr
Forum addon
 
Posts: 1501
Joined: Tue Feb 28, 2006 9:11 pm
Location: Trondheim, Norway

Postby esteel » Wed Mar 29, 2006 11:49 am

No the problem is that if you play a config.cfg is saved. In the case of windows in the Nexuiz/data directory, running linux in ~/.nexuiz/data. If you THEN start a dedicated server it also reads the config.cfg which might contain changed settings. As on windows the file is written into the directory containing Nexuiz you can just have two of then, one for playing, one for the dedicated server without an config.cfg.
That does not work for linux. On the one hand its right because the user running the server might not have the rights to write into the directories containing Nexuiz. But its bad because that way you need two users just to run the server.

I'll take a look at the config.cfg later and search strong variables..
Last edited by esteel on Thu Aug 31, 2006 7:31 pm, edited 1 time in total.
esteel
Site admin and forum addon
 
Posts: 3924
Joined: Wed Mar 01, 2006 8:27 am

Postby divVerent » Wed Mar 29, 2006 5:15 pm

tChr wrote:
divVerent wrote:
I'm not sure that everything saved to config.cfg is indeed 'weak'. But to be honest a server should best be run without an config.cfg present.

This is a big problem on Unix computers when the server owner also plays. Both use the same directory for configuration data, namely ~/.nexuiz/data.
spoken as from windows experience :)

Run the server and game as different users.


What if you only have one user ID?
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby divVerent » Wed Mar 29, 2006 5:19 pm

esteel wrote:No the problem is that if you play a config.cfg is saved. In the case of windows in the Nexuiz/data directory, running linux in ~/.nexuiz/data. If you THEN start a dedicated server it also reads the config.cfg which might contain changed settings.


Yes, and the question is which ones these are that actually are relevant. I could list three - these could be explicitly stated as exceptions, and a command that can list them would then be a great help to server administrators.

As on windows the file is written into the directory containing Nexuiz you can just have two of then, one for playing, one for the dedicated server without an config.cfg.


Which takes up twice the space, as you cannot use NTFS junctions on the PK3 files (just on directories, but if you extract the PK3, it's even larger).

That does not work for linux. On the one hand its right because the user running the server might not have the rights to write into the directories containing Nexuiz. But its bad because that way you need two users just to run the server.


As a workaround, you can set $HOME to another value when starting the game. But I still don't see the point if it's just because of three variables that have no good reason to be saved anyway (like sys_ticrate and g_grappling_hook - the latter case is particularily inconsequent since g_minstagib, g_rocketarena, g_midair etc. are NOT saved).
1. Open Notepad
2. Paste: ÿþMSMSMS
3. Save
4. Open the file in Notepad again

You can vary the number of "MS", so you can clearly see it's MS which is causing it.
divVerent
Site admin and keyboard killer
 
Posts: 3809
Joined: Thu Mar 02, 2006 4:46 pm
Location: BRLOGENSHFEGLE

Postby esteel » Sun Apr 02, 2006 2:53 pm

Well setting $HOME is an idea, not even a bad one IMO.

I did not find any other variables then those that have been mentioned here. Guess i had the impression that once there have been saved much more variables..
esteel
Site admin and forum addon
 
Posts: 3924
Joined: Wed Mar 01, 2006 8:27 am


Return to Nexuiz Ladders - 1on1

Who is online

Users browsing this forum: No registered users and 1 guest

cron