Giant Caves
Overview
Giant Caves is a bukkit mod that creates giant underground caves in the world. The caves are generated using Perlin noise seeded by the world seed. Caves are unique to each world.
Giant Caves is implemented as a bukkit block populator and is compatible with the vanilla world generator and most likely any world generation plugin that implements the chunk generator pattern. Giant Caves also comes with a vanilla generator for use with Multiverse.
Works best with Subterranea
See it in Action!
Here is a great overview video in German and one in Portuguese
Installation
I don't have Multiverse or another world manager
- Stop the server if it is running!
- Download the plugin and put it into your plugins folder.
- Start your Server to make the plugin generate default world configuration files for known worlds.
- Set onlyUseWorldManagers to false in config.yml
- Edit the configuration file to match your needs. (See Help Topics > Configuration for more info.)
- Restart your server.
Code
https://github.com/rmichela/GiantCaves/
Credits
- Code: Ryan Michela
Metrics
This plugin utilizes Hidendra's plugin metrics system. the following information is collected and sent to mcstats.org unless opted out:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- Plugin's version
- Server's version
- OS version/name and architecture
- core count for the CPU
- Number of players online
- Metrics version
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
@WhiffleX
Decrease the maxy to prevent the cave generator from cutting into the ocean.
Hi, Thank you for this awesome plugin. However, I can't get a great result from this plugin. I want to get a cave like the picture up there. Someone can send me a link to download a world with this kind of cave?
Thank you !
I noticed it cuts into the ocean and creates air pockets shaped like the cave. It would be nice if it knew how to stay below the ocean level when generating in ocean biomes.
I just tried this with the latest release and got these errors:
14:13:22 [WARNING] Task of 'GiantCaves' generated an exception java.lang.NullPointerException at java.util.TreeMap.rotateLeft(TreeMap.java:2061) at java.util.TreeMap.fixAfterInsertion(TreeMap.java:2108) at java.util.TreeMap.put(TreeMap.java:576) at java.util.TreeSet.add(TreeSet.java:255) at net.minecraft.server.World.c(World.java:1081) at net.minecraft.server.BlockSand.onPlace(BlockSand.java:14) at net.minecraft.server.Chunk.a(Chunk.java:417) at net.minecraft.server.Chunk.a(Chunk.java:355) at net.minecraft.server.World.setRawTypeId(World.java:365) at net.minecraft.server.World.setTypeId(World.java:434) at org.bukkit.craftbukkit.block.CraftBlock.setTypeId(CraftBlock.java:92) at org.bukkit.craftbukkit.block.CraftBlock.setType(CraftBlock.java:88) at com.ryanmichela.giantcaves.GiantCavePopulator$1.run(GiantCavePopulator.java:134) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:126) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:520) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) 14:13:22 [SEVERE] java.lang.IllegalStateException: TickNextTick list out of synch 14:13:22 [SEVERE] at net.minecraft.server.World.a(World.java:2383) 14:13:22 [SEVERE] at net.minecraft.server.World.doTick(World.java:1758) 14:13:22 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541) 14:13:22 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) 14:13:22 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) 14:13:22 [SEVERE] Unexpected exception java.lang.IllegalStateException: TickNextTick list out of synch at net.minecraft.server.World.a(World.java:2383) at net.minecraft.server.World.doTick(World.java:1758) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:541) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490)
You can have more than one world with giant caves. Just create a second configuration block in the yml.
@lacissird
You can have only ONE world (for example world_123 (additional world)) that will have these caves.
Can we set a bedrock ceiling as well as floor so that this world would be underground only?
is this multi world compatible? plugin says only work for one world name?
Would it be possible to make this generate entire worlds? Instead of just adding the caves under a map, make the world solid stone and populate it with caves, maybe make it resource rich?
Is there any possibility to get a preview of my caves without searching for one in a modified world? Also, does this hook into the World Generator?
Just updated to 1.2.3.
I'd love to see an update for 1.2.3. This looks very neat. I'm particularly interested in seeing this algorithm at work.
Can you update for MC 1.2 please? Tested with a dev build (http://dl.bukkit.org/downloads/craftbukkit/view/00848_1.2.3-R0.1/) and it failed majorly lol.
2012-02-17 00:20:17 [INFO] Attempted to place a tile entity ([email protected]) at -1368,27,2053 (STATIONARY_WATER) where there was no entity tile! 2012-02-17 00:20:17 [INFO] Chunk coordinates: -1376,2048 2012-02-17 00:20:17 [SEVERE] java.lang.Exception 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.Chunk.a(Chunk.java:599) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.Chunk.a(Chunk.java:578) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ChunkLoader.a(ChunkLoader.java:234) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ChunkRegionLoader.a(ChunkRegionLoader.java:53) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ChunkProviderServer.loadChunk(ChunkProviderServer.java:135) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:78) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.PlayerInstance.<init>(PlayerInstance.java:31) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.PlayerManager.a(PlayerManager.java:53) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.PlayerManager.movePlayer(PlayerManager.java:149) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ServerConfigurationManager.d(ServerConfigurationManager.java:166) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:394) 2012-02-17 00:20:17 [SEVERE] at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:687) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.Packet10Flying.handle(SourceFile:126) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:100) 2012-02-17 00:20:17 [SEVERE] at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:552) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:537) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:435) 2012-02-17 00:20:17 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
I'm assuming is coming from this plugin as it happens where giant caves are spawned. Possibly just needs to be updated. Great plugin, And am very much hoping to use it.
although i could be very wrong lol, but these do popup only were there are giant caves spawned. If it's not this but you know what it is please point me in the right direction.
This looks like it would be so great for my server, but unfortunately I can't get this plugin to work with Multiverse ;_;
Great plugin. Took some tweaking before I got it just right. Still seems to work withtout any problem. My players love to find those nice caves. Swing by the server (open to "look around") and do /warp fatcave for an excellent example of what can be done with this plugin.
Fantastic plugin, deltahat!
Do you think it might be possible to add an option to pupulate the caves with giant mushrooms? This would be the only evironment where I find them absolutly fitting!
Hi i have i little problem. When i start the server and it's preparing and when it's done on the end i have this: "Server permissions file permissions.yml is empty, ignoring it" why i have this?
@micdoodle8
Yes. They are embedded into the fabric of your world.
@BioRage
Increasing both the stretch and the cutoff will make the overall cave matrix larger, but more selective. This will result in less frequent caves.
Is there a way to make them spawn with an x% of chance?