OpenKeeper icon indicating copy to clipboard operation
OpenKeeper copied to clipboard

Better task management

Open tonihele opened this issue 5 years ago • 0 comments

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

tonihele avatar May 24 '20 14:05 tonihele