Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Hand X

How the fuck do I evade zombie's hitscans?

Recommended Posts

I think the title is self-explanable... I believe there is a way to evade most of them, but still I'm looking for a "standard of shooting" of the zombies. Without that, I think it's impossible to make all levels on nightmare if you don't have some luck. I'm trying to find it on vanilla's executables, maybe the source-ports are same but I prefer to search on vanilla's.

If anyone know, let's start with a: How do the "zombie's way of shooting" work?

Share this post


Link to post

There is no way to evade it. It traces a line, and if there is something living on it, it hurts the target, if not, it hits the wall. The only chance to evade it, is pray for the hitscan line be projected away from you.

Try the wad SuperSkulltag for Skulltag. Zombies uses projectiles instead hitscans in that mod.

Share this post


Link to post

The way to evade hitscans is to dodge behind a wall or other solid structure, to block the direct line of sight from the monster to you. The Archvile's fire attack works essentially the same way, just with a few seconds of warning beforehand.

Share this post


Link to post

"It traces a line, and if there is something living on it, it hurts the target, if not, it hits the wall."

Good start, but I want more details.

Let me show what I got until now: I'm circle strafing a zombie, it shots and hurts me on 70-80% of the times, if I stand it hurt me a lot more, but still there's a random about this line. But what happen if I circle-strafe and a little before it shoots, I get a reverse direction? I evade most of them, but I don't know exactly WHEN I must do it. I want the sprite frame or a standard which I evade the most. The vanilla's Doom programmers (not ID or Johns, I mean the ones which work with the linux Doom code to do their source-ports) might know more about this. I could do it myself but I don't know the sufficient about programming.

Share this post


Link to post

They either hit you or don't hit you; it's instantaneous. In the case of former sergeants, each tracer is still calculated instantly, so there is no difference there. The lines traced from the monster are always straight, but don't always intersect the player. There is a bit of randomness in the angle to allow the zombie to miss occasionally.

Moving around will not help you, and saying otherwise is about as nonsensical as the idea of a swingshot. The only thing that might help you is positioning yourself so you are horizontal or vertical to the monster, so the exposed "surface area" of your bounding box is at a minimum.

However, there is a way to evade hitscan attacks. It's called partial invisibility. :p

Share this post


Link to post

Partial invisibility is only useful against hitscanners IMO :P
Maybe the arachnotron too.

Share this post


Link to post

As already been said, directly blocking the line of sight between the monster and yourself with a wall or a shootable object is the only guaranteed way to not take damage from a zombie man's guns. Staying a longer distance away from the monster is also a preventative measure of avoiding taking damage as well. Theoretically it is impossible to be 100% certain of not taking damage from a hitscan attack when there is nothing in the way to interfere, no matter how fast or which direction you are moving. In short, you can't "fake out" zombies. Their aim is always directly on you, but their weapons are much more innacurate than yours.

Share this post


Link to post
EarthQuake said:

They either hit you or don't hit you; it's instantaneous.

There's a trick, though. Hitscan monsters have a reaction time, so if you shoot before you even see them, they won't have a chance to shoot at you. Or if you pop in and out of cover before they can react.

Share this post


Link to post

Of course. But in a manner of speaking, once the bullet leaves the barrel, the impact is instantaneous. There's no matrix-style bullet dodging in Doom. Once a hitscan's path has been decided, and something is in the way, there is no avoiding it. You can't "swingstrafe" a hitscan or anything. :p

Share this post


Link to post

I been playing -fast too much lately. You just need to know where they are and carefully check around corners. Once you see one/some, duck back around the corner, line up shot, then move quick into position already aimed. Then move back behind cover and wait for gun to reload, then repeat. You can take out tons of hitscanners without getting shot.

With large groups I may stay back but in sight of them. Let them kill each other or start infighting. Then clear out the weakened monsters or whatever is left.

Mixed groups of monsters that are projectile and hitscan type I move into a position so that hitscanners are behind the other monsters. Let hitscanners hit the projectile monsters. There may be a stray hitscanner that is not behind other monsters, so I take them out quick.

Share this post


Link to post

Basically, to 'dodge' zombies' hitscans, as soon as you see their gun pointed at you, run to cover, so their incoming shots won't be able to hit you.

Blur artifacts are real life savers against hitscanners. They can make you nearly invincible to spider demons at close range.

Share this post


Link to post

That's why, IMO, zombies should be used sparingly when you can use other monsters as fodder and normal mooks. (which is not always the case in TUD, which is infamous for flooding the maps with sergeants) This is because the player cannot dodge their attacks, which is the case with other enemies too, more or less. Revenants are kind of a compromise, you have to take cover like from zombies and the Spiderdemon if you want to lose a homing missile. Archviles are kind of like zombies too, except you will know exactly when the attack will hit you and when you have to be behind cover.

Zombies can be used as "triage monsters", don't know if anyone uses that term, meaning that they're weak, high-priority monsters who can inflict unavoidable damage and must be taken down ASAP. They can also be used to force a rapid retreat, for example a monster closet containing chaingun dudes. If you want to stay unhurt, you'll want to get away FAST behind a wall, and take the chaingunners down.

Everyone knows that the worst possible situation is when there are many hitscans going on in an open area with no cover. Losing half of your HP because you can't know where a chaingunner is shooting at you is fucking bullshit.

Share this post


Link to post

There is one way to dodge hitscan attacks: just make sure there is another shootable thing between you and the hitscanner. It only needs to be between you in the 2D plane, too, as long as there is a line of sight to it. So for example, if you have this wonderful ASCII alignment:

            C

