Author Topic: Possible for simultaneous Dual Rail Kills?  (Read 8654 times)

Offline quadz

  • Loquaciously Multiloquent Member
  • ****
  • Posts: 5352
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #15 on: April 09, 2008, 11:23:10 AM »
If for example you change the rail code slightly and cause an issue where there will always be an "ignore" (by playing with content masks or other reasons) then there will be an infinite loop of instant hit traces. The game will freeze as it tries to finish the infinite loop. Same thing for similar mistakes using the findradius function.

As we discovered awhile back, it turns out even with unmodified rail code, these infinite loops still occur occasionally.  If I recall correctly, r1q2 adds a "loop breaker" kludge that says, if trace has been called a huge number of times this game frame, just bail out with a longjmp() ...

My recollection is that unkillable entities with overlapping bboxes cause the problem.... 'cause trace can only ignore one entity at a time.


Rails servers always used to spike even for normal rail shots. I'm no expert on network code but I think that's due to the server processing the more resource intensive rail loop before moving on to the next message.

Aside from the rare infinite loop problem, a typical rail shot should generally cause about an order of magnitude less work for the server than a shotgun or SSG shot.  Right?


Regards,

quadz


  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus
"He knew all the tricks, dramatic irony, metaphor, bathos, puns, parody, litotes and... satire. He was vicious."

Offline R1CH

  • Sr. Member
  • ****
  • Posts: 341
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #16 on: April 09, 2008, 03:39:31 PM »
Since a client is an entity and the big loop is taking them in turn according to their spawn sequence, the first client connected will be the first one considered for his targeting information. Thus, the first-connected client will be the preferred one when it comes to registering hits.

Actually, client index has no affect on it at all, client weapon firing is done in between game frames in ClientThink. So it depends which packet arrives first as to who fires first. Players actually die in between game frames, but of course they don't notice until a game frame ticks by and new packets are sent. The only instance client index would affect is if the client sends no packets (<= 10 fps) between game frames, in which case the game runs the weapon code for them one at a time.
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline QwazyWabbit

  • Carpal Tunnel Member
  • ******
  • Posts: 1373
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #17 on: April 09, 2008, 05:31:40 PM »
Since a client is an entity and the big loop is taking them in turn according to their spawn sequence, the first client connected will be the first one considered for his targeting information. Thus, the first-connected client will be the preferred one when it comes to registering hits.

Actually, client index has no affect on it at all, client weapon firing is done in between game frames in ClientThink. So it depends which packet arrives first as to who fires first. Players actually die in between game frames, but of course they don't notice until a game frame ticks by and new packets are sent. The only instance client index would affect is if the client sends no packets (<= 10 fps) between game frames, in which case the game runs the weapon code for them one at a time.


Yes. I see that now. I tried the shot in the debugger and got a similar stack trace to the one quadz posted. The entity is modified between world ticks so his entity state is dead before his attack command arrives. Damn LPB's anyway. :)
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline Jay Dolan

  • Swanky Member
  • *****
  • Posts: 644
    • View Profile
    • Quetoo.org
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #18 on: April 09, 2008, 07:55:07 PM »
As we discovered awhile back, it turns out even with unmodified rail code, these infinite loops still occur occasionally.  If I recall correctly, r1q2 adds a "loop breaker" kludge that says, if trace has been called a huge number of times this game frame, just bail out with a longjmp() ...

My recollection is that unkillable entities with overlapping bboxes cause the problem.... 'cause trace can only ignore one entity at a time.

That is correct (the cause of the infinite loop).  A jump doesn't seem like the easiest way to break from it, tho.  Are you sure it's not just a break/return/goto?

Aside from the rare infinite loop problem, a typical rail shot should generally cause about an order of magnitude less work for the server than a shotgun or SSG shot.  Right?

Correct again.  Super shotgun blasts are extremely expensive (wrt CPU time), especially when they cross into or out of water.  They're also not shy on bandwidth, either.
« Last Edit: April 10, 2008, 10:17:09 AM by Jay Dolan »
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline quadz

  • Loquaciously Multiloquent Member
  • ****
  • Posts: 5352
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #19 on: April 09, 2008, 08:23:25 PM »
A jump doesn't seem like the easiest way to break from it, tho.  Are you sure it's not just a break/return/goto?

Ah, yeah, it's not a longjmp.  I recalled it doing something "drastic", but I guess it was just the overwriting of the caller's 'start' coordinate:

        //r1: server-side hax for bad looping traces
        if (++sv_tracecount >= sv_max_traces_per_frame->intvalue)
        {
                Com_Printf ("GAME ERROR: Bad SV_Trace: %lu calls in a single frame, aborting!\n", LOG_SERVER|LOG_GAMEDEBUG|LOG_ERROR, sv_tracecount);
                if (sv_gamedebug->intvalue >= 2)
                        Q_DEBUGBREAKPOINT;

                clip.trace.fraction = 1.0;
                clip.trace.ent = ge->edicts;
                VectorCopy (end, clip.trace.endpos);
                //this is really nasty, attempts to overwite source in Game DLL. may result in flying players and ents if it uses an origin
                //directly!! we may even crash here if we are given a write protected start.
                VectorCopy (end, start);
                sv_tracecount = 0;
                return clip.trace;
        }



Regards,

quadz

« Last Edit: April 09, 2008, 08:42:44 PM by quadz »
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus
"He knew all the tricks, dramatic irony, metaphor, bathos, puns, parody, litotes and... satire. He was vicious."

