They're spawning now, but they seem to be deleted immidiately.
%player = new AIPlayer()
{
dataBlock = ZombieHoleBot;
path = "";
spawnBrick = %col;
position = %col.getPosition();
//Apply attributes to Bot
Name = ZombieHoleBot.hName;
hType = ZombieHoleBot.hType;
hSearchRadius = ZombieHoleBot.hSearchRadius;
hSearch = ZombieHoleBot.hSearch;
hSight = ZombieHoleBot.hSight;
hWander = ZombieHoleBot.hWander;
hGridWander = ZombieHoleBot.hGridWander;
hReturnToSpawn = ZombieHoleBot.hReturnToSpawn;
hSpawnDist = ZombieHoleBot.hSpawnDist;
hMelee = ZombieHoleBot.hMelee;
hAttackDamage = ZombieHoleBot.hAttackDamage;
hSpazJump = ZombieHoleBot.hSpazJump;
hSearchFOV = ZombieHoleBot.hSearchFOV;
hFOVRadius = ZombieHoleBot.hFOVRadius;
hTooCloseRange = ZombieHoleBot.hTooCloseRange;
hAvoidCloseRange = ZombieHoleBot.hAvoidCloseRange;
hShoot = ZombieHoleBot.hShoot;
hMaxShootRange = ZombieHoleBot.hMaxShootRange;
hStrafe = ZombieHoleBot.hStrafe;
hAlertOtherBots = ZombieHoleBot.hAlertOtherBots;
hIdleAnimation = ZombieHoleBot.hIdleAnimation;
hSpasticLook = ZombieHoleBot.hSpasticLook;
hAvoidObstacles = ZombieHoleBot.hAvoidObstacles;
hIdleLookAtOthers = ZombieHoleBot.hIdleLookAtOthers;
hIdleSpam = ZombieHoleBot.hIdleSpam;
hAFKOmeter = ZombieHoleBot.hAFKOmeter + getRandom( 0, 2 );
hHearing = ZombieHoleBot.hHearing;
hIdle = ZombieHoleBot.hIdle;
hSmoothWander = ZombieHoleBot.hSmoothWander;
hEmote = ZombieHoleBot.hEmote;
hSuperStacker = ZombieHoleBot.hSuperStacker;
hNeutralAttackChance = ZombieHoleBot.hNeutralAttackChance;
hFOVRange = ZombieHoleBot.hFOVRange;
hMoveSlowdown = ZombieHoleBot.hMoveSlowdown;
hMaxMoveSpeed = 1.0;
hActivateDirection = ZombieHoleBot.hActivateDirection;
isHoleBot = 1;
};
echo(%player);
EDIT: I think it's because I'm deleting the block it spawns from right after the bot spawns?
EDIT 2: Yep, line 479 of holes.cs
//if we somehow got here and you or your spawnbrick doesn't exist anymore, then poof
if( !isObject(%obj.spawnBrick) ) // isObject(%obj) &&
{
%obj.delete();
return;
}
ugh.