OpenArena Message Boards

OpenArena Contributions => Development => Topic started by: sago007 on June 30, 2007, 04:13:53 PM



Title: New mod: Elimination (Beta21)/OA 0.7.7+
Post by: sago007 on June 30, 2007, 04:13:53 PM
I have played around with the almighty source code.

This mod adds a gametype "Elimination". It is round based. You have all weapons (bfg is disabled by default) and full health and must eliminate the other team. It is like elimination from SoF2, combined with the UT version of Rocket Arena (no self damage, only two teams, warmup).

I believe most bugs are gone by now.

Mod: http://files.poulsander.com/~poul19/public_files/eliminationSource/eliminationB21.zip (http://files.poulsander.com/~poul19/public_files/eliminationSource/eliminationB21.zip)
Source: http://files.poulsander.com/~poul19/public_files/eliminationSource/openArenaEliminationB21.tar.bz2 (http://files.poulsander.com/~poul19/public_files/eliminationSource/openArenaEliminationB21.tar.bz2) (includes some of the engine source but its easiest to compile that way)
Old versions:
http://files.poulsander.com/~poul19/public_files/eliminationSource/
EDIT 1-19:Links to newer version


Title: Re: New mod: Elimination (Beta1)
Post by: fromhell on June 30, 2007, 04:29:38 PM
cool, a gpl mod! :)

these could possibly be treated specially by being put in the oa svn probably, under a mods directory, which from there can be built though that's just a silly thought


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on June 30, 2007, 08:43:55 PM
cool, a gpl mod! :)

these could possibly be treated specially by being put in the oa svn probably, under a mods directory, which from there can be built though that's just a silly thought


What's silly about it?  As long as the mod doesn't crash a person's system, include any backdoors, or vote republican we could distribute it...


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on June 30, 2007, 10:14:41 PM

I believe I know most bugs but feel free to comment anyway.

The end credit menu needs to be changed in q3_ui/ui_credits.c

Also the copywrite info in the main menu q3_ui/ui_menu.c

Those are the obvious things that should be changed to reflect that it is an OA mod.  :)

Edit:  If no one has any objections I'll commit this mod as the start of the oa - expanded mod


Title: Re: New mod: Elimination (Beta1)
Post by: w1zrd on July 01, 2007, 09:19:38 AM
Sounds like something worth trying out, for sure. Might put this up for testing during next week.


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 01, 2007, 09:24:38 AM
I went ahead and changed the things I was whining about and also changed the bot team menus to reflect OA's models, the code + qvm's are in the svn.


Title: Re: New mod: Elimination (Beta1)
Post by: fromhell on July 01, 2007, 11:56:31 AM
Heh this mod is kinda neat

Maybe the missionpack project could work with this as well, probably could use a load more gamemodes in that


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 01, 2007, 12:20:11 PM
I like that idea, how about adding more gametypes like instagib, vampire deathmatch*, vampire elimination*, last man standing (basically ffa elimination), etc.?

* You gain health when you wound someone, just make sure the health check is done server side to prevent cheats ;)



Title: Re: New mod: Elimination (Beta1)
Post by: fromhell on July 01, 2007, 12:37:31 PM
last man standing (basically ffa elimination)
seconded, though have the fraglimit as lives per round

what could also be great, is tremulous's particle system


Title: Re: New mod: Elimination (Beta1)
Post by: sago007 on July 01, 2007, 01:20:42 PM
I have fixed a lot of the bugs I mentioned, I will just look at what dmn_clown has put in SVN

EDIT: On the other hand I have not made any changes to q3ui since last time, so I skip it

I like that idea, how about adding more gametypes like instagib, vampire deathmatch*, vampire elimination*

They could be added easily as CVARs, like:

g_instantgib 0
g_vampire 0.0

That could be changed to:

g_instantgib 1 
if you wanted instantgib

g_vampire 0.43
if you want to get 43% of the damage you dealt in health

That way they would work for all gametypes. Instantgib DM/Tourney/TDM/CTF/Harvestor/Elimination etc.

Health and damage are already controlled server side (the client only knows about himself and teammates)


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 01, 2007, 02:41:18 PM
The only thing I changed was the copywrite notice on the main menu, the default bot choices, and the end credits.  Care to add a ffa elimination (last man standing) gametype with fromhell's idea of having a set number of lives per round to your mod?


Title: Re: New mod: Elimination (Beta1)
Post by: fromhell on July 01, 2007, 02:56:17 PM
there goes one flag ctf :/


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 01, 2007, 03:00:01 PM
anyway I just added the missionpack qvms to the svn.  Elimination is gametype 5, one flag is 6 overload is 7 harvester is 8.

With a weird bug that flags don't spawn in one flag... !


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 02, 2007, 02:12:23 AM
Ok, this is important:  when adding a new team game type make sure that it is defined after the missionpack gametypes in bg_public.h so that nothing gets b0rked.

The code should read like so:
Code:
typedef enum {
GT_FFA, // free for all
GT_TOURNAMENT, // one on one tournament
GT_SINGLE_PLAYER, // single player ffa

//-- team games go after this --

GT_TEAM, // team deathmatch
GT_CTF, // capture the flag
GT_1FCTF,
GT_OBELISK,
GT_HARVESTER,
GT_ELIMINATION, // team elimination (custom)
GT_MAX_GAME_TYPE
} gametype_t;

This makes elimination g_gametype 8 in the missionpack qvms :)


Title: Re: New mod: Elimination (Beta1)
Post by: sago007 on July 02, 2007, 04:36:45 AM
Ok, this is important:  when adding a new team game type make sure that it is defined after the missionpack gametypes in bg_public.h so that nothing gets b0rked.
That will make it very hard to implement another FFA gametype (like Last man standing), because the code expects all gametypes with a number higher than GT_TEAM to be team games and numbers higher than GT_CTF to use the team spawn points.

The code does not check every single gametype, it just compares with GT_TEAM and GT_CTF


Title: Re: New mod: Elimination (Beta1)
Post by: dmn_clown on July 02, 2007, 05:07:56 AM
not necessarily.  The easiest way to test after a compile of the qvms is to start the missionpack and change the gametype in the console followed with a /devmap oa_ctf4ish which has the team play entities in place.  As long as both flags spawn in ctf, the three flags spawn in one flag, both obelisks spawn in overload, and all three obelisks spawn in harvester everything will work out.


Title: Re: New mod: Elimination (Beta2)
Post by: sago007 on July 02, 2007, 10:15:06 AM
Beta 2 uploaded

quite a lot of modifications including gametype change to 8

Vampire and Instantgib added, but LMS is not included


Title: Re: New mod: Elimination (Beta2)
Post by: dmn_clown on July 02, 2007, 11:23:57 AM
I get the feeling that g_gametypes are going to have to be explicitly defined...

btw the vampire edition to the mod is more challenging ;)

edit:  Made some changes to your instantgib cvar before I committed it, nothing too special, just made the gauntlet an instagib weapon when the cvar is active (namely because in single player mode you have to die to get an instagib weapon and you already have the gauntlet >:D) You should probably spawn with it as well...

Also changed the team order's menu to work with the bots.


Title: Re: New mod: Elimination (Beta3)
Post by: sago007 on July 02, 2007, 04:36:31 PM
Ok, changes in Beta 3...

Made g_instantgib a LATCH cvar, map_restart required

g_instantgib, can now be 1 = RAILS only, 2 = RAIL and GAUNTLET, 0 = disabled
+some other things from svn

All map items are now loaded even if they are not needed... so they will appear if g_instantgib is set to 0 without a map change (map_restart not enough)

g_regen also added, so if enabled instantgib folks does not need to worry too much about falling damage


Title: Re: New mod: Elimination (Beta3)
Post by: sago007 on July 04, 2007, 02:54:31 PM
I am not able to code more for the next two weeks because I'm going on vacation.

Just wanted to but Beta 4...
Changes:
CTF elimination as gametype 9
Last Man standing template as gametype 10 (not actually implemented except solved the FFA problem)

I have created two variables g_ffa_gt and cgs.ffa_gt in the code, if they are '1' the game as a FFA gametype even of the gametype number is higher than CTF_GT

