WorldGuard

WorldGuard

8M Downloads

Poly regions don't function correctly

LadyCailinBot opened this issue ยท 3 comments

commented

WORLDGUARD-3416 - Reported by Islid

It appears that polygon regions don't properly include any blocks selected by them that overlap a chunk other than the one that the region's first point was defined inside of. I can't get the bug to replicate reliably, but the issue only seems to occur if you include just a few blocks from another chunk inside of the poly region.

I can get it to happen most reliably by creating a 2x2 polygon region at the convergence of four different chunks and testing to see if each of the four blocks contained within are inside of the region. One or more of them will inevitably not be marked as part of the region despite being clicked and included. I've attached a couple of screenshots demonstrating roughly what I'm talking about.

I'm using Spigot version git-Spigot-15fa8e1-17a3db7 and WorldGuard version 6.0.0-beta-05.1569. This problem is present in the most up-to-date version of Spigot as of the time of this post as well, so I know it isn't that.

If you need any other information, just let me know!

commented

Comment by Islid

Oh, I forgot to include this clarification - the green block in the screenshot above is the only one actually included in the region "test44". The red blocks are not included despite being selected.

commented

Comment by MSherwin

I can confirm this issue still exists in WorldGuard 6.1 with WorldEdit 6.0. I made a poly region that was sitting on a chunk boundary. At first, the region was fine and included all selected blocks. However, after 1 reset of my server, I lost 5 of the blocks closest to the chunk boundary. I then reset my server again and lost a block that was at least 4 blocks away from the chunk boundary. I have linked a visualization of the changing state of the region. The first image shows the initial state of the region, the second one shows the state of the region after one restart, and the third after the second restart. Purple is to indicate the region as it is currently and blue shows the region as it was initially.