diff --git a/src/p_enemy.c b/src/p_enemy.c
index 203e04af12e58ade1431aa872b5eb5785f752e87..38df59855cb57fae309ce9181700e8ce82f6ac26 100644
--- a/src/p_enemy.c
+++ b/src/p_enemy.c
@@ -743,7 +743,7 @@ boolean P_LookForPlayers(mobj_t *actor, boolean allaround, boolean tracer, fixed
 		if (player->mo->health <= 0)
 			continue; // dead
 
-		if (player->bot)
+		if (player->bot && player->bot != 3)
 			continue; // ignore bots
 
 		if (player->quittime)
@@ -1834,7 +1834,7 @@ void A_SnailerThink(mobj_t *actor)
 			fixed_t dist;
 			fixed_t dx, dy;
 
-			dist = R_PointToDist2(0, 0, actor->x - actor->target->x, actor->y - actor->target->y);
+			dist = P_AproxDistance(actor->x - actor->target->x, actor->y - actor->target->y);
 
 			if (an > ANGLE_45 && an <= ANGLE_90) // fire at 45 degrees to the left
 			{
@@ -3924,10 +3924,6 @@ void A_BossDeath(mobj_t *mo)
 	}
 	else
 	{
-		// Initialize my junk
-		junk.tags.tags = NULL;
-		junk.tags.count = 0;
-
 		// Bring the egg trap up to the surface
 		// Incredibly shitty code ahead
 		Tag_FSet(&junk.tags, LE_CAPSULE0);
@@ -4057,10 +4053,6 @@ bossjustdie:
 		}
 		case MT_KOOPA:
 		{
-			// Initialize my junk
-			junk.tags.tags = NULL;
-			junk.tags.count = 0;
-
 			Tag_FSet(&junk.tags, LE_KOOPA);
 			EV_DoCeiling(&junk, raiseToHighest);
 			return;