Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multi-block ME controllers forcing chunks to stay loaded #1656

Closed
RoyCurtis opened this issue Jun 29, 2015 · 4 comments
Closed

Multi-block ME controllers forcing chunks to stay loaded #1656

RoyCurtis opened this issue Jun 29, 2015 · 4 comments

Comments

@RoyCurtis
Copy link

@RoyCurtis RoyCurtis commented Jun 29, 2015

It appears that ME Controllers are keeping their chunk(s) loaded ("orphaned"?) without using the Forge forced chunk ticket system, when:

This causes surrounding chunks to load by other means such as conduits and machinery from other mods, which then become unloaded during auto-save and immediately loaded again by the ME controller keeping the chunk alive.

Details

Discovered on

  • Direwolf20 1.7.10 1.4.1 and 1.5.0 live server
  • Forge 10.13.4.1448
  • Applied Energistics rv2-stable-3 and rv2-stable-9

Screenshots

Reproduction

Testing environment

Steps

  1. Create a flatland creative world with cheats enabled
  2. Execute /tp 0 8 0 and then /setworldspawn (keeps spawn chunks away from testing areas)
  3. Execute /tp 1000 8 1000
  4. Build an ME controller setup with one block, an Energy Acceptor and a Creative Energy Cell
  5. Execute /tp 1000 8 -1000
  6. Repeat step 4, but with a multi-block ME Controller setup
  7. Execute /tp -1000 8 1000
  8. Repeat step 4, but with multiple multi-block ME controller setups
  9. Repeat steps 7 and 8 at /tp -1000 8 -1000
  10. Execute /tp 0 8 0
  11. Press ESC to open the main menu and force a chunk purge
  12. Resume game and execute /chunkloaders. A new window will open under Minecraft
  13. Observe that chunks with the multi-block ME Controllers are kept loaded, whilst the chunk with only a single ME controller is properly unloaded

Notes

I discovered this bug as part of a long running investigation as to why chunks are mysteriously loading and unloading at random on my server. It is possible that other mods and factors are contributing to the problem, but I believe this particular bug is a major contributor.

To determine the existance of this bug, I took an offline copy of an affected base and tore it down machine by machine (e.g. reactor, turbine, EnderIO conduits, etc) and teleported in and out, until I was able to unload the chunk.

Because of time constraints and lack of experience with the AE2 codebase, I am unable to offer any advice or pull requests.

@yueh yueh added the type-bug label Jul 1, 2015
@yueh yueh added the state-fixed label Jul 1, 2015
@RoyCurtis
Copy link
Author

@RoyCurtis RoyCurtis commented Jul 2, 2015

Really cool! Looking forward to trying this out. Thank you for the fix, @yueh

Edit: Tested the build of this fix using a TeamCity guest account; success! No more forced chunks.

@KennyBurch
Copy link

@KennyBurch KennyBurch commented Jul 5, 2015

I'm curious now, I have been fighting with the ME2 controller(just using a single block) losing all contact with ALL storage devices when I use chickenchunks chunkloader on my base. (Controller stops talking to drives when I move away from my base and the chunks get cleaned up) I wonder if the current 'broken keeping chunks loaded' would keep the system working if I use a multiblock controller.

@yueh yueh closed this in f5e3ae8 Jul 14, 2015
yueh added a commit that referenced this issue Jul 14, 2015
Fixes #1656 Reduces the amount of block updates a controller sends.
@123Kappa

This comment was marked as spam.

@bigenergy

This comment was marked as spam.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 27, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.