Offline AustinPowers

  • Newbie
  • *
  • Posts: 15
  • Superuser do
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #20 on: April 10, 2008, 05:54:49 AM »
Groovy baby. 
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline UUD-40

  • Carpal Tunnel Member
  • ******
  • Posts: 1220
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #21 on: May 17, 2008, 09:28:27 PM »
I've seen tie scores of 40 frags in the railz server. Maybe theres a slight delay from when the fraglimit is hit to the game actually ending...
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline |iR|Focalor

  • Irrepressibly Profuse Member
  • *
  • Posts: 15767
  • Help Destroy America: VOTE DEMOCRAT
    • View Profile
    • Focalor's Horrible Website: We Rape You Til The Room Stinks
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #22 on: May 17, 2008, 10:00:17 PM »
LOL!!! NO WAY!!! That would suck!

"I WON!!!..... no I didn't.... FUCK!!!"
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline UUD-40

  • Carpal Tunnel Member
  • ******
  • Posts: 1220
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #23 on: May 18, 2008, 12:24:30 AM »
Earlier tonight:

[21:22] <uvula> (railz) -------------name---fph---minutes---frags---
[21:22] <uvula> (railz)            Geezer   393      1.37       9
[21:23] <uvula> (railz)      tumblin~dice   305      7.86      40
[21:23] <uvula> (railz)     :iR:GOATKILLA   304      7.89      40
[21:23] <uvula> (railz)      Q2 BULL[DOG]   297      7.88      39
[21:23] <uvula> (railz)     Arnold Ziffle   145      7.85      19

[21:23] <uvula> (railz) :iR:GOATKILLA: lolo what
[21:23] <uvula> (railz) :iR:GOATKILLA: never seen a tie before
[21:23] <uvula> (railz) :iR:GOATKILLA: a tie win lol
[21:23] <uvula> (railz) tumblin~dice: Mom and son tied
[21:23] <uvula> (railz) :iR:GOATKILLA: noble tie ;)
[21:23] <uvula> (railz) :iR:GOATKILLA: geezee u ever seen that befaore
[21:23] <uvula> (railz) :iR:GOATKILLA: before
[21:23] <uvula> (railz) tumblin~dice: once
[21:23] <uvula> (railz) Geezer: i seen tie happen twice is all

...


 :purpleshock:
« Last Edit: May 18, 2008, 12:26:22 AM by UUD-40 »
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline console

  • Brobdingnagian Member
  • ***
  • Posts: 4518
  • "Man, this is the way to travel," said my attorney
    • View Profile
    • tastyspleen.net
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #24 on: May 18, 2008, 02:38:36 AM »
I've seen tie scores of 40 frags in the railz server.

Just to clarify, ties do indeed happen - but that's a different scenario from "simultaneous mutual" rail kills.


Regards,

:beer:
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline UUD-40

  • Carpal Tunnel Member
  • ******
  • Posts: 1220
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #25 on: May 18, 2008, 07:21:56 PM »
no! thats just a cover up!  :busted:   :evilgrin:
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

Offline X'tyfe

  • Phenomenally Prodigious Member
  • **
  • Posts: 3587
  • Yep
    • View Profile
  • Rated:
Re: Possible for simultaneous Dual Rail Kills?
« Reply #26 on: May 18, 2008, 08:02:47 PM »
damn man, i would love to see this sort of thing caught on demo
  • Insightful
    Informative
    Funny
    Nice Job / Good Work
    Rock On
    Flawless Logic
    Well-Reasoned Argument and/or Conclusion
    Demonstrates Exceptional Knowlege of the Game
    Appears Not to Comprehend Game Fundamentals
    Frag of the Week
    Frag Hall of Fame
    Jump of the Week
    Jump Hall of Fame
    Best Solution
    Wins The Internet
    Whoosh! You done missed the joke thar Cletus!
    Obvious Troll Is Obvious
    DO YOU EVEN LIFT?
    DEMO OR STFU
    Offtopic
    Flamebait
    Redundant
    Factually Challenged
    Preposterously Irrational Arguments
    Blindingly Obvious Logical Fallacies
    Absurd Misconstrual of Scientific Principles or Evidence
    Amazing Conspiracy Theory Bro
    Racist Ignoramus

 

El Box de Shoutamente

Last 10 Shouts:

Costigan_Q2

November 11, 2024, 06:41:06 AM
"Stay cozy folks.

Everything is gonna be fine."

There'll be no excuses for having TDS after January 20th, there'll be no excuses AT ALL!!!
 

|iR|Focalor

November 06, 2024, 03:28:50 AM
 

RailWolf

November 05, 2024, 03:13:44 PM
Nice :)

Tom Servo

November 04, 2024, 05:05:24 PM
The Joe Rogan Experience episode 223 that dropped a couple hours ago with Musk, they're talking about Quake lol.

Costigan_Q2

November 04, 2024, 03:37:55 PM
Stay cozy folks.

Everything is gonna be fine.
 

|iR|Focalor

October 31, 2024, 08:56:37 PM

Costigan_Q2

October 17, 2024, 06:31:53 PM
Not activated your account yet?

Activate it now! join in the fun!

Tom Servo

October 11, 2024, 03:35:36 PM
HAHAHAHAHAHA
 

|iR|Focalor

October 10, 2024, 12:19:41 PM
I don't worship the devil. Jesus is Lord, friend. He died for your sins. He will forgive you if you just ask.
 

rikwad

October 09, 2024, 07:57:21 PM
Sorry, I couldn't resist my inner asshole.

Show 50 latest
Welcome, Guest. Please login or register.
November 22, 2024, 11:10:21 PM

Login with username, password and session length