multiconnect

multiconnect

108k Downloads

Structure voids show up as unrelated blocks lower than 1.10 on ViaBackwards servers

mygizli04 opened this issue ยท 8 comments

commented

This is what it should look like ( from 1.10 multiconnect )
1.10

This is what it looks like in 1.9 multiconnect
1.9

And even though it's in the 1.8 branch, this is what it looks like with 1.8 multiconnect
1.8

This is what it looks like in vanilla 1.9/1.8
vanilla

Tested on minehut. I imagined it'd be a problem with viaversion but i couldn't reproduce with paper using viaversion.

commented

What block is that? That looks like air in vanilla, not flowing water. It could be block 36 or barrier.

commented

gggggg
Seems to be the structure void block

commented

What is it in vanilla 1.9 and below? The structure void block was introduced in 1.10

commented

It doesn't show as anything just the block behind it, although I don't think the server is 1.8.9 because if I do /version it tells me its using version 1.16.4 so it might be using ViaBackwards

commented

If you do /plugins it shows you that it uses the 3 via plugins ( i believe forks )

commented

If I were to guess, if a 1.9/1.8 client is presented with chunk data containing blocks it doesn't understand, it replaces them with air. So ViaBackwards relies on this behaviour and leaves structure voids untranslated. However when multiconnect receives blocks that the server shouldn't recognize, that is treated like undefined behaviour, hence what you're seeing.

commented

The question now is whether multiconnect is wrong to treat this as undefined behaviour, or whether ViaBackwards is wrong not to sanitize this data.

commented

Just looked at the ViaBackwards code, it seems to map structure voids to block ID 287 for some reason, but that block ID doesn't exist, so my hypothesis was almost right.