mirror of
https://github.com/ineedbots/iw4_bot_warfare.git
synced 2025-05-12 15:34:51 +00:00
aaa
This commit is contained in:
parent
f9aa349ba3
commit
40ba2387c2
@ -18,7 +18,9 @@ added()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.05;
|
self.pers["bots"]["skill"]["aim_time"] = 0.05;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 0;
|
self.pers["bots"]["skill"]["init_react_time"] = 0;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 0;
|
self.pers["bots"]["skill"]["reaction_time"] = 0;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 10000;
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 2500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 10000;
|
||||||
|
self.pers["bots"]["skill"]["remember_time"] = 25000;
|
||||||
self.pers["bots"]["skill"]["fov"] = -1;
|
self.pers["bots"]["skill"]["fov"] = -1;
|
||||||
self.pers["bots"]["skill"]["dist"] = 100000;
|
self.pers["bots"]["skill"]["dist"] = 100000;
|
||||||
self.pers["bots"]["skill"]["spawn_time"] = 0;
|
self.pers["bots"]["skill"]["spawn_time"] = 0;
|
||||||
@ -145,11 +147,12 @@ onPlayerSpawned()
|
|||||||
self thread fireHack();
|
self thread fireHack();
|
||||||
self thread stanceHack();
|
self thread stanceHack();
|
||||||
self thread moveHack();
|
self thread moveHack();
|
||||||
|
self thread emptyClipShoot();
|
||||||
|
|
||||||
self thread UseRunThink();
|
self thread UseRunThink();
|
||||||
self thread watchUsingRemote();
|
self thread watchUsingRemote();
|
||||||
|
|
||||||
// grenades (pick up too), knife (players and ents), walk, stinger, reload, footsounds, claymore hack
|
// grenades (pick up too), knife (players and ents), stinger, footsounds, claymore hack
|
||||||
|
|
||||||
self thread spawned();
|
self thread spawned();
|
||||||
}
|
}
|
||||||
@ -168,6 +171,11 @@ knife()
|
|||||||
*/
|
*/
|
||||||
reload()
|
reload()
|
||||||
{
|
{
|
||||||
|
cur = self GetCurrentWeapon();
|
||||||
|
|
||||||
|
self SetWeaponAmmoStock(cur, self GetWeaponAmmoClip(cur) + self GetWeaponAmmoStock(cur));
|
||||||
|
self setWeaponAmmoClip(cur, 0);
|
||||||
|
// the script should reload for us.
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -281,7 +289,7 @@ doRunDelay()
|
|||||||
self.bot.run_in_delay = false;
|
self.bot.run_in_delay = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
bot_lookat(pos, time, vel)
|
bot_lookat(pos, time)
|
||||||
{
|
{
|
||||||
self notify("bots_aim_overlap");
|
self notify("bots_aim_overlap");
|
||||||
self endon("bots_aim_overlap");
|
self endon("bots_aim_overlap");
|
||||||
@ -297,13 +305,6 @@ bot_lookat(pos, time, vel)
|
|||||||
if (!isDefined(steps) || steps <= 0)
|
if (!isDefined(steps) || steps <= 0)
|
||||||
steps = 1;
|
steps = 1;
|
||||||
|
|
||||||
if (isDefined(vel))
|
|
||||||
{
|
|
||||||
vel *= time;
|
|
||||||
vel /= steps;
|
|
||||||
pos += vel;
|
|
||||||
}
|
|
||||||
|
|
||||||
myAngle=self getPlayerAngles();
|
myAngle=self getPlayerAngles();
|
||||||
angles = VectorToAngles( (pos - self GetEye()) - anglesToForward(myAngle) );
|
angles = VectorToAngles( (pos - self GetEye()) - anglesToForward(myAngle) );
|
||||||
|
|
||||||
@ -353,6 +354,27 @@ stanceHack()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
emptyClipShoot()
|
||||||
|
{
|
||||||
|
self endon("disconnect");
|
||||||
|
self endon("death");
|
||||||
|
|
||||||
|
for (;;)
|
||||||
|
{
|
||||||
|
wait 0.05;
|
||||||
|
|
||||||
|
if (self.bot.isreloading || self GetCurrentWeaponClipAmmo())
|
||||||
|
continue;
|
||||||
|
|
||||||
|
cur = self GetCurrentWeapon();
|
||||||
|
|
||||||
|
if (IsWeaponClipOnly(cur) || !self GetWeaponAmmoStock(cur) || self IsUsingRemote())
|
||||||
|
continue;
|
||||||
|
|
||||||
|
self thread pressFire();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
moveHack()
|
moveHack()
|
||||||
{
|
{
|
||||||
self endon("disconnect");
|
self endon("disconnect");
|
||||||
@ -365,9 +387,12 @@ moveHack()
|
|||||||
{
|
{
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
|
|
||||||
self.bot.velocity = self.origin-self.bot.last_pos;
|
self.bot.velocity = (self.origin-self.bot.last_pos)*20;
|
||||||
self.bot.last_pos = self.origin;
|
self.bot.last_pos = self.origin;
|
||||||
|
|
||||||
|
if (DistanceSquared(self.bot.moveTo, self.origin) < 1)
|
||||||
|
continue;
|
||||||
|
|
||||||
if (level.gameEnded || !gameFlag( "prematch_done" ))
|
if (level.gameEnded || !gameFlag( "prematch_done" ))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -496,7 +521,7 @@ fireHack()
|
|||||||
if (self.bot.isswitching || self.bot.run_in_delay || self.bot.running)
|
if (self.bot.isswitching || self.bot.run_in_delay || self.bot.running)
|
||||||
shouldFire = false;
|
shouldFire = false;
|
||||||
|
|
||||||
if (self.bot.isfragging || self.bot.issmoking || (self.bot.isreloading && !self IsUsingRemote()))
|
if (self.bot.isfragging || self.bot.issmoking)
|
||||||
shouldFire = true;
|
shouldFire = true;
|
||||||
|
|
||||||
if (level.gameEnded || !gameFlag( "prematch_done" ))
|
if (level.gameEnded || !gameFlag( "prematch_done" ))
|
||||||
@ -817,7 +842,7 @@ check_reload()
|
|||||||
|
|
||||||
for(;;)
|
for(;;)
|
||||||
{
|
{
|
||||||
self waittill( "weapon_fired" );
|
self waittill_notify_or_timeout( "weapon_fired", 5 );
|
||||||
self thread reload_thread();
|
self thread reload_thread();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -832,8 +857,11 @@ reload_thread()
|
|||||||
self endon("weapon_fired");
|
self endon("weapon_fired");
|
||||||
|
|
||||||
wait 2.5;
|
wait 2.5;
|
||||||
|
|
||||||
|
if (self.bot.isfrozen || level.gameEnded || !gameFlag( "prematch_done" ))
|
||||||
|
return;
|
||||||
|
|
||||||
if(isDefined(self.bot.target) || self.bot.isreloading || self.bot.isfraggingafter || self.bot.issmokingafter || self.bot.isfrozen || level.gameEnded || !gameFlag( "prematch_done" ) || self.bot.climbing)
|
if(isDefined(self.bot.target) || self.bot.isreloading || self.bot.isfraggingafter || self.bot.issmokingafter || self.bot.climbing)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
cur = self getCurrentWEapon();
|
cur = self getCurrentWEapon();
|
||||||
@ -1252,104 +1280,113 @@ aim()
|
|||||||
|
|
||||||
if(isDefined(self.bot.target) && isDefined(self.bot.target.entity) && !self.bot.climbing)
|
if(isDefined(self.bot.target) && isDefined(self.bot.target.entity) && !self.bot.climbing)
|
||||||
{
|
{
|
||||||
trace_time = self.bot.target.trace_time;
|
no_trace_look_time = self.pers["bots"]["skill"]["no_trace_look_time"];
|
||||||
no_trace_time = self.bot.target.no_trace_time;
|
no_trace_time = self.bot.target.no_trace_time;
|
||||||
last_pos = self.bot.target.last_seen_pos;
|
|
||||||
target = self.bot.target.entity;
|
if (no_trace_time <= no_trace_look_time)
|
||||||
conedot = 0;
|
|
||||||
isplay = self.bot.target.isplay;
|
|
||||||
offset = self.bot.target.offset;
|
|
||||||
dist = self.bot.target.dist;
|
|
||||||
curweap = self getCurrentWeapon();
|
|
||||||
eyePos = self getEye();
|
|
||||||
angles = self GetPlayerAngles();
|
|
||||||
rand = self.bot.target.rand;
|
|
||||||
remember_time = self.pers["bots"]["skill"]["remember_time"];
|
|
||||||
reaction_time = self.pers["bots"]["skill"]["reaction_time"];
|
|
||||||
nadeAimOffset = 0;
|
|
||||||
myeye = self getEye();
|
|
||||||
|
|
||||||
if(self.bot.isfraggingafter || self.bot.issmokingafter)
|
|
||||||
nadeAimOffset = dist/3000;
|
|
||||||
else if(weaponClass(curweap) == "grenade")
|
|
||||||
nadeAimOffset = dist/16000;
|
|
||||||
|
|
||||||
if(no_trace_time)
|
|
||||||
{
|
{
|
||||||
if(no_trace_time > remember_time/2 && !usingRemote)
|
trace_time = self.bot.target.trace_time;
|
||||||
|
last_pos = self.bot.target.last_seen_pos;
|
||||||
|
target = self.bot.target.entity;
|
||||||
|
conedot = 0;
|
||||||
|
isplay = self.bot.target.isplay;
|
||||||
|
offset = self.bot.target.offset;
|
||||||
|
dist = self.bot.target.dist;
|
||||||
|
curweap = self getCurrentWeapon();
|
||||||
|
eyePos = self getEye();
|
||||||
|
angles = self GetPlayerAngles();
|
||||||
|
rand = self.bot.target.rand;
|
||||||
|
no_trace_ads_time = self.pers["bots"]["skill"]["no_trace_ads_time"];
|
||||||
|
reaction_time = self.pers["bots"]["skill"]["reaction_time"];
|
||||||
|
nadeAimOffset = 0;
|
||||||
|
myeye = self getEye();
|
||||||
|
|
||||||
|
if(self.bot.isfraggingafter || self.bot.issmokingafter)
|
||||||
|
nadeAimOffset = dist/3000;
|
||||||
|
else if(weaponClass(curweap) == "grenade")
|
||||||
|
nadeAimOffset = dist/16000;
|
||||||
|
|
||||||
|
if(no_trace_time)
|
||||||
{
|
{
|
||||||
self ads(false);
|
if(no_trace_time > no_trace_ads_time && !usingRemote)
|
||||||
|
|
||||||
if(isplay)
|
|
||||||
{
|
{
|
||||||
//better room to nade? cook time function with dist?
|
self ads(false);
|
||||||
if(!self.bot.isfraggingafter && !self.bot.issmokingafter)
|
|
||||||
|
if(isplay)
|
||||||
{
|
{
|
||||||
nade = self getValidGrenade();
|
//better room to nade? cook time function with dist?
|
||||||
if(isDefined(nade) && rand <= self.pers["bots"]["behavior"]["nade"] && bulletTracePassed(myEye, myEye + (0, 0, 75), false, self) && bulletTracePassed(last_pos, last_pos + (0, 0, 100), false, target))
|
if(!self.bot.isfraggingafter && !self.bot.issmokingafter)
|
||||||
{
|
{
|
||||||
if(nade == "frag_grenade_mp")
|
nade = self getValidGrenade();
|
||||||
self thread frag(2.5);
|
if(isDefined(nade) && rand <= self.pers["bots"]["behavior"]["nade"] && bulletTracePassed(myEye, myEye + (0, 0, 75), false, self) && bulletTracePassed(last_pos, last_pos + (0, 0, 100), false, target))
|
||||||
else
|
{
|
||||||
self thread smoke(0.5);
|
if(nade == "frag_grenade_mp")
|
||||||
|
self thread frag(2.5);
|
||||||
self notify("kill_goal");
|
else
|
||||||
|
self thread smoke(0.5);
|
||||||
|
|
||||||
|
self notify("kill_goal");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
self stopNading();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!usingRemote)
|
||||||
|
self thread bot_lookat(last_pos + (0, 0, self getEyeHeight() + nadeAimOffset), aimspeed);
|
||||||
else
|
else
|
||||||
{
|
self thread bot_lookat(last_pos, aimspeed);
|
||||||
self stopNading();
|
continue;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!usingRemote)
|
self stopNading();
|
||||||
self thread bot_lookat(last_pos + (0, 0, self getEyeHeight() + nadeAimOffset), aimspeed);
|
|
||||||
else
|
if(isplay)
|
||||||
self thread bot_lookat(last_pos, aimspeed);
|
{
|
||||||
continue;
|
aimpos = target getTagOrigin( "j_spineupper" ) + (0, 0, nadeAimOffset);
|
||||||
}
|
conedot = getConeDot(aimpos, eyePos, angles);
|
||||||
|
|
||||||
self stopNading();
|
|
||||||
|
|
||||||
if(isplay)
|
|
||||||
{
|
|
||||||
aimpos = target getTagOrigin( "j_spineupper" ) + (0, 0, nadeAimOffset);
|
|
||||||
conedot = getConeDot(aimpos, eyePos, angles);
|
|
||||||
self thread bot_lookat(aimpos, aimspeed, target GetVelocity());
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
aimpos = target.origin;
|
|
||||||
if (isDefined(offset))
|
|
||||||
aimpos += offset;
|
|
||||||
aimpos += (0, 0, nadeAimOffset);
|
|
||||||
conedot = getConeDot(aimpos, eyePos, angles);
|
|
||||||
self thread bot_lookat(aimpos, aimspeed);
|
|
||||||
}
|
|
||||||
|
|
||||||
if(false && isplay && conedot > 0.9 && dist < level.bots_maxKnifeDistance && trace_time > reaction_time)
|
|
||||||
{
|
|
||||||
self ads(false);
|
|
||||||
self knife();
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!self canFire(curweap) || !self isInRange(dist, curweap))
|
|
||||||
{
|
|
||||||
self ads(false);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
canADS = self canAds(dist, curweap);
|
|
||||||
self ads(canADS);
|
|
||||||
|
|
||||||
if((!canADS || self botAdsAmount() == 1.0) && (conedot > 0.95 || dist < level.bots_maxKnifeDistance) && trace_time > reaction_time)
|
if (!nadeAimOffset && conedot > 0.999)
|
||||||
{
|
self thread bot_lookat(aimpos, 0.05);
|
||||||
self botFire();
|
else
|
||||||
|
self thread bot_lookat(aimpos, aimspeed);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
aimpos = target.origin;
|
||||||
|
if (isDefined(offset))
|
||||||
|
aimpos += offset;
|
||||||
|
aimpos += (0, 0, nadeAimOffset);
|
||||||
|
conedot = getConeDot(aimpos, eyePos, angles);
|
||||||
|
self thread bot_lookat(aimpos, aimspeed);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(false && isplay && conedot > 0.9 && dist < level.bots_maxKnifeDistance && trace_time > reaction_time)
|
||||||
|
{
|
||||||
|
self ads(false);
|
||||||
|
self knife();
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!self canFire(curweap) || !self isInRange(dist, curweap))
|
||||||
|
{
|
||||||
|
self ads(false);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
canADS = self canAds(dist, curweap);
|
||||||
|
self ads(canADS);
|
||||||
|
|
||||||
|
if((!canADS || self botAdsAmount() == 1.0) && (conedot > 0.95 || dist < level.bots_maxKnifeDistance) && trace_time > reaction_time)
|
||||||
|
{
|
||||||
|
self botFire();
|
||||||
|
}
|
||||||
|
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
self ads(false);
|
self ads(false);
|
||||||
|
@ -628,6 +628,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.6;
|
self.pers["bots"]["skill"]["aim_time"] = 0.6;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 1500;
|
self.pers["bots"]["skill"]["init_react_time"] = 1500;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 1000;
|
self.pers["bots"]["skill"]["reaction_time"] = 1000;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 600;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 750;
|
self.pers["bots"]["skill"]["remember_time"] = 750;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.7;
|
self.pers["bots"]["skill"]["fov"] = 0.7;
|
||||||
self.pers["bots"]["skill"]["dist"] = 1000;
|
self.pers["bots"]["skill"]["dist"] = 1000;
|
||||||
@ -648,6 +650,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.55;
|
self.pers["bots"]["skill"]["aim_time"] = 0.55;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 1000;
|
self.pers["bots"]["skill"]["init_react_time"] = 1000;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 800;
|
self.pers["bots"]["skill"]["reaction_time"] = 800;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 1000;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 1250;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 1500;
|
self.pers["bots"]["skill"]["remember_time"] = 1500;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.65;
|
self.pers["bots"]["skill"]["fov"] = 0.65;
|
||||||
self.pers["bots"]["skill"]["dist"] = 1500;
|
self.pers["bots"]["skill"]["dist"] = 1500;
|
||||||
@ -668,6 +672,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.4;
|
self.pers["bots"]["skill"]["aim_time"] = 0.4;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 750;
|
self.pers["bots"]["skill"]["init_react_time"] = 750;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 500;
|
self.pers["bots"]["skill"]["reaction_time"] = 500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 1000;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 1500;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 2000;
|
self.pers["bots"]["skill"]["remember_time"] = 2000;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.6;
|
self.pers["bots"]["skill"]["fov"] = 0.6;
|
||||||
self.pers["bots"]["skill"]["dist"] = 2250;
|
self.pers["bots"]["skill"]["dist"] = 2250;
|
||||||
@ -688,6 +694,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.3;
|
self.pers["bots"]["skill"]["aim_time"] = 0.3;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 600;
|
self.pers["bots"]["skill"]["init_react_time"] = 600;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 400;
|
self.pers["bots"]["skill"]["reaction_time"] = 400;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 1500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 2000;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 3000;
|
self.pers["bots"]["skill"]["remember_time"] = 3000;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.55;
|
self.pers["bots"]["skill"]["fov"] = 0.55;
|
||||||
self.pers["bots"]["skill"]["dist"] = 3350;
|
self.pers["bots"]["skill"]["dist"] = 3350;
|
||||||
@ -708,6 +716,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.25;
|
self.pers["bots"]["skill"]["aim_time"] = 0.25;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 500;
|
self.pers["bots"]["skill"]["init_react_time"] = 500;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 300;
|
self.pers["bots"]["skill"]["reaction_time"] = 300;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 2500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 3000;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 4000;
|
self.pers["bots"]["skill"]["remember_time"] = 4000;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.5;
|
self.pers["bots"]["skill"]["fov"] = 0.5;
|
||||||
self.pers["bots"]["skill"]["dist"] = 5000;
|
self.pers["bots"]["skill"]["dist"] = 5000;
|
||||||
@ -728,6 +738,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.2;
|
self.pers["bots"]["skill"]["aim_time"] = 0.2;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 250;
|
self.pers["bots"]["skill"]["init_react_time"] = 250;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 150;
|
self.pers["bots"]["skill"]["reaction_time"] = 150;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 2500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 4000;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 5000;
|
self.pers["bots"]["skill"]["remember_time"] = 5000;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.45;
|
self.pers["bots"]["skill"]["fov"] = 0.45;
|
||||||
self.pers["bots"]["skill"]["dist"] = 7500;
|
self.pers["bots"]["skill"]["dist"] = 7500;
|
||||||
@ -748,6 +760,8 @@ difficulty()
|
|||||||
self.pers["bots"]["skill"]["aim_time"] = 0.1;
|
self.pers["bots"]["skill"]["aim_time"] = 0.1;
|
||||||
self.pers["bots"]["skill"]["init_react_time"] = 100;
|
self.pers["bots"]["skill"]["init_react_time"] = 100;
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 50;
|
self.pers["bots"]["skill"]["reaction_time"] = 50;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 2500;
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 4000;
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 7500;
|
self.pers["bots"]["skill"]["remember_time"] = 7500;
|
||||||
self.pers["bots"]["skill"]["fov"] = 0.4;
|
self.pers["bots"]["skill"]["fov"] = 0.4;
|
||||||
self.pers["bots"]["skill"]["dist"] = 10000;
|
self.pers["bots"]["skill"]["dist"] = 10000;
|
||||||
@ -788,6 +802,8 @@ set_diff()
|
|||||||
self.pers["bots"]["skill"]["init_react_time"] = 50 * randomInt(100);
|
self.pers["bots"]["skill"]["init_react_time"] = 50 * randomInt(100);
|
||||||
self.pers["bots"]["skill"]["reaction_time"] = 50 * randomInt(100);
|
self.pers["bots"]["skill"]["reaction_time"] = 50 * randomInt(100);
|
||||||
self.pers["bots"]["skill"]["remember_time"] = 50 * randomInt(100);
|
self.pers["bots"]["skill"]["remember_time"] = 50 * randomInt(100);
|
||||||
|
self.pers["bots"]["skill"]["no_trace_ads_time"] = 50 * randomInt(100);
|
||||||
|
self.pers["bots"]["skill"]["no_trace_look_time"] = 50 * randomInt(100);
|
||||||
self.pers["bots"]["skill"]["fov"] = randomFloatRange(-1, 1);
|
self.pers["bots"]["skill"]["fov"] = randomFloatRange(-1, 1);
|
||||||
self.pers["bots"]["skill"]["dist"] = randomIntRange(500, 25000);
|
self.pers["bots"]["skill"]["dist"] = randomIntRange(500, 25000);
|
||||||
self.pers["bots"]["skill"]["spawn_time"] = 0.05 * randomInt(20);
|
self.pers["bots"]["skill"]["spawn_time"] = 0.05 * randomInt(20);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user