Permanent and Remote Chunk Loading with Perma-Loader in Minecraft

Sdílet
Vložit
  • čas přidán 20. 02. 2017
  • While figuring out how chunk unloading works in Minecraft, it turns out you can permanently load chunk even not connecting them to spawn, so you can permanently chunkload random areas in your world, as small as a single chunk.
    As a demonstration of capabilities of Perma-Loader, I run three separate stronghold sand farms at the same time using one player only. It works in Singleplayer and Multiplayer, and in case of multiplayer - doesn't require any player to be loaded.
    I am pretty sure, that permaloader should allow for many interesting new things to develop.
    DEMO WORLD DOWNLOAD: bit.ly/permaloader_112
    version of the Carpet mod including chunk unload order, and fixed brewers:
    github.com/gnembon/carpetmod112
    References:
    Casper and 2No2Name Sand Machine:
    • Minecraft 1.9/1.10/1.1...
    Ilmango's Simple 108k/s gravity blocks generator
    • [Tutorial] Sand/Concre...
    Wout12345 research on permanent chunk loading (pre 1.9) (felt irrelevant to me at the time of this publication, which is not necessarily true)
    • Stable chunk loading, ...
    • Stable chunk loading, ...
    --------------
    Recorded with Minecraft 1.11.2 Optifine and 1.11.2 Carpet Mod.
    Minecraft IGN: gnembon
    Find me on Twitter: / gnembon_mc
    Intro by Reye:
    / @reye2448
    Resource Pack: Minecraft HD 64 www.minecraftforum.net/forums/... with a few modified textures
    wherever textures are not updated I overlay 1.12 faithful 32 on top
    modified textures:
    - bedrock bit.ly/bright_bedrock
    - hopper arrow bit.ly/hopper_arrow
    Music:
    Wolfgang Amadeus Mozart. Clarinet Quintet in A, K. 581. By William McColl:
    musopen.org/music/2389/wolfga...
  • Hry

