DungeonBridge
This is the bridge plugin between MythicDrops/DiabloDrops and your worlds and chests.
Ever felt like finding ruins or abandoned mines was not all that rewarding? Not felling so exited when finding a nether fortress(CB 1.6.2+) and find a chest with an Iron bar? Tired of finding a spawner room just to walk away with a saddle and a cocoa bean?
DungeonBridge will fill the chests generated on any world with cool items generated from MythicDrops and DiabloDrops.
In a per-world basis, it is configurable the chance of each chest to have MythicDrops and/or DiabloDrops items in it, a range of how many items could be in it, and the possible tiers of such items.
Please note that everything I'm working with right now is not on a stable stage!
Version of the plugin 2.3 is OUT!!! finally chests refilling regeneration is now available.
Since there had been a BIG code refactoring, I need to run some serious testing and I'm short of time and guinea pigs for such purposes, if anyone is willing to help me test, please let me know.
Current version
- v1.10.0 This had been tested on 1.6.4 R2 with MythicDrops 2
- v1.11.0 This had been tested on 1.7.2 R03 with MythicDrops 3
- v1.13
- This had been tested on 1.7.2 R03 with MythicDrops 3
- This had been tested on 1.7.2 R03 with DiabloDrops 2.6
- v1.14
- This had been tested on 1.7.2.R03 with MythicDrops v3.1.0-SNAPSHOT
- This had been tested on 1.7.2 R03 with DiabloDrops 2.6
- v2.1
- This had been tested on 1.7.9
- Same dependencies as version 1.14
- v2.3
- NEW version with refilling options Information here
Requirements
In order to make this plugin work, you will need
- MythicDrops (get the right plugin version for your MD version)
- From version 1.13+ you will need MythicDrops and/or DiabloDrops
Configuration
Just download and drop into plugins path. The plugin will create a sample config for you
Note that from version 1.13+ you will get 3 files created config.yml, MD.yml and DD.yml, except ShowChestsLoc, the old configuration was moved to MD.yml. Version 2.2 will add a forth config file.
After first start a config file like this will be generated :
Worlds: world: Enable: true CleanFill: false ChestFill: ChooseTiers: true CustomItems: false MinItems: 0 MaxItems: 3 Chance: 50 Tiers: - Common - Uncommon - Rare
When making changes please mind the yml format.
Please note that root 'ChestFill' is no longer used, only the 'ChestFill' inside each world section.
Also note that lastest versions are adding more config options, but it's still backward compatible. Plugin upon start will add the new configuration options.
- Generator
- this is internal, don't change it.
- Chance
- this is the chances in % (out of 100) for each chest to get loaded with cool Drops items
- MinItems, MaxItems
- A random number between those 2 values will be the number of items in a chest which 'succeded' it's chance.
- ChooseTiers
- if set to false will ignore values on 'Tiers' and will put items from a random tier for each item. Chances of each item's tier is defined by MythicDrops. if set to true will read the values from 'Tiers' and each item will be randomly of any of the configured Tiers
- CleanFill
- if set to true the contents of the chest will be wiped before filling it with the cool drops., if both MythicDrops and DiabloDrops are enabled for a world, if any of them have this set to true, the contents will be wiped
Notes
- - This will not affect in any way drops from mobs.
- - This will only affect generated chests, already existing chests will not be refilled. (see below)
- - If there's an existing world and you have Multiverse by running /mv regen <world> will regenerate the world and put the configured Drops on them. (please note this resets the world, if you don't want that, this plugin will automatically only fill newly generated chests on new chunks)
- - Next release will include chests refilling!
- - Don't hesitate to contact me for questions or bugs, my intention is to make this work the best possible.
- - If you have any ideas of some feature you would like to see included, don't hesitate to contact me!
ALL credits are for
- - rmh4209 (for MythicDrops and DiabloDungeonBridge)
- - UltrafaceGuy (for MythicDrops)
- - MCForger (for DiabloDungeonBridge)
- - Death_marine (for DiabloDrops)
- - Well I guess I could take some :)
@snakemansos I have just submitted DungeonBridge-2.1.jar which includes support for CustomItems as you requested, even the configuration option! :) The plugin went through a mayor code rewrite if you find any issues let me know. This one and the previously submitted version of the plugin are still pending review, but should be out soon.
@snakemansos
That's a good one! yeah, I'll look into it
Suggestion: support for CustomItems.yml from mythic drops? Like this?
@KingTNiels
Most of the code is written for such feature, but I'm having some bugs, will include such feature in the upcomming version/s
@snakemansos
this plugin fills items with whatever is inside a given Tier, if you get your items on a MythicDrops tier, you are good to go
@Milk_milk
Not really! New version of this plugin just submitted solving the bugs found so far
The newest version of MythicDrops has just added chest populating.
Hi!!! Question:
This plugin also can fill chest with CustomItems?
MythicDrops: (CustomItems.yml)
Also havin a bit of trouble, using 1.13 since it works with the current version of mythicdrops [02:57:55] [Server thread/WARN]: [DungeonBridge] Task #2751 for DungeonBridge v1.13.0 generated an exception java.lang.NoSuchMethodError: net.nunnerycode.bukkit.mythicdrops.utils.TierUtil.randomTier()Lnet/nunnerycode/bukkit/mythicdrops/api/tiers/Tier; at ar.com.nicoit.DungeonBridge.DBCTask.BuildMDItem(DBCTask.java:107) [?:?] at ar.com.nicoit.DungeonBridge.DBCTask.runmd(DBCTask.java:149) [?:?] at ar.com.nicoit.DungeonBridge.DBCTask.getChests(DBCTask.java:45) [?:?] at ar.com.nicoit.DungeonBridge.DBCTask.run(DBCTask.java:70) [?:?] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:345) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:587) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:250) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:545) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
@nicoit
How would I make a chest at the end of a player made dungeon refill with mythicdrops items every
# of time? Or will this be in an upcoming update?
@Adam_Nox
Sorry for the delay. On the current days I'm swamped with work, once I catch up some sleep I'll send the new realease. Probably early next week
any word on a fix yet? really love this plugin.
came here to report an error, looks like others beat me.
@nicoit
It appears to be an issue with this version MythicDrops v3.0.0-RC-3, I went to the previous version and it worked just fine.
@Bambucha91 @TRIforce3
snd me please a pm with the exact version you are using of CB and mythicdrops, I will be investigating this in the meantime
@TRIforce3 Same Error with me...
Um its not generating any config. i am using mythic drops 3 and diablo drops 2.6. plz tel me what to do because this pl is pretty essential to the rebirth of my server I get this error: [17:41:46 INFO]: [DungeonBridge] Enabling DungeonBridge v1.13.0 [17:41:46 ERROR]: Error occurred while enabling DungeonBridge v1.13.0 (Is it up to date?) java.lang.NoClassDefFoundError: net/nunnerycode/bukkit/mythicdrops/api/MythicDro ps at ar.com.nicoit.DungeonBridge.DungeonBridge.checkMythicDrops(DungeonBri dge.java:43) [?:?] at ar.com.nicoit.DungeonBridge.DungeonBridge.onEnable(DungeonBridge.java :295) [?:?] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:218) [c raftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader .java:457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManage r.java:384) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugin(CraftServer.jav a:298) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at org.bukkit.craftbukkit.v1_7_R1.CraftServer.enablePlugins(CraftServer. java:280) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.m(MinecraftServer.java:3 42) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.g(MinecraftServer.java:3 19) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.a(MinecraftServer.java:2 75) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.jav a:175) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java :424) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6 17) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] Caused by: java.lang.ClassNotFoundException: net.nunnerycode.bukkit.mythicdrops. api.MythicDrops at java.net.URLClassLoader$1.run(Unknown Source) [?:1.7.0_17] at java.net.URLClassLoader$1.run(Unknown Source) [?:1.7.0_17] at java.security.AccessController.doPrivileged(Native Method) [?:1.7.0_ 17] at java.net.URLClassLoader.findClass(Unknown Source) [?:1.7.0_17] at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader .java:80) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader. java:53) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks] at java.lang.ClassLoader.loadClass(Unknown Source) [?:1.7.0_17] at java.lang.ClassLoader.loadClass(Unknown Source) [?:1.7.0_17] ... 13 more
@nicoit
Thanks dude, nice work
@pandapipino
chests on already generated chunks of the world are left untouched for there is no elegant way to know if it was naturally generated or placed by a player. Also would be very easy to exploit the chest by farming it over and over. Next release of the plugin will include the possibility to define chests to be refilled upon command or by calling an event.
Right now I'm swamped with work and I can't really commit on a release date, it's coded already, but there are some serious bugs I need to fix.
does the chest still spawn even if the world is already generated? or if the chest was already been opened will it respawn the chest on the map?