Chunk-Pregenerator

Mods
9,965,736 Downloads Last Updated: Oct 14, 2021 Game Version: 1.12.2

Chunk Pregenerator is a tool that allows you to generate your World more efficiently.

It is a Server-side tool that has some optional client features if wanted.

It can be also used in Single-Player too.


If you like this mod Consider supporting it.
By Telling your friends about it,
By Putting it in your curse pack (if you have one)
Donation -> (On the Right Box)

 

Discord Server

 

FAQ (RTFM):

Question: How to start a simple pregeneration?
Answer: /pregen start gen radius Name SQUARE 0 0 100 (Or look into command information)

Question: I am getting a Crash when logging on to a server (This specific one or something close: https://imgur.com/pK22Pjj) how do i fix it?
Answer: 1.14-1.16 requires command arguments to be also on the client. Either install ChunkPregen on your client or install the ChunkPregen client which only fixes this crash. Pregen Client Links: (1.14.x), (1.15.x), (1.16.x Since 3.1.0 servers can run Chunk Pregenerator without the Client needing it.

Question: How do i start a Benchmark?
Answer: /pregen start benchmark start

Question: Is this a Server Tool or is this usable for Single-Player.
Answer: Yes. You can use this on a Server without requiring it on the client, it has client optional Features if the Client has it installed but it is not a requirement.
Answer2: Yes you can use it in Single-Player but you need Cheats enabled to use it.

Question: Why is TimePerTick no longer there?
Answer: In 1.14.4 or newer WorldGeneration no longer shares CPU time with the ServerThread, WorldGen has its own thread and runs next to the game. So they get the full time they need. So Timepertick is at that point useless since they get the max time already. If you want to improve worldgeneration speed: Aggressive Pregeneration for better Better Terrain Generation and ThreadRule for MultiWorldGeneration might be your best option. Note: Aggressive Pregeneration can backfire if terrain generation is already slow enough, it only works if it is to fast.

Question: Forge or Fabric?
Answer: This mod uses the Forge API, there is no Fabric Release done or planned at this moment, this might change later down the line if the Default API supports what I need.

Question: Optifine?
Answer: No offical Support. Should run but no bug fixing support.

Question: How do i make biome changing mods work in the Preview? (like Biomes o plenty)
Answer: You do all the settings you would do when creating a normal world and then you open the preview. The Preview will automatically take all settings from the create world screen.


Question: Does this support Phosphor?
Answer: Yes it works with phosphor and it does speed up the Chunk Finalization by roughly 20% which is the slowest part of the Pregeneration process.

Question: Does X Mod work with this mod?
Answer: If it is not in the Known Issues section you can assume it works. If it does not, report it and it gets added to it or fixed if possible. Or if the Fix requires a User action the the Fix info gets added there too.

Question: Why Retrogen not work?
Answer: This can be a multitude of reasons. But it usually comes down 2 to facts.
             1: Did you select a worldgenerator to work? If no try doing that and try again.
             2: The worldgenerator just decided not to place things. Chunk Pregenerator does not actually place blocks themselves. it just loads chunks, asks the biome in that chunk to give its worldgenerators and if there is one there that you selected tells it to generate in that chunk. But it can only point fingers and say: Try there. If it actually does it it has 0 control over it. Thats how mcs worldgen always worked. Yes I hate RNG Jesus too.

Question: I have a question that is not answered in the FAQ.
Answer: Please read the documentation. If that does not answer your question then leave a comment or Open a Issue.

Question: How quickly do I get an answer if I ask a question related to the mod.
Answer: Within 24/48 hours the Comment/Issue should be noticed. Unless I am ill or I have no access to the Cursepage. (Yes I already had a random IP that blocked me from CF for 24 hours)

 

Known issues and Potential Fixes 1.4.7-1.12:

  • General Knowledge: Big Terrain Gen Mods cause slowdowns in pregeneration speed.

  • 1.7.x: When using ChunkPregen in 1.7.x there is in overworld generation always a Chance to cause crashes because of a Bug in Minecraft 1.7.x. Dungeon spawners are missing certain checks to ensure crashes won't happen. There is now a patch mod out that fixes that exact issue:
    https://minecraft.curseforge.com/projects/careful-cast-corrector-ccc

  • Preview Feature: The Preview Feature is 1 giant hack. There for the stability in all cases is not guaranteed. For the simple reason that modding is unpredictable. I am not phiscally able to account for everything. The Terrain only generation seems to be 100% stable, but post processing itself is much more likely to crash (75-95% stable depending on the mod collection).
    This is only linked because of the hacks i have to do. As soon you just startup the world with the seed you want and do the pregeneration in UI or command the causes for the crashes are gone. 

  • After Generation Issues(1.6.4-1.12.2): If the pregeneration was very big (above 1 Million Chunks of pregeneration) there is the potential issue that you run out of memory afterwards. The reason for that is structure files are global and always loaded. Also they are stored twice in ram. Deleting the Structure files in the save file will most likely fix the issue if you had a ram issue and there will be no downside to that. Since minecraft regenerates them as chunks get loaded and all the important data was already stored in the chunkdata anyway. 1.13 and newer fixes this issue by storeing structure informations in the chunk itself instead of a seperate system. These structures are usually found here: "\saves\WorldName\data\StructureFileName" (Mineshaft for example)

  • Reconcurent Complex: Reconcurrent Complex has a lot of Structures that generate and they store this in 1 giant file and keep that also loaded in ram. Since they have so many structures their file explodes also easily with larger generations. Just delete the corresponding structure file and the ram issues (if you have them) are fixed to.

  • Chickenbones Mods: The 1.7.10 version is not compatible with Chickenbones Mods but there is a fix mod for that you can install which fixes 1 function in Chickenbones mods that make them compatible again.
    Link: https://minecraft.curseforge.com/projects/chicken-chunk-patcher
    Here is how the crash looks like: https://pastebin.com/AQVprFU2

  • Realistic Terrain Generator: RTG is 50% incompatible with this Pregeneration Tool, you still can do terrain only generation with my tool and RTG but if you try to use a full generation half of the terrain will not generate because RTG changes how chunks should be generating which is much slower and harder to pull of to work properly in their mod. So its unfixable for me. As long you do terrain only you are fine!

  • Mystcraft: Mystract is partly incompatible with ChunkPregenerator, for the reason that its dimensions are generated on the fly. That means Chunk Pregenerator can not load its dimensions on its own. Myscraft has to do that. So to fix this just load your dimension stay in there and then run the commands.

  • Sponge-Forge: Chunk Pregenerator has a brute force aproach for Generating a world. Sponge isn't a fan of that since every single action you do needs to be validated and then your mod can do what it wants. But that has a cost of massive performance loss so its not going to be fixed.
    So when you have a sponge server and want to pregenerate, deinstall sponge temporary generate with my tool and then install sponge again. No harm will happen to your world.
    This only effects the generation part of Chunk Pregen. All other features working fine so far with it.

  • Bukkit: Bukkit & Any form of it does change how Minecraft works in its entirety. Since ChunkPregen is optimized to MC to make use of its entire logic the best way it can it has to lose some of the server compat.Thats why it is not compatible to bukkit. Other variations of bukkit may or may not work but there is no warranty. Suggested fix is: use a vanilla server to pregen your world and then start the world with bukkit it will merge the data safely over.

  • Optifine: Optifine crashes with preview? Yeah Optifine needs to release patches to fix that issue. It was requested 10 months ago. No release happend since then. https://github.com/sp614x/optifine/issues/2975

  • GregTech (6): Gregtech 6 requires a lot of Specialized code to achieve what it wants, that specialized code (for now) will not run with the seed previewer, that is just crashing. Normal Pregeneration will work fine though.  Fixed in 2.5.0

  • NotEnoughIds&JustEnoughIDs: A ID Expansion mod if used can cause that Pregenerators (not only ChunkPregen) do not generate biomes properly (Only Generating plains). This is only the case if you expand the "BiomeIDs" and is not fixable from ChunkPregens side. These mods need to fix that. From what I know there were attempts and maybe one of these mods do not have this issue anymore but this can be a problem. 

  • Dungeons 2: Dungeons spawn only at spawn. Dungeons 2 causes this issue by having a really really bad worldgenerator... Details found here: https://github.com/gottsch/gottsch-minecraft-Dungeons2/issues/39

 

Known issues and Potential Fixes 1.14-1.16:

Here are the potential bugs with ChunkPregen 3.x.x
- WorldGenerator Freezing: Modded Chunk Generation can be unstable sometimes and since worldgeneration is now offthread it can get stuck. Stuck meaning the worldgenerator is in a Infinite loop, without crashing the game. Chunk Pregenerator has right now no way to detect these. But the next patch will have a detection system. But there is nothing ChunkPregen can do about it. If you have this issue with a specific mod/pack contact the devs of these mod/packs.

- Dungeons Gear: The loot override from Dungeons Gear mod is right now buggy where they forcefully load chunks even when they are being saved right now. And with the Delay created with Chunkpregen in the Chunk Generator this can lead to so much lag that the game crashes. The bug is already reported: BugReport

- Getting Kicked as Op: Custom Command Arguments require that the mod is installed on the client. There is nothing i can do about it. Install ChunkPregen on your client and you should be fine.

 

 

Warnings about Massive world Generation (+400 Chunk Radius):

This section is for Any Minecraft Version. If something is version specific, it will be notated.
Since i have been asked multiple times about massive worldgen and I repeat the same warnings with these requests I thought lets type them out.
These warnings are for Vanilla Only, modded will amplify these issues massivly, so if you read this then make sure you think about how much mods actually add. (Structure mods are one specific issue)

So you want to generate larger then a 250 Chunk / 4000 Block Radius. Lets say 1500 Chunk Radius or larger. There is a couple things you as the player or server owner need to take care of to make sure you don't end with a corrupted world or with a world that uses so much ram that it is unplayable. Minecraft has sadly some memory leaks in each game version.

First thing to know is: Massive WorldGeneration takes time.
If you generate a world of 1000 ChunkRadius in Vanilla, you can be sure that this will take 24-48 hours. If you go to a 2000 Chunk Radius that time will 4x at the very least. But usally its a 8x with the amount of data that come into play. So a 2000 Chunk Radius will take a week most likely. Depending on the modpack this will 10x or 50x or only 1.2x.
If you go to the max radius (25k ChunkRadius) that thing will take a YEAR. And not with default settings. I mean a full Year at most optimized settings you can find. And that is calculated with a I5-7500 CPU.
Its not the best CPU but its already quite fast compared to server CPUs.

Next thing is: Have enough Storage.
I have a small World in 1.16.5 (150 Chunk Radius overworld and 100 Chunk Nether) and it already takes 700MB in a very light (worldgen) modded world. Pregen didn't even notice the mods.
So if you double that you are already at 2.8GB with a 300 & 200 Chunk Radius. If you go with a 1000 chunk radius you will be most likely at the 3 digit GB usage just for the world. (Modded will make it worse)
Make sure you are prepared for that. If you massgen have a 1TB at the very least of free room if you go large enough. This is just a suggestion, if you know better then you know what to do.

Next thing is: Do not start with the final world.
If you are massgenerating, do not start with the final world you want to play on. Start with a Smaller test world (same seed) and look how well it works. Like do a 300 radius gen and see what problems arise, because if there is a problem midgen at 75% and it corrupted the world you lose a lot more time then just doing a 24 hour generation test. And the cool thing is Chunk pregen can do expansions too. So in a step by step generation you can see problems and fix them. Its a slower process but you need to see what your game needs to stay stable.
You can go the risky rout and just start and hope that it goes well but usually it won't at that scale. Up to 300 chunk radius is save to do even so some ram usage effects will appear, they will stay small enough not to cause trouble with a 4-5GB Ram setup.

Next thing is: Keep Track of Structure files, Mineshafts specifically (1.12 Only)
In 1.12 or older structures are stored Globally. That means they are always loaded. Now usually that is not an issue if you don't have a lot (likeless then 100). Problem is Mineshafts spawn EVERYWHERE and a LOT of them spawn.
Why is that a problem though the "mineshaft file is only 500kb big" (example), well you see. Minecraft not only stores them Globally, but they are globally stored 2x. Yes 2 times. Once in the usable form for the  game, and the second time in Uncompressed NBT form to speed up writing time. And that is a problem because the actual files are Extremely compressed. So that 500 KB could be already 1.5-3GB of Ram usage. That high of a Compression. All files in the "data" folder are that compressed. So if you see outliers that could be a reason of high ram usage. Because they are globally stored in ram. (But mods usually only store them 1x instead of the structures 2x).
So whats a fix for it? For vanilla structures. You can just delete the files, just make sure the server is not running at the time. The only thing that no longer works is the "locate" command because that actually uses these files. And you only need to delete the excessivly large files. Like anything below 3 digits in the KB range is fine to keep. If you are worried that things might break. Just rename them for a test.
But for vanilla structures make sure to keep track of the mineshafts file. Oh and for mods that add structures. Depending on the implementation this problem exists for them too. Reconcurrent complex actually stores all its structures in a single file and that usually gets large pretty quickly.

Last thing: You need to maintain your pregeneration.
Yeah, you can not just start and wait it to finish, you need to keep track of it. Like keep the chat messages open at any given time while you are not sleeping.
Because if a problem arises you need to know that. In 1.12 chunkpregen has fail switches that will kill the game to ensure the save file stays safe. In +1.14 there is almost non there yet because the problems that 1.12 has are so decentralized that they can not affect the main game anymore.
But in general if you don't keep track of your pregeneration and anything corrupts because of a thing you didn't check that will be most likely a restart from scratch.

This list is the most often repeated issues with mass generation. (+300 Chunk Radius (10k world diameter)) I have been warning about.
I hope that helps you get the most stuff prepared and that you account for all of that.

 

 

 

 

Looking for 1.4.7-1.12 Documentation: Click Me

Anything below this is 1.14-1.16 Documentation. And won't work for 1.4.7-1.12.2

 

Features:

Very User friendly:
Chunk Pregenerator has a lot of features that make it very friendly to the users, such as:
Complete Documentation of each Command,
Auto Completion/Suggestions on Command-arguments as needed to provide guidance,
Improved logging that is color coded and structured to display what is going on,
Optional UI Features that are easier to use then plain text.

Multi-threaded World-Generation:
Chunk Pregenerator uses Multiple Cores to generate a Dimension,
It is achieved by Clever Management of Minecraft's Off-thread World-Generator which can do Multi-threaded World-Generation but does not enable it on its own.
This can help generate the World much quicker due to generation steps being handled independent of each other.

Multi-World Generation:
Chunk Pregenerator no longer generates Chunks on the Server-Thread, it only manages which chunks are to generate where on the Server-Thread.
This allows to generate Multiple Dimensions at the same time without affecting each others World-Generation speed. Provided the Server has enough Threads.

Playable during Pregeneration:
Chunk Pregenerator is designed to run while playing the game.
World-Generation is a CPU intensive task, but due to running Off-thread it can be ran in the background.
But this only applies if enough resources are provided, otherwise it might be affecting the Gameplay.

Improved Chunk Generation Checks:
Chunk Pregenerator has a much more Optimized way of Checking for Chunks.
This check is much much faster then a Normal Check, but it less accurate due to limited amount of information that is provided.
Extra to that Slower Checks are made Off-thread so they won't afffect Gameplay and can be done on the fly and Interrupted.

Very Efficient Memory Managment:
Chunk Pregenerator is not blindly generating chunks.
It also Manages its own Memory Usage and Keeps track of Memory Leaks and Cleans up after Minecraft if it is nessesary.
This is not perfect and can not account for other mods but it keeps known Minecraft Memory Leaks at bay without causing issues.
Side to that Pregeneration tasks got optimized to the point where they take so little that any reasonable generation wouldn't be noticed.

Retrogen:
Chunk Pregenerator is now one of the Only mods that allow Retrogeneration in 1.14 or newer.
This is achieved by recreating the WorldGeneration step itself.
It partly runs on the main thread due to the Chunks being already fully integrated into the World so this will have a effect on Server Performance but it is much less then a normal Generation.

Dimension Control (1.16 Exclusive):
Chunk Pregenerator has a way to disable or enable dimensions even while the game is running.
This can be really since Dimensions  can no longer unload on their own and can eat a small amount of resources.
This is usually not a problem that add a way to create a lot of dimensions that may only get used a couple times and then ignored this can add extra unnecessary lag.

Intigrated Profiler:
Chunk Pregenerator has a Integrated UI Based Profiler, that allows to see live stats of what is happening in your world.
It also provides information on things, Such as Block Updates, Block Ticks, Active TileEntities/Entities and which are ticking and which not.
This is also done only on the Networking Thread which means it can grab the infromation without actually getting stuck if the server itself is stuck too.

 

Command Information (RTFM):

*1: All Radius Values are in Chunks. Not Blocks. There is right now no way to convert them to Blocks either.
*2: -Literal means that the name of the Argument has to be used, while otherwise a suggested value should be used.
*3: Coordinates are numbers and can be modified with Modifiers:
    - "~" Relative: offsets the coordinate relative to the Senders Location. (Before the Number, "~100")
    - "^" Spawn: offsets the coordinate relative to the Spawn Location. (Before the Number, "^250")
    - "b" Blocks: Converts the Inserted Number into Block Coordinates instead of ChunkCoordinates. (After the Number, "150b")
*4: Pregeneration Generation Types have different effects
    - TERRAIN_ONLY: Generates only the Terrain and does not finish chunk-generation. (Fog Of War Effect)
    - FAST_CHECK_GEN: NORMAL_GEN but with a much faster Algorithm to check if a Chunk was already generated. Hundreds of Times faster but only 90% accurate.
    - NORMAL_GEN: Generates Chunks like a player would. - POST_GEN: Makes sure all Chunks are fully generated but does not generate new Chunks.
    - BLOCK_POST: TERRAIN_ONLY but it finalizes the chunks. Meaning you only get the Terrain and that's it. Undetectable
    - RETROGEN: Generates only Selected features in already generated chunks.

*5: For optimal suggestions and autocompletion mc needs the mod installed on the client too. Nothing I can do about it without reducing autocomplete documentation.

*6: If advanced command Arguments are disabled in the config (server by default) then certain arguments are changing how they work. 2 to be specific (at least in a major way).

      - First argument that changes is: SQUARE/CIRCLE turns into true/false (true=>SQUARE).

      - Second argument that changes is: The "Center" argument that turns from 2 variables into 3. XZ to XYZ while Y isn't used I can not get rid of it without registering a custom command argument, making the client requirement.

      - Last thing that changes: *3 is no longer valid while advanced command arguments are a thing.

- /pregen clear
    Description: Clears all Tasks from the Task Storage (including running Tasks)
    Parameters[Type]:
      <Optional>TaskName[String]: Specific Task that should be cleared instead of all Tasks

- /pregen continue
    Description: Continues all possible Tasks from the Task Storage
    Parameters[Type]:
        <Optional>TaskName[String]: Specific Task that should be continued instead of all Tasks.

- /pregen info autolisten
    Description: Displays If the user is Automatically listen to Tasks.
    Parameters[Type]:
      <Optional>enable[Literal]: Set the User to Automatically listen to started Tasks
      <Optional>disable[Literal]: Set the User to Ignore started Tasks.
      <Optional>reset[Literal]: Set the User to Only Automatically listen to the user itself started. (Default State)

- /pregen info listen
    Description: Lets the user listen to active Tasks (if running)

- /pregen info unlisten
    Description: Lets the user un-listen from active Tasks (if running)

- /pregen pause
    Description: Pauses all Running Tasks.
    Parameters[Type]:
      <Optional>TaskName[String]: Specific Task that should be paused instead of all Tasks.

- /pregen resume:
    Description: Resumes all Paused Tasks
    Parameters[Type]:
      <Optional>TaskName[String]: Specific Task that should be resumed instead of all Tasks

- /pregen retrogen add
    Description: Adds a WorldFeature to the Retro-generator.
    Parameters[Type]:
      id[ResourceLocation]: The WorldFeature that should be Retro-generated.

- /pregen retrogen remove
    Description: Removes a WorldFeature from the Retro-generator
    Parameters[Type]:
      id[ResourceLocation]: The WorldFeature that should removed from the Retro-generator.

- /pregen retrogen show
    Description: Shows all Active Retro-generators

- /pregen start benchmark start
    Description: Starts a small Benchmark task.
    Parameters[Type]:
      <Optional>TaskSize[Enum]: Defines the TaskSize of the Benchmark (Default: SMALL_TASK, Values: SMALL_TASK, LARGE_TASK)
      <Optional>Analytics[Boolean]: If the Results should be sended to the Analytics Server. (Default: false)
    Examples:
      /pregen start benchmark start (Starts a basic Benchmark task)
      /pregen start benchmark start LARGE_TASK (Starts a Large Benchmark)
      /pregen start benchmark start SMALL_TASK true (Starts a Small Benchmark Task and sends the result to the analytics server)

- /pregen start benchmark info
    Description: Explains what a benchmark is and what Data is send to the Analytics Server if requested.

- /pregen start benchmark submit-cache
    Description: Sends all Previously done Benchmarks to the Analytics Server

- /pregen start delete radius
    Description: Starts a Chunk Deleter that will delete all Unloaded chunks.
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Shape[Enum]: The Shape of the Deletion. (Values: SQUARE, CIRCLE)
      Center[Coordinate]: x & z Coordinate of the Center in the Deletion. (Read *3)
      Radius[Number]: The Radius of how large the Deletion Task should be. (Range: 1-25000)
      <Optional>Dimension[ResourceLocation]: The Dimension the Deletion should take place. (Default: Senders Dimension (Server => OverWorld))
    Examples:
      /pregen start delete radius ExampleDelete SQUARE 0 0 100 (Deletes a 100 Chunk Radius in the Senders Dimension)
      /pregen start delete radius ExampleSpawn SQUARE ^ ^ 100 minecraft:the_nether(Deletes a 100 Chunk Radius around the spawn in the Nether)

- /pregen start delete expansion
    Description: Starts a Deletion with a Min and Max Radius
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Shape[Enum]: The Shape of the Deletion. (Values: SQUARE, CIRCLE)
      Center[Coordinate]: x & z Coordinate of the Center in the Deletion. (Read *3)
      Min Radius[Number]: The Minimum Radius of the Deletion Task.
      Max Radius[Number]: The Maximum Radius of the Deletion Task.
      <Optional>Dimension[ResourceLocation]: The Dimension the Deletion should take place. (Default: Senders Dimension (Server => OverWorld))
    Examples:
      /pregen start delete expansion ExpansionExample SQUARE 0 0 100 1000 (Deletes Chunks between 100 to 1000 Radius in the Senders Dimension)

- /pregen start delete trim
    Description: Starts a Trimming Deletion that removes all Unloaded Chunks that are further away then the Minimum Radius.
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Min Radius[Number]: The Minimum Radius that should be Skipped.
      <Optional>Dimension[ResourceLocation]: The Dimension the Deletion should take place. (Default: Senders Dimension (Server => OverWorld))
    Examples:
      /pregen start delete trim TrimExample 100 minecraft:the_end (Deletes Any Chunk that is further away then 100 Chunks 0 0 in the End)

- /pregen start delete timedtrim
    Description: Starts a Trimming Deletion that removes all Unloaded Chunks that are further away then the Minimum Radius and existed shorter then the Specified time.
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Min Radius[Number]: The Minimum Radius that should be Skipped.
      Min Time[MinecraftTime]: The Minimum Time chunks must exist to be skipped
      <Optional>Dimension[ResourceLocation]: The Dimension the Deletion should take place. (Default: Senders Dimension (Server => OverWorld))
    Examples: 
      /pregen start delete timedtrim TimedExample 100 1d (Deletes any Unloaded Chunk that existed less then 1 Minecraft day in the senders Dimension)

- /pregen start gen radius
    Description: Starts a Pregeneration Task
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Shape[Enum]: The Shape of the Pregeneration. (Values: SQUARE, CIRCLE)
      Center[Coordinate]: x & z Coordinate of the Center in the Pregeneration. (Read *3)
      Radius[Number]: The Radius of how large the Pregeneration Task should be. (Range: 1-25000)
      <Optional>Dimension[ResourceLocation]: The Dimension the Pregeneration should take place. (Default: Senders Dimension (Server => OverWorld))
      <Optional>GenerationType[Enum]: How the Pregeneration should be handled. (Default: FAST_CHECK_GEN, Values: TERRAIN_ONLY, FAST_CHECK_GEN, NORMAL_GEN, POST_GEN, BLOCK_POST, RETROGEN)
    Examples:
      /pregen start gen radius GenExample SQUARE 0 0 100 (Generates everything within a 100 Chunk Radius in the Senders Dimension)
      /pregen start gen radius GenExample SQUARE ~ ~ 25 minecraft:the_nether (Generates everything around the player in a 25 Chunk Radius in the Nether)

- /pregen start gen expansion
    Description: Starts a Pregeneration 
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      Shape[Enum]: The Shape of the Pregeneration. (Values: SQUARE, CIRCLE)
      Center[Coordinate]: x & z Coordinate of the Center in the Pregeneration. (Read *3)
      Min Radius[Number]: The Minimum Radius of the Pregeneration Task.
      Max Radius[Number]: The Maximum Radius of the Pregeneration Task.
      <Optional>Dimension[ResourceLocation]: The Dimension the Pregeneration should take place. (Default: Senders Dimension (Server => OverWorld))
      <Optional>GenerationType[Enum]: How the Pregeneration should be handled. (Default: FAST_CHECK_GEN, Values: TERRAIN_ONLY, FAST_CHECK_GEN, NORMAL_GEN, POST_GEN, BLOCK_POST, RETROGEN)
    Examples:
      /pregen start gen expansion ExpansionExample SQUARE ^ ^ 100 2500 minecraft:overworld (Generates everything from a 100 Chunk Radius to a 2500 Chunk Radius around the Overworld Spawn)

- /pregen start gen worldborder
    Description: Starts a Pregeneration to pregenerate the area inside the Worldborder
    Parameters[Type]:
      Task Name[String]: The unique name of the Task.
      <Optional>Dimension[ResourceLocation]: The Dimension the Pregeneration should take place. (Default: Senders Dimension (Server => OverWorld))
      <Optional>GenerationType[Enum]: How the Pregeneration should be handled. (Default: FAST_CHECK_GEN, Values: TERRAIN_ONLY, FAST_CHECK_GEN, NORMAL_GEN, POST_GEN, BLOCK_POST, RETROGEN)
    Examples:
      /pregen start gen worldborder ExampleBorder (starts a pregeneration pregenerating everything within a worldborder)

- /pregen stop
    Description: Stops all Active Tasks.
    Parameters[Type]:
      <Optional>TaskName[String]: Specific Task that should be stopped instead of all Tasks.
      <Optional>DeleteTask[Boolean]: If the Stopped Task should be deleted. (Default: false)

- /pregen tasklist gen
    Description: Shows all Pregeneration Tasks in the Task Storage.

- /pregen tasklist deletion
    Description: Shows all Deletion Task in the Task Storage.

- /pregen utils dimensin info
    Description: Describes what Dimension Unloading does. (1.16 Exclusive)

- /pregen utils dimension enable (1.16 Exclusive)
    Description: Enables a Disabled Dimension
    Parameters[Type]:
      dim[ResourceLocation]: The Dimension that should be enabled.

- /pregen utils dimension disable (1.16 Exclusive)
    Description: Disables a Dimension, disabling means for the game it is that the dimension no longer exists at all. (Until enable command used)
    Parameters[Type]:
      dim[ResourceLocation]: The Dimension that should be disabled.

- /pregen utils gc
    Description: Forces a Memory Cleanup on the Server. This will freeze the game for a short time.

- /pregen utils profiler enable
    Description: Enables the Profiler in the Background

- /pregen utils profiler disables
    Description: Disables the Profiler in the Background

 
User Interface:


This is the Pregen User Interface Menu, It can be accessed with the "i" Key, which can be rebound as nessesary.
This UI allows for much smoother and faster selection of settings that would usually require multiple commands to be executed.

Buttons:
Disable/Enable TrackerUI: Toggles if the Profiler User Interface should be enabled. (Config allow for adjustment which can be changed while the game is running and is updated live)
Detailed Dim: Decides which dimension is the one with the Detailed information in the Tracker UI.
Disable/Enable PregenUI: Toggles if the Pregen Progressbar UI element should be enabled or not.
World View: Goes into a Sub Menu where Server Managment tools and Retrogen Settings are present.
Commands: Goes into a Sub Menu where Pregeneration Commands are simplified.

World View & Commands Require Admin Rights, but also have a PermissionAPI Entry which allow for specific permissions to be applied.

Commands UI:

Simple Pregen/Deletion: Opens a Sub Menu for a Pregeneration Task that can be send to the server if permissions are provided.
Pregen Expansion/Expansion Deletion: Opens a Sub Menu for a Expansion Task (Min/MaxRadius) that can be send  to the server if permissions are provided.
Pregen/Delete Tasks: show queued up tasks lists on the server
Stop Tasks: can be compared to /pregen stop
Delete Task List: can be compared to /pregen clear
Continue Tasks: can be compared to /pregen continue

World View UI:
This is the World View UI which allows for Server Managment but also Retrogen Configuration if no Retrogenerator is running.

Buttons:
TileEntities/Entitites: Shows all Globally Loaded TileEntities/Entities and allows for massdeletion of a TileEntity Type and shows which TileEntity/Entity is from which mod.
Chunks: Shows all Loaded Chunks their Coordinates/Distance/(Entity/TileEntity Count)/Ticking Blocks/Biomes etc.
Retrogen: Allows to set the Active Retrogenerators.

Entities/TileEntities UI:
This is the TileEntities/Entities UI.
It shows you all TileEntities/Entities that are loaded in the Dimension.
And which Mod Each Entity/TileEntity is from.

Buttons:
Dim Overworld: Selects the Active Dimension which it grabs the Entity/TileEntity Information from.
Sort Name: Selects the Sorter in which the order of Elements should be displayed. (Name/Count)
Remove: Globally Remove All Entities/TileEntities of that Type from the Server. (If TileEntities then the Block gets also destroyed)

Chunks UI:
This is the Chunk View that allows to see Chunk Specific Data.
It Lists Chunk-Coordinates (or Block-Coordinates on Pressing Ctrl), The Distance relative to the Player, How many Entities are in the Chunk and how many Types are there in total. (120 Entities but only 1 Bat and 119 Items)
TileEntities count gets also listed and how many of the TileEntities are ticking (basically could affect the server) and how many Ticking blocks are in the chunk itself. (Anything that would receive RNG Ticks)

Buttons: 
Dim Overworld: Selects which dimensions data should be displayed.
+-: The Scroll of the list, which by the way is just for those who do not have a mousewheel.
Sort By Distance: Sorts the Chunks by specific data thats selected. (Distance/EntityCount/TileCount/TickingTileCount/RandomUpdates)
Teleport: Teleports you to the Desired Chunk (Might not work properly through dimensions)
Entities/Tiles: A Chunk View based on the Global TileEntity/Entity View that was seen before
Biomes: A View that allows you to see all the biomes present in this chunk. (Since Biomes are 3D in 1.15 or newer might be useful)

Retrogen UI:
This is the Retrogen Setting View. It displays all World Features that exist in the World how they are named and from which mod they are.
It can be indirectly be used to identify which mod adds which ore feature.
Though its main usage is to select which retrogen generator is used in the retogeneration.
There might be a couple settings that sound like they would do nothing.You would be correct, since i am just grabbing them from the registry. There is not much I can do about them.

But to select/deselect one just click enable/disable. If one is enabled the color automatically changes to make it easier to  identify which ones are active.

 
Spotlights:

If you want to submit a Spotlight it will be inserted here:

 

Spotlight Bears Den (Version 3.0.3):

Preview Spotlight Bears Den (Version 3.0.3):


By Bears Den (Version 2.0):


Spotlight By Goshen (Version 1.9.0)

 

Tips and tricks with Amidst & JourneyMap (Version 1.9.2)

 
Progress Chat Spam:

This is how the Progress bar in chat looks like. (Fancy I know)
[Task Name] Shows the Active Task.
[World] Shows the World the Task runs in.
[Task Type] Shows the Generation Type
[Task] Shows how far the Progress of the task is. "Main" is the main generation step, "Light" is the finalization of the chunks so they can be used. And "Total" is how many chunks are in total to generate.
[Speed] Shows how fast each Generator is running per tick. (20 ticks a second)
[Loaded]: Shows the Loaded Chunks, RegionFiles (save files) and the PointsOfInterest (Villager stuff). This is shown only for pure Debug reasons and if any of these numbers get to crazy high you know you have a problem. (Loaded Chunks: Should never go above 15-20k the starting amount, RegionFiles should never go above 150 and Points of Interest should always go back to 50k but not instantly)
[Time Left] Shows the Estimated time until the task is finished. (needs 5-10 mins to get accurate)
[Ram Usage] Shows the Ram Usage of the server


Comments

  • To post a comment, please or register a new account.
Posts Quoted: