g_competition Game modificator ?

Post anything to do with editing Nexuiz here. Whether its problems you've had, questions, or if you just want to show off your work.

Moderators: Nexuiz Moderators, Moderators

g_competition Game modificator ?

Postby GreEn`mArine » Wed Jan 03, 2007 5:49 pm

Since discussing the Nexuiz Pro thing is still going on I had another idea.

How about creating a game modificator (which is NOT a gameMODE but just a modificator, like g_(m)instagib, etc.) which does these things:

  • work like the arena gamemode, but these things are changed:
    • have a g_competiton_playercount (can be named different) variable that indicates how many players may play at the same time (all others cannot start playing but only spectate)
    • the number of max players (specified above) can play at the same time, however, if player a kills player b it does not reset everything, nor does it substitute the killed player with one of the spectators
  • when g_competition is active do aiming different: let projectiles/shots come out of the center of a player (they can be "drawn" different), I know it looks odd from 3rd person perspective, but it works that way in all other games too (Quake 3, 4, ...)
  • Once the number of specified players is "playing" and one of the players readied up, all players who have not readied up yet should see a centerprint or hear a sound "please ready up" once a minute or so (if no1 readied up so far there's no need to play that sound or show the centerprint, as no1 is ready yet anyway)
  • Once all the players ready up there should be a countdown and everything should reset. but NOT by a "restart" command but rather like still staying on the map. The reason is that, when using "restart", players have to select the team color again and have to "spawn" manually too. The playtime in warm-up stage should be unlimited (or very long) until all players readied up: once they pressed F4 and the game got reset, it should use the setup maptime of course. So to be clear: once every body readied up, do the countdown, then respawn every player, reset all items/weapons on the map, get rid of former dead bodies whatever, set time to 0 with a limit of <maptime> minutes.
  • in warm-up stage the players should have LMS-alike Health and armor (however, the usual pickups should be available of course), so something about 250 HP 150 Armor, and all weapons with appropiate ammo
  • when this gamemod is active the players should be able to call for a timeout. If done so, the server should indicate that a timeout will start in 5 seconds or so. The timeout command should be able to deliver the number of seconds to time out. Any person should be able to stop it again, too (again with a message/countdown that time out will stop in 5 seconds)


So why am I suggesting it? As you MIGHT know, this gamemod exists in
- Q4 MAX
- Warsow
- Q3 CPMA/OSP
- god knows how many other games

It is a custom to have this feature in a game that is competitive. And as it could be a game modificator it wouldn't change anything for the server admins who do not use that modificator anyway. And it being a modificator it can be used for DM, TDM and CTF.

What do you think, and what do the devs think ?
IRC quote:
[kojn] I've been coming a bit more recently
[kojn] she took it the dirty way
GreEn`mArine
Forum addon
 
Posts: 1509
Joined: Tue Feb 28, 2006 9:33 pm
Location: Germany

Postby k0jak » Wed Jul 18, 2007 9:47 pm

yaya!
:]

Image

kojn translates into horse.

Signature Pic based on UT-Clan Mates describing trying to spam me and getting confused which routes I take :D
k0jak
Forum addon
 
Posts: 1103
Joined: Tue Feb 28, 2006 11:36 pm

Postby Mr.Carlyle » Wed Jul 18, 2007 10:54 pm

My only problem with this is the interference of spectators. I would only want to 1on1 with someone while others watched if the spectators had no way to interrupt the gameplay. e.g. Spamming with text! When I play a serious match like that I don't want to have my attention directed away from my only goal, which is the complete annihilation of my opponent. :twisted:
Image
Mr.Carlyle
Alien
 
Posts: 148
Joined: Sat Jun 16, 2007 6:17 pm
Location: USA

Postby GreEn`mArine » Wed Jul 18, 2007 11:11 pm

Yeah, this would be an additional requirement: chat of spectators is only visible to other spectators. But still there has to be a way that a spectator can communicate with the players, maybe a special password, no idea.
IRC quote:
[kojn] I've been coming a bit more recently
[kojn] she took it the dirty way
GreEn`mArine
Forum addon
 
Posts: 1509
Joined: Tue Feb 28, 2006 9:33 pm
Location: Germany

Postby Bundy » Thu Feb 21, 2008 4:25 pm

in other games i know you can vote it. "vcall mutespecs 1" If this doesnt work, it is perfectly ok to have the specs muted all time :D
Bundy
Alien
 
Posts: 230
Joined: Sat Jun 23, 2007 10:47 am

Re: g_competition Game modificator ?

Postby Mr. Bougo » Thu Feb 21, 2008 7:52 pm

GreEn`mArine wrote:[*]Once all the players ready up there should be a countdown and everything should reset. but NOT by a "restart" command but rather like still staying on the map. The reason is that, when using "restart", players have to select the team color again and have to "spawn" manually too. The playtime in warm-up stage should be unlimited (or very long) until all players readied up: once they pressed F4 and the game got reset, it should use the setup maptime of course. So to be clear: once every body readied up, do the countdown, then respawn every player, reset all items/weapons on the map, get rid of former dead bodies whatever, set time to 0 with a limit of <maptime> minutes.


I don't know if you checked that out already on the 2.4 svn, "ready" has changed a bit... Players stay on the same team, they are put on a spawn point, and there's a countdown

The timelimit is automatically set to timelimit + countdowntime, so it's not altered :)
Mr. Bougo
Keyboard killer
 
Posts: 760
Joined: Mon Sep 10, 2007 3:29 pm

Postby nifrek » Fri Feb 22, 2008 3:17 pm

I think we're getting closer, the lockteams code is ready, that can get enabled when everyone is ready so the match can be played without random people connecting and joining a team. Now anyone connecting after match is started will have to stay as spectator. Will work well for pickup games because you can play 1v1, 2v2, 3v3, etc on the same server (depending on maxplayers).
nifrek
Alien
 
Posts: 208
Joined: Fri Sep 22, 2006 6:43 am

Postby GreEn`mArine » Sun Feb 24, 2008 10:58 am

