SkyGrid generator
Have you seen sethbling's SkyGrid and want it for your server? You could copy the save file into the server, but that can be problematic. Players may leave the generated area or memorize where useful chests are. This plugin alleviates both of these issues by allowing bukkit to generate new chunks as needed, and uses the world seed to generate random terrain.
How Is This Different From the Other SkyGrid Plugins?
I hadn't realized that there were so many SkyGrid plugins until after I had finished this one, but with all the other ones I looked at, mine had something they all lacked: accuracy with the original script. Yes, they all produce worlds that appear in the grid pattern, and some even place chests like the original, but they all differ from how sethbling made his world. Some don't fill the chests with the proper items that the original had, and almost all failed to have the exact same block probability as the original. (I have found SkyGridSMP, which appears to have the proper probability, but it lacks bonus chests.) This plugin is the most faithful one out there to the original.
Images
Usage
Usage is very simple. Put the plugin file into the plugin folder to install the generator. To activate, add the following lines to bukkit.yml:
worlds: world: generator: SkyGrid world_nether: generator: SkyGrid
If you changed the name of your main world in the server.properties file, replace world with the name of your world. If you wish to apply this world generator to a world, add the world name to the list above or see if your multi-world plugin can set the generator. DO NOT set The End (or a world with that environment) to use this generator; it will crash your server.
If you wish to change the height that the world generates up to, change the "generator" line as follows:
generator: SkyGrid:<height>
where <height> is how height you want the world to generate. Players can still build above the grid limit, but the grid itself won't go above the set value. It must be a MULTIPLE of 16!!! If it isn't, it will round down to the nearest multiple. An example:
generator: SkyGrid:32
Source Available Here
Improvements from the original
This plugin takes the original filter script pretty much verbatim with a few fixes:
- The end portal has been fixed (there were some direction problems)
- Cacti will not appear at the very bottom of the map (which made it fall immediately)
- Water and lava (and cacti) will not appear above cacti or reeds (the growth of the plants would cause the fluid to update)
- Chests have a %30 chance of containing a dye (about %1.8 chance of containing the otherwise unobtainable cocoa beans)
@greaperc4
You can naturally gather netherrack, flint, and steel, so adding fire would be redundant, and vines to actually occur already in the map. Check the bottom of the sand blocks under cacti.
@MrAbrman
Now that I look at it, the spawn for chests and spawners does seem a little high. The problem is likely in the probability calculations used after the world has been generated to actually place chests and spawners, but I don't know what the problem is exactly in that.
An end portal should appear at 0,0. I don't know why it doesn't appear for you, but I will try to test it and find out why it's not appearing.
Works really well except for the truth that it seems to spawn way more chests and spawners than the map sethbling made. I mean on his map I have trouble finding chests at times, on here I see 2+ at all times. Also I didn't find a end portal at 0,0. Is there one somewhere else or are you planing to add it? Thanks for a awesome plugin!
Add this feature please: Fire auto. placed on netherrack vines auto. placed on one side of the block
@JukanX
I'm working on it. I'm trying to figure out the best way to have the config work, though.
Any chance of adding a config file? I'm running Tekkit, and I think it would be awesome if we could generate a skygrid world with the blocks generated from RedPower2 and IC2 as well.
@LRFLEW
Thank You So MUCH!!!!!!! It works great and the world now loads 5x as fast! Thanks! I used "generator: SkyGrid:128" and the world in now at 128 height.
@GoldBattle
I'm working on it, but I think that either of those two methods you mentioned might have issues for people with a multi-world setup. I did, however, come up with an idea on how to do this seamlessly.
@LRFLEW
The max build height doesn't not do anything. I would be great if you could some how read this or make a config. Thanks!
@GoldBattle
Not in the configuration of this plugin itself (because there's no configuration for this plugin at all :P ). I would try changing the
option in your server.properties file and see if that stops the generation to that elevation. (I did add code that takes world height into account). If that doesn't work, let me know, and I'll see if I can make a config to adjust the world height.
Your incentive for making this plugin was exactly the same for me, all those SkyGrid generators just generated everything at random with bugged chest contents.
I really love your plugin! Is it possible to limit the generation height to a custom level. A lot of my users are getting lag from the full 256 lvls. I was wondering if it is possible to cut the height to 128 in a config or something?
Thanks! -Patrick
@Rock2243
First of all, I would check to see if your multi-world plugin has a way of setting the generator itself (such as the case is with MultiVerse). If you don't want to do that, you can do what you said, but you don't need to add the _nether part unless the world will connect and generate it's own nether.
can you generate a new skygrid world from this or do you have to use the original world, I would assume so but was making sure if so what do you add to the bukkit yml this? worlds: <worldname>: generator: SkyGrid <worldname>_nether: generator: SkyGrid thanks
@invinciblemode
Actually, sethbling provides the code he used to generate the world. I just took the necessary information from that ( however, I had to convert it from python for MCEdit to Java for bukkit :P )
how did you get the block probability? My guess would be to use count in world edit. haha.