Blockland Forums > Modification Help
Zombies are People, Too [v3]
Celtic Wolf:
--- Quote from: The Titanium on March 21, 2011, 03:56:38 PM ---wow, i thought you were done with this
excuse me while i go celebrate
--- End quote ---
/agree
Wayne:
Got some.
1.) A new zombie called "Self Deleter" that has a bomb in its hand and explodes when touched.
2.) A game type called "Horde" where all the zombies are faster and much stronger.
3.) A item called "Adrenaline" where you run faster. (Yes I got this from Bushido!)
4.) A new zombie called "Maniac" that takes your gun and is super fast.
That'd be it.
Legodude77:
How about zombies in hazmat suits that are resistant to fire.
And the Self Deleter should explode when killed and when it gets in rang of a player.
Iban:
Just wanted to say that I redid the entire AI system.
Previously, the function AIPlayer::zombieDetectRoute would return a string, like "crouch" or "jump" or "crouchjump" - this would be cased in a switch$ and acted upon appropriately.
With my new-founded wisdom, granted by Supreme Glorious Scripter Space Guy, I've changed the system to a bitwise comparison system.
For instance:
--- Code: ---else if((!%hHit && %stuck) || (%zDist <= -1 && !%fHit))
{
// If no float hit and we can see them...
if(!%fHit && %canSee)
{
%result = "jump";
}
else
{
%result = "crouchjump";
}
}
--- End code ---
is this
--- Code: ---// If we're below them...
if(%zDist < -1)
{
// If we can climb, are below them, have no float hit, and have something infront of us = climb.
if(%armor.zombieClimb && %zDist < -3 && %hHit)
return $ZAPT::PF::Climb;
// If no float hit and we can see them or we're directly below them = jump.
if(%canSee || (%dist + %zDist < 1))
return $ZAPT::PF::Jump;
}
// If we have no head hit and we have a leg hit = crouchjump.
if(!%hHit && %lHit)
return ($ZAPT::PF::Jump | $ZAPT::PF::Crouch);
--- End code ---
There's also been a reorganizing of logic which should help with speed, along with the removal of strings (which are pretty clumsy).
Frostbyte:
Wandering witches?