PneumaticCraft: Repressurized

PneumaticCraft: Repressurized

43M Downloads

semiblocktracker spamming server with errors causeing desync

magefilms opened this issue ยท 14 comments

commented

Describe the bug

we get major desync when not in a specific chunk, when checking the consol forr errors we see "pneumaticcraft/]: SemiblockTracker: not overwriting existing semiblock at ServerLevel[world], pos=BlockPos{x=538, y=35, z=-280}, dir=null!"
being spammed out at a ungodly rate

How to reproduce the bug

no clue whats causing it so no idea how to reproduce the bug

Expected behavior

major rubber banding and an ungoldy amount of spam with in the server console

Additional details

the server is running all the mods 7 version 0.3.12

Which Minecraft version are you using?

1.18

Crash log

No response

commented

The problem still remains:
[Server thread/ERROR] [pneumaticcraft/]: SemiblockTracker: not overwriting existing semiblock at ServerLevel[world], pos=BlockPos{x=-2209, y=96, z=12}, dir=south!

The world reset is not a option for me

Mod version: 3.2.2-79
Forge version: 40.1.19

commented

I just checked it was on version minecraft version 1.18.2 mod version 3.1.5

commented

We resolved the issue by resetting the World we havnt had the issue since

commented

Specifically which version of PNC is this? There were fixes for this in 3.1.2.

commented

OK, closing this for now, feel free to reopen if the problem reoccurs.

commented

I am receiving a similar issue in my ATM8 server as the OP.
Minecraft 1.19.2, ATM8 pack version 1.0.22, pneumaticcraft-repressurized-1.19.2-4.3.5-25.jar

[Server thread/ERROR] [pneumaticcraft/]: SemiblockTracker: not overwriting existing semiblock at ServerLevel[HowieCraft], pos=BlockPos{x=-2236, y=47, z=-2333}, dir=null

Going to this block I found a chest with a Heat frame. I broke and replaced the chest and frame to no effect.

commented

To add a little more to this, the chunk that became desynced only had one PneumaticCraft structure in it, the refinery (and the outputs stacked on top of it), it was right in the corner of the chunk so even the lava I was trickling down its' back was in a different chunk, but it was the only PneumaticCraft thing within the chunk; strangely enough, all of the coordinates we get from the server errors never seem to be located within the desynced chunk, it's always elsewhere.

I do have a kerosene lamp overlooking my farm with the crop supports, I know that seems innocuous, but apparently it had an issue in which the light blocks it was producing wasn't being tagged as "air", and thus was causing issues with multiblock structures; I think it was fixed for Minecraft 1.19, but it may still be causing issues in 1.18.

My main worry with this bug is that it's incredibly difficult to narrow down, we can pitch speculation left, right, and centre, but without narrowing it down, the devs are going to have to look into everything without a real clue as to what they're looking for, and that's time consuming.

Truth be told, I'm not actually sure what crop supports are; Jade tags them as air, the pneumatic wrench can't remove them, a sword can remove them easily like they can for boats, even with DoTileDrops set to false, they still drop; I legitimately have no idea what they are.

commented

I guess I'll add onto this as well; the server I'm in had been having this issue too, fluids stopped flowing such as the lava down the back of the refinery; and redstone stopped functioning as well. I'm operating Minecraft 1.18.2, Forge 40.2.10, and PneumaticCraft 3.6.0-19.
It seems all of this did occur within a specific chunk, everything worked fine outside of it.

The coordinates being provided by the error seemed to change however, and would only display coordinates around my farm, which lead me to believe it had something to do with the crop supports. I'm not sure if that info would help, but this issue is so strange to me that it's all I really have to go on.

commented

So it seems to be related not just to heat frames but any semiblock? so, that would mean crop supports, heat frames, logistics frames, transfer gadget and so on. I wonder, if you go into the problematic areas and remove all these semiblocks (they will show up by default as purple dots on a xaeros minimap, they are entities, similar to botania's mana bursts) and then log out and restart the server, then log back in and place the semiblocks back, if the problem persists. I wonder if one of the recent updates has perhaps caused some invalid cache state to get loaded, because the fact that resetting the world fixed it for magefilms hints to me that there is an invalid cache getting loaded

commented

I've made a quick Youtube video showing what is happening on my end: https://youtu.be/xcoPwX8741c

To give some notes on this:

  • This issue is entirely localised within that specific chunk, everything works properly outside of it.
  • Although there is a charging station located within the chunk in the main base area, the bug was occurring before that was there; at the time of the bug, the only PneumaticCraft objects that existed within the chunk was the refinery controller, the four refinery outputs, a medium fluid tank (it is now large by the time of this video, bug is still occurring), and something I completely forgot about because it's hidden away, a transfer gadget to move the oil from the tank to the refinery.
  • Although the bug appears to be occurring specifically in this chunk, there are other users on the server that have been tinkering with PneumaticCraft as well, and also have their own refineries; however, I don't think they're using transfer gadgets. which leads me to believe that may be the cause.
  • After a server reset, the bug seems benign until I teleport away using a waystone (from the Waystones mod) or a teleport command added by a datapack (/spawn, /home, /tpa, /back), at which point the chunk begins acting funny again; although this may be happenstance.
  • The coordinates provided within the error from the server seem to be random, they're in and around the base, but none of them have lined up with the desynced chunk.

Feel free to ask for any more into, I'll try to accommodate.

commented

Truth be told, I'm not actually sure what crop supports are; Jade tags them as air, the pneumatic wrench can't remove them, a sword can remove them easily like they can for boats, even with DoTileDrops set to false, they still drop; I legitimately have no idea what they are.

It's an entity. Like a minecart, boat or item frame. This is how they can occupy the same space as another block without causing conflicts. I'm not familiar enough with modding to know if these are called Semiblocks by other mods, but PNC refers to them as Semiblocks. PS: You can insta remove a crop support by sneak-right clicking with another crop support or with a logistics configurator

commented

To those seeing this message in their log: are you actually seeing a desync in behaviour as well? i.e. are the client and server getting out of sync?

Some background: the SemiblockTracker is a class in PNC which keeps track of existing semiblocks (which are indeed entities) by block position. And yeah "semiblock" is a PNC-specific term. They're a bit like item frames or paintings, in that they attach to blocks and stay put, but they're entities, not blocks.

Anyway the SemiblockTracker holds the information needed to know quickly which semiblocks are attached to any given blockpos (there can be multiple since some semiblocks are sided, like logistics frames). When you see that error, it means the server thinks that a semiblock entity needs to be associated with a particular block/side, but something is already associated with that position/side.

How would that happen? Shouldn't normally, but I guess it's possible that a previous semiblock got broken and somehow the server missed the break event. Or that it was in a chunk which unloaded (which should cause semiblocks to be removed from the tracker) and reloaded. In any case, it's not a problem I can actually reproduce, which makes fixing it hard.

To those experiencing the problem, I would suggest trying without any "performance" mods you might have installed (you know, the sort of mod which improves your performance by breaking vanilla in various subtle ways...)

commented

TBH looking at that video, I suspect the errors PNC is logging are a symptom of the problem, not the cause. Not sure what's going on there, but something's definitely wrong with that chunk...