Gametype 10 is not LMS yet, it just demonstrates that it is now possible to make FFA games with high gametype numbers.

I have still not touched the UI, so CTF Elimination and LMS cannot be selected. And the interface still treats GT_LMS as a team game.


Title: Re: New mod: Elimination (Beta3)
Post by: dmn_clown on July 05, 2007, 10:40:17 AM
I made some quick changes to the ui so that ctf_elimination can be selected

Edit: Missionpack bug if you are using a model that can't be found, the game will crash to menu so choose your models wisely until "james" appears ;)


Title: Re: New mod: Elimination (Beta5)
Post by: sago007 on July 29, 2007, 01:33:55 PM
Beta 5 is up

Last Man Standing is added and working. Gametype 10

It is round based. The survivor gets a point.

If there are multiple survivors then time runs out the game will go into overtime and everyone will start to quickly loose health to force an outcome

CVAR g_lms_lives added
There is a 2 seconds forced spawn time, so players cannot sit safe in limbo forever.

UI code is copyed from SVN and LMS has been added to it
There are some UI problems with LMS under "Create Server" (basically it is still considered a team game there) and the bots try to select a leader of TEAM_FREE (almost amusing)


Title: Re: New mod: Elimination (Beta5)
Post by: dmn_clown on July 29, 2007, 03:54:22 PM
2 suggestions:

1.)  Create a monolithic patch of your changes* and then update to the latest ioq3 source (and post this patch, its easier than full source)
2.)  You may have to edit botlib so the bots know about the new gametypes


* svn diff -i > oaelimination.diff


Title: Re: New mod: Elimination (Beta5)
Post by: Hieronymus on July 31, 2007, 08:17:16 AM
How about the Nexuiz keyhunt? Each team has a key, which is like a flag except is has no "base", so it has to be carried around or lie on the ground. When one person has all the keys, he receives a lot of points, or, when two/three persons of the same team have the keys and meet (i.e., are less than $distance from eachother) they all get a few points. Teams win when they hit the fraglimit. (Both normal frags and key collections count, but the latter deliver much more points.)


Title: Re: New mod: Elimination (Beta5)
Post by: Hieronymus on July 31, 2007, 08:58:57 AM
Okay, my comments after playing it. First off: I like it very much. Now, there are some bugs/glitches/areas for improvement I found. It's only a beta, but I'm listing them just to be sure you know.

In general:
  • You can't player-spectate after you die
  • If a team has only one player, and it leaves, the other team gains a point. (Only tried this in elimination.)
  • You can't see who's dead already (this would be nice - maybe in the tab-menu or on-screen the number of ppl still alive per team?)
  • friendly fire is always off, you can't kill yourself. It would be nice to have an option to turn this off.
  • If there's a new round, you can get killed by someone spawning on top of you. If this happens, you may not be able to participate in the round.
  • I've noticed that when starting a server, there's by default no frag/capture limit. (This may be an Openarena glitch.)

specifically elimination:
  • you only get points when you kill someone. It is very hard to kill someone, so it might be fairer to get points for every 10 damage you did or something. Or, make it 'normal' hard to kill someone and then let everybody respawn once or twice

specifically CTF elimination:
  • You always hear the flag returned sound at the beginning of the round.
  • You don't hear the spectator when a flag is stolen.

specifically last man standing:
  • You don't get points for killing. This is probably intentional, but it means that hiding is the best strategy to winning.


Title: Re: New mod: Elimination (Beta5)
Post by: sago007 on July 31, 2007, 10:29:12 AM
Some of the mentioned things are intentional, except:

You can't player-spectate after you die (you could in beta 4, but it had a nasty "get the score of the player you follow" bug)
You can't see who's dead already (this should be visible in the score menu, by writing *DEAD* behind the name)
Friendly fire is actually possible but the gamemode ignores the ordinary friendly fire and uses the CVAR "elimination_selfdamage" instead. (This is not possible by using the menu yet) (Haven't actually tested it, but should be 0 = off, 1 = self damage, 2 = self and team damage)
The CTF ELIMINATION sounds
Telefrags in some maps
There should be a default capture limit, but the UI currently has lots of bugs. I don't understand that part of the code :-(

The above things will be fixed sooner or later...

Some of the choices I made and why:
If a team has only one player, and it leaves, the other team gains a point.
     The leaving player is considered to surrender.
Only scores for kills in elimination and only for surviving in LMS
     People in team games should not be so point oriented and in Last Man Standing I guess it is the idea...
     How hard it is to kill someone is configurable using CVARs in all 3 gametypes


Title: Re: New mod: Elimination (Beta5)
Post by: sago007 on August 04, 2007, 12:44:15 PM
Beta 6 uploaded.

Changes:
The bugs Hieronymus reported about CTF Elimination are fixed (the others are not)
Bots no longer select a leader in LMS
Shorter respawn time during warmup, between 0-0.8 seconds. In maps with only one respawn point like "Lost In Space" spawnfragging is still a problem.
Missionpack bug fixed (a signal 11 crash in the cgame draw code)

No diff file, sorry

The source packages makefile no longer compiles the engine. Only the changed 'game', 'cgame' and 'q3_ui' directories and the directories needed to compile the qvm files are included.




Added an early version of Double Domination as gametype 11. No bot support yet. No models or graphics (flags/quard models are used so far). No personal scoring or arward system.

Maps also need a bit changing as spawning in the bases is a bad idea. The gamemode uses a new 'info_player_dd' for spawning or 'info_player_deathmatch' if the other is not available. Point A is spawned at the red flag base, point B at the blue base.
This is the only gametype that bots really sucks at if they aren't modified, I don't see any need for better bots in Elim/CTF Elim/LMS


Title: Re: New mod: Elimination (Beta6)
Post by: hyp3rfocus on August 04, 2007, 01:19:45 PM
this is great stuff sago007. thank you so much. i've been looking for a gpl-based team elimination gametype for a while. i even considered attempting it myself despite my almost total lack of c programming skills. you're a lifesaver.  :-)


Title: Re: New mod: Elimination (Beta6)
Post by: dmn_clown on August 04, 2007, 05:17:41 PM
Domination crashes in the Missionpack AND the neutral flag is being spawned.


Title: Re: New mod: Elimination (Beta6)
Post by: sago007 on August 04, 2007, 06:09:27 PM
Domination crashes in the Missionpack AND the neutral flag is being spawned.

Ups, I can see the white flag now (I no longer keep up to date on the SVn version). Also the 'Ammo regen', 'Doubler', 'Scout' and 'Guard' are also gonna be removed.

However there do it crash for you because I experience no crash.


Title: Re: New mod: Elimination (Beta6)
Post by: dmn_clown on August 04, 2007, 08:18:57 PM
I don't know, I'm looking into it, also I just committed some ui changes so you may want to update your ui code (fixes some of the known bugs (thanks theBeast).

The gametype for double domination in arenas.txt is dd.

EDIT: It only seems to crash when using the shared libraries instead of the qvms in the pak

This array seems to be the biggest hurdle to the ui working as it should (from line 108 in ui_startserver.c)
Code:
static int gametype_remap2[] = {
0,  //ffa
2,  //team dm
0,  //tourney
1,  // ctf
3,  // elimination
4,  //ctf_elimination
5,  //lms
6,  //dd
7 }; //null

I'm stuck for a correct solution, sequential numbers provide bizarre results (ffa being shown as lms, ctf being shown as dd, etc.).


Title: Re: New mod: Elimination (Beta7)
Post by: sago007 on August 07, 2007, 04:40:53 PM
Beta 7 is up

Changes:
Possible fixed the crash with the shared libraries if it was caused by GFind (but I could be wrong)
Personal scores in Double Domination (Might have to be increased in the missionpack that generally gives more points)
Cannot score if time has run out
Removed white flag and persistant powerups in DD
ui code copied from SVN


Title: Re: New mod: Elimination (Beta6)
Post by: beast on August 08, 2007, 12:44:02 AM
This array seems to be the biggest hurdle to the ui working as it should (from line 108 in ui_startserver.c)
Code:
static int gametype_remap2[] = {
0,  //ffa
2,  //team dm
0,  //tourney
1,  // ctf
3,  // elimination
4,  //ctf_elimination
5,  //lms
6,  //dd
7 }; //null

I'm stuck for a correct solution, sequential numbers provide bizarre results (ffa being shown as lms, ctf being shown as dd, etc.).

I looked into this a little and I'll describe what I have found. First off, you can't place the values for elimination, etc.where you did. You need to add a few other values in there first. I'll try to explain as best I can....

You can let me know if I have misinterpreted anything...

The variable g_gametype has a sequential list of game types. starting at 0 and incrementing to the last one.
s_serveroptions.gametype receives this value in menuinit.

The value for s_serveroptions.gametype is used as an index into the gametype_remap2 array. The value that is in gametype_remap2[ s_serveroptions.gametype ] is an index into the gametype_items array.

The gametype_items array is an array of strings that has the text name for each of the gametypes.  This is where the gametype gets converted to one of the four gametype strings (FFA, TD, Tourn, and CTF).

So the current code will print the string the is pointed to by gametype_items[gametype_remap2[ s_serveroptions.gametype ]].

Now the problems that I see... the values that are used (GT_TEAM, GT_CTF, etc.) are an enum. These have a sequential value form 0 to the last item in the enum list. Currently there are 8 gametypes defined by the enum. The remap2 array currently has 5 values in it. So, the only remapping that will occur are for GT_FFA, GT_TOURNAMENT, GT_SINGLE_PLAYER, GT_TEAM, and GT_CTF. In order to get new gametypes to display, entries have to be added into the gametype_remap2 array for each of the additional gametypes. Currently, the value must be between 0 and three since there are only 4 strings/values defined in the gametype_items array. If you want one of the new gametypes to be displayed as its own string, you would add the string to the gametype_items array and then point the appropriate index in gametype_remap2 to the new string... Here's a sample snippet...

So, if we want strings to display for elimination, ctf_elimination, lms, and dd, we need to do a couple of things... First make sure that the types are defined in the gametype_t enum in bg_public.h
Code:
typedef enum {
   GT_FFA,
   GT_TOURNAMENT,
   GT_SINGLE_PLAYER,
   GT_TEAM,
   GT_CTF,
   GT_1FCTF,
   GT_OBELISK,
   GT_HARVESTER,
   GT_ELIMINATION,
   GT_CTF_ELIMINATION,
   GT_LMS,
   GT_DD
} gametype_t;

Next, in ui_startserver.c make the following changes:

Code:
static const char *gametype_items[] = {
    "Free For All",
   "Team Deathmatch",
   "Tournament",
   "Capture the Flag",
   "Elimination",
   "CTF Elimination".
   "DD",
   NULL
};

static int gametype_remap2[] = {0, 2, 0, 1, 3, xx, xx, xx, 4, 5, 6, 7};


The xx in the remap are values that need to be defined for GT_1FCTF, GT_OBELISK, and GT_HARVESTER. Currently there are no values in the remap array for those types. Something must be in there in order to get the new gametypes in the correct place in the array....  FYI, you are probably going to have to modify the gametype_remap array also. This array is used to determine the g_gameType value to set before the call to UI_ServerOptionsMenu...

Hopefully I haven't totally misunderstood the problem. If so, let me know and I'll dig some more...

[Update]
I noticed in ui_servers2.c that there are more types defined there:
   "Rocket Arena 3", // Rocket Arena 3
   "Q3F",                // Q3F
   "Urban Terror",     // Urban Terror
   "OSP",                // Orange Smoothie Productions
   "???",                 // unknown

If these types are defined before Elimination, you will need to add values in the gametype_remap2 array for those also (right after the values that you choose for xx, xx, xx and before the Elimination value.)


Title: Re: New mod: Elimination (Beta6)
Post by: dmn_clown on August 08, 2007, 10:25:05 AM
Hopefully I haven't totally misunderstood the problem. If so, let me know and I'll dig some more...

You have, if your changes are added to ui_startserver ctf is listed as tournament, elimination is listed as team deathmatch, etc...





Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 08, 2007, 11:36:13 AM
The  code that I looked at was from o.7.0. Is the problem in the mission pack code? If so, point me to the latest code that is having the problem and I'll dig through it.


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 08, 2007, 11:42:19 AM
source/mods/expanded/ in the svn


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 08, 2007, 12:43:18 PM
ok. I'm (hopefully) looking at the right code now... Try the following in ui_startserver.c

Code:
static int gametype_remap[] = {
GT_FFA, // GT_FFA
GT_TEAM, // GT_TOURNAMENT
GT_TOURNAMENT, // GT_SINGLE_PLAYER
GT_CTF, // GT_TEAM
GT_CTF, // GT_CTF
GT_CTF, // GT_1FCTF
GT_CTF, // GT_OBELISK
GT_CTF, // GT_HARVESTER
GT_ELIMINATION, // GT_ELIMINATION
GT_CTF_ELIMINATION, // GT_CTF_ELIMINATION
GT_LMS, // GT_LMS
GT_DOUBLE_D }; // GT_DOUBLE_D

static int gametype_remap2[] = {
0, // GT_FFA
2, // GT_TOURNAMENT
0, // GT_SINGLE_PLAYER
3, // GT_TEAM
3, // GT_CTF
3, // GT_1FCTF
3, // GT_OBELISK
4, // GT_ELIMINATION
5, // GT_CTF_ELIMINATION
6, // GT_LMS,
7, // GT_DOUBLE_D
}; //Dammit Jim, The array is b0rked!!

It's the same problem that I described below, my example just wasn't using the mission pack code so it was probably too confusing... The comments at the end of each line are obviously optional. I placed them there to show what gametype each item was describing... The problem arose because the original code assumed that anything after GT_TEAM was all the same type so no remapping was required. Therefore, they never put entries in the arrays for those items. Since we are adding gametypes after those, we need to fill in the array so that the correct location in the array will be chosen for the new gametypes.

Let me know if this doesn't do the trick...


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 08, 2007, 03:21:27 PM
That doesn't do the trick.  Team DM gets listed as CTF and everything from elimination on is also listed as ctf.  Leaving my last comment in the code as still valid.


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 08, 2007, 04:45:53 PM
Dang... Isn't coding fun.... Here's what appears to work on my system... Change the gametype_remap2 to the following:
Code:
static int gametype_remap2[] = {
0,
2,
0,
1,
3,
3,
3,
3,
4,
5,
6,
7}; //Dammit Jim, The array is b0rked!!

No other changes to the code as it currently sits in svn...

Here's a diff file...


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 08, 2007, 05:10:37 PM
hehe... nope.  elimination is listed as ctf, ctf_elimination is ctf, etc.

C is fun.


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 08, 2007, 11:15:15 PM
What screen is the problem on? The last suggestion seems to work on my system, but maybe I'm looking at the wrong place...(And I am only assuming that it is a visual problem and not something else... Hehe... Maybe I should have asked sooner...


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 09, 2007, 12:09:51 AM
The second page of the "Game Server" skirmish menu.

It'd probably be easier to rip the arrays out and just define the gametypes changing the way the menu deals with gametypes, the current way it is done works fine if all of the high gametypes are team style, but LMS is gametype 10 and NOT a team gametype.


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 09, 2007, 12:55:58 AM
I'll dig into it. It shouldn't be that difficult... I'm obviously having a brain fart... :-(


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 09, 2007, 01:02:20 PM
Phew.... I finally found it... I'm totally new to the quake source, so it took me a while to figure it out... The gametype_remap2 array needs to be setup as per the previous post:

Code:
static int gametype_remap2[] = {
0,
2,
0,
1,
3,
3,
3,
3,
4,
5,
6,
7 }; //Dammit Jim, The array is b0rked!!

The real problem, once the array is setup correctly, is the call to Com_Clamp at the beginning of the ServerOptions_MenuInit function:

Code:
	s_serveroptions.gametype = (int)Com_Clamp( 0, 5, trap_Cvar_VariableValue( "g_gameType" ) );

The second parameter puts a limit of 5 on the value for gametype. Therefore, everything above 5 was being set to 5, so everything above 5 became CTF. Change the line to the following:

Code:
	s_serveroptions.gametype = (int)Com_Clamp( 0, GT_MAX_GAME_TYPE - 1, trap_Cvar_VariableValue( "g_gameType" ) );


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 09, 2007, 01:44:17 PM
Thanks, that problem seems to be fixed.  On to the next...

@Sago007 the neutral flag is appearing in ctf_elimination in the missionpack.


Title: Re: New mod: Elimination (Beta7)
Post by: Hieronymus on August 09, 2007, 04:21:23 PM
sago007, it'd be nice if next time you add a feature, you tell us what is is. I will try this "double dominitation", whatever it is, in the afternoon.

The mod Smokin' Guns (a.k.a. Western quake 3) (http://westernquake3.net/) has the dead talk in white, with [dead] before their name and a skull & bones icon in the score list. It also allows you to spectate your teammates when you're dead. They're working on a stand-alone with OA and ioq3 gfx and code which will be GPL-licensed. For now, they provide no source, but if you ask them nicely, they might help you. (It might be worth a try.) Btw, it's a very cool mod. It's a bit like counter-strike (buy menu, damage based on where you're hit) but with a western look and maps and a "bank robbery" mode for CTF.


