MineColonies

MineColonies

57M Downloads

creativeresolve and enabledebuglogging don't work

dingziran opened this issue ยท 12 comments

commented

Prerequisites

  • I am running the latest alpha version of MineColonies and Structurize for my Minecraft version.
  • I checked the MineColonies/Structurize wiki and made sure my issue is not covered there.
  • I made sure that this issue is not a duplicate of any existing issue.

Context

  • Minecraft Version: 1.16.5
  • MineColonies Version: 0.14.93-ALPHA-universal
  • Structurize Version: 0.13.163-ALPHA-universal
  • Related Mods and their Versions: OptiFine_1.16.5_HD_U_G6

Expected behavior

If I set creativeresolve to true, there should be no request for player in clipboard.
If I set enabledebuglogging to true, there should be more logs in chat.

Actual behavior

Nothing change after I set those two configurations. Everything as same as earlier.
I have tried in creative and survival mode. I have restarted the minecraft several times. Nothing is different.

Steps to reproduce the issue

Logs

  • latest.log:
  • crashlog:

Notes


Viewers

  • Add a thumbs-up to the bug report if you are also affected. This helps the bug report become more visible to the team and doesn't clutter the comments.
  • Add a comment if you have any insights or background information that isn't already part of the conversation.
commented

Can you try updating to the latest alpha?

commented

creative resolve is slow. it does work, debug doesn;t?

commented

I have wait for a long time and both of them don't work.
I'll update and try again.

commented

Bug until proven innocent ๐Ÿ˜

commented

Hey @ravenbuilder934 @Raycoms, I have updated to the latest alpha. And it still not work.

commented

enabledebuglogging enables logfile changes for the request system, generally of log level DEBUG. As far as I know, it's never intended to put information into chat. That said, it initializes too early to be applied with the 1.16 config file; reconfigureLogging() occurs during FMLLoadCompleteEvent, well before the player has started choosing a world. Moving reconfigureLogging() to a ModConfig.Loading event seems to fix that for at least single-player, though I'll need to do some checks for the server and lan variants.

creativeresolve looks like it's supposed to fill the item up when the resolver is first put into the list, but its most commonly reelvant pathway could only be triggered if a matching resolver is available, and it's in a path that only consider building and colonist resolvers. That one I'm not sure what the right approach to fix that would be; moving the config-based behavior from StandardPlayerRequestResolver up to right before the return null of RequestHandler.assignRequestDefault looks like it'd at least fix some of the cases, but there's another pathway focused on parentrequests that I don't really grok, and I'm really hesitant to make any changes to the request system without a deeper understanding.

commented

So the only problem is the logging

commented

creative resolve is on purpose in the player resolver, so only if no one else can resolve it and even the retryignresolver fails then it will resolve. This can take significant amount of time yes. This was created for debugging purposes and not gameplay.

commented

hi @Raycoms , default maximalretries is 3 and default delaybetweenretries is 1200 ticks which is 60 seconds. Does it mean that I could see the requests automatically resolved after 3 minutes? But I have wait more than 5 minutes.

commented

Have you checked if the request got assigned to the player?

commented

@Raycoms sorry for the late reply. I did some tests. After I change the delaybetweenretries to 30, it works well. Requests can be resolve within 1 minute.
But when I changed the delaybetweenretries to 1200, sometimes it works well after maybe 5 minutes. But sometimes, it just not work even I have wait for 30 minutes.
I tested in a new save so there are only player requests.

commented

yeah, depending on the request they might stick around for quite some time before being assigned to the player resolver.
Such that always first the colony will try to resolve requests.
So the thing that is really not working is the logging itself.