Paul Chote
2ad42b6a7e
Account for visibility when selecting AI superweapon targets.
2017-12-22 02:33:25 +01:00
reaperrr
85c54e04d9
Replace LINQ in AirStates.CountAntiAirUnits
2017-12-17 21:18:44 +00:00
reaperrr
3aa8b3ae29
Remove unit.IsDisabled check from AirStates
2017-12-17 21:18:44 +00:00
reaperrr
85c5259361
Fix AI crashing when trying to make parachuted harvester search map for resources while mid-air
2017-12-11 01:55:18 +01:00
reaperrr
b5ffe17d60
Make AI skip harvester orders if map has no resources
2017-12-11 01:55:18 +01:00
reaperrr
9ad0d78cdd
Make the AI only consider harvesters 'idle' if last resource search failed
...
Otherwise the AI would consider the harvester 'idle' in too many situations.
This way, the AI now only uses its own resource search algorithm if the next resource patch is too far away for the FindResources activity to find it.
2017-12-11 01:55:18 +01:00
reaperrr
4d553900cf
Move up harv.IsEmpty check in HackyAI
...
This is a fairly cheap check, so we should perform it before the activity checks
2017-12-11 01:55:18 +01:00
Forcecore
c762453607
(External)Capturable are now conditional
2017-11-15 13:54:15 +02:00
reaperrr
d602ec6485
Rename SelfReloads to AutoReloads
2017-11-12 19:48:06 +00:00
reaperrr
6f95080aa4
Add ReloadAmmoPool and adapt AmmoPool
...
Refactored and simplified Rearm activity.
Uses local Reload now.
Removed AmmoPool.SelfReloads.
2017-11-12 19:48:06 +00:00
Paul Chote
1376ad674e
Remove Player.CanViewActor and .CanTargetActor.
2017-11-03 09:56:00 +01:00
Paul Chote
d967c564a2
Remove TargetActor and TargetLocation from order issuing.
2017-10-15 19:07:46 +02:00
reaperrr
28e1f391e0
Make ITick require explicit implementation
2017-09-16 15:51:37 +02:00
abcdefg30
d99a472456
Fix HackyAI trying to deploy undeployable actors
2017-09-16 11:01:53 +01:00
reaperrr
08aaa998aa
Fix AI BuildingLimits
...
The AI BaseBuilder would allow building a structure not only when the current number was lower, but also of it was equal to the limit, which allowed the AI to build one too much of every building.
2017-09-15 19:31:57 +01:00
Forcecore
8027bed6b2
Separated ship squad from ground unit squad
...
Just like aircrafts are independent from ground squads.
2017-09-13 23:31:26 +02:00
Forcecore
739d0c0bb2
Disabled Ground squads finding targets individually
...
* Now they will tend to focus fire.
* Provides performance when when the AI designer implements better
(and complex) target selection code
2017-08-25 23:13:26 +02:00
abcdefg30
4ce2e82ff0
AI States style fixes and minor polish
2017-08-17 23:25:51 +01:00
reaperrr
879ab2ac1f
Remove redundant Disposed checks
...
IsDead returns true if Disposed is true.
2017-08-05 18:31:15 +02:00
Paul Chote
afd8b9ab86
Rework harvester resource claiming:
...
* Maintains lists of claims, and only restricts
reservations for friendly units.
* Removes OnNotifyResourceClaimLost; it's not
clear whether that is still useful, and it
prevents future necessary cleanups.
* Moves other code without changing behaviour.
This fixed stale claims from dead units and enemy
claims from preventing otherwise valid harvest
activities.
2017-07-18 01:09:19 +02:00
Paul Chote
b0906e1836
Add a bot type identifier.
2017-07-07 21:31:45 +01:00
Zimmermann Gyula
0d2d17d2fb
Fix the AI acting the same at game restart.
2017-05-13 19:08:20 +01:00
Forcecore
7588d6708b
HackyAI now builds refinery near ore.
2017-03-09 09:42:56 -06:00
Paul Chote
572c1cb89f
Implement subterranean units.
2017-01-29 18:58:33 +00:00
Taryn Hill
43317e0f5d
Update copyright notice year to 2017
2016-12-31 23:46:13 -06:00
Zimmermann Gyula
35b1949a61
Use MPos during AI coarse support power targeting.
2016-12-05 15:08:00 +01:00
Zimmermann Gyula
f927d54db7
Fix AI unable to activate AllowMultiple support powers.
2016-12-05 15:08:00 +01:00
Paul Chote
23f4ae5027
Replace UpgradeMinEnabledLevel checks with an EnabledByDefault shim.
2016-11-19 17:19:25 +00:00
Oliver Brakmann
3e9bf7aa4d
Turn Actor.GetCurrentActivity into a property
2016-10-31 18:46:27 +01:00
RoosterDragon
eb3f8c945c
Make sure AI can deploy an MCV when it lacks a base.
2016-10-11 20:42:15 +01:00
Taryn Hill
852f0f790f
Fix CanBeViewedByPlayer query in
...
HackyAI.GetVisibleActorsBelongingToPlayer
2016-08-13 07:42:15 -05:00
RoosterDragon
cc4ef736b0
Ensure HackyAI tries to attack and capture as frequently as it should.
...
Returning early in AssignRolesToIdleUnits would skip ticking down the counters that trigger new attack and capture attempts. This means they would be attempted far less often than intended.
2016-08-12 18:08:58 +01:00
Taryn Hill
c5e76a67dd
HackyAI: Add basic capturing
2016-08-10 19:06:24 -05:00
reaperrr
abaa0f4da5
Allow to customize which terrain types are considered water by HackyAI
...
For naval structure placement.
2016-07-30 13:19:32 +02:00
reaperrr
8493b1deda
Merge pull request #11512 from Nelax/ai-squadexclude
...
Added Squad Exclusion to HackyAI
2016-06-30 15:21:22 +02:00
reaperrr
e647af3dd1
Allow modders to choose AI MCV deployment base restriction
...
For some mods, a random map location might be a better choice for the AI than deploying the MCV inside the base, so we allow modders to customize it.
2016-06-27 18:17:51 +02:00
Bynnar18
dace814829
Added ExcludeFromSquads to HackyAI
2016-06-24 09:18:43 -05:00
reaperrr
8ba833777c
Make AI deploy MCVs in the vincinity of existing construction yards
...
While the general idea of AIs building distant secondary bases might be tempting, in reality the AI would way too often send the MCV close to some enemy base, wasting the cash and potentially increased build speed/additional build queue.
Deploying MCVs close to the existing base ensures that the AI will actually have some benefit from building an MCV.
2016-06-20 20:52:04 +02:00
reaperrr
5992530655
Fix AI giving orders to MCVs that already have orders
...
Checking for IsMoving is a flawed approach no matter how you look at it. The MCV might just have temporarily stopped due to an obstacle, or about to be deployed.
Checking for IsIdle instead ensures that the MCV really isn't already in the process of doing something.
2016-06-20 20:52:04 +02:00
reaperrr
099c44f6f9
Remove ActorExtensionsForMove
...
And use IMove.IsMoving instead.
2016-06-04 16:34:47 +02:00
reaperrr
adc6095f9c
Remove the rest of the unused AI Aggro left-overs
2016-06-01 22:48:50 +02:00
reaperrr
f1b8cf117a
Remove dead code from HackyAI
...
Has been unused for three years...
2016-06-01 22:48:50 +02:00
Paul Chote
42504bfa9c
Add DummyAI trait for scripted maps.
2016-04-17 11:01:25 +02:00
Matthias Mailänder
15c2df2c69
Merge pull request #10943 from pchote/map-grid-tile-range
...
Move Map.TilesByDistance to MapGrid and un-static it.
2016-03-21 20:05:08 +01:00
Paul Chote
4052da3ea6
Move Map.TilesByDistance to MapGrid and make non-static.
2016-03-20 21:41:04 +00:00
Paul Chote
5741e53fe2
Fix AI stalling after losing its conyard and ref.
2016-03-18 18:16:24 +00:00
Paul Chote
602acabe47
Remove World.TileSet.
2016-03-12 19:47:07 +00:00
RoosterDragon
3ff678ef86
Lock fuzzyEngine during construction so it is published correctly.
2016-02-26 21:23:19 +00:00
Paul Chote
e71225496b
Clarify GPL version.
2016-02-21 16:30:48 +00:00
Paul Chote
b396965fd9
Update licence header year.
2016-02-21 16:27:31 +00:00