Title: Re: New mod: Elimination (Beta7)
Post by: beast on August 09, 2007, 04:43:11 PM
@Sago007 the neutral flag is appearing in ctf_elimination in the missionpack.

Do you want me to look into this or is someone already doing it?


Title: Re: New mod: Elimination (Beta7)
Post by: dmn_clown on August 09, 2007, 05:17:37 PM
sago007 will get it as long as he sees the post.  The only thing he doesn't touch is the UI.

Also @ sago007 I made some changes to cgame/cg_info.c that go along with the ui.


Title: Re: New mod: Elimination (Beta7)
Post by: sago007 on August 10, 2007, 04:13:35 AM
Also @ sago007 I made some changes to cgame/cg_info.c that go along with the ui.
Ok

@Sago007 the neutral flag is appearing in ctf_elimination in the missionpack.

Ok, let me guess... the persistant powerups spawn too (might not do so much damage since it is a base game). I don't have missionpack on the current computer but I can see the problem in the code.

sago007, it'd be nice if next time you add a feature, you tell us what is is. I will try this "double dominitation", whatever it is, in the afternoon.

It is almost unplayable at the moment (no bot support). Some of the gametypes and there rules might be so different that they will need an explanation. I might add one to the Wiki.



Title: Re: New mod: Elimination (Beta8)
Post by: sago007 on August 11, 2007, 03:41:51 PM
Beta 8 up

White flags removed from CTF elimination in missionpack
UI from svn
New LMS modes

The new LMS modes (selected by g_lms_mode):
0 = point to the sole survivor selected after overtime if more survivors
1 = point to the players that survives the round, no overtime
2 = point for each player eliminated. Points go to all survivors. Including overtime
3 = point for each elimination. No overtime

The mode is printed top right if scoreboard is showing

/*
I am currently bothered by a small thing:
If the server only has bots and they play a game to the end, the server wont let human players in for the time that corrosponds to an interval. This one didn't fix that but I believe that a player might have to spawn before he can click ready
*/
EDIT: I think I got it, if I do it is quite stupid mistake

Maybe this thread really belongs in the development forum. There is quite a lot of development in it right now


Title: Re: New mod: Elimination (Beta8)
Post by: dmn_clown on August 11, 2007, 04:23:39 PM
Considering that your mod is the basis for the missionpack, yes it should be in the development section. ;)


Title: Re: New mod: Elimination (Beta8)
Post by: fromhell on August 11, 2007, 09:41:56 PM
ok it's in the development section


Title: Re: New mod: Elimination (Beta8)
Post by: dmn_clown on August 12, 2007, 05:03:56 PM
The missionpack menu now calls the correct gametypes.


Title: Re: New mod: Elimination (Beta8)
Post by: dmn_clown on August 14, 2007, 07:04:34 AM
gcc throws out a few complaints:
Code:
code/cgame/cg_main.c: In function 'CG_RegisterSounds':
code/cgame/cg_main.c:561: warning: suggest parentheses around && within ||
code/cgame/cg_main.c: In function 'CG_RegisterGraphics':
code/cgame/cg_main.c:958: warning: suggest parentheses around && within ||

code/cgame/cg_draw.c: In function 'CG_DrawDoubleDominationThings':
code/cgame/cg_draw.c:895: warning: suggest parentheses around && within ||
code/cgame/cg_draw.c: In function 'CG_DrawUpperRight':
code/cgame/cg_draw.c:858: warning: 's' may be used uninitialized in this function
code/cgame/cg_draw.c:912: warning: 's' may be used uninitialized in this function

code/cgame/cg_scoreboard.c: In function 'CG_DrawClientScore':
code/cgame/cg_scoreboard.c:195: warning: suggest parentheses around && within ||

code/game/g_main.c: In function 'SendDDtimetakenMessageToAllClients':
code/game/g_main.c:959: warning: implicit declaration of function 'DoubleDominationScoreTimeMessage'
code/game/g_main.c: In function 'CheckDoubleDomination':
code/game/g_main.c:1547: warning: implicit declaration of function 'Team_ForceGesture'
code/game/g_main.c: In function 'CheckElimination':
code/game/g_main.c:1695: warning: suggest explicit braces to avoid ambiguous 'else'
code/game/g_main.c:1717: warning: suggest explicit braces to avoid ambiguous 'else'

code/game/g_active.c: In function 'ClientThink_real':
code/game/g_active.c:1032: warning: suggest parentheses around && within ||

code/game/g_client.c: In function 'respawn':
code/game/g_client.c:524: warning: suggest explicit braces to avoid ambiguous 'else'
code/game/g_client.c: In function 'ClientUserinfoChanged':
code/game/g_client.c:1028: warning: suggest parentheses around && within ||
code/game/g_client.c: In function 'ClientBegin':
code/game/g_client.c:1321: warning: suggest parentheses around && within ||
code/game/g_client.c: In function 'ClientSpawn':
code/game/g_client.c:1370: warning: suggest parentheses around && within ||
code/game/g_client.c:1590: warning: suggest parentheses around && within ||
code/game/g_client.c:1639: warning: suggest parentheses around && within ||

code/game/g_combat.c: In function 'G_Damage':
code/game/g_combat.c:962: warning: suggest parentheses around && within ||
code/game/g_items.c: In function 'G_SpawnItem':
code/game/g_items.c:958: warning: suggest parentheses around && within ||

code/game/g_team.c: In function 'Team_TouchDoubleDominationPoint':
code/game/g_team.c:951: warning: unused variable 'player'
code/game/g_team.c:1030: warning: control reaches end of non-void function
code/game/g_team.c: In function 'Team_DD_makeA2team':
code/game/g_team.c:710: warning: 'it' may be used uninitialized in this function

code/game/g_team.c:1030: warning: missing return value

Yes I know that "suggest parentheses around && within ||" is harmless and can be ignored but it is best to make gcc happy.  When gcc is happy everyone is happy :)

Some of the error messages though are somewhat serious and shouldn't be ignored.


Title: Re: New mod: Elimination (Beta8)
Post by: sago007 on August 14, 2007, 08:13:14 AM
Yes, some of them are not very pretty (especially 'may be uninitialized' and 'implicit defined' the last one because I don't know exactly why it isn't defined).

The only warning that I ever noticed (and did something about) was a ' does not have the mathematical meaning'

However the parentheses around && I wont add until most bugs has been solved.

An example:
Code:
if ( (client->sess.sessionTeam != TEAM_SPECTATOR) && (!(client->isEliminated)&& (!client->ps.pm_type == PM_SPECTATOR) || 
(g_gametype.integer != GT_ELIMINATION && g_gametype.integer != GT_CTF_ELIMINATION && g_gametype.integer != GT_LMS)) )
There are already so many parentheses that I hardly can see what it does. If I add more parentheses I cannot see what it does.

Now that I look at it: The above example might even need some cleanup, some tests seems to be redundant.

