Catacombs
Dec 2019, RandomUnknown at Spigot has taken over.
- Though I (LigerXT5) am still assisting in the minor parts of the plugin, RandomUnknown has spent a lot of coding work to bring it up to MC 1.15.1 capable use. You can find his continuation at https://www.spigotmc.org/resources/catacombs.73564/
July 18th, 2016 Updated Notification
From LigerXT5:
- For the time being, please use the Spigot Forum for issues and conversations. https://www.spigotmc.org/threads/labyrinth-generator-aka-catacombs.165251/
- If you would like to assist with coding, be my guest in submitting pulls. I know how to code, but only to a short extent. I am moving focus of updates to Spigot. Due to limited control I have on this listing. https://www.spigotmc.org/resources/labyrinth-generator-aka-catacombs.26582/ If you need to get in contact with me on here, the best way is to send me a PM, that way I get an email notifying me. I don't get emails for forum or ticket posts.
Only One Room Generating?
I suggest checking your config. If it doesn't have the 1.7 new blocks (Granite, Andesite, etc.), the plugin will try to build around them. Add them to the config to be replaced by catacombs on plan and build. Refer to the attached config as a reference/example. If you have a lot of caves or "air" blocks in the area of building, add Air to the list as well. Great if you want floating catacombs in an Empty World.
Catacombs - Random Dungeon Generator:
Builds configurable dungeons under your feet for players to explore and loot. I wrote my own level builder but I guess it's a homage to those text based classics like Nethack and of course Angband.

