Improved AI Control of Resource/Crafting/Storage
Posted: Wed Jul 31, 2019 1:40 pm
There is a huge problem with settlements where characters eventually stop doing what they are supposed to be doing, because either their inventory is full of some junk they picked up but were unable to use or a machine in their job list is full and they won't look beyond that machine. The former is a flaw in the basic game design, the latter looks like a bug.
I'd like to see changes in how this works, so I don't have to regular search through all my characters to manually work out which one's job list is blocking production.
1) Fix it so any machine that cannot produce because its output is full, is skipped when a character is looking for a job to do. This is a very noticeable problem when you are not using a storage box for the output or no one is assigned to move the item. I most often encounter it with cooking stoves, but I suspect all machines do this to some degree.
2) The AI needs to be using some sort of token system that gives better control of resources. By this I mean if a machine or storage box needs something, a token is created that reserves the space in the machine's input box or storage space. If a character looking for work, can see an item in one of the machines in their job list, that matches an unclaimed token, they first move to the machine that has that item. If the item is still there and the token is still unclaimed when they arrive, they pick up the item and claim the token for it. While they still have the item, they move to the machine that owns the token, and when they arrive they deposit the item and free the token. If they lose the item, they release the token so it is available for a different character. If their job list no longer allows them to deliver the item, they also release the token. If their "Job" toggle is turned off they release all tokens. if they get into a fight, they should probably also release all their claimed tokens. If they release a token and still have the item for it, they should just drop the item on the ground so someone else can pick it up and deliver it. This token system also needs to be used for constructing buildings, machines, fixtures etc.
3) The AI needs to stop picking up more items than they can use, but always pick up as much as they can carry and find unclaimed tokens for. The picking up more than they need and never as much as they could use, is currently very annoying for Engineer jobs. You try to build say a storage box that needs one item, but the stupid engineer always picks up two of them if he has space in inventory for it, even though there is no outstanding construction that could use the spare.
4) Add an AI options to control if equipped weapons are dumped when moving crafted weapons to a storage box and how many food items, bandages and splint kits a character will keep in inventorty without automatically dumping them into whatever storage box they happen to be passing. If they have less items than the "dump limit" they will look for and pick them up until they reach that limit.
I'd like to see changes in how this works, so I don't have to regular search through all my characters to manually work out which one's job list is blocking production.
1) Fix it so any machine that cannot produce because its output is full, is skipped when a character is looking for a job to do. This is a very noticeable problem when you are not using a storage box for the output or no one is assigned to move the item. I most often encounter it with cooking stoves, but I suspect all machines do this to some degree.
2) The AI needs to be using some sort of token system that gives better control of resources. By this I mean if a machine or storage box needs something, a token is created that reserves the space in the machine's input box or storage space. If a character looking for work, can see an item in one of the machines in their job list, that matches an unclaimed token, they first move to the machine that has that item. If the item is still there and the token is still unclaimed when they arrive, they pick up the item and claim the token for it. While they still have the item, they move to the machine that owns the token, and when they arrive they deposit the item and free the token. If they lose the item, they release the token so it is available for a different character. If their job list no longer allows them to deliver the item, they also release the token. If their "Job" toggle is turned off they release all tokens. if they get into a fight, they should probably also release all their claimed tokens. If they release a token and still have the item for it, they should just drop the item on the ground so someone else can pick it up and deliver it. This token system also needs to be used for constructing buildings, machines, fixtures etc.
3) The AI needs to stop picking up more items than they can use, but always pick up as much as they can carry and find unclaimed tokens for. The picking up more than they need and never as much as they could use, is currently very annoying for Engineer jobs. You try to build say a storage box that needs one item, but the stupid engineer always picks up two of them if he has space in inventory for it, even though there is no outstanding construction that could use the spare.
4) Add an AI options to control if equipped weapons are dumped when moving crafted weapons to a storage box and how many food items, bandages and splint kits a character will keep in inventorty without automatically dumping them into whatever storage box they happen to be passing. If they have less items than the "dump limit" they will look for and pick them up until they reach that limit.