Then the bugs are solved we can add those parentheses.

By the way. I have gotten player spectating to work, fixed some spectator bugs, a LMS proximity mine bug and added possibility for missionpack weapons. So expect a beta within the next 24 hours.

EDIT: One of the s might be uninitialized was actually quite serius and could be triggered by any busy server administrator bu picking a wrong LMS mode


Title: Re: New mod: Elimination (Beta9)
Post by: sago007 on August 14, 2007, 12:26:37 PM
Beta 9 is up.

Changelog:
Reenabled spectator following when dead, now without score bug
Spectators can now use teleporters
Spectators can teleport though doors
Added a message to the client informing of the possibility to leave spectator mode by pressing USE_ITEM
Added cvars for all weapons but gauntlet
Added chaingun, nailgun and proxy mine launcher in missionpack
Solved the bot_min_players+no humans+forcejoin bug (I have tested)
Mines now work in LMS
Some code fixes incl possible pointer problems
You cannot loose points by killing yourself/team mates in Elimination/CTF Elimination warmup any more
Fixed an unknown problem (I could just see the code was wrong)

Added these CVARs to control ammo:
elimination_machinegun "200"
elimination_shotgun "200"
elimination_granade "200"
elimination_rocket "200"
elimination_railgun "200"
elimination_lightning "200"
elimination_plasmagun "200"
Only in MISSIONPACK:
elimination_chain "0"
elimination_mine "0"
elimination_nail "0"

On to bot coding...

Quote
this is great stuff sago007. thank you so much. i've been looking for a gpl-based team elimination gametype for a while. i even considered attempting it myself despite my almost total lack of c programming skills. you're a lifesaver.  :-)

I just saw your post on http://www.quakesrc.org yesterday.


Title: Re: New mod: Elimination (Beta9)
Post by: fromhell on August 14, 2007, 01:25:25 PM
elimination_granade "200"

grenade


Title: Re: New mod: Elimination (Beta9)
Post by: dmn_clown on August 15, 2007, 08:28:34 PM
I fixed the spelling issue (not committed).

domination point A when controlled by blue is showing both red + blue flags

(We need three point A models and three point B models, red, blue, and white)


Title: Re: New mod: Elimination (Beta9)
Post by: fromhell on August 15, 2007, 08:56:39 PM
I'll get to it

EDIT: Hows this for font (Deja Vu Sans Fixed Bold) and size? Still working on this


Title: Re: New mod: Elimination (Beta9)
Post by: dmn_clown on August 15, 2007, 09:27:02 PM
That's not bad, though maybe too angular, btw for the white skin it should probably just be somwthing like this rather than being full white:

Code:
{
{
map textures/effects/envmapdimb.jpg
tcgen environment
blendfunc add
}
}


Title: Re: New mod: Elimination (Beta9)
Post by: fromhell on August 15, 2007, 09:27:21 PM
almost done, just got a nasty poly on B to sort out


Title: Re: New mod: Elimination (Beta9)
Post by: fromhell on August 15, 2007, 09:33:51 PM
OK !!


Title: Re: New mod: Elimination (Beta9)
Post by: dmn_clown on August 15, 2007, 10:13:16 PM
Updated the bg_misc.c with the domination points

they are in models/dpoints/


Title: Re: New mod: Elimination (Beta9)
Post by: Kojiro_S on August 16, 2007, 12:04:21 AM
Looking quite good, I have to say :D


Title: Re: New mod: Elimination (Beta9)
Post by: dmn_clown on August 16, 2007, 12:53:24 AM
yes, but there is a nasty crash in the missionpack right now...

[edit:] it appears to be player model related :$


Title: Re: New mod: Elimination (Beta10)
Post by: sago007 on August 21, 2007, 12:15:54 PM
Beta 10 is up.

Changes:
build on SVN 625 + instantgib ammo bug from a later version
Fixed respawning flags bug introduced in Beta 9
Bots now actively try to capture points in Double Domination. They are still not that smart, so they might all try to get the same point.
Added oneway option to CTF elimination (using CVAR 'elimination_ctf_oneway'), so only one team can attack in each round.
Double Domination points are in the mod for people who test on 0.7.x

Both Oneway CTF Elimination and Double Domination has the same problem with bots. On my test map the bots showed extreme progress since Beta 9 in DD


Title: Re: New mod: Elimination (Beta10)
Post by: dmn_clown on August 21, 2007, 01:55:42 PM
Both Oneway CTF Elimination and Double Domination has the same problem with bots. On my test map the bots showed extreme progress since Beta 9 in DD

Yes, but you've only addressed 2 layers of the 4 layer ai, so those problems should be expected.  You have botlib which is compiled into the client/server portion of the game, there is the portion in the vm, there is the fuzzy logic, which hasn't been touched, and the bots themselves which also haven't been touched.

Mr. Elusive's thesis on the ai might be useful for you:  http://www.kbs.twi.tudelft.nl/Publications/MSc/2001-VanWaveren-MSc.html

btw - I'll handle the bots and fuzzy logic :)


Title: Re: New mod: Elimination (Beta10)
Post by: sago007 on August 21, 2007, 02:54:27 PM
Mr. Elusive's thesis on the ai might be useful for you:  http://www.kbs.twi.tudelft.nl/Publications/MSc/2001-VanWaveren-MSc.html

That is interesting reading, I get a lot more understanding of the bot code just by looking at figure 5.2 compared to reading the code


Title: Re: New mod: Elimination (Beta10)
Post by: dmn_clown on August 21, 2007, 03:10:39 PM
Yeah, it helped a lot when I was working on the fuzzy logic.

I am kinda hoping, however, that his comments in the code are far more helpful in Doom 3.

Also updated experimental binaries (that include your additions to botlib) will be in the svn soon.


Title: Re: New mod: Elimination (Beta10)
Post by: next_ghost on August 21, 2007, 03:13:17 PM
I'm trying to make the warnings go away. Somebody please shoot the guy who made those damn
Code:
if( foo ) {
    if( bar ) {
        if( baz ) {
            do_something;
        }
    }
}
conditions. Is it really so hard to do this?

Code:
if( ( foo ) && ( bar ) && ( baz ) ) {
    do_something;
}

Edit: YEEEEAAAAAAARGHHH! STOP USING #ifdefs IN SO CRAZY WAY!


Title: Re: New mod: Elimination (Beta10)
Post by: dmn_clown on August 21, 2007, 04:49:31 PM
Quote
//For double domination
   if (bs->ltgtype == LTG_POINTA &&
            bs->defendaway_time < FloatTime()) {
      //check for bot typing status message
      if (bs->teammessage_time && bs->teammessage_time < FloatTime()) {
         trap_BotGoalName(bs->teamgoal.number, buf, sizeof(buf));
         BotAI_BotInitialChat(bs, "defend_start", buf, NULL);

defend_start conflicts with another bot command, I'm changing that to dd_start.

:)


Title: Re: New mod: Elimination (Beta10)
Post by: next_ghost on August 21, 2007, 05:25:31 PM
OK, here's the parentheses patch. I've added parentheses according to C evaluation rules and split G_Damage into two variants to get rid of #ifdefs in the middle of code. I'm not sure how you meant most conditions to evaluate so I've added comments prefixed N_G. Two conditions were obviously wrong (also commented). If you find other wrong conditions, they do exactly the same as the original code.


Title: Re: New mod: Elimination (Beta10)
Post by: sago007 on August 21, 2007, 06:04:26 PM
defend_start conflicts with another bot command, I'm changing that to dd_start.

:)
I think I will end up throwing most of the new bot code away anyway. It currently uses some short cuts to do it all on the upper layers. The leader commands need to be given at a higher level and analysed at a lower level no matter what, I also believe its the missing link needed to get the bots to take different Domination Points.

The chats commends will properly end up being: "dd_start_a" and "dd_start_b" etc. but I will need to look into it a little longer.

OK, here's the parentheses patch. I've added parentheses according to C evaluation rules and split G_Damage into two variants to get rid of #ifdefs in the middle of code. I'm not sure how you meant most conditions to evaluate so I've added comments prefixed N_G. Two conditions were obviously wrong (also commented). If you find other wrong conditions, they do exactly the same as the original code.