Komentáře • 601

  • @gabrielkellar2657
    @gabrielkellar2657 Před 5 lety +763

    "but who would want to load 12000 chunks"
    *the whole of the scicraft server*

    • @xavierearnst6245
      @xavierearnst6245 Před 5 lety +1

      me 2

    • @dolorem8426
      @dolorem8426 Před 4 lety +2

      Id like to 500 chunks mine alone in my survival world because of my nether portal item transfer but meh

    • @somebodylikesbacon1960
      @somebodylikesbacon1960 Před 4 lety +9

      Also people with teleporters and ender cannons but that's just scicraft.

    • @PrinceJes
      @PrinceJes Před 4 lety +6

      I need my crops and animals to grow when I am away, will this technique help me?

    • @ralphy1054
      @ralphy1054 Před 4 lety

      @kiiseLLi I think random ticks happen in any loaded chunk as long as it isnt a lazy chunk

  • @spicybaguette7706
    @spicybaguette7706 Před 6 lety +194

    this has cleared up a lot for me, now i finally understand when scicraft members are rambling about "permaloading", "unload priorities" and more

  • @MoejoTheGreat
    @MoejoTheGreat Před 7 lety +509

    Came for a MC video, got a basic lesson in coding and fractal geometry.

    • @gnembon
      @gnembon  Před 7 lety +117

      Nothing is certain these days. These are the times we live in...

    • @AtlasReburdened
      @AtlasReburdened Před 7 lety +8

      And this it only the beginning. Just wait until mild AI's are put to use hunting for emergent game properties.

    • @victor_2403
      @victor_2403 Před 3 lety +1

      Wait, did you come from ElRichMc's video?

  • @myreneario7216
    @myreneario7216 Před 7 lety +304

    I would say that this is revolutionary. As far as I could tell, the question of how to prevent chunks from unloading, instead of just reloading them every gtick, was the biggest open question there previously was in chunk loading. Also, the fact that you managed to get something useful out of a hashset order is very impressive.
    23:50 "I hope nobody fell asleep". Well, I certainly didn´t.

    • @jinglemich4941
      @jinglemich4941 Před 7 lety +13

      Myren Eario, I believe some times the hardest part is just know what questions to ask/what the real problem is.

    • @myreneario7216
      @myreneario7216 Před 7 lety +11

      @Theguy Mich
      I agree that there are problems of that kind, but I don´t think this is one of them. The fact that constantly reloading a chunk is not good enough for many applications was known before. I would say the main difficulty here was not finding the correct question, but having the persistence to get through the wonderful hashset code.

    • @gnembon
      @gnembon  Před 7 lety +12

      Java explicitly states in the docs, that hashing is solely for effective storage purposes with fast execution, and it is up to the client to provide with a good enough hash (32bit int).

    • @gnembon
      @gnembon  Před 7 lety +10

      Thanks Myren. I know that unstable chunkloading has caused issues in the past, and I am not knowledgeable enough to list all the implications.

    • @MethodZzS
      @MethodZzS Před 7 lety +24

      this is amazing but....
      NOONE MENTIONED THE OBSERVER TURNING ITSELF THATS REVOLUTIONARY xD

  • @HtotheG
    @HtotheG Před 7 lety +201

    It was a little hard to follow but if I understand it right, you sir are a Minecraft genius that just solved all of our chunk loading problems. Great video clearly put a lot of time into figuring this out.

    • @gnembon
      @gnembon  Před 7 lety +36

      Thanks. Indeed, it took quite a bit of time.

  • @naguleader
    @naguleader Před 6 lety +86

    but first we need to talk about parallel universes!

  • @RaysWorks
    @RaysWorks Před 7 lety +240

    Cool find!

    • @gnembon
      @gnembon  Před 7 lety +40

      :)

    • @descai10
      @descai10 Před 7 lety +4

      Don't make a video on this please, don't want mc to patch it fast

    • @Gralysin
      @Gralysin Před 7 lety +11

      Rays found it... MC is doomed

    • @thisflyingpotato4227
      @thisflyingpotato4227 Před 5 lety

      @Engineer GamerPlays Yup, that's why they will never ever change it :')

    • @areebmasoodi8932
      @areebmasoodi8932 Před 4 lety +1

      @@thisflyingpotato4227 does this still work?

  • @x7upsuperstar
    @x7upsuperstar Před 7 lety +304

    All I understand is: Using some Mystical Magic™ (powered by Java), you can make minecraft load chunks and do stuff.
    *ALL HAIL THE SMART MAN*

    • @roukurai
      @roukurai Před 6 lety +6

      same

    • @rmay2215
      @rmay2215 Před 4 lety

      Mystical Magic™ is nuts

    • @psun256
      @psun256 Před 4 lety

      Java: Write once, be super buggy and exploitable everywhere

  • @supetorus9612
    @supetorus9612 Před 7 lety +37

    My head hurts. I will have to watch this a few time probably before I understand enough to make it work for me.

    • @gnembon
      @gnembon  Před 7 lety +8

      sorry for the headache. I like to be thorough with my explanations.

    • @supetorus9612
      @supetorus9612 Před 7 lety +6

      No I'm glad you are so thorough. I watched it again and it makes more sense than the first time.
      Question: will this work on a spigot server?

  • @flowkap6911
    @flowkap6911 Před 7 lety +104

    True respect! I'm software engineer and this was very interesting!

  • @Nooticus
    @Nooticus Před 7 lety +28

    Great video gnembon! I understood about 75% of it and this is revolutionary!

    • @PingiPuck
      @PingiPuck Před 7 lety +1

      Nooticus 75%

    • @gnembon
      @gnembon  Před 7 lety +15

      I knew somebody would fall asleep ;-)

  • @th30519
    @th30519 Před 7 lety +1

    Your choice of background music is soothing. I was watching this during my lunch break and drifted off during the middle. When my computer locked from inactivity it made a chime noise which woke up me up.
    I love the Terracotta Tree! Keep up the fantastic work, I learn a lot from your videos.

    • @gnembon
      @gnembon  Před 7 lety

      I knew somebody would fall asleep ;-)

  • @TheTrueStarGalaxy11
    @TheTrueStarGalaxy11 Před 7 lety +28

    Great Video! I may use this to keep some farms loaded in my world. I really enjoy these types of in-depth explanatory videos. I liked the visualisations with the glazed terracotta, it looked really professional. The carpets made it easy to follow so I'd be glad to see more like this! Great work!
    Side note, any else having youtube change design between videos and signing in causing problems like the video just reloading?

    • @gnembon
      @gnembon  Před 7 lety +10

      Thanks. These slides took quite some time to prepare :-)

    • @TheTrueStarGalaxy11
      @TheTrueStarGalaxy11 Před 7 lety +3

      It definitely shows, It is always nice to see your videos, I hope you keep producing them! I try to play as technically as possible so these moderately easy yet very useful and technical quirks are always fun to include!

  • @kinomora-gaming
    @kinomora-gaming Před 7 lety +6

    This is really cool, and impressive that you were able to explain this so clearly and simply.
    I just can't help but think how many people are going to try to build this on multiplayer servers and the bog down their processing power due to having 100+ permanently loaded chunks on top of what other players are doing. That's equivalent to about 2-3 extra players on a server, which for lower-end systems, can do a pretty decent amount of damage. Especially if high-resource intensive processes are going on in those chunks :/

    • @gnembon
      @gnembon  Před 7 lety +8

      With 12 view distance, each player is about 600 loaded chunks and more than 400 of them - entity processing. permaloader is only 160 chunks and all of them lazy. No need to drag hopper chains from spawn, and only chunkloading certain areas of interests is another saving. In my example with three strongholds, I chunkloaded in total 160 chunks for permaloader, 75 for three strongholds and 30 in the end at the entrance obsidian platform - that's (5 total entity processing chunks). That's cheap comparing to even a single player.

  • @GaliaMinecraft
    @GaliaMinecraft Před 7 lety +18

    nice ending XD
    great video, I am glad someone desided to take a look at the code. that permanent loading was possible did not surprise me that much, but how well it works is great. and thanks for making a mod that shows the priority... great job!
    btw might be useful if you include some "notes"in the description including important information like how many chunks you need to load. so that when people forget something they can just read that instead of watching the whole video again

    • @gnembon
      @gnembon  Před 7 lety +4

      Fair points. I need to take a short break now, but adding some extra information in the desc sounds like it might be pretty useful. Also - you reminded me I should at least update the carpet patch files to include unload order and cactus flipping tool, even without a video about it.

    • @SUPERNOOB20
      @SUPERNOOB20 Před 7 lety +2

      gnembon_mc Wait, so the 12 chunk render settings thing you mentioned in the video was to keep the loader working? Makes sense, but R.I.P potato pc :C

  • @lakinpriii
    @lakinpriii Před 6 lety +2

    I am stunned that you only have 19k subscribers. Your channel is approachable without the aggravating non-humor, yelling, and quips of so many minecraft youtubers, and have incredible game and metagame information to offer. Thank you so much for your work, definitely subscribing and seriously appreciate it.

  • @ZeroForge
    @ZeroForge Před 7 lety

    I really enjoy the complexity explained. Your narration is top notch! Keep up the great work sir.

  • @azyclar
    @azyclar Před 7 lety +1

    What a beautiful, fascinating, informative video. This method of loading arbitrary collections of chunks is amazing.
    To be honest though, the most important thing I got from this video was that you have to have items in the hoppers at chunk boundaries to make them load the next chunk. I was wondering why my chunk chains weren't working!
    Awesome stuff.

  • @reye2448
    @reye2448 Před 7 lety +43

    You are awesome, that´s why i made the intro for you!

    • @gnembon
      @gnembon  Před 7 lety +14

      Thanks for the intro - it gives a much needed structure to the videos :-)

    • @eswee6780
      @eswee6780 Před 5 lety +3

      it is a great intro

  • @Chiaros
    @Chiaros Před 7 lety

    Now that was some high quality content. Waiting to see your 100k subscribers special :)

  • @ballzai8232
    @ballzai8232 Před 7 lety +1

    You sir just answered one of minecraft's longest questions. Perma chunkloading!
    Epic job!

  • @MaizumaGames
    @MaizumaGames Před 7 lety +6

    I'll be using those fine techniques for sure.

  • @25A0
    @25A0 Před 7 lety

    Incredible work! Thanks for taking the time to explain everything in such detail :)

  • @xtofmichel8784
    @xtofmichel8784 Před 7 lety +16

    Once again, you made crystal clear a topic which is not easy to grasp, at least for me. As for the perma-loader, this is definitely brillant but also fragile, because it relies on implementation details which we shouldn't be concerned of. If a programmer decides to use another type of container, or implements a different hashcode algorithm, well...

    • @jinglemich4941
      @jinglemich4941 Před 7 lety

      Xtof Michel I agree, this can so easily be broken :/

    • @Wout12345
      @Wout12345 Před 7 lety

      Yup, but at least it's deterministic. We use similar methods for dungeon generation too, right? :)

    • @xtofmichel8784
      @xtofmichel8784 Před 7 lety +1

      Oh I like popping up the hood of Java classes myself, and see how things are implemented in source code, so I plead guilty. ;) And yes, it's deterministic, but only as long as the library provider(s) don't change their implementation, which they're entitled to. Even a change in the Java library can affect the behavior of the game itself.

    • @Wout12345
      @Wout12345 Před 7 lety

      Yeah yeah, there's no functional requirements covering us, but with the way Mojang decides to change the game sometimes I don't think we ever had a ton of certainty to begin with. :P

    • @gnembon
      @gnembon  Před 7 lety +5

      Yeah, it can always go either way, but the main reason for this working is the fact that Long's hashcode and minecraft representation of two numbers as a single long match perfectly so that chunks with the same X and Z are put together in the same 0 bucket. I don't expect Java changing their approach to hashing in the hashmap, as they clearily state it is intended to be as simple as possible, and not intending to randomize things. And if Java's intention is not to randomize things, there would always be some sort of patterns, that we could use.

  • @TheNoerdy
    @TheNoerdy Před 7 lety +7

    This is incredible. This will change so much about Minecraft.

  • @jyro1072
    @jyro1072 Před 6 lety

    Understanding how minecraft works just because I want a vanilla chunk loader :P
    nice video btw keep up the good work boi

  • @GeeztJeez
    @GeeztJeez Před 4 lety +1

    And now, that music, that background music, makes me learns this video more easier than the essays

  • @tfairfield42
    @tfairfield42 Před 7 lety

    Keep up the good work Gnembon!

  • @xeeebee
    @xeeebee Před 7 lety +4

    If I build a really large chunk loader, it relies completely on chunks with priority zero. When I now disable parts of the chunk loader, such that now all chunks with priority one will get unloaded too, I could easily detect that and use that as a wireless redstone signal over an arbitrary distance. Then I could hook that up to an enderpearl teleporter, that would teleport me after the next unloading cycle. Maybe even a dialing device might be possible for that, but that would be kinda slow, as transfering one bit takes 30 sec each. So many new options, awesome!

    • @gnembon
      @gnembon  Před 7 lety +2

      Somewhat convoluted, but should work :-). The only problem I see is the fact that to connect chunks with priority 0, you need to connect them through some chunks of priority 1, because there is no other way. But overall you should be able to send a simple signal over any distance. It would be so impractical, but doable.

  • @DeSsTrAiL
    @DeSsTrAiL Před 7 lety

    Great job Gnembon_mc. I love your videos you put alot of work in to them and you deserve more. keep up the good work.

  • @TannerCh
    @TannerCh Před 5 lety

    This video was amazingly well-made. Thanks so much!

  • @danielmaczak8835
    @danielmaczak8835 Před 7 lety

    great job as always gnembon!

  • @Metroid1890
    @Metroid1890 Před 7 lety

    I love your tutorials, they're very fancy.

  • @777static777
    @777static777 Před 4 lety

    Wow that's some heavy Minecraft science! So cool!

  • @simonthiesen8146
    @simonthiesen8146 Před 7 lety +1

    Very clear video on a complex topic. I realy enjoyed it.

  • @Ossy33
    @Ossy33 Před 7 lety +1

    This was alot of information to take in, might have to watch it again :P I will for sure use all of this knowledge and make permaloaders in my world now :D

  • @adrienk339
    @adrienk339 Před 6 lety +4

    Incredible work.. Great job :D !!

  • @ZephaniahNoah
    @ZephaniahNoah Před 7 lety +7

    8:45 That's beautiful.

  • @alienzombieworld1399
    @alienzombieworld1399 Před 7 lety

    Great work! I've subbed and are looking forward to more!

  • @dr.kevorkian7535
    @dr.kevorkian7535 Před 7 lety

    Just came from Welsknight's channel. Just wanted to say thanks for helping him out and LOVE the simple farm design you gave him. it's going to be my standard mob far from now on. Keep up the great work.

  • @jordysmets
    @jordysmets Před 7 lety

    This is mind blowing I guess the normal span chunks are less important now you can make your own loaded chunk

  • @kejoki8123
    @kejoki8123 Před 7 lety +1

    Always enlightening!
    And a very amusing ending. :)

  • @user-wt4yv9dx5k
    @user-wt4yv9dx5k Před 7 lety +1

    Such a well done video!

  • @sager.2753
    @sager.2753 Před 4 lety

    Cool diagrams, really helpful for fast building

  • @ShinyTheDragon
    @ShinyTheDragon Před 6 lety +26

    I've watched this video twice now, and I still have no clue how to setup this :(

  • @toasterhead79
    @toasterhead79 Před 6 lety

    Thank you so much for this video! I was having problems with using spreadplayers to load chunks relative to entities. It seems the command will only reload chunks if they're not already loaded, which meant I was losing the reference to the entity, but with this, I've finally been able to solve it by looping chunks into each other at diagonals!

  • @mitchpolley3887
    @mitchpolley3887 Před 7 lety +1

    Just fantastic work - I love it.

  • @JEM_Fire
    @JEM_Fire Před 5 lety

    Happy new year

  • @SuperNikio2
    @SuperNikio2 Před 7 lety +42

    this is a lot to take in

    • @gnembon
      @gnembon  Před 7 lety +5

      I just wanted to explain all the details, so it is not a black box.

  • @xgozulx
    @xgozulx Před 6 lety +3

    great video and explanation! came from elrichMC's chanel, ehere he uses it in his survival series

  • @sunserega8097
    @sunserega8097 Před 7 lety +1

    I like video of the mechanics of games so much, it is a pity that the high quality is so rarely

    • @gnembon
      @gnembon  Před 7 lety

      Maybe because it takes tons of time to prepare them ;-), but I like doing it

  • @Bringdasnowmonster
    @Bringdasnowmonster Před 4 lety +1

    Does this priority work vertically as well along the Y axis? Also, so if I had a farm out in the distance, would I just follow the priority of the chunks until it lead to the farm? Perhaps I'm not fully understanding this, would appreciate Gnembon or anyone else's reply!

  • @djmacguirk
    @djmacguirk Před 7 lety

    Great video! Subscribed!

  • @Gamer_Dylan_6
    @Gamer_Dylan_6 Před 5 lety +2

    This and “watch for rolling rocks in 0.5 A presses commentated” have the same energy.

  • @bluishpinkwhite9476
    @bluishpinkwhite9476 Před 7 lety +2

    This made me to really look at the code/use of Collections. You're first who did such a thing. #HashMapExploit();

  • @The.Pickle
    @The.Pickle Před 5 lety

    Ooooh I adore your accent, you sound like Javier Bardem, subbed :)
    Oh my gosh, my tiny brain can't keep up.

  • @poromc5019
    @poromc5019 Před 6 lety

    Hello again, I have a question: How can you check if the "45 sec game tick of death" unloads a chunk connected with hoppers to the spawnchunks? what are the things that have a chance to break (apart of overlaped villages)?

  • @Falco.
    @Falco. Před 6 lety

    Very good video!

  • @rudiruessel2922
    @rudiruessel2922 Před 7 lety

    Amazing find! The presentation is very clear and thorough, too.
    In the chain you used in the overworld, i noticed that you load the chunks to both sides of the diagonal even when their priority is greater than 1. One of them is needed to keep the chain going, but i don't see any purpose for the second one. Using only one chunk next to the diagonal every other chunk can save 25 chunk, so reduce the loaded chunks to 125. I've not come across any problems with this method so far, are you aware of any or was it just easier to clone the same structure 50 times?

  • @TheOriginalGamerdud
    @TheOriginalGamerdud Před 4 lety

    that intro is amazing

  • @JaxAug
    @JaxAug Před 4 lety

    Never before have I enjoyed watching something that I completely don’t understand

  • @PotatoArmyTeam
    @PotatoArmyTeam Před 7 lety

    So if I put hoppers facing to another chunk with an item in it and visa versa the two chunks will be loaded or I need to shoot items thrugh a nether portal in the spawn chunks?

  • @poromc5019
    @poromc5019 Před 7 lety +1

    The best video I ever seen about MC. I used the permaloader to secure some areas for an invention in 1.12 and it works perfectly.
    My english is not good, so i needed to repeat many parts to fully understand them. If you ever add english subtitles I could help you translating them to español.
    Few questions:
    - If the permaloader capped the hashtag with 0 and 1 unload order chunks, can you choose placing the starting loop in the intersection between chunks with 7 or 3 priority (magenta or orange)?
    - Is there anyway to use the carpet mod on singleplayer mode, without a server?
    - What is the simplest ecuation to calculate the unload order of the chunks?
    - How many chunks unloads around you when you teleport by commands or nether portals? Is it different if you leave the chunks with end portals?
    - Is it matters the dimension I choose to place the permaloader? If it matters, what should I do if I want to place sensible contraptions in more than one dimension and keeping them alive at the same time?
    - Why do you attach a dropper to hoppers sometimes when you connect the chunks?
    - You should make a mechanism to turn off the permaloader. Maybe is it possible if you put a lever on a hopper in the starting loop?
    - You could make a simple tutorial to build the permaloader, with no details or deep explanation. Just telling the people how they can calculate the cordenates in a diagonal where they can start the contraption and then showing how to build it. After that, the things they can do with it and the final advices.
    - You asumme the public knows how chunk loading works. Maybe it will be good to place links explaining how spawn chunks, player chunk loading and the portals system works.
    - In realms, when there isn't any active player all chunks unload. Maybe you can bypass all the inconvenients of this if you set the perma-loader in automatic mode connecting it to the spawn chunks, so everytime the realms starts it will be the first thing to start with it.
    - I though optifine and some mods affect the way chunks load. Many people have problems when they build their iron farms with optifine. Maybe they fixed that.
    Thank you!

    • @gnembon
      @gnembon  Před 7 lety +1

      I will try to answer the best I can:
      1) yes, even P3 is enough, but if you chose something of higher priority (31 or 63), there is a high chance that even if you load it by accident, if you leave the area the permaloader survives.
      2) Yes. I have an unlisted video where I explain it how to do it. Link to is in the descriptions of the carpet mod videos.
      3) there is not simplest formula. That's why I included it in the carpet mod under the /unload order command.
      4) Its the same. if you leave the area suddenly (portal, death, tp command) all the area is scheduled for unloading and the game unloads 100 chunks per tick.
      5) permaloader will only be supporting the dimension its placed in. Other worlds (dimensions) have their own unload queues.
      6) to to decrease their contribution to the lag.
      7) Yes. Locking the hoppers in the permaloader head should unload all of it them eventually. I have a scicraft video where I show how its done.
      8) Don't think it makes sense. If you don't understand how it works you might make more harm than good to your world. Also everybody's setup is different.
      10) connecting permaloader to spawn via hoppers is a good option, also for singleplayers.
      11) possibly.

  • @eswee6780
    @eswee6780 Před 5 lety

    You should become a program teacher; these explanations are very good!

  • @calvissuperman
    @calvissuperman Před 6 lety

    +gnembon But why are you involving the nether? do you have to keep that redstone block spitter working forever? I thought that this fixes that, that's why you turned off the chickens. What do I have to build and where to load my sand dupers? So far I see that I'll need to load the 100 chunks in the diagonals, but do I do that in the overworld? The nether? Does it matter? I understand the second part, just hopper loading chunks with a 2 chunk gap to get entity processing chunks (so one chunk would have 24 chunks surrounding it). How do I get the permaloader up and running by itself? What exactly do I need to build?

  • @Johnden
    @Johnden Před 7 lety +11

    You're amazing! Keep it up!

  • @Gunth0r
    @Gunth0r Před 6 lety

    interesting! There's so much to Minecraft that I haven't even considered.

  • @jewe37
    @jewe37 Před 7 lety +13

    very nice find indeed. the way java determines this order seems really arbituary but oh well not your fault. how is the order determined among chunks with the same priority(therefore, how do you load chunks close to the diagonals properly?)

    • @Earthcomputer
      @Earthcomputer Před 7 lety +2

      Jendrik Weise chunks in the same bucket are iterated over in the same order they were added to the HashMap.
      If I remember correctly, the loops that unload the chunks instantly due to the player leaving are added to the HashMap from negative to positive Z, then from negative to positive X.
      However this may not be the case for the 45-second unload cycle, where I would imagine the chunks are added to the HashMap in the order the loaded chunks would be iterated over, which in turn probably depends on what order those chunks originally got added to the loaded chunks list.
      So, in conclusion, don't rely on two chunks with the same or similar priorities.

    • @thijssimons8403
      @thijssimons8403 Před 7 lety +1

      it depends on a different hashmap that is determined by the order they get loaded.

    • @jewe37
      @jewe37 Před 7 lety

      Earthcomputer you should avoid that, but maybe you cant, so i m sure the information would be useful.

    • @gnembon
      @gnembon  Před 7 lety +5

      I am glad you appreciated the find :-) Unfortunately within each bucket the items are stored in tree like structures, so the order they come out depends on the order they come in and it is not the same as the order they come in. Also seems that (0,0) typically is returned as one of the first chunks for unloading (because of the order in the tree), so no luck in chunkloading exit end portals.

    • @jewe37
      @jewe37 Před 7 lety +1

      gnembon_mc oh i hadnt even thought of that. i guess it isnt terrible since most things you d do right around there probably wouldnt need stable loading.
      but i d still aprechiate a proper explanation or refrence for this. :D

  • @betterthanboss7029
    @betterthanboss7029 Před 7 lety

    why would anyone give this video a dislike???

  • @xeeebee
    @xeeebee Před 7 lety

    Do the nether/end/overworld share their hash map for unloading, or does every dimension have its own?

    • @gnembon
      @gnembon  Před 7 lety

      Every dimension is its own 'World" and do their own unloading. You would need to have a separate setup in each dimension. But that's only about 160 chunks each. A single player loads (view distance of 12) about 600 chunks.

  • @esquerbatua
    @esquerbatua Před 6 lety

    Great find!

  • @dj0rdj3-
    @dj0rdj3- Před 6 lety

    Cool thing. Im sure it can find use in farms (especially iron farms cuz they need to be in spawn chunks but in Tango Tek's design they dont need to).

  • @SUPERNOOB20
    @SUPERNOOB20 Před 7 lety

    I didn't understand how player's automatic chunk unloading could break the loader, but still I think this loader is a pretty good idea because it's an alternative chunk loader for those specific situations in which you can't use spawnchunks-based loaders.

  • @siegpasta
    @siegpasta Před 7 lety +1

    this is pretty cool. Btw where are you from? I really like your accent! :D

  • @lordcrusade865
    @lordcrusade865 Před 6 lety

    Im wondering if I've calculated the unloading order correctly for the following chunk (X 1259, Z 748), I get an unloading number of 1543, is this number way to high, or could this be the correct number?

  • @floskater99
    @floskater99 Před 6 lety

    So i've got 3 question. First the simple one: Does it work in 1.8 ?
    Second: You said it only unloads 100 at a time. So can't I just put 4 hoppers pointing in each direction out of a chunk and do that 10x10 chunks? That way over 100 chunks will be loaded at a time which means it WILL reload itself. Does that work?
    And lastly, does it work on servers with about 300 people in them? Or is it possible that they have plugins which change the unloading so that more than 100 chunks can unload in a tick?

  • @adamintegrationiskey2517

    @gnembon, I just noticed the shattered Savannah.. wow im slow. Definitely my favorite biome.

  • @squeebers
    @squeebers Před 6 lety

    I got really confused lol! I looked this up because I am playing on a modded server and the owner doesnt want us to have chunk loaders so I am gonna look more into this. Thanks!

  • @ditlev3572
    @ditlev3572 Před 7 lety +2

    That voicecrack at 12:49 made me laugh so hard 😂

  • @aidancrassweller1069
    @aidancrassweller1069 Před 3 lety

    Hey gnembon I have a question and I hope you can answer this the minecarts in my slime farm always stop when i unload the chunks (I’m guessing that why they stop) I have a bunch of other farms near by which is my sugur can farm and bamboo farm flying machine powered and a villager breeder and crop farm can I make this near the bamboo and sugur can farm and slime farm to stop from the chunks from unloading

  • @markosskace514
    @markosskace514 Před 6 lety

    Me too, I watched once and have no idea yet what should I build - I will have to watch more times.
    But if I summarise - the discovery is that:
    1.) all chunks eligible for unload are unloaded only 100 per gametick.
    2.) chunks are being unloaded in a specific order - in the order of a Bucket Number. And Bucket Number of a chunk is quite simple to calculate (XOR between binary X and Z chunk coordinate (32 bit) and then another XOR between upper 16 bit and lower 16 bit of previous result).
    So the perma-loader is a device that each game tick loads 100 chunks with a Bucket Number = 0 (all chunks on any diagonal have Bucket Number 0). This is achieved by pointing a hopper into the diagonal chunks from the neighbouring chunks which have much larger Bucket Number (like 35). I guess only one hopper from a chunk with a large Bucket Number would be needed, as from that chunk the whole array of diagonal chunks would load.
    When you have such device set up and chunks loaded you can load some chunks anywhere you want (probably not on the diagonal though, so with a Bucket Number = 0), and they will be permaloaded (and you have to set up a square of loaded chunks there to get an entity processing chunk, like watch?v=egqsmXD_oCM).
    In single player you could start this device with a redstone wire from your base for instance, which would initially load the first perma-loader chunk, and you better not come close to the device.
    Something like that? Is that any good?

  • @nikolaskuklis5925
    @nikolaskuklis5925 Před 5 měsíci

    I just wanted to ask/confirm since i couldn't find any information nor know anyone as technical in minecraft. can the hoper on side of chunk be used to make sure chunks unload at nearly or exactly the same time when leaving base? It would be useful When playing modded i don't know if the machines are codded smart enough to load/unload both chunks in similar time so they don't break because things like some reactors need redstone control which not always is possible to fit in same chunk and still look not bad

  • @MadCat_G
    @MadCat_G Před 7 lety

    Amazing finding. Truly revolutionary. I have one question regarding chunk unloading. I've noticed in some artificially entity loaded chunks that whenever someone else joins to the server it stops processing units (probably due some chunks unloading). I've experimented chunk loading only with me on a server and it works fine but when someone else joins it works differently or just doesn't. Do you have any idea what causes that behavior? BTW. Thanks for such finding.

    • @gnembon
      @gnembon  Před 7 lety

      I assume these chunks were loaded from spawn, meaning that something wrong happened because they should stay processing no matter what. I have a situation in my own world where I load chunks using pulsating redstone, that when I join sometimes, the server crashes. I am yet to find out what causes that.

  • @bartsola8349
    @bartsola8349 Před 6 lety

    How do I know how long the permaloader has to be? Also, is there a way of figuring out the unload order of chunks without the carpet mod?
    Idk if these questions come across as silly, it's a bit hard for me to understand everything in the video, but it does look like quite a good solution for all of our chunk loading needs

  • @ikaterukimasu3217
    @ikaterukimasu3217 Před rokem +2

    Is it still possible to use the /unload order command in carpet 1.18+?

  • @gara8142
    @gara8142 Před 7 lety

    this video is amazing!

  • @thederpydude2088
    @thederpydude2088 Před 7 lety +1

    my mind is overflowing with info...

  • @cindymadison2580
    @cindymadison2580 Před 6 lety

    With the fractal nature of chunks on the diagonal, is there a way to ensure priority 0 chunks immediately near the spawn perimeter are permaloaded (say a large 100 x 100build at x=400/z=400)? Sounds like we can technically only perma-load non-0 priority chunks, and 'any' chunks on the exact axis are subject to the cleanup sweeps. Or does the fractal progression work in such a way that positioning the permaload chunk ray thousands of blocks away from spawn will result in said build's diagonal chunks somehow making it out of the priority 0 group?

  • @Mia-wg3ou
    @Mia-wg3ou Před 4 lety

    I’m so confused XD do you think it would work if I just had a loop of hoppers in a circle and add an item which just goes round and round in one chunk I want loaded?

  • @MorgurEdits
    @MorgurEdits Před 7 lety

    Can you publish that color picture with all the values at 8:40 as high definition picture or something. So anyone can easily just look up their chunk values from that grid where ever they need to load?

  • @homerlol9058
    @homerlol9058 Před 6 lety +1

    Is it possible to load chunks in the better together edition?

  • @Ossy33
    @Ossy33 Před 7 lety

    Gnembon do you plan on releasing the current carpet mod commands? Like the version you got in the video with /unloading order, because I would like to use it.

    • @gnembon
      @gnembon  Před 7 lety

      I added the link to the newer version of the carpet mod in the carpet mod video, but also here. I keep adding stuff to it, and I make it available, but I don't make a video unless the game version changes as well.

    • @Ossy33
      @Ossy33 Před 7 lety

      Good, just need the version. at this point I know how to install it and use it pretty well :D

  • @clayscreations9300
    @clayscreations9300 Před 4 lety +1

    Now I have a headache but it was good I mean the video

  • @xinfinity4756
    @xinfinity4756 Před 2 lety

    Im aware that this comment is coming in very late from the original posting of this video, but I had a few questions I figured I may as well ask here. First of all, what is keeping the chickens loaded as well as the machine which shoots the eggs into the nether? My guess was spawn chunks, but I wasn't sure. My second question is how the perma loader is being loaded originally if it is not connected to spawn chunks. It seems like, assuming the chickens are on spawn chunks and that the blue glass area is the spawn chunk range, then the perma loader is outside this range and needs to be started manually by a player entering and then leaving while the automatic chunk unloading is not occuring. Is it intentional for the "chunk unloader sponge" to require a manual start should it be interrupted, or when its just been constructed, or am I misunderstanding something? Additionally, how are you supposed to leave the area of sensitive contraptions like the sand/ gravity block duplicator without breaking it? Assuming you dont have instant teleportation, it would be rather hard to use a nether portal at just the right time in survival. Is there anyway to get around this unloading issue, or is it just recommended to be cautious about your timing when you leave areas like that. I was also wondering how this would work with other dimensions being loaded. I assume the exact same thing works in the nether and end, but what about modded dims? Is it highly likely (or guaranteed) that they would work the same way as vanilla dimensions, or is it unknown? How would mods for chunkloading also interact with this? If you chunk load a certain chunk at the start of an unload sponge chain and then have other chunks of higher numbered priority running off hoppers that are sourced from the same or a different chunk loaded by said mod would that work? That is to say would that work the same as connecting an unload sponge to spawn chunks and then connecting the loaded areas of your base to spawn? Additionally, would it be fine, assuming you are okay with other chunks having one tick down time, to just correct hoppers directly from a loaded chunk through modded means to unloaded chunks? Is there any particular reason you do not want a chunk to be unloaded for even one tick, other than incredibly delicate processes such as the sand duper? I would greatly appreciate a response if possible from anyone able to answer some or all of my questions above with reasonable certainty. Another thing I wanted to ask was what level is provided or what ticket type would hoppers provide to the chunk they load? I assume redstone would load, meaning it gives those chunks a ticking load type with a level of 32, but its not explicitly made clear.

  • @Asdayasman
    @Asdayasman Před 2 lety

    How does this work with Realms? From what I can tell, servers hosted in Realms are (forcibly?) offlined after a short period of nobody being what I assumed was logged in, but if it's done when no chunks are loaded...

  • @EzraReeves
    @EzraReeves Před 7 lety

    What stops the sand dupers from unloading when you go into the end? Is it the powder that gets shot through within 15 sec of you going through the end portal?

    • @gnembon
      @gnembon  Před 7 lety

      you are correct - sending an item through the end portal once every 15 seconds will keep overworld and end loaded as a dimension, and then we have hoppers to load specific chunks to keep all the redstone running.

  • @BenDover-kf4wj
    @BenDover-kf4wj Před 4 lety

    Do you have to place the first hopper in a spawn chunk or can you place it in a chunk you hang out in a lot?

    • @juanpls3856
      @juanpls3856 Před 4 lety

      You have to place it in a loaded chunk

  • @youcoool12
    @youcoool12 Před 4 lety

    So the hopper doesnt need to go into a container? just pointing at a block?

  • @gaetandeweert2229
    @gaetandeweert2229 Před 6 lety

    On the former world on the server I play on I had found a mob spawner near the Spawn chunks, so I made a collection point right there; it worked perfectly and no other mobs could spawn anywhere else in the world.
    But in the current world I had to use the chunk-loading trick. It works, but never perfectly. Somehow a low number of mobs keep spawning. Do you have any idea on what could be wrong?

  • @supetorus9612
    @supetorus9612 Před 7 lety

    Do you need the black chunks at the beginning of the perma loader structure, shown at 17:00? Exactly how many hopper groups long does the perma loader need to be?

    • @gnembon
      @gnembon  Před 7 lety

      you need a small loop that does contain a chunk that's not priority 0 or 1, The perma-loader then should run for 50 chunks loading 50 priorities 0 and 50 priorities 1.

    • @supetorus9612
      @supetorus9612 Před 7 lety

      So by making the 2x2 hopper circle at the beginning of the loader, you will always include chunks that are lower priority than the 0 and 1 chunks. Or do you mean you need to make it larger than you showed, like 4x4 chunks at the head?
      Also for a hostile mob switch, you would need to leave the area via nether portal so the mobs aren't ever outside 128 blocksfrom the player and also inside an entity processing chunk, right?
      Sorry for all the questions, I would just rather ask than spend hours troubleshooting because I didn't understand.

    • @gnembon
      @gnembon  Před 7 lety

      I am planning to make one episode in my world where I will be 'pacifying' all three dimensions using the permaloaders. But for now, the 2x2 hopper circle would include two diagonal chunks (0) and two other chunks of the same priority. If you are just guessing, then they may end up being priority 1. If you include in the loop other chunks around they will always have greater priority. Also - if you chunkload entire thing from spawn using hoppers - these hoppers will also stay and reload everything from back from spawn. And yes - for the hostile mob switch you need to dissapear from the world, either going back to the other dimension, or die (nether and end mostly). Dying in the overworld may put leave 5x5 of chunks around the mob trap loaded which may cause them to despawn. So the easiest for the overworld is moving to the nether, and other dimensions - to die, but you only need to do it once. My plan is to do end and nether without dying, we will see how this will work out.

    • @supetorus9612
      @supetorus9612 Před 7 lety

      I don't understand entirely your part about dying. I am making a peaceful switch for the overworld, so I would just load it, build up the ~70 mobs (per player expected online) and then go to the nether. Do I have to die then, or just travel back to home via nether. Is the reason you say to die because if you do it in the nether you are probably pretty far away and going to the overworld would mean you were thousands of blocks away?
      Also, once you build a perma-loader in the overworld, will the spawn chunks always be loaded too?
      If you build the perma-loader in the nether, you don't need to throw items through the portal anymore right?

    • @gnembon
      @gnembon  Před 7 lety

      dying is useful for nether and end, as it removes the player from the world so mobs don't despawn. If you only plan to do overworld switch, then obviously the nether portal path is the most obvious. The spawn chunks are loaded always, but if you leave the overworld, after 10 seconds of inactivity the overworld will stop processing of hoppers. So the permaloader in the overworld has to either be connected to spawn with hoppers (to reload each time player joins), or you would need to throw an item through a portal (that will keep both overworld and nether loaded and process hoppers all the time). If you then connnect the permaloader in the nether to the portal where the items show up, then you will keep nether running 24/7 as well.