mojira.dev

pedro

More than one avatar was detected! There might be multiple accounts sharing this same name.

Assigned

No issues.

Reported

View all
MCPE-234593 Hola bine a reportar un bug con los vibran visuals Invalid MCPE-232800 Eu quando vou logar não faz nada só abre o Minecraft Invalid MCPE-191170 meu jogo não entra mesmo tendo uma conta e o jogo na microsoft Invalid MCPE-162247 Zombified piglins can spawn inside wither roses Confirmed MCPE-141355 [Experimental] Can't fly above Y=320 with an Elytra Duplicate MCPE-136635 Waterlogging a piston cause the piston arm to unrender Duplicate MCL-18293 No inicia juego en PC Windows 10 Duplicate MC-210160 realm world area blocked for some players Invalid MCPE-109329 Beeing able to eat carrots even with full hunger Incomplete MCPE-108450 Missing minecoins Duplicate

Comments

Let's suppose we have 3 villagers meeting all the conditions for panic summon a golem. The memory of last seen golem is about to expire and it's the begining of tick when it get's summoned, all 3 memories are 1 and the flow is the following:

 

  • Brain#tick(world, villagerA) is called

  • Executes Brain#tickMemories() -> villagerA memory gets decresed by 1, meaning last seen memories is 0 now

  • Then it executes Brain#updateTasks(world, villagerA) -> here, the condition is met, iron golem get's summoned and all 3 memories are reset to 600 (VillagerEntity#summonGolem rewrites all the memories of the 3 villagers)

  • Brain#tick(world, villagerA) is over: villagerA, villagerB and villagerC memory is 600

 

  • Brain#tick(world, villagerB) is called

  • Executes Brain#tickMemories() -> villagerB memory gets decresed by 1, meaning last seen memories is 599 now

  • Brain#updateTasks(world, villagerB) -> task fails because iron golem got summoned and the memory is not 0

  • Brain#tick(world, villagerB) is over: villagerA and VillagerC is 600, villagerB memory is 599

 

  • Brain#tick(world, villagerC) is called

  • Executes Brain#tickMemories() -> villagerC memory gets decresed by 1, meaning last seen memories is 599 now

  • Brain#updateTasks(world, villagerC) -> task fails because iron golem got summoned and the memory is not 0

  • Brain#tick(world, villagerC) is over: villagerA memory is 600, villagerB and VillagerC memory is 599

 

This flow causes a desync in the memory between the 3 villagers, so when the next time that a villager can spawn a golem because its memory is 0, it can't because the others are on 1s

 

This is my theory I could made a mistake. I'm attaching a screenshot of my observations: This is the end of next tick after the golem spawned 

[media]

 

I do agree with ampolive, looks like the correct way is the one on 1.19 and the extra 100 ticks is not an intended behavior. When I get a free time I’ll try to dig further into it, something is off 

I compared the Brain class of 1.18.2 and 1.19, the method tickMemories() on 1.18.2 calls memory.tick() first and then memory.isExpired() and on 1.19 is the othey way around,  memory.isExpired() first and then memory.tick(). So the information on the video is accurate.

(These are names are from the Fabric mappings, actual names may be different)

Forcing to call memory.tick() first and then memory.isExpired() on 1.19 (Using Fabric's mixins) I get a constant Iron Golem every 600 ticks or 30 seconds (assuming spawn attempt succeded) like we used to.

I tested this issue with carpetmod's /tick freeze/step and /ai_tracker.

Effectively, villagers are missing the spawning window by just 1 tick, making us having to wait for another 100 ticks to get the golem to spawn.

I think this issue should be reopened, I tested it on stable 1.18.2.3 and 1.18.20.23 and the mob dies at the same time compared to regular camp fire. I'm attaching proof

 

[media]

build height Y=320 is for placing blocks, not flying Y limit

 

HI all,

 

I have the same issue in two diferent PC whith linux.

Under windows is working.

Linux UBUNTO and SUSE.

Any help  on this issue??

 Many thanks.

It does not happen with a bed, but with a chest. If a chest is placed and then waterlogged, the texture dissapears.

Also happens with copper, both variants. Just 1 piece of raw copper with fortune 3 pickaxe. Win 10

All my minecoins went missing

Same happened to me. I want my money back now

@@unknown they have told you what is not true multiple times, ask them to get informed.

 

If this is parity with Java, villagers should as well hold the discount forever

Its been 13 months, when will this be high priority?

still affects 1.16.100.51

A workaround if you want to bring back the 54 max spawn distance by patching the Linux 1.16.20.03 dedicated server while this gets fixed:

 

printf '\x36' | dd of=bedrock_server-1.16.20.03 bs=1 seek=$((0x000000000E4060E4 + 0)) conv=notrunc
printf '\x36' | dd of=bedrock_server-1.16.20.03 bs=1 seek=$((0x000000000C714E3E + 3)) conv=notrunc
printf '\x36' | dd of=bedrock_server-1.16.20.03 bs=1 seek=$((0x000000000C714E45 + 3)) conv=notrunc
printf '\x36' | dd of=bedrock_server-1.16.20.03 bs=1 seek=$((0x000000000C714F27 + 3)) conv=notrunc
printf '\x36' | dd of=bedrock_server-1.16.20.03 bs=1 seek=$((0x000000000C714F2E + 3)) conv=notrunc

Thanks you. I created a new ticket for this MCPE-95568

Load more comments