Yes there are clearly two errors if not three. Not game critically but after fixing them I can properly cut some redundant checks.


Title: Re: New mod: Elimination (Beta10)
Post by: dmn_clown on August 21, 2007, 06:17:31 PM
split G_Damage into two variants to get rid of #ifdefs in the middle of code

You of course realize that by hastily removing #ifdef MISSIONPACK you are effectivily making the missionpack baseoa, something that we do not want at this point in time.

I think I will end up throwing most of the new bot code away anyway. It currently uses some short cuts to do it all on the upper layers. The leader commands need to be given at a higher level and analysed at a lower level no matter what, I also believe its the missing link needed to get the bots to take different Domination Points.

The chats commends will properly end up being: "dd_start_a" and "dd_start_b" etc. but I will need to look into it a little longer.

I'll wait then.


Title: Re: New mod: Elimination (Beta10)
Post by: next_ghost on August 22, 2007, 03:50:49 AM
You of course realize that by hastily removing #ifdef MISSIONPACK you are effectivily making the missionpack baseoa, something that we do not want at this point in time.

I've moved the #ifdefs outside G_Damage, not removed them completely. Take a look at the patch.


Title: Re: New mod: Elimination (Beta10)
Post by: ufa on August 24, 2007, 02:14:01 PM
Hello!!
You guys rock!!
Thanks for the excellent work!


Title: Re: New mod: Elimination (Beta11)
Post by: sago007 on August 29, 2007, 05:58:41 PM
Beta 11 up. I have not copied anything from SVN since B10.

Patch partially applied. I don't agree with splitting G_Damage causing the same code to be in more places and therefore being harder to edit.
Fixed some bugs and fixed the bugs caused be fixing bugs.
No more defense bonus if you are the offensive team in Oneway CTF elimination.
Some bot changes. Bots can now coordinate in Double Domination.
Changed bot strategy in Oneway CTF. Although I the default strategy might actually be more effective.

I'm going back to the studies this Monday, so don't expect frequent updates after that.


Title: Re: New mod: Elimination (Beta11)
Post by: dmn_clown on September 03, 2007, 06:48:05 AM
I got bored and added nexuiz style rocket arena as a cvar (g_rockets 1)


Title: Re: New mod: Elimination (Beta11)
Post by: sago007 on September 14, 2007, 10:49:27 AM
I'm currently merging Standard Domination into the svn version. Expect a beta 12 soon.

EDIT:

It is out.
There is a dom_test map included for the sole purpose to show that it works.
No personal scores and the bots only take points if they are convenient.
Domination Point A is used for standard domination points.
No UI

It should be possible to add Domination support to most DM maps.


I found a bug in Elimination that I have not fixed yet:
Then dead and player spectating the bar will always be your team color. I know why... because I created the bug to fix an even more serious bug (game play affecting) but I have not found a solution that does not create an even bugger bug.


Title: Re: New mod: Elimination (Beta12)
Post by: dmn_clown on September 15, 2007, 05:36:22 PM
Unless I am completely missing what you are doing with the ai, you aren't making a captured domination point an inventory item which is preventing giving each bot an individual weight for any domination point.  This also prevents making the bots on the blue team go after the red team's captured domination points, and vice versa which makes the ai kinda bad in domination.

For the fuzzy weights to work properly the captured domination points need to be an inventory item, though a non-existent inventory item that doesn't preclude picking up any other inventory item, obviously.


Title: Re: New mod: Elimination (Beta12)
Post by: dmn_clown on September 24, 2007, 12:28:33 PM
Code:
code/game/g_team.c: In function 'Team_Dom_SpawnPoints':
code/game/g_team.c:697: warning: 'flag' may be used uninitialized in this function

Code:
code/game/g_team.c: In function 'Team_Dom_SpawnPoints':
code/game/g_team.c:697: warning: 'flag' may be used uninitialized in this function

and can you PLEASE start uploading monolithic diff files instead of uploading source, it makes applying your changes much easier.


Title: Re: New mod: Elimination (Beta12)
Post by: sago007 on September 24, 2007, 01:00:35 PM
and can you PLEASE start uploading monolithic diff files instead of uploading source, it makes applying your changes much easier.

I will do.

Just one question:
Is patches supposed to be from last version or from original?


Title: Re: New mod: Elimination (Beta12)
Post by: dmn_clown on September 24, 2007, 01:25:11 PM
Changes from your last version would be much easier to implement, also I should have the ui changes for domination done sometime this week.


Title: Re: New mod: Elimination (Beta12)
Post by: sago007 on September 24, 2007, 01:34:37 PM
Changes from your last version would be much easier to implement, also I should have the ui changes for domination done sometime this week.

Ok

