Pages: 1 2 [3] 4 5
  Print  
Author Topic: New mod: Elimination (Beta21)/OA 0.7.7+  (Read 183412 times)
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #50 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. Wink
Logged

fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #51 on: August 11, 2007, 09:41:56 PM »

ok it's in the development section
Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #52 on: August 12, 2007, 05:03:56 PM »

The missionpack menu now calls the correct gametypes.
Logged

dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #53 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 Smiley

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

sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #54 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
« Last Edit: August 14, 2007, 09:25:43 AM by sago007 » Logged

There are nothing offending in my posts.
sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #55 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.
Logged

There are nothing offending in my posts.
fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #56 on: August 14, 2007, 01:25:25 PM »

elimination_granade "200"

grenade
Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #57 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)
Logged

fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #58 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
« Last Edit: August 15, 2007, 09:08:54 PM by leilol » Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #59 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
}
}
Logged

fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #60 on: August 15, 2007, 09:27:21 PM »

almost done, just got a nasty poly on B to sort out
Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
fromhell
Administrator
GET A LIFE!
**********

Cakes 35
Posts: 14520



WWW
« Reply #61 on: August 15, 2007, 09:33:51 PM »

OK !!
Logged

asking when OA3 will be done won't get OA3 done.
Progress of OA3 currently occurs behind closed doors alone

I do not provide technical support either.

new code development on github
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #62 on: August 15, 2007, 10:13:16 PM »

Updated the bg_misc.c with the domination points

they are in models/dpoints/
Logged

Kojiro_S
Lesser Nub


Cakes 2
Posts: 143


Har har har...


WWW
« Reply #63 on: August 16, 2007, 12:04:21 AM »

Looking quite good, I have to say Cheesy
Logged


*ROOOAAAR*
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #64 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 :$
« Last Edit: August 16, 2007, 02:04:39 AM by dmn_clown » Logged

sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #65 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
Logged

There are nothing offending in my posts.
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #66 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 Smiley
Logged

sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #67 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
Logged

There are nothing offending in my posts.
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #68 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.
Logged

next_ghost
Half-Nub


Cakes 0
Posts: 76


« Reply #69 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!
« Last Edit: August 21, 2007, 03:18:43 PM by next_ghost » Logged
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #70 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.

Smiley
Logged

next_ghost
Half-Nub


Cakes 0
Posts: 76


« Reply #71 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.
Logged
sago007
Posts a lot
*

Cakes 62
Posts: 1664


Open Arena Developer


WWW
« Reply #72 on: August 21, 2007, 06:04:26 PM »

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

Smiley
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.
Logged

There are nothing offending in my posts.
dmn_clown
Posts a lot
*

Cakes 1
Posts: 1324


« Reply #73 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.
Logged

next_ghost
Half-Nub


Cakes 0
Posts: 76


« Reply #74 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.
Logged
Pages: 1 2 [3] 4 5
  Print  
 
Jump to: