The problem comes from the core issue (related to pmmp/PocketMine-MP#6062) where BlockTypeIds::newId() is not synchronized between threads.
"The current recommendation is for plugins to copy the type ID from the main thread rather than using ::newId() within any other threads."
However, the RegisterBlocksDemoPM5 example appears to use ::newId() in a way that does not strictly enforce this main-thread copying recommendation.
The problem comes from the core issue (related to pmmp/PocketMine-MP#6062) where
BlockTypeIds::newId()is not synchronized between threads.However, the RegisterBlocksDemoPM5 example appears to use
::newId()in a way that does not strictly enforce this main-thread copying recommendation.