Jump to content
  • 0

Flight AI diversification


oreganor

Suggestion

ATM AI can have 3 modes of been ordered to move around:

 

- Fly

 

- Flylinear

 

- Attack

 

The problem is that Attack command always assumes that the target will shoot back so the ship is always moving around even after reaching weapon's fire range, while there are attack operations that are applied against passive targets, mainly mining and salvaging.

 

So I would suggest a 4th Flight AI state to be added:

 

- Gathering

 

Which can behave more or less as Attack but with 2 important changes:

 

- Stop completely once attack range is reached.

 

- Rotate so maximum ammount of relevant (mining for roids and salvagers for wrecks) turrets can hit the target.

 

 

Additionally 3 QoL features could be also implemented:

 

- Anti Friendly Fire break. If the shoot action triggers friendly fire, abort current target.

 

- Anti stall. If the target is still alive after Hit Points / DPS seconds, abort current target.

 

- Adding full firepower property to the "Gathering" ShipAI mode. If on, the ship will use every single available turret against the target, if off, only the relevant turrets will be used.

 

 

EDIT: The "abort current target" may require extra data so scripts can check when a gathering operation ended successfully or not... Maybe AI state can be swaped to "None"? So from script pow, something like this could work:

 

-- Pseudocode

ai = ShipAI(ship.index)

ai.SetGather(target)

If NOT valid(target) and ai.state == AIState.Gather then
-- Current target was destroyed successfully

elseif valid(target) and ai.state == AIState.None then
-- Gathering operation aborted

end

Link to comment
Share on other sites

2 answers to this suggestion

Recommended Posts

  • 0

I'd be happy enough with ai that understands weapon range, especially fighters are painful to watch.

 

But top would be 'do whatever homeworld does'

 

Their ai supported evasive maneuvering, formation/unit cohesion, 3d space, ranging, evasion, target prioritization and was a wonder to watch

Link to comment
Share on other sites

  • 0
Their ai supported evasive maneuvering, formation/unit cohesion, 3d space, ranging, evasion, target prioritization and was a wonder to watch

 

Yeah, well... The problem here is that Homeworld AI only had to care about a single sector...

 

...I don't know the plans of the Dev fully... But I read on the last Inerview that he has in mind Out Of Sector simmulation (at least production from Factories)...

 

...Combine the above with the potential scenario on a MP server of 1 active sector per player...

 

...And you may understand that CPU cycles are a VERY valuable commodity for this game, hence why primitive AI behavours have to be simple and rough, once all demanding features are in place and a target hardware is selected, then you can consider increasing the complexity of any algorithm... AI behaviour falls in this category, I'm afraid.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...