MineColonies

MineColonies

53M Downloads

Builder's fullfill option doesn't work properly

nonozelmar opened this issue ยท 6 comments

commented

Minecolonies version

minecolonies-1.12.2-0.9.37-ALPHA-universal

Expected behavior

  • The builder continue his work after the player fullfill him manually the ressources

Actual behaviour

  • The builder is stuck asking the ressource even after the "fullfill"

Steps to reproduce the problem

  1. Attach a builder to a building
  2. Wait for him to ask you some ressources
  3. Fullhim him the ressource
  4. ...
  5. Profit
commented

@Electrocutor you are basically right there is an update setup, except that the networkmessage that deals with the fullfill calls the same method to override the request fulfilling. Can you try to make a reproduction here?

commented

This seems to be related to not-recognizing a fulfilled request.

  • If you place an item directly into hut inventory, the worker seems to see it immediately.
  • If you place an item directly into worker inventory, the worker seem to see it after several moments pause.
  • If you use the fulfill button on the hut, the worker never sees it unless he is reset for some reason (such as going to sleep). If you then move the item from one slot to another within the hut inventory, he will see it.
  • If you use the fulfill button on the worker, the worker seems to see it only after the second or more time, as the first fulfill will cause him to immediately re-request the same thing.

If I had to guess, I would say there is some kind of update setup on an inventory event, but using the fulfill buttons do not trigger the inventory event.

commented

I have been... it happens quite frequently, but have been unable to determine any set criteria of how to make it always happen.

As a side note, I have found the criteria of a reverse issue where the only way to make the builder move forward again is to manually click the fulfill button on his personal request page, and puting it in hut inventory or his own inventory will not do anything:

When you just load or a server had rebooted, the build job has not yet been restarted, so he has a request for something that he needed before the reset, but he is currently not building anything, so he doesn't monitor hut inventory for it. As soon as you click the fulfill button it triggers his build job to restart (with the chat message saying he is building x), then he is good to start grabbing things from inventory again.

commented

That happens sometimes, either he will retry in a bit or you just click cancel and he will notice it.

commented

Just to point out: this happens specifically when you have more of the items than he is asking for. If he wants 10 stone brick, and you have a full stack, when you fulfill his request he will ask for more. If you don't have more than he is asking for, he will be happy with what you have given him.

commented

@OrionDevelopment you got an idea?