ChiselsAndBits / Chisels-and-Bits

A Minecraft mod about chiseling and designing custom blocks in game.
https://algorithmx2.github.io/Chisels-and-Bits/
MIT License
218 stars 80 forks source link

Config Sync - Gameplay should reflect server config #107

Closed Utildayael closed 3 years ago

Utildayael commented 8 years ago

Odd one for ya. My blocks are losing their light output when I log off the server.

If I take a positive design and copy the block then re-apply pattern to the same block it lights up again and outputs the light properly.

Log off? Lose light again. Log on and do same workaround? Works again.

chiselsandbits-11.7 Minecraft 1.10.2 Forge 12.18.1.2039

Love the mod btw. Spending waaaaaaay too much time making pretty blocks. :)

AlgorithmX2 commented 8 years ago

I tried to reproduce this, however once the block appears to emit light it seems to keep it even when, re-loading the world.

Over all I think this is actually related to https://github.com/AlgorithmX2/Chisels-and-Bits/issues/81

AlgorithmX2 commented 8 years ago

Glad your enjoying the mod btw.

Utildayael commented 8 years ago

Ya I was reading #81 and thought the same thing but wasn't sure. :)

Did some more testing and just left the area for a bit to work on something else.. came back.. light gone.

This time instead of using the pattern I just chiseled a little bit off one of the blocks and it lit up again immediately. For what it's worth, we have D:bitLightPercentage set to 0.0001 but I wouldn't think that would matter.

AlgorithmX2 commented 8 years ago

Its quite possible that changing bitLightPercentage has resulted in an exaggeration of the bug in question. I'll have to see if it might be related.

Utildayael commented 8 years ago

Much appreciated. My empire of custom made light fixtures MUST NOT BE STOPPED!

Ok mostly I'm just redoing most of the factory blocks in chisel to be uber C&B 3D awesome which just so happens to include making some of them into light variants. :)

Utildayael commented 8 years ago

Sidenote, can you confirm the setting is D:bitLightPercentage is the % of a block that needs to be light sources? For some reason my server admin set it to 100 which means it has to be 100% light blocks no? If that's the case, might be part of the issue...

AlgorithmX2 commented 8 years ago

Yes, The default is 6.25 which is 6.25% ( basically 1 plane ) if its set to 100% then yes the entire block must a light emitting block to reach full brightness.

Earlier you said you had a much different value for that, was there a discrepancy between the server and the client configs? if so that would almost certainly account of the change on each login ( since the server says one thing, then you change it, the client says another thing )

Utildayael commented 8 years ago

Yes sir. I had my client set to 0.001 which is the lowest you can set it using the "mod options" within the game. Server was set to 100.

So in testing I just made a single player world and made a few chisel bits blocks. I flew out 500 blocks away and warped back. Still lit.

Quit game. Came back. Still lit.

Maybe multiple issues here.

When I update a block on the server it goes to full light even tho the server config is set to 100 and the block is most definitely NOT 100% light block. Some I tested with were factory blocks from Chisel that contained maybe 48 total bits of glowstone [8 per face, all faces].

The client/server config mismatch causing rending issues makes sense tho. Note that in my above server example, when I F7 to check light levels after updating the block it properly displays things as lit. When the block goes back to "dim" due to chunk unload [or logoff which I guess is also chunk unload] the light reading goes back to no light.

Hope that helps in troubleshooting. Happy to test anything else you need. :)

AlgorithmX2 commented 8 years ago

At the moment the server doesn't report its configuration to the client, this I think is the core issue. This would resolve the mis-match.

Utildayael commented 8 years ago

Makes sense. I'll get my server admin to set the setting to 0.001 so it matches what I have and give that a whirl.

Utildayael commented 8 years ago

Did some minor testing by setting my client config to 100 to match exactly what he put in the config and tried updating blocks. As expected they did not light up as they did when I have 0.001 and server had 100 so hopefully that helps. This was tested yesterday before the upgrade to 11.8 and that whole ordeal.

He's updating tonight to 11.9 and fixing the config to be 0.001 so I'll test with both sides matching to make sure the reverse works [ie: things light up and stay lit as desired and as it works in SP].

AlgorithmX2 commented 8 years ago

Ok, so far I think everything hints to the main issue being that de-sync, so i'll rename the issue to reflect that.

Utildayael commented 8 years ago

Confirmed tonight [server was blown up yesterday, loooong story but you heard part of it with the 11.8 bit]

Got on today. Made some blocks. Gave them light. Server config is set to 0.001 and my client config matches. Blocks light up yay! Leave game and come back, blocks still light up properly.

Definitely a server/client config mismatch issue. If you can make the client read the server config and use those values over its own I think that might sort the issue out.

The reverse is also true as we discussed yesterday. 100 on server, 0.001 on client and the client can make blocks light up even tho it is against the server config. Server corrects this issue when the chunk is unloaded/loaded as it loads C&B blocks with the server config settings until the user updates the block by using a chisel on it or a pattern which sets it back to client settings.

Cheers :)