Z                            P
C is a cacodemon, Z is a zombie, P is the player. You'd say that the cacodemon is not between the player and the zombie, because it's higher; but actually it is between them in 2D and there is no obstacles (like a low ceiling above the zombie) blocking sight, so if the zombie fires, he will hit the cacodemon and trigger infighting.

An imp in the same situation as the zombie would never hit the cacodemon, but its projectile would be slow and easy to dodge.

Share this post


Link to post

Here's a video I made a while ago of me kicking ass against hit scanners using tactics that Catoptromancy described. Admittedly there are some parts that look like i definitely should have taken damage but didnt, that was purely luck.

http://www.youtube.com/watch?v=sxE-O7ApCGE

Share this post


Link to post

Reversing directions while strafing won't help much either: there's a random spread when shooting, which can go in any direction within that angle.

Once a zombie has "decided" to fire at you, it will do so by aiming at your present position (or the one you had when it "decided" to attack), plus some random amount of spread, which is quite large too.

If you keep strafing, by continuing to do so there are better chances that you'll escape the "spread cone", while standing still or reversing just bring you right back in it and, in the case of chaingunners or shotgunners, catch more pellets along the way.

Share this post


Link to post

Has there been any other FPS than Doom 1, 2 and Strife where the bullet-shooters are indifferent to your movement? Even in Wolfenstein 3d they were less accurate when you were running. And subsequent games to Doom added that shoot-behind-you shtick.

Share this post


Link to post
printz said:

Even in Wolfenstein 3d they were less accurate when you were running. And subsequent games to Doom added that shoot-behind-you shtick.


IIRC, every attack in Wolf3D hit's you and then the game randomly decides wheter it does any damage, that is affected by distance.

The SS Guard uniquely, recieved a bonus that made his attacks more likely to hit.

Share this post


Link to post

Yes and no. The T_Shoot function checks if there's line of sight, then determine a random percent chance of hitting, depending on distance and speed. Damage also depends on distance -- the maximum point blank, divided by two at medium range, and divided by four at long range. And finally, Hans Grosse has the same bonus as the SS (but Gretel and Trans do not.)

void T_Shoot (objtype *ob)
{
    int    dx,dy,dist;
    int    hitchance,damage;

    hitchance = 128;

    if (!areabyplayer[ob->areanumber])
        return;

    if (!CheckLine (ob))            // player is behind a wall
      return;

    dx = abs(ob->tilex - player->tilex);
    dy = abs(ob->tiley - player->tiley);
    dist = dx>dy ? dx:dy;

    if (ob->obclass == ssobj || ob->obclass == bossobj)
        dist = dist*2/3;                    // ss are better shots

    if (thrustspeed >= RUNSPEED)
    {
        if (ob->flags&FL_VISABLE)
            hitchance = 160-dist*16;        // player can see to dodge
        else
            hitchance = 160-dist*8;
    }
    else
    {
        if (ob->flags&FL_VISABLE)
            hitchance = 256-dist*16;        // player can see to dodge
        else
            hitchance = 256-dist*8;
    }

// see if the shot was a hit

    if (US_RndT()<hitchance)
    {
        if (dist<2)
            damage = US_RndT()>>2;
        else if (dist<4)
            damage = US_RndT()>>3;
        else
            damage = US_RndT()>>4;

        TakeDamage (damage,ob);
    }

    switch(ob->obclass)
    {
     case ssobj:
       PlaySoundLocActor(SSFIRESND,ob);
       break;
#ifndef SPEAR
     case giftobj:
     case fatobj:
       PlaySoundLocActor(MISSILEFIRESND,ob);
       break;
     case mechahitlerobj:
     case realhitlerobj:
     case bossobj:
       PlaySoundLocActor(BOSSFIRESND,ob);
       break;
     case schabbobj:
       PlaySoundLocActor(SCHABBSTHROWSND,ob);
       break;
     case fakeobj:
       PlaySoundLocActor(FLAMETHROWERSND,ob);
       break;
#endif
     default:
       PlaySoundLocActor(NAZIFIRESND,ob);
    }

}

Share this post


Link to post

if (dist<2)
    damage = US_RndT()>>2;
else if (dist<4)
    damage = US_RndT()>>3;
else
    damage = US_RndT()>>4;
Looks like damage can end up being zero for any attack if you get lucky.

Share this post


Link to post

What is truly horrible in Wolf3D is the data file handling code. Using separate files for the directory and the data. Hardcoding the number of chunks (lumps) in the exe. Wasting dozens of kilobytes per chunk on padding to align the chunks to memory pages on one side, and on the other side scrounging to reduce disk usage by using halfbaked compression schemes (Huffman here, RLE there). A complete mess.

Share this post


Link to post

    if (thrustspeed >= RUNSPEED)
    {
        if (ob->flags&FL_VISABLE)
            hitchance = 160-dist*16;        // player can see to dodge
        else
            hitchance = 160-dist*8;
    }
    else
    {
        if (ob->flags&FL_VISABLE)
            hitchance = 256-dist*16;        // player can see to dodge
        else
            hitchance = 256-dist*8;
    }

Wow. So not only you're harder to hit if you're running, you also are likely to survive longer if you look at the threat. I wish Doom kept that level of realism, considering that Wolf allows damage from very little to very severe. Now (actually since Quake 2) we have games where bullets damage you only by 2%. WTF.

Share this post


Link to post

Hey come on. Last week I saw Penn and Teller each catch a bullet in their teeth. If they can do it, so can videogame heroes.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×