I would be willing to compensate your time with payment. Just let know your hourly and expected investment. I would really like to see both of these work together. This would specifically be for 12.2
Thanks for the continued investment into this mod. I've been following the project for about 3 or 4 years now, and it seems like other modders are starting to take notice (finally). This https://github.com/OpenCubicChunks/CubicChunks/issues/448, is very useful and much appreciated. I'd like to help with checking compatibility, even if it's just testing if a few mods work or not and providing logs (whether that's with vanilla forge, or SpongeForge).
I'm also just curious as to how Extreme reactors might stop working. The mod itself doesn't matter, but I can understand why it presents a bit of a challenge for cubic chunks. Basically if the reactor is 176 blocks tall (not likely, but let's assume), or even if you're up high and just a small reactor goes over some y chunk borders, and chunk render radius is set to 10, then there's an issue with the multi-block structure. Is that correct? (I'm wondering why the y-axis here would present a different issue instead of say a reactor crossing a few x/z-axes with chunk render radius set to 2 or something).
Is a band-aid for this something like
The extreme reactors mod checking if a player is in rendering range of certain block type
Checking if that block type borders a chunk border
If yes, load the chunk where the block borders another chunk, up to a limit of +/-256 blocks along the global y-axis from the origin point.
Loop the process until limit is reached or no more bordering blocks are found
If no more bordering blocks were found, then start loading the internals of the reactor?
I realize a big part of the answer is: I don't know because I didn't code that mod.
Obviously I have no idea about the performance implications, but I'm just wondering if that would theoretically fix such an issue or not.
I'm also just curious as to how Extreme reactors might stop working. The mod itself doesn't matter, but I can understand why it presents a bit of a challenge for cubic chunks. Basically if the reactor is 176 blocks tall (not likely, but let's assume), or even if you're up high and just a small reactor goes over some y chunk borders, and chunk render radius is set to 10, then there's an issue with the multi-block structure. Is that correct? (I'm wondering why the y-axis here would present a different issue instead of say a reactor crossing a few x/z-axes with chunk render radius set to 2 or something).
Is a band-aid for this something like
The extreme reactors mod checking if a player is in rendering range of certain block type
Checking if that block type borders a chunk border
If yes, load the chunk where the block borders another chunk, up to a limit of +/-256 blocks along the global y-axis from the origin point.
Loop the process until limit is reached or no more bordering blocks are found
If no more bordering blocks were found, then start loading the internals of the reactor?
I realize a big part of the answer is: I don't know because I didn't code that mod.
Obviously I have no idea about the performance implications, but I'm just wondering if that would theoretically fix such an issue or not.
The reason it stops working, is an implementation detail in the multiblock handling library the mod author made.
Because {some handwavy explanation about some issues} the mod for some reason can't use a method within TileEntity called when it gets loaded to initialize itself, and check if the multiblock is valid.
Instead it listens to world global chunk load event, and every time a chunk is loaded, it looks at all the tile entities in that chunk, and tries to keep track of the state of it's own multiblock structures this way. And this breaks because after that, it never re-checks that the multiblock is valid, so if it doesn't get it right on chunk load, it will stay inactive.
The big problem here is that the forge chunk load event is more or less meaningless within a cubic chunks world. The reason is the way cubic chunks achieves any reasonable mod compatibility at all: virtualizing vanilla Chunk. Normally, a Chunk object contains constant, 16 of 16x16x16 sections, an they are all loaded at once. Chunk has various methods to access blocks etc...
Instead of adding a third coordinate directly to Chunk object, cubic chunks makes the chunk look like it's effectively infinite in height, with parts of it getting dynamically loaded and unloaded.
So a "Chunk being loaded" really means that an empty chunk object has been created, without any cubes in it yet. So when ZeroCore is trying to list the tile entities there, it sees none of them. CubicChunks still correctly calls the TileEntity onLoad method, but because the mod sees the corresponding chunk load event long before the tile entity exists, it never adds it to it's internal structures, and never activates it.
And I can't fire another chunk load event every time a cube is loaded, because that is very likely to break other mods. And a chunk load event has no data about Y coordinate.
I know for a fact that ZeroCore WILL work fine if I re-fire the chunk load event on every cube load, but again, this is not something I want to do to avoid potentially breaking other mods (chunk load event can be used in a way that is compatible with cubic chunks)
For those that happen to be lurking this topic, just FYI the Discord channel is very active if you're interesting in getting involved with the community:
Is there anyway to make this compatible with https://www.curseforge.com/minecraft/mc-mods/underground-biomes
I would be willing to compensate your time with payment. Just let know your hourly and expected investment. I would really like to see both of these work together. This would specifically be for 12.2
Underground Biomes compat is being worked on with an addon mod. Development news is on the discord.
Cubic Chunks mod: https://discord.gg/kMfWg9m
Mental Block server: https://discord.gg/AssnrXr
Thanks for the continued investment into this mod. I've been following the project for about 3 or 4 years now, and it seems like other modders are starting to take notice (finally). This https://github.com/OpenCubicChunks/CubicChunks/issues/448, is very useful and much appreciated. I'd like to help with checking compatibility, even if it's just testing if a few mods work or not and providing logs (whether that's with vanilla forge, or SpongeForge).
I'm also just curious as to how Extreme reactors might stop working. The mod itself doesn't matter, but I can understand why it presents a bit of a challenge for cubic chunks. Basically if the reactor is 176 blocks tall (not likely, but let's assume), or even if you're up high and just a small reactor goes over some y chunk borders, and chunk render radius is set to 10, then there's an issue with the multi-block structure. Is that correct? (I'm wondering why the y-axis here would present a different issue instead of say a reactor crossing a few x/z-axes with chunk render radius set to 2 or something).
Is a band-aid for this something like
I realize a big part of the answer is: I don't know because I didn't code that mod.
Obviously I have no idea about the performance implications, but I'm just wondering if that would theoretically fix such an issue or not.
The reason it stops working, is an implementation detail in the multiblock handling library the mod author made.
Because {some handwavy explanation about some issues} the mod for some reason can't use a method within TileEntity called when it gets loaded to initialize itself, and check if the multiblock is valid.
Instead it listens to world global chunk load event, and every time a chunk is loaded, it looks at all the tile entities in that chunk, and tries to keep track of the state of it's own multiblock structures this way. And this breaks because after that, it never re-checks that the multiblock is valid, so if it doesn't get it right on chunk load, it will stay inactive.
The big problem here is that the forge chunk load event is more or less meaningless within a cubic chunks world. The reason is the way cubic chunks achieves any reasonable mod compatibility at all: virtualizing vanilla Chunk. Normally, a Chunk object contains constant, 16 of 16x16x16 sections, an they are all loaded at once. Chunk has various methods to access blocks etc...
Instead of adding a third coordinate directly to Chunk object, cubic chunks makes the chunk look like it's effectively infinite in height, with parts of it getting dynamically loaded and unloaded.
So a "Chunk being loaded" really means that an empty chunk object has been created, without any cubes in it yet. So when ZeroCore is trying to list the tile entities there, it sees none of them. CubicChunks still correctly calls the TileEntity onLoad method, but because the mod sees the corresponding chunk load event long before the tile entity exists, it never adds it to it's internal structures, and never activates it.
And I can't fire another chunk load event every time a cube is loaded, because that is very likely to break other mods. And a chunk load event has no data about Y coordinate.
I know for a fact that ZeroCore WILL work fine if I re-fire the chunk load event on every cube load, but again, this is not something I want to do to avoid potentially breaking other mods (chunk load event can be used in a way that is compatible with cubic chunks)
Cubic chunks discord server
For those that happen to be lurking this topic, just FYI the Discord channel is very active if you're interesting in getting involved with the community:
https://discord.gg/kMfWg9m