Can someone explain this Godmode?

PricePrice Join Date: 2003-09-27 Member: 21247Members
edited May 2013 in NS2 General Discussion
Hey, i was modding a bit and i could not belive what happend.
I did not die.
To tell you the story before this, maybe you notice the following bug.
People are disconnected or lag, you can attack them and they don't get any damage.

Today i was modding like i said and speed the game up by the command "speed NUMBER"
You are in "Godmode" at speed 5, godmode is the wrong name, but i don't know how to call, you just take no damage.
I walk through a death trigger and guess what, nothing happend, i was like "whaaat the fook".
Can someone explain me, why i don't get hurt if i walk through that death trigger with higher server speed?
My guess is, the server just don't check many times if speed is high, but i could be wrong, maybe someone who knows, could explain it simple.

This is what the death trigger is looking:
image
Even if i made this bigger, it work, yes i tested it ;-)

Video:


there is no game code changed, except for egg spawn of hive, it spawn babblers.

Comments

  • ChizzlerChizzler Join Date: 2013-01-04 Member: 177532Members
    edited May 2013
    My guess is that your moving so fast the server hasn't registered your position when inside that death zone (look at the way you're teleporting whilst moving). Try making the death zone considerably larger and see the results.
  • CamronCamron Join Date: 2011-01-06 Member: 76356Members
    It's called "tunneling". It's when a physics engine uses discrete checking instead of continuous. Collision checks are done on "snapshots". The player's velocity vector placed them past the trigger in the next snapshot.
  • ezekelezekel Join Date: 2012-11-29 Member: 173589Members, NS2 Map Tester
    matso said:
    Players actually teleport between their locations every frame - they are not actually present in between their locations.

    At normal speed, a 6m/s, 30 input rate marine moves 0.2m/input. Increasing speed to 5 would move the marine 1m/input, so with such a narrow deathtrigger, it would be easy to miss it.
    Like a snapshot comparison of 60hz to 120hz? the 120hz you'll see the image more times between each location, but 60 you'll only see it so many times?

    I was never really there anyway.. or was I
  • DeadonstickDeadonstick Join Date: 2013-04-17 Member: 184877Members
    matso said:
    Players actually teleport between their locations every frame - they are not actually present in between their locations.

    At normal speed, a 6m/s, 30 input rate marine moves 0.2m/input. Increasing speed to 5 would move the marine 1m/input, so with such a narrow deathtrigger, it would be easy to miss it.
    Dude, you're telling me that NS2 is a quantum-physical game? Working on discrete quanta like electrons rather than continuitity? Wow.. my mind is blown. I, Deadonstick, play with quantumphysics whenever I play NS2.
  • Chris0132Chris0132 Join Date: 2009-07-25 Member: 68262Members
    Well, computers are binary, digital, not analog, so everything they do is discrete, not continuous.
  • ScardyBobScardyBob ScardyBob Join Date: 2009-11-25 Member: 69528Forum Admins, Forum Moderators, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Shadow
    Dude, you're telling me that NS2 is a quantum-physical game? Working on discrete quanta like electrons rather than continuitity? Wow.. my mind is blown. I, Deadonstick, play with quantumphysics whenever I play NS2.
    The skulk is half-alive/half-dead until you open the box
    - Schrodinger's Skulk
  • ChizzlerChizzler Join Date: 2013-01-04 Member: 177532Members
    ScardyBob said:
    The skulk is half-alive/half-dead until you open the box
    - Schrodinger's Skulk
    No, the skulk is both alive and dead simultaneously until the box is opened
  • CrushaKCrushaK Join Date: 2012-11-05 Member: 167195Members, NS2 Playtester
    The Skulk is dead, alive, an egg, a Gorge, a Lerk, a Fade, an Onos and a khammander at the same time until you open the box.
  • SkieSkie Skulk Progenitor Join Date: 2003-10-18 Member: 21766Members, NS2 Playtester, Reinforced - Shadow
    Even back in Quake2 you could go through instakill lasers with strafejumping and skip segmets of the single player campaign that way.
  • CamronCamron Join Date: 2011-01-06 Member: 76356Members
    Chris0132 said:
    Well, computers are binary, digital, not analog, so everything they do is discrete, not continuous.
    There are physics engines with continuous collision detection though (I wrote one). It's just very expensive and not needed in most scenarios.
  • matsomatso Master of Patches Join Date: 2002-11-05 Member: 7000Members, Forum Moderators, NS2 Developer, Constellation, NS2 Playtester, Squad Five Blue, Squad Five Silver, Squad Five Gold, Reinforced - Shadow, NS2 Community Developer
    The collision detection is semi-continuous (you throw a collision body from your current position towards where you want to go, then once you have adjusted for collisions, you teleport there) - it's just that the death trigger isn't a collision object, it's a volume. You could implement death triggers as collision objects to avoid that, but it's a lot of extra work compared to just requiring death triggers to be fat enough to contain the teleporters.

    Note that players only move max (30,fps) times per second, so another way of getting around death triggers is to slow down your fps to like 2 fps or so.... then you will jump 3m per move as a marine.
  • MendaspMendasp I touch maps in inappropriate places Valencia, Spain Join Date: 2002-07-05 Member: 884Members, NS1 Playtester, Contributor, Constellation, NS2 Playtester, Squad Five Gold, NS2 Map Tester, Reinforced - Shadow, WC 2013 - Shadow, Retired Community Developer
    matso said:
    Note that players only move max (30,fps) times per second
    Oh lord have mercy on our souls.
  • Chris0132Chris0132 Join Date: 2009-07-25 Member: 68262Members
    Camron said:
    There are physics engines with continuous collision detection though (I wrote one). It's just very expensive and not needed in most scenarios.
    Well, yeah you could write an engine that works in incredibly small units, or write one which can repeatedly divide its results to get more and more resolution as requested, but it's still discrete in practice, because you can't run something in realtime that can work down to the atomic level which is what you'd need for a real-life equivalent of 'continuous'.
  • ResRes Join Date: 2003-08-27 Member: 20245Members
    edited May 2013
    Chris0132 said:
    Well, yeah you could write an engine that works in incredibly small units, or write one which can repeatedly divide its results to get more and more resolution as requested, but it's still discrete in practice, because you can't run something in realtime that can work down to the atomic level which is what you'd need for a real-life equivalent of 'continuous'.
    Or down to the Planck length.
Sign In or Register to comment.