OpenRA
OpenRA copied to clipboard
AI load and unload cargo solution.
About IssueOrderToBot and ExternalBotOrdersManager:
The idea is:
- When actors with
IssueOrderToBothave certain condition, it can useIssueOrderToBotto request bot player to give it an order. (it is not the actors issue the orders, it is always the AI issue the orders) ExternalBotOrdersManagerrecieve the request and give it an order by usingbot.QueueOrder.
It is a cheap way (compared to search the actors of different traits in world and give orders) to perform control in detail and in time (if not consider order lantency), and very flexible.
In doing so, on the macro scale we use SquadManagerBotModule to form squad and attack, on the micro scale units with IssueOrderToBot send order request to ExternalBotOrdersManager in order to be micro-managed.
I have the same reservations I had in https://github.com/OpenHV/OpenHV/pull/789 but maybe I am wrong.