Better task management... even since we moved away from the previous design, the current task manager wasn't ever really looked after that much. And currently it causes the creatures to take up some weird tasks. Some problems there include:
The tasks don't get deleted
There was an intend to do it but it is currently commented out
Eventually the task pool will come too large and affect performance
Multipart tasks aren't handled gracefully
This is visible in tasks like rescue creature or imprison creature
Once the first part is executed, it goes back to the pool up for grabs while the original creature is doing on the second part (new task entirely)
We need really clever constraints on the other parts to prevent other creatures from taking it, a lot of managing on the different parts validity as well
I think the chained tasks need to be handled on the same task ID, some sort of state machine or task queue like the objective mission already has, that way also we know instantly that the task is reserved and by the base type everything can be cleaned up if the task becomes invalid
Better task management... even since we moved away from the previous design, the current task manager wasn't ever really looked after that much. And currently it causes the creatures to take up some weird tasks. Some problems there include: