diff values, fix wallbang, localjammer

This commit is contained in:
INeedBots 2020-10-31 13:20:40 -06:00
parent ec89f2a9ca
commit a3412572ec
3 changed files with 79 additions and 14 deletions

View File

@ -35,6 +35,10 @@ added()
self.pers["bots"]["skill"]["help_dist"] = 10000;
self.pers["bots"]["skill"]["semi_time"] = 0.05;
self.pers["bots"]["skill"]["shoot_after_time"] = 1;
self.pers["bots"]["skill"]["aim_offset_time"] = 1;
self.pers["bots"]["skill"]["aim_offset_amount"] = 1;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_head";
self.pers["bots"]["behavior"] = [];
self.pers["bots"]["behavior"]["strafe"] = 50;
@ -1785,13 +1789,13 @@ target()
targetAnkleLeft = player getTagOrigin( "j_ankle_le" );
targetAnkleRight = player getTagOrigin( "j_ankle_ri" );
canTargetPlayer = ((distanceSquared(BulletTrace(myEye, targetHead, false, self)["position"], targetHead) <= 1.0 ||
distanceSquared(BulletTrace(myEye, targetAnkleLeft, false, self)["position"], targetAnkleLeft) <= 1.0 ||
distanceSquared(BulletTrace(myEye, targetAnkleRight, false, self)["position"], targetAnkleRight) <= 1.0)
canTargetPlayer = ((distanceSquared(BulletTrace(myEye, targetHead, false, self)["position"], targetHead) < 0.05 ||
distanceSquared(BulletTrace(myEye, targetAnkleLeft, false, self)["position"], targetAnkleLeft) < 0.05 ||
distanceSquared(BulletTrace(myEye, targetAnkleRight, false, self)["position"], targetAnkleRight) < 0.05)
&& (distanceSquared(PhysicsTrace( myEye, targetHead, false, self ), targetHead) <= 1.0 ||
distanceSquared(PhysicsTrace( myEye, targetAnkleLeft, false, self ), targetAnkleLeft) <= 1.0 ||
distanceSquared(PhysicsTrace( myEye, targetAnkleRight, false, self ), targetAnkleRight) <= 1.0)
&& (distanceSquared(PhysicsTrace( myEye, targetHead, false, self ), targetHead) < 0.05 ||
distanceSquared(PhysicsTrace( myEye, targetAnkleLeft, false, self ), targetAnkleLeft) < 0.05 ||
distanceSquared(PhysicsTrace( myEye, targetAnkleRight, false, self ), targetAnkleRight) < 0.05)
&& (SmokeTrace(myEye, player.origin, level.smokeRadius) ||
daDist < level.bots_maxKnifeDistance*4)
@ -2134,7 +2138,7 @@ aim()
conedot = getConeDot(aimpos, eyePos, angles);
if (!nadeAimOffset && conedot > 0.999)
if (!nadeAimOffset && conedot > 0.999 && lengthsquared(aimoffset) < 0.05)
self thread bot_lookat(aimpos, 0.05);
else
self thread bot_lookat(aimpos, aimspeed);

View File

@ -337,6 +337,9 @@ chooseRandomPerk(perkkind, primary)
if (perk == "specialty_coldblooded")
continue;
if (perk == "specialty_localjammer")
continue;
}
if (reasonable)
@ -1020,6 +1023,13 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 0;
self.pers["bots"]["skill"]["semi_time"] = 0.9;
self.pers["bots"]["skill"]["shoot_after_time"] = 1;
self.pers["bots"]["skill"]["aim_offset_time"] = 1.5;
self.pers["bots"]["skill"]["aim_offset_amount"] = 4;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_ankle_le";
self.pers["bots"]["skill"]["bones"][2] = "j_ankle_ri";
self.pers["bots"]["behavior"]["strafe"] = 0;
self.pers["bots"]["behavior"]["nade"] = 10;
self.pers["bots"]["behavior"]["sprint"] = 10;
@ -1043,6 +1053,14 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 500;
self.pers["bots"]["skill"]["semi_time"] = 0.75;
self.pers["bots"]["skill"]["shoot_after_time"] = 0.75;
self.pers["bots"]["skill"]["aim_offset_time"] = 1;
self.pers["bots"]["skill"]["aim_offset_amount"] = 3;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_ankle_le";
self.pers["bots"]["skill"]["bones"][2] = "j_ankle_ri";
self.pers["bots"]["skill"]["bones"][3] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 10;
self.pers["bots"]["behavior"]["nade"] = 15;
self.pers["bots"]["behavior"]["sprint"] = 15;
@ -1066,6 +1084,15 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 750;
self.pers["bots"]["skill"]["semi_time"] = 0.65;
self.pers["bots"]["skill"]["shoot_after_time"] = 0.65;
self.pers["bots"]["skill"]["aim_offset_time"] = 0.75;
self.pers["bots"]["skill"]["aim_offset_amount"] = 2.5;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][2] = "j_ankle_le";
self.pers["bots"]["skill"]["bones"][3] = "j_ankle_ri";
self.pers["bots"]["skill"]["bones"][4] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 20;
self.pers["bots"]["behavior"]["nade"] = 20;
self.pers["bots"]["behavior"]["sprint"] = 20;
@ -1089,6 +1116,16 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 1000;
self.pers["bots"]["skill"]["semi_time"] = 0.5;
self.pers["bots"]["skill"]["shoot_after_time"] = 0.5;
self.pers["bots"]["skill"]["aim_offset_time"] = 0.5;
self.pers["bots"]["skill"]["aim_offset_amount"] = 2;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][2] = "j_ankle_le";
self.pers["bots"]["skill"]["bones"][3] = "j_ankle_ri";
self.pers["bots"]["skill"]["bones"][4] = "j_head";
self.pers["bots"]["skill"]["bones"][5] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 30;
self.pers["bots"]["behavior"]["nade"] = 25;
self.pers["bots"]["behavior"]["sprint"] = 30;
@ -1112,6 +1149,14 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 1500;
self.pers["bots"]["skill"]["semi_time"] = 0.4;
self.pers["bots"]["skill"]["shoot_after_time"] = 0.35;
self.pers["bots"]["skill"]["aim_offset_time"] = 0.35;
self.pers["bots"]["skill"]["aim_offset_amount"] = 1.5;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][2] = "j_head";
self.pers["bots"]["skill"]["bones"][3] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 40;
self.pers["bots"]["behavior"]["nade"] = 35;
self.pers["bots"]["behavior"]["sprint"] = 40;
@ -1135,6 +1180,13 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 2000;
self.pers["bots"]["skill"]["semi_time"] = 0.25;
self.pers["bots"]["skill"]["shoot_after_time"] = 0.25;
self.pers["bots"]["skill"]["aim_offset_time"] = 0.25;
self.pers["bots"]["skill"]["aim_offset_amount"] = 1;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][1] = "j_head";
self.pers["bots"]["skill"]["bones"][2] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 50;
self.pers["bots"]["behavior"]["nade"] = 45;
self.pers["bots"]["behavior"]["sprint"] = 50;
@ -1158,6 +1210,11 @@ difficulty()
self.pers["bots"]["skill"]["help_dist"] = 3000;
self.pers["bots"]["skill"]["semi_time"] = 0.1;
self.pers["bots"]["skill"]["shoot_after_time"] = 0;
self.pers["bots"]["skill"]["aim_offset_time"] = 0;
self.pers["bots"]["skill"]["aim_offset_amount"] = 0;
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_head";
self.pers["bots"]["behavior"]["strafe"] = 65;
self.pers["bots"]["behavior"]["nade"] = 65;
self.pers["bots"]["behavior"]["sprint"] = 65;
@ -1200,6 +1257,14 @@ set_diff()
self.pers["bots"]["skill"]["help_dist"] = randomIntRange(500, 25000);
self.pers["bots"]["skill"]["semi_time"] = randomFloatRange(0.05, 1);
self.pers["bots"]["skill"]["shoot_after_time"] = randomFloatRange(0.05, 1);
self.pers["bots"]["skill"]["aim_offset_time"] = randomFloatRange(0.05, 1);
self.pers["bots"]["skill"]["aim_offset_amount"] = randomFloatRange(0.05, 1);
self.pers["bots"]["skill"]["bones"] = [];
self.pers["bots"]["skill"]["bones"][0] = "j_head";
self.pers["bots"]["skill"]["bones"][1] = "j_spineupper";
self.pers["bots"]["skill"]["bones"][2] = "j_ankle_ri";
self.pers["bots"]["skill"]["bones"][3] = "j_ankle_le";
self.pers["bots"]["behavior"]["strafe"] = randomInt(100);
self.pers["bots"]["behavior"]["nade"] = randomInt(100);
self.pers["bots"]["behavior"]["sprint"] = randomInt(100);