Features:
- Generates random multi-level dungeons.
- Only builds in solid regions it considers natural. Can build anywhere by adding AIR to config.
- Admins can build dungeons, Players can explore them.
- All commands are integrated with Permissions.
- Integrated with most common economy systems (using Vault) (optional)
- Secret doors
- Information persists using sqlite database (no setup required)
- Only the toughest adventurers will survive without armour, weapons, food and torches.
- Special chests at strategic points to add to the general loot.
- Configurable Dungeon layout and content.
- Dungeons can be size/configured so they work better with parties of players.
- Admins can easily unprotect, reset, suspend, enable or fill dungeons in.
- Multiple world compatible.
- Here are some Spoilers giving you a taste of what you might find.
- And here are a couple of pictures.
Configuration page
Check out images for pictures of the hut types.
Having problems? Check out the FAQ
I made a short tutorial on how to plan and build a dungeon.
- http://www.youtube.com/watch?v=TfmA8Mzl2L4 (part 1)
- http://www.youtube.com/watch?v=yn1_Ayqd6F0 (part 2)
Here is a detailed demo and tutorial kindly done by Samkio and Torrent (WoopaGaming)
Here is a detailed demo and tutorial kindly done by BukkitDE (in German)
Here is a short demo kindly done by AbsintoJ (I think in Portuguese)
Instructions
Commands
Permissions
Configuration
Credits
- Credit to the Vault team for supplying a simple way to hook into assorted permissions and economy plugins.
- Credits to Samkio and Torrent (WoopaGaming) for recording a demo and tutorial.
- Credits to Jeussa and MnMaxon from Spigot for updating the plugins via donations from LigerXT5
ToDo
- Replace Iron Blocks with Anvils. Create a config option to toggle this for MCMMO servers.
- Jeussa added a way to customize loot, similar to Essentials's configs for kits with item names, lore, etc. I would like a way to do the same with the mob spawners. Currently I have to use CreatureSpawners and edit each spawner to customize the catacomb experience. One person contacted me about adding support for MythicMobs. I have no preference on this. But the extra abilities, I am sure some server admins would like.
- Cobwebs only spawn once, during first generation. Though I want to say this is a bug, it would be nice that web had a set percentage, customizable in the config, either in general, or per catacomb style.
- We are limited to a set selection of huts, per say, that appear at the top of the catacomb. These are the buildings that you see at the start before climbing down to the first floor of monsters. There is no way to add schematics to customize these. Though we can edit the area after generation, the protection boundaries are set. Which then requires an additional worldguard region.
- Same as above, the rare/unique rooms are hard set, and would be nice to add some variety. I have no clue how hard this would be to add some more rooms in, along with each room having a percent chance.
- Add in a command variable to the /catacombs delete CatName. Currently it defaults to replacing everything and filling in the rooms with Stone. If creating in, let's say the Nether, it would be nice to add at the end the name of the block to use to replace with, instead of stone. Such as the Nether, it would be Netherrack, or using the EmptyWorldGen (currently for testing in) with Air.
-
View User Profile
-
Send Message
Posted Mar 29, 2012@atcshane Did you turn off all other plugins to confirm it's a catacombs problem? Make sure you have advanced combat off in the config file.
[edit] I also just checked this out with the latest Bukkit [2126] and Catacombs v2.0 and I can confirm I was able to kill monsters in dungeons with swords.
-
View User Profile
-
Send Message
Posted Mar 29, 2012@DarkCreon Unfortunately it still crashed for me, but I'll change the code to replace the chests, because I'm starting to think a client crash is better than leaving the chests behind, and I for one dont delete the dungeons very often.
-
View User Profile
-
Send Message
Posted Mar 29, 2012People cannot hit mobs with a sword in any of the Catacomb dungeons. They can shoot them with arrows though. Any ideas?
-
View User Profile
-
Send Message
Posted Mar 28, 2012@Blockhead2
Any luck with this?
-
View User Profile
-
Send Message
Posted Mar 28, 2012@simple_evil Do you have some old dungeons in the database that are in worlds that no longer exist? either because you've renamed worlds or deleted them?
I did add an error check for this on startup. When you reset do you get any messages saying the world for a given dungeon no longer exists?
I'll add some more specific checks to catch the null pointer, but I'm concerned there is a more serious problem where because Catacombs has run into a world that doesn't exist for some reason.
-
View User Profile
-
Send Message
Posted Mar 28, 2012So I update my server and for a day it works fine then I get this error for a day straight and it crashes my server and the comp the server is on.
2012-03-28 16:30:49 [SEVERE] Could not pass event EntityDamageByEntityEvent to Catacombs org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at net.minecraft.server.EntityEnderDragon.b(EntityEnderDragon.java:402) at net.minecraft.server.EntityEnderDragon.e(EntityEnderDragon.java:288) at net.minecraft.server.EntityLiving.F_(EntityLiving.java:447) at net.minecraft.server.World.entityJoinedWorld(World.java:1265) at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:106) at net.minecraft.server.World.playerJoinedWorld(World.java:1247) at net.minecraft.server.World.tickEntities(World.java:1154) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:545) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:452) at net.minecraft.server.ThreadServerApplication.run(SourceFile:490) Caused by: java.lang.NullPointerException at net.steeleyes.catacombs.Dungeon.isInRaw(Dungeon.java:398) at net.steeleyes.catacombs.Dungeons.isInRaw(Dungeons.java:142) at net.steeleyes.catacombs.CatEntityListener.onEntityDamage(CatEntityListener.java:113) at sun.reflect.GeneratedMethodAccessor17.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:301) ... 12 more
-
View User Profile
-
Send Message
Posted Mar 27, 2012@LeoxStryker Ah great, glad we got to the bottom of this.
-
View User Profile
-
Send Message
Posted Mar 27, 2012@DarkCreon Interesting, I'll give that a try as a work around.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Blockhead2
I was manually getting rid of chests after deleting a catacomb when I realized I didn't crash when using worldedit if I replaced the chests with air instead of stone. Would it be possible to do 2 passes when deleteing a catacomb? The first to replace the chest blocks with air and the second pass to fill in with stone. It may be a usable workaround for the issue.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Blockhead2
Excellent, seems to be working fine now.
Thanks for the help!
-
View User Profile
-
Send Message
Posted Mar 26, 2012@drorex Do you have it disabled in the wepif.yml file in the main server directory? Agreed it sounds like the same issue as LeoxStryker.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@LeoxStryker Ah ok, I think all you need to do is to select the permissions resolver you want and add it to the enabled section and put all the others in the disabled section of the wepif.yml file in the server directory. In your case if you are using bukkit API permissions you need to move 'DinnerPermsResolver' resolver (aka DinnerBone's bukkit permissions API) into the enabled section (there is a confusing name mapping between the resolver names and the plugins, but I didn't write that bit of code).
I disabled bukkit API permissions by default because it comes built in to bukkit and many people don't even know they've got it, they haven't configured it, and wanted to use ops.txt instead (i.e if Catacombs builds wepif.yml then the default is set to work well with the simplest setups and folk who want bukkit permissions system might need to change the wepif.yml file). It's worth adding to the FAQ (the opposite case to yours is in there).
-
View User Profile
-
Send Message
Posted Mar 26, 2012I think I have the same issue as LeoxStryker? Catacombs not recognizing PermissionsBukkit.
Thanks!
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Blockhead2
The relevant lines from the console on a restart (in the order they appear):
Catacombs: Loading Catacombs v1.9
Catacombs: version 1.9 is loaded
PermissionsBukkit: Loading PermissionsBukkit v1.6
Catacombs: Using WEPIF to find permissions plugin
Catacombs: Enabling Catacombs v1.9
Catacombs: No permissions plugin found, will use player's Op flag
Catacombs: attempting to get preferred payment method [iConomy].
Catacombs: Payment method found (iConomy version: 6)
PermissionsBukkit: Enabling PermissionsBukkit v1.6
PermissionsBukkit: Enabled successfully, 0 players registered
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Blockhead2
Server reload fails fix. Server shutdown and restart works for creation of one dungeon, then locks out. Moving db file recreates same one time use issue.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@LeoxStryker What does Catacombs say about the permissions system as it's being enabled? There is no 'catacombs.*' node but I'm not sure why catacombs.admin doesn't work for you like it does for me and everyone else.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@DarkCreon Yes it may be better to have the client crash than it is to leave the chests behind. I'll consider re-enabling the chest delete in the next release.
Unfortunately there is no way to rebuild a dungeon at present from the map file. It's on the list.
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Kasatome I'm not sure if the crash is because the sqlite file is lock somehow or if there is something I've not seen before related to monster spawner blocks.
I rewound my version of the server to CB 1.1 R-4 [1938] and my client back to 1.1 and could not recreate problems you had building dungeons, so I suspect it's related to the lock problem.
Have you rebooted your server to make sure there are no old processes locking the file? Try making a copy of plugins/Catacombs/Catacombs.db and moving the old one safely to one side and try the new copy. Make sure the file still has read/write permissions. Once you've tried all this if you move the .db out of the way then Catacombs will create a new empty one, this would be bad (you'd loose control of your existing dungeons), but you could at least it would confirm your problem is related to a locked data file (probably due to a crash). If all this fails there may be a way to unlock an sqlite database so be sure to keep a safe copy of the .db file.
-
View User Profile
-
Send Message
Posted Mar 25, 2012I am having issues whilst trying to create dungeons.
01:33:08 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:11 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:14 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:17 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:20 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:23 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:26 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:29 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:32 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:35 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:38 [SEVERE] [Catacombs] Sqlite error: database is locked 01:33:39 [INFO] Kasatome lost connection: disconnect.endOfStream 01:33:39 [INFO] Kiafis lost connection: disconnect.endOfStream 01:33:39 [WARNING] Can't keep up! Did the system time change, or is the server o verloaded? 01:33:40 [WARNING] Task of 'Catacombs' generated an exception java.lang.ClassCastException: org.bukkit.craftbukkit.block.CraftBlockState canno t be cast to org.bukkit.block.CreatureSpawner at net.steeleyes.catacombs.BlockChangeHandler.setBlock(BlockChangeHandle r.java:69) at net.steeleyes.catacombs.BlockChangeHandler.run(BlockChangeHandler.jav a:91) at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(C raftScheduler.java:137) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:509) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:441) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
Database is locked? How? Is there a way to solve this, or at least use a MySQL database, or is that option completely removed? Server is CB 1.1 R-4 Plugin is Ver 1.7
-
View User Profile
-
Send Message
Posted Mar 25, 2012@Blockhead2
I tested it with just a single chest so that is likely why it worked. Is it possible to allow the chests to be replaced as an option in the config so that it can be used during scheduled downtime. I don't care if it just crashes my client.
Also, several players on my server have found an issue with a catacomb I created two days ago. It looks as if it's missing a long section of the catacomb. The floor dead ends into a hall with several mob spawners and doors embedded into the natural stone and dirt. it's looks to be that it did not generate fully. The floors below seem to be there but no one could move down as the rest of the floor was not accessible. Is there a way to regenerate/rebuild the dungeon and finish that incomplete floor?