Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Sorry, since the Grenade Launcher was buffed it has become a true power weapon and has been removed from the ammo box pool accordingly. You start with much more ammo than in vanilla, and there are two other GLs which you can find on the map. One is in the right machine gun nest (with four rounds), and the other is being carried as a secondary weapon by a Trooper in the hilltop fighting position.
At minimum you can have a 0.033 delay for any AI action, as it is equal to one engine tick. With the scales being set to what they are, you're actually having the AI outpace the game and overflow.
It might help with your resource problem too, but that's more theoretical.
Assuming Reach did get the tickrate upgrade, every AI function is actually running twice per second, so the new limit would be 0.533 if you want to force it to run once per second.
To calculate this and make sure our AI don't overflow, we use a simple formula.
If C < 0.033, the AI will overflow, causing it to break as well as several other potential damages.
If C >= 0.533, the AI will never perform that action more than once per second.
If A >= 1.066, then you know it's running at maximum once per second.
Into the theoretical:
If AI are running every action twice per second, they're actually taking up two times as much resources per engine tick.
That means the quickest fix is to double the difficulty scales for AI functions.
So, .5 becomes 1.
1 becomes 2, and so on.
CE is the only MCC title where this problem doesn't exist.
Will collect dead bodies, debris, etc. every 120 seconds.
Is the same but assuming sleep uses ticks instead of seconds. 30*120 = 3600.
Whichever works better in testing for you.
Set a trigger volume or two that encompass the outside of the building and have these functions run continuously, with a delay of your choice.
I appreciate your suggestions, but I'm a bit confused because I do almost 100% of my testing on Heroic and what I don't do on that difficulty I do on Legendary. Most of the time the AI is quite functional, although sometimes squads that get dropped off far away from the action can get stuck and stand around until a couple of them get killed. Is that what you mean?
By the way, I believe I do have some form of garbage collection running regularly, but it may be every wave rather than every thirty seconds or so. I usually count things out in my code using multiplication so my number isn't seventy morbillion ticks etc
Nah, it affects every AI character that's spawned. It's just what I said, they're doubling their resource usage due to running twice per tick.
It's less noticeable early on, but as time progresses troopers will just stop responding to danger completely as the game prioritizes enemies over allies.
The fix I'd go with is doubling their ranged attack timers in your globals tag. As it means they will use the values you've entered rather than halving them. New Target Delay is based on looking, so it should not be changed. Also, the grenade timers will need this treatment too.
Then, you just have to make sure their looking timers are at minimum 0.566, before using the formula above. Due to the double send, 0.5 = 0, so we add the 0.066 to ensure the delay is respected.
And finally, as long as the total AI count is under 32, everything should run smoothly.
It prioritizes enemies in view of/combat with the player.
Then AI fighting other AI.
Then idle AI.
Super ballistic engagements aren't factored in, so wraith shots will not be reacted to if limits are reached.
If all that is done, then you'll get the AI to work at the correct speed, with the correct limits.
Could you give me some more specific information on where I should be looking in what tags?
I briefly checked out ai_globals.ai_globals and generic.character, and I didn't see anything matching what you described. I'd love to follow up on your advice and fix any existing AI bugs there may be in my mod.