Jump to content

AI not putting spawned workers to work


SciGuy42
 Share

Recommended Posts

I am working on a scenario and as a way of boosting the AI a bit, I periodically spawn some random citizen soldiers by their civic centre. To my surprise, the AI wasn't using them to do any work and they just keep standing where they were spawned.

Then, I decided to try something different - I spawn the same units as Gaia entities and change their ownership to the player through code. Now, the AI immediately puts them to work! My guess is that the latter method trigger some function similar to what happens when the AI produces a worker through its building, while simply spawning the units for the AI to use them as it sees fit, does not.

  • Like 1
Link to comment
Share on other sites

Yeah, it seems PetraAI must have the metadata.

if (ent.getMetadata(PlayerID, "role") === PETRA.Worker.ROLE_WORKER)

How do you spawn the units?

[EDIT]
When the AI produces something it adds metadata to know later what the produced unit is used for. If it doesn't have any, it is probably used in the next attack only. When converting the entity, indeed another message is sent that is also picked up by the AI.

Edited by Freagarach
Some longer explanation.
  • Like 1
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
 Share

×
×
  • Create New...