nifrek: that sounds very good. I am developing stuff atm, too. I am trying to get them into v2.4 by submitting patches, if they don't make it into v2.4 you can expect them as a mod that can be used for the ladder servers.

Features I am working on and that are almost done:
sv_ready_restart_after_countdown 0/1
Usually when players readied up the map_reset() is called immediately and during the countdown the players movement is blocked, thus they cannot move around nor switch weapons nor fire. However, if this cvar is set, players can still run around while the countdown is counting and collect items, they can also switch weapons, but they can not shoot. Once the countdown is over the map and players are reset (I also corrected the odd behaviour of the current v2.4 svn that also spectating/observing players got spawned. This shouldn't happen. Observers should stay observers, etc.).

sv_ready_restart_repeatable 0/1
If set the players are allowed to restart a game as often as needed. This was trivial to realise, a simple check, as well as resetting the .ready field of all players once a countdown started.

sv_ready_restart_nag 0/1
If set all other players that are actually players (not observers) are notified to ready up by showing a text via centerprint (similar to the vote-nagging). Of course only the players who are not ready yet are getting this centerprint. Besides I am working on supported settings like sv_ready_restart_nag_duration and sv_ready_restart_nag_interval that are set to xx seconds, so that this center print isn't shown all the time but in intervalls of xy seconds for xx seconds.


Another thing I thought about is this:
g_maxplayers x (1, 2, 3,or higher, if 0 feature is disabled)
When joining a game you're usually automatically an observer (free flight cam). If you try to join the game it will check how many players are already actively playing and whether the player is allowed to play (because the number of players already playing doesn't exceed g_maxplayers yet). If the number isn't exceeded yet, the player is allowed to play, otherwise he is not (he receives a message that tells the reason why he doesn't join, like "The maximum number of players is already reached").

@nifrek: This feature would make sense, even in conjunction with your lockedteams feature. This way one could define an "upper limit" of players, while your lock teams could still be used once all the players that are playing are ready. Here's an example:

You could setup a TDM server having 8 slots (maxplayers 8 ), but you only want to allow TDM 2v2 or 3v3 to be played on this server. This means that you want this server to always have at least 2 free observer-slots (and don't want to allow 4v4 TDMs). Thus you could set g_maxplaxers to 6. If the players connect to the server they can either build a 2v2 situation, and after the 4 players readied up no one else could join anymore because of your lockteams, or they could play a 3v3. However, they couldn't play a 4v4.
IRC quote:
[kojn] I've been coming a bit more recently
[kojn] she took it the dirty way
GreEn`mArine
Forum addon
 
Posts: 1509
Joined: Tue Feb 28, 2006 9:33 pm
Location: Germany

Postby GreEn`mArine » Sun Feb 24, 2008 6:01 pm

Okay, I completed coding all the features I just mentioned, I will now start implementing the last one I have planned:

Description of new modification g_tourney (which can be used for dm, tdm, ctf, dom)

Warmup-/Match-Mode:
If g_tourney (boolean) is set the game is divided into a warmup- and a match-stage. After a new map is loaded the game is automatically in warmup-stage. Players are able to get the game from warmup- to match-stage by reading up, thus one should make sure sv_ready_restart is enambled.
During warmup-stage the players automatically have all weapons (with appropriate ammo) and much health and
armor (e.g. 250/150, maybe configurable as cvars). However, the map still has all the items like health, ammo and weapons which can be picked up.
The cvar g_tourney_warmup_unlimited_time allows to configure whether the warmup time is unlimited (thus the time limit has to be extended every now and then) or whether the usual timelimit is used.
Once all playing players marked themselves as "ready" the map is reset and the game switches from warmup- to match-stage.

A small detail that I fixed in the sv_ready_restart_... packet already: Only the real players that readied up will be reset respawned). Observers or Spectators won't be put into the game as players.

If cvar g_tourney_disable_spec_chat is set and the game is in match stage, text written by spectators or observers cannot be seen by active players. What is still unclear is what to do with team_say texts written by real players: either show them to the spectators, or not?

A list of cvars again:
-> g_tourney 0
-> g_tourney_warmup_unlimited_time 0/1
-> g_tourney_disable_spec_chat 0/1
IRC quote:
[kojn] I've been coming a bit more recently
[kojn] she took it the dirty way
GreEn`mArine
Forum addon
 
Posts: 1509
Joined: Tue Feb 28, 2006 9:33 pm
Location: Germany

Postby nifrek » Sun Feb 24, 2008 6:32 pm

That sounds great. Hehe it only took you 2 days to do that and it took me a month do be able to code the lockteams command and it's actually MrBougo who told me how to do it properly.

I think your changes would work well with the lockteams command (altho it might not be that necessary with what you added), I can't wait to test this. :D
nifrek
Alien
 
Posts: 208
Joined: Fri Sep 22, 2006 6:43 am

Next

Return to Nexuiz - Editing

Who is online

Users browsing this forum: No registered users and 0 guests

cron