CoopTranslocator about CoopTranslocator. Not about improve bots.sektor2111 wrote: ↑Fri May 07, 2021 9:28 pmAnd probably without enough ammo.
CoopTranslocator should Translocate only Bot which has a good charged weapon, testing Bot in timed cycles and not just teleporting alive pawn.
Am I wrong here ? Why would not allow time for being weaponized ?
Else, Spawn a copy of weapon held by Player OrderObject, give the copy weapon to Bot and full ammo...
But it must not interfere with bots wishes and actions.
Ammo usually self-increased in network MH. So this is not a problem.
--- EDIT ---
Currently I use next rules:
Code: Select all
if (Bot.IsInState('Roaming')) {
if (Bot.Orders == 'Follow' && Pawn(Bot.OrderObject) != None && Pawn(Bot.OrderObject).Health > 0 &&
Bot.MoveTarget == None && // not busy for some travel
CanBeTarget(self, Pawn(Bot.OrderObject))) {
dist = VSize(Bot.OrderObject.Location - Bot.Location);
if (Bot.CloseToPointMan(Pawn(Bot.OrderObject)) || WaitForPoint(Bot)) return false;
if (dist < 4000 && (Bot.ActorReachable(Bot.OrderObject) || Bot.FindPathToward(Bot.OrderObject) != None)) return false;
if (dist < 1600 && Bot.FastTrace(Bot.OrderObject.Location)) return false;
return true;
}
}
Code: Select all
ret = NeedUse2();
if (ret) {
bLockedAndLoaded = ( (Bot.Weapon != None) && (Bot.Weapon.AIRating > 0.4) && (Bot.Health > 60) );
if (!bLockedAndLoaded) {
ret = !Bot.PickLocalInventory(2000, 0);
Log(Owner @ "!bLockedAndLoaded" @ ret);
}
}