Sadly I don't think I'll have anything ready this week :(


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on November 05, 2007, 09:04:37 AM
Beta 13 is out. I have not done any bot coding as I had hoped I would, but fixed some bugs/features that really annoyed me. A single annoying bug is still there: round start time is not sent to remote players after map change.

A diff is included B12 -> B13

Changelog:
Fixed player bar color when spectating in Elimination/CTF Elimination (annoyed me for some time)
Lives are now showed in LMS instead of "*DEAD*" (not really that annoying but nice to know)
No shaking camera then hit in LMS, Elimination, CTF Elimination. It is mostly noticed in overtime in LMS. The feature remains in all other gametypes.
Prevent elimination warmup CVARs from taking bad values. (bug found by w1zrd)


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on November 05, 2007, 05:00:49 PM
You have a bug in gt_lms that allows brushes, triggers, etc. marked to spawn only in team games to spawn in gt_lms.

I've attached a small map that demonstrates the bug.

Code:
/g_gametype 10
/devmap crap

then walk straight forward, the trigger push should only spawn in team based games.

The diff file is a fix for the bug.

(thanks for uploading the diff, btw)


Title: Re: New mod: Elimination (Beta13)
Post by: w1zrd on November 06, 2007, 10:14:18 AM
We'll upload this with the latest changes shortly, it's always things that occurs in live-environments that never happens in testing.
Great job with the updates..


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on November 06, 2007, 05:20:10 PM
Also you should port your code to the latest ioq3 rev as they've added some safe guards to the stack on non-x86, non mac platforms which will be a nice thing for the people using the BSD and Open Solaris (http://www.opensolaris.org/jive/thread.jspa?messageID=161066) ports of the game.


Title: Re: New mod: Elimination (Beta13)
Post by: smartboyathome on November 12, 2007, 10:54:47 PM
I love this mod! Great job! Only one problem:

(I am on Linux, btw) For whatever reason, I can only use this by putting the elimination.pk3 into my /baseoa (not /baseoa/Elimination B13/) which makes it so it isn't a mod but a part of openarena, and then when I do that, I can't use any of the extra maps provided. This means I can't use Double Domination or CTF Elimination. Please help.


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on November 12, 2007, 11:07:39 PM
I can only use this by putting the elimination.pk3 into my /baseoa (not /baseoa/Elimination B13/)

EliminationB13 should be outside of baseoa, just unzip the mod in the openarena-0.7 folder


Title: Re: New mod: Elimination (Beta13)
Post by: doveraudio on November 12, 2007, 11:15:32 PM
forgot to mention this worked fine...


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on November 13, 2007, 10:22:31 AM
I can't use any of the extra maps provided. This means I can't use Double Domination or CTF Elimination.

There are no extra maps included. CTF Elimination can be played on most CTF maps but must be started from console. There are currently no maps in OA that works well with Double Domination


Title: Re: New mod: Elimination (Beta13)
Post by: PureLoneWolf on November 28, 2007, 04:00:22 PM
Hi there

Is there a complete list of the g_gametype cvars for this mod and what map supports which?

The mod is great btw - I am using it to recreate a Rocket Arena server (without the multiple arenas per map) and elimination seems to fit the bill with the self/team damage off etc.

Cheers
Dave


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on November 28, 2007, 06:01:48 PM
Is there a complete list of the g_gametype cvars for this mod and what map supports which?

I have added the gametype numbers to the wiki: (DO NOT LINK) h t t p s : / / openarena . wikia . com/wiki/Gametype

About maps:
Elimination: All DM, CTF maps with enough team respawn points. (CBCTF1 does not have enough)
CTF Elimination: CTF maps with enough respawn points.
LMS: All DM maps

There are currently no maps in OA suited for Double Domination and Domination. Double Domination can be played on 13ctf2 from Quake III Arena but that is only because all the DM spawn points are placed near the center of the map.




Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on November 28, 2007, 07:00:20 PM
There are currently no maps in OA suited for Double Domination and Domination.

Domination also needs more work, you currently win a round without capturing all of the points.  See islanddm from the svn for testing.

<edit>
It also seems kinda silly to not use info_player_deathmatch spawn points in normal domination.


Title: Re: New mod: Elimination (Beta13)
Post by: PureLoneWolf on November 29, 2007, 02:07:02 AM
I have added the gametype numbers to the wiki: (DO NOT LINK) h t t p s : / / openarena . wikia . com/wiki/Gametype

Thanks, I didn't even think to look there as it is a mod, sorry about that.


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on November 29, 2007, 04:13:26 AM
It also seems kinda silly to not use info_player_deathmatch spawn points in normal domination.

That is a bug. I didn't notice until you said it, but it was supposed to be like that. I should have tested on a map with team spawn points.


Title: Re: New mod: Elimination (Beta13)
Post by: PureLoneWolf on November 29, 2007, 04:42:23 AM
Quick question again..

What does the g_rockets cvar do? (I tried searching the Wiki)

For what I need, the elimination gametype, 200 ammo for all weapons and no self/team damage seems to be doing enough, but I spotted that I currently have g_rockets set to 0 and wondered what impact this has.

**Edit**

I just spotted that it makes a Nexuis style RA...Having never played Nexuis, I still don't understand it - sorry....

Cheers

Dave


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on December 01, 2007, 12:53:05 AM
Beta 13 is out. I have not done any bot coding as I had hoped I would, but fixed some bugs/features that really annoyed me. A single annoying bug is still there: round start time is not sent to remote players after map change.

Another bug in gt_lms, it is being initialized as a team game.  When single player is active it's a one line fix in G_InitGame of game/g_main.c

Code:
	// make sure we have flags for CTF, etc
if( g_gametype.integer >= GT_TEAM && g_gametype.integer != GT_LMS ) {
G_CheckTeamItems();
}

This doesn't fix the fact that the game type doesn't leave the warmup stage, from games.log after a single player lms game:

Code:
  0:00 InitGame: \capturelimit\5\g_maxGameClients\0\sv_maxclients\3\timelimit\0\fraglimit\5\dmflags\0\sv_hostname\joe-mama\sv_minRate\0\sv_maxRate\0\sv_minPing\0\sv_maxPing\0\sv_floodProtect\1\g_redTeam\Pagans\g_blueTeam\Scumm\elimination_roundtime\120\elimination_ctf_oneway\0\g_lms_mode\0\version\OpenArena 1.35+oa_SVN1220M linux-x86_64 Nov 29 2007\g_gametype\10\protocol\68\mapname\oa_rpg3dm2\sv_privateClients\0\sv_allowDownload\0\gamename\baseoa\g_needpass\0\g_obeliskRespawnDelay\10\g_enableDust\0\g_enableBreath\0\g_rockets\0\g_instantgib\0
  0:00 Warmup:
  0:00 ClientConnect: 0
  0:00 ClientUserinfoChanged: 0 n\^2CH3470R\t\0\model\gargoyle/tech\hmodel\gargoyle/tech\c1\4\c2\5\hc\70\w\0\l\0\skill\    2.00\tt\0\tl\0
  0:00 ClientConnect: 1
  0:00 ClientUserinfoChanged: 1 n\^4Joe\t\0\model\tony\hmodel\tony\c1\4\c2\5\hc\70\w\0\l\0\skill\    2.00\tt\0\tl\0
  0:00 ClientConnect: 2
  0:00 ClientUserinfoChanged: 2 n\^3Your^7_^2Mother\t\0\model\assassin\hmodel\assassin\g_redteam\\g_blueteam\\c1\2\c2\2\hc\100\w\0\l\0\tt\0\tl\0
  0:00 ClientUserinfoChanged: 2 n\^3Your^7_^2Mother\t\0\model\assassin\hmodel\assassin\g_redteam\Pagans\g_blueteam\Scumm\c1\2\c2\2\hc\100\w\0\l\0\tt\0\tl\0
  0:00 ClientUserinfoChanged: 2 n\^3Your^7_^2Mother\t\0\model\assassin\hmodel\assassin\g_redteam\Pagans\g_blueteam\Scumm\c1\2\c2\2\hc\100\w\0\l\0\tt\0\tl\0
  0:00 ClientBegin: 2
  0:00 ClientBegin: 0
  0:01 ClientBegin: 1
  0:19 Kill: 1 0 6: ^4Joe killed ^2CH3470R by MOD_ROCKET
  0:20 Kill: 2 1 8: ^3Your^7_^2Mother killed ^4Joe by MOD_PLASMA
  0:22 ShutdownGame:
  0:22 ------------------------------------------------------------

Basically the lms warmup kills g_warmup which is set in the skirmish menu of the missionpack, there are two ways to fix this: remove the lms warmup or set g_warmup to 0 in the skirmish menu for lms (the easy way out, not sure how attached people are to the warmup period).


Title: Re: New mod: Elimination (Beta13)
Post by: PureLoneWolf on December 01, 2007, 07:01:50 AM
Hopefully my last question....

Still hoping someone can define to me what g_rockets does...but is there a way to disable falling damage too?

Cheers - Should stop bugging you all now...Servers are running sweet, just trying to clear some things up in my mind..

Ta


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on December 01, 2007, 08:23:43 AM
Another bug in gt_lms, it is being initialized as a team game.

Hmm... I can't see why my code didn't work:
Code:
	// make sure we have flags for CTF, etc
if( g_gametype.integer >= GT_TEAM && (g_ffa_gt!=1)) {
G_CheckTeamItems();
}
g_ffa_gt is set to 1 too late.

I have not thought about the original warmup but I should get some time too look at the code again in the beginning of January.

Still hoping someone can define to me what g_rockets does...but is there a way to disable falling damage too?

The only effect I can see from g_rockets is plenty of rockets and only rockets.

If self damage is off falling damage should be off too. Where are you experiencing falling damage?


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on December 01, 2007, 08:50:36 AM
Hmm... I can't see why my code didn't work:
Code:
	// make sure we have flags for CTF, etc
if( g_gametype.integer >= GT_TEAM && (g_ffa_gt!=1)) {
G_CheckTeamItems();
}
g_ffa_gt is set to 1 too late.

I haven't looked into it too deeply and the suggested fix is only partial as it only works when gt_single_player is set to 1, otherwise gt_lms will initialize as a team game.

Quote
I have not thought about the original warmup but I should get some time too look at the code again in the beginning of January.

removing g_warmup makes lms single player inconsistent with the rest of the single player game modes, though.  It plays fine, its just not consistent.

Quote
The only effect I can see from g_rockets is plenty of rockets and only rockets.

Exactly like Nexuiz's rocket arena :D


Title: Re: New mod: Elimination (Beta13)
Post by: sago007 on December 01, 2007, 09:09:59 AM
I haven't looked into it too deeply and the suggested fix is only partial as it only works when gt_single_player is set to 1, otherwise gt_lms will initialize as a team game.

g_ffa_gt is a variable introduced by me. I am testing against it in all the /code/game/*
There is cgs.ffa_gt in the code/cgame/* for the same reason

I set it to 1 if gametype is G_LMS. The idea was that if I ever want to add another FFA game it could be done fast in the game and cgame code.


Title: Re: New mod: Elimination (Beta13)
Post by: dmn_clown on December 01, 2007, 12:52:32 PM
I understand that.  Start a listen server in g_gametype ten, drop down the console and scroll up to Game Initialization:

Quote
------- Game Initialization -------
gamename: baseoa
gamedate: Dec  1 2007
Gametype changed, clearing session data.
2 teams with 4 entities
12 items registered
-----------------------------------

It should be 0 teams. 

If I can make a suggestion, it might be easier to move gt_lms to the highest game type, keep all new team gametypes lower in value and all new ffa games higher in value.  if ( game >= gt_team && game < gt_lms ) is easier to follow (especially in the ui's).

I'll look into it deeper later when I'm not so frustrated over the mess that is missionpack single player.  (I replaced id's hard coded mess with my own hard coded mess... but ffa, team deathmatch, and lms work in single player mode :) )


Title: Re: New mod: Elimination (Beta14)
Post by: sago007 on March 06, 2008, 01:26:13 PM
Well after some time with other things I found the code back this week and started making some changes.

I think I have made more changes but I must have left some of them on another computer, I will look after the missing code during easter.

New in Beta 14:
Match warmup in all the new gametypes
Weapons enabled during warmup and while waiting for players


Title: Re: New mod: Elimination (Beta14)
Post by: escapedturkey on March 10, 2008, 05:41:36 AM
Would you ever consider making an admin mod with unlagged code?

Documentation:

http://alternatefire.planetquake.gamespy.com/unlagged_faq.html

Unlagged Source Code:

http://turkey.escapedturkey.net/unlagged/unlagged-2.01-src.zip

:)


Title: Re: New mod: Elimination (Beta15)
Post by: sago007 on March 20, 2008, 11:17:36 AM
Just before I start on something else...

Beta 15:
Added "Auto join" to the classic join game menu. This automatically joins the weakest team (following the auto balance rule). (This was suggested by kick52)
Sending people to there death with knockback damage now counts as a kill.
Bots accepts orders in Double Domination again.


Title: Re: New mod: Elimination (Beta16)
Post by: sago007 on March 22, 2008, 05:15:23 AM
Beta 16 is out.

Changes
Merged Niel Toronto's Unlagged code into elimination (except for lag simulation and debug information)
UI enchancements to the game server screen (such as default capturelimit in Elimination to 8)
openAL can be enabled and disabled from the menu
cg_alwaysWeaponBar allows people to turn the weapon bar permanently on


Title: Re: New mod: Elimination (Beta16)
Post by: pulchr on March 22, 2008, 12:00:01 PM
simply awesome


Title: Re: New mod: Elimination (Beta16)
Post by: escapedturkey on March 22, 2008, 03:20:40 PM
Wow, nice features. Are you eventually going to add admin mod style features, as previously mentioned in another thread, to make this the first OA GPL admin mod?

Or can all this -- including unlagged, and additional admin features -- be added to .8 release?

:)


Title: Re: New mod: Elimination (Beta17)
Post by: sago007 on April 01, 2008, 11:12:58 AM
Beta 17 is up.

There are no new features this time, just bug fixes and some GUI enhancements.

Changelog:
You have taken/are tied for/lost the lead sounds playing in Last Man Standing
Fixed hanging bug in Last Man Standing
Last Man Standing scoring mode slecteble from the GUI
Removed GUI references to Punk Buster and CD key
Added "Always show weapon bar" to the Game Options
Added "Instant gib" and "All rockets" to the Start Server screen
Removed Friendly fire option in Elimination Games as it is ignored anyway (elimination_selfdamage = 2 should be used instead, but no GUI for that yet)
Double Domination default UI value can now be controlled using CVARS.


Title: Re: New mod: Elimination (Beta17)
Post by: Ferk on April 12, 2008, 03:27:59 AM
Thank you so much, this mod is gonna rock.

Removed Friendly fire option in Elimination Games as it is ignored anyway (elimination_selfdamage = 2 should be used instead, but no GUI for that yet)

Why not use the same "selfdamage" variable for all modes? and then just replace friendly fire with it in the GUI (providing it can be given the 3 options: OFF, SELF, TEAM). It would be neat to be able to deactivate self damage in any mode, not only Elimination.

EDIT: in fact I think most elimination_ cvars look good for any gamemode (why don't use g_warmup instead of elimination_warmup and have warmup for every mode?).


Title: Re: New mod: Elimination (Beta17)
Post by: sago007 on April 12, 2008, 10:03:06 AM
EDIT: in fact I think most elimination_ cvars look good for any gamemode (why don't use g_warmup instead of elimination_warmup and have warmup for every mode?).

Well that is an idea that I might consider in the future, but the general rule is that the ordinary gametypes must play as usual by default.

About the warmup. elimination_warmup is the warmup time between rounds. g_warmup is warmup time before a match and that has always been for all gametypes. Since only elimiantion, ctf elimination and Last Man standing has rounds there are a good reason for two warmup CVARS.


Title: Re: New mod: Elimination (Beta19)
Post by: sago007 on May 05, 2008, 10:43:09 AM
Beta 19 is out. This is based on baseoa 0.7.6 with some modifications.

Changelog:
Instantgib and All rockets disabled during single player startup
Clears nextmap after single player
Beginning vote restriction
Smooth clients reverted to pre-unlagged
Collision detection reverted to 0.7.0
Logging fixed
Fixed com_sprintf overflows in the server list

I don't know if the reversion of the collision detections system solves the 0.2 seconds stuck bug as I cannot test it.

Smooth clients is hard to test too...

So download and see if the most annoying bugs has been solved.


Title: Re: New mod: Elimination (Beta20)
Post by: sago007 on May 08, 2008, 02:26:44 PM
Beta 20 is out

Changelog:
Some of beast's changes to server list (longer names)
More player spots in Gui
Unknown bots are automatically replaced
more maps visible in menu (both per page and total)
Some cleanup to collision detection
Placeholder icons for Double Domination points


Title: Re: New mod: Elimination (Beta21)/OA 0.7.7+
Post by: sago007 on June 06, 2008, 12:55:58 PM
Beta 21 is out

Changelog:
Based on 0.7.7
Most changes from B20 is not included!
Uses optimized collision detection again (like 0.7.7 but unlike B19 and B20)
Missionpack weapons useable in baseoa
One Flag Capture, Harvester and Obelisk avaieble in baseoa (although some gui elements are missing not to mention all models)
Bots should be slightly more inteligent in standard domination
The new gametypes now accepts elimination, ctfelimination, lms, dd and dom to be used in "gametype" parameter in map entities. However this breaks many 0.7.7 maps.
New way of showing domination point status in Double Domination (See screenshot)

Note:
The mine layer looks very simple and the nailgun non-existing. The Chaingun looks fine. All icons is missing. You might have slightly better luck with the SVN version.
Double Domination and CTF Elimination does no longer work in most 0.7.7 maps because the flags are not marked to appear in ctfelimination and dd.

(http://brie.ostenfeld.dk/~poul19/public_files/b21dd.jpg)
Notice the A, B and timer just over the team scores.


Title: Re: New mod: Elimination (Beta21)/OA 0.7.7+
Post by: cosmo on June 08, 2008, 08:04:30 AM
Quote
Double Domination and CTF Elimination does no longer work in most 0.7.7 maps because the flags are not marked to appear in ctfelimination and dd.

To clarify this: You just disabled flags in double domination? So where do domination points spawn then? A new entity? Did you get my PM?


Title: Re: New mod: Elimination (Beta21)/OA 0.7.7+
Post by: sago007 on June 08, 2008, 09:15:41 AM
To clarify this: You just disabled flags in double domination? So where do domination points spawn then? A new entity? Did you get my PM?

I got your pm. There is no new entity instead the game now recognizes the 'gametype' flag, so you can pick what gametypes uses the entities.

This is a correct flag entity that will only be used in ctf, one flag ctf, ctf elimination and Double Domination:
(http://brie.ostenfeld.dk/~poul19/public_files/ctf_flag_gametype.jpg)

Current 0.7.7 maps lacks the 'ctfelimination' and 'dd' flags as they where not implemented.

If 'gametype' is missing the entity will be used in all games even Deathmatch.

'gametype' does not for location entities.


Title: Re: New mod: Elimination (Beta21)/OA 0.7.7+
Post by: cosmo on June 08, 2008, 11:21:24 AM
Excellent. This is a good idea for solving the problem. The maps I get my hands on will support this fopr next version.

Btw: Why not having this for location entities?