View File

@ -257,13 +257,6 @@ BotFreezeControls(what)
self notify("kill_goal");
}
GetRandomBone()
{
bones = strtok("j_mainroot,j_coatfront_le,j_coatfront_ri,j_coatrear_le,j_hip_le,j_hip_ri,j_spinelower,j_hiptwist_le,j_hiptwist_ri,j_knee_le,j_knee_ri,j_shorts_le,j_shorts_lift_le,j_shorts_lift_ri,j_shorts_ri,j_spineupper,j_ankle_le,j_ankle_ri,j_knee_bulge_le,j_knee_bulge_ri,j_spine4,j_ball_le,j_ball_ri,j_clavicle_le,j_clavicle_ri,j_neck,j_shoulderraise_le,j_shoulderraise_ri,j_head,j_shoulder_le,j_shoulder_ri,j_brow_le,j_brow_ri,j_cheek_le,j_cheek_ri,j_elbow_bulge_le,j_elbow_bulge_ri,j_elbow_le,j_elbow_ri,j_eye_lid_bot_le,j_eye_lid_bot_ri,j_eye_lid_top_le,j_eye_lid_top_ri,j_eyeball_le,j_eyeball_ri,j_head_end,j_jaw,j_levator_le,j_levator_ri,j_lip_top_le,j_lip_top_ri,j_mouth_le,j_mouth_ri,j_shouldertwist_le,j_shouldertwist_ri,j_chin_skinroll,j_helmet,j_lip_bot_le,j_lip_bot_ri,j_wrist_le,j_wrist_ri,j_wristtwist_le,j_wristtwist_ri,j_gun,j_index_le_1,j_index_ri_1,j_mid_le_1,j_mid_ri_1,j_pinky_le_1,j_pinky_ri_1,j_ring_le_1,j_ring_ri_1,j_thumb_le_,j_thumb_ri_1,j_index_le_2,j_index_ri_2,j_mid_le_2,j_mid_ri_2,j_pinky_le_2,j_pinky_ri_2,j_ring_le_2,j_ring_ri_2,j_thumb_le_2,j_thumb_ri_2,j_index_le_3,j_index_ri_3,j_mid_le_3,j_mid_ri_3,j_pinky_le_3,j_pinky_ri_3,j_ring_le_3,j_ring_ri_3,j_thumb_le_3,j_thumb_ri_3", ",");
return random(bones);
}
/*
Returns if the bot is script frozen.
*/
@ -2193,6 +2186,9 @@ botGiveLoadout( team, class, allowCopycat )
if (loadoutPerk2 == "specialty_coldblooded")
loadoutPerk2 = "specialty_none";
if (loadoutPerk3 == "specialty_localjammer")
loadoutPerk3 = "specialty_none";
}