Discussion:
Game code bug
Karen Pouelle
2003-09-18 01:21:34 UTC
Permalink
http://pretzel.iceware.net/demos/fire.dm2

The bug shown in the demo is still in the game code. I've not been able to
find it.

But, I have fixed the bug where a spectator can type "kill" - this sometimes
causes problems. I have some reason to believe that someone uses the bug as
an exploit to cause a server crash, but I've been unable to reproduce it (may
be a hacked client in addtion to this bug. What happends is that someone
comes on the server, gets killed, goes into spectator mode, then types "kill"
then the server crashes. This has been seen at least three times.

So this is what I did in the game code for g_cmds.c to the routine Cmd_Kill_f
is edit the first line of the routine:

if( ((level.time - ent->client->respawn_time) < 5) ||
(ent->client->resp.spectator) )
return;

Thus none of the code following that line in the routine has to deal with
making a spectator "die" and somehow causing a crash. Without this edit, if
you do this as a spectator, you'll get a fixed view angle looking at the last
person who's killed you.

Thanks for taking the time to make the game code more secure and bug-free.

Karen






______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca
Brendan Burns
2003-09-18 12:37:57 UTC
Permalink
Karen,
thanks, I'll get this into CVS...
---brendan
Post by Karen Pouelle
http://pretzel.iceware.net/demos/fire.dm2
The bug shown in the demo is still in the game code. I've not been
able to
find it.
But, I have fixed the bug where a spectator can type "kill" - this
sometimes
causes problems. I have some reason to believe that someone uses the
bug as
an exploit to cause a server crash, but I've been unable to reproduce
it (may
be a hacked client in addtion to this bug. What happends is that
someone
comes on the server, gets killed, goes into spectator mode, then types
"kill"
then the server crashes. This has been seen at least three times.
So this is what I did in the game code for g_cmds.c to the routine
Cmd_Kill_f
if( ((level.time - ent->client->respawn_time) < 5) ||
(ent->client->resp.spectator) )
return;
Thus none of the code following that line in the routine has to deal
with
making a spectator "die" and somehow causing a crash. Without this
edit, if
you do this as a spectator, you'll get a fixed view angle looking at
the last
person who's killed you.
Thanks for taking the time to make the game code more secure and
bug-free.
Karen
______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca
hmm
2012-07-28 14:03:33 UTC
Permalink
Hey guys! The eraser bot for me works great!
But I have one problem, hot do I spectate those eraser bots?
(Plz give your answer to my e-mail)

Karen Pouelle
2003-09-26 02:17:18 UTC
Permalink
More trivial fixes for the game code in g_svcmds.c:

For some reason the "sv addip" server command in the baseq2 game code doesn't
have any confirmation text. Additionally, when used without a parameter, it
displays misleading usage. The routine for "sv removeip" is correct, so I
just made "sv addip" act similar. Also, "sv listip" doesn't display any
confirmation that it has finished displaying its list. I have added that, as
well.

http://cvs.iceware.net/cgi-bin/viewcvs.cgi/karen/xquake/g_svcmds.c?sortby=date&r1=text&tr1=1.1&r2=text&tr2=1.3&diff_format=h

I'm still looking for the lift fire bug... If you don't fix it, I will
eventually.

Karen





______________________________________________________________________
Post your free ad now! http://personals.yahoo.ca
Loading...