MobDungeon
MobDungeon
Hey community!
Many of you would say: "Isn't there already a plugin called 'MobArena', that does the same thing?". Well you're right in some way, because the basic idea of both is to fight against mobs and get rewards. But as you know, in MobArena you can only play at ONE location per arena. If you want to be able to fight in different spots, you would need to make separate arenas. Also you would need to leave/finish the first one and then manually join into the second one for example. MobDungeon takes it further. You can now set multiple locations and get through them without doing something manually. You'll see that later.
So first of all, I want to thank garbagemule for his awesome plugin, MobArena. It's still a better plugin definitely, but we'll see ;)
Introduction
So one day, I came along the MobArena plugin and I really like it. Some days later, I build a huge arena containing four different locations. They were separated by walls so the players can't get into another arena. I thought about connecting them in some way, e.g. that players would first need to finish the first arena, then get to the next one. The problem was now, I wanted that the players would automatically get teleported to that next arena without them doing anything. But that doesn't work with MobArena. Since I'm programmer who has some years experience in some languages (e.g. C#, C, Java), I thought it would be a nice little project for me to get into bukkit-plugin programming. I already knew bukkit for so long, but didn't really got into developing, so I thought I would be a good start. So here I am with my plugin.
Ideas
The main Idea is pretty obvious: Kill mobs, get to the next level, receive rewards. Pretty simple, huh? Yeah, but what about the way you get into the next level, or what kind of rewards you get? Well, let's make a list:
- Requirement to proceed to next level
- Variety of rewards, like Items and money
- Be able to create a wave of mobs once, and use it in as many levels as often as you want
- More levels per dungeon!
- Be able to create/modify/delete dungeons/levels directly inside the game
- Easy to use settings-format
- Classes! You have any other great ideas? Let me know!
Commands
Here are all commands that are/will be available:
- /md list : lists all available dungeons/levels/waves
- /md info : plugin info
- /md help : all commands with usage & description
- /md create : creates a new dungeon
- /md delete : deletes a dungeon
- /md addlevel : add level to the current dungeon
- /md removelevel : removes a level from the current dungeon
- /md editdungeon : sets the dungeon as the current one and set's him in the edit-state
- /md setcorner : sets corner of the current level
- /md deletecorner : deletes a corner with id
- /md changesize : change size of the level in all directions (up, down, in, out)
- /md editrequirement : change requirement for completing current level
- /md setspawn : adds a new monster spawn point
- /md deletespawn : removes spawn point
- /md setwarp : adds a warp point
- /md deletewarp : deletes a warp point
- /md getcurrent : returns current dungeon & level
- /md setcurrent : sets current dungeon/level
- /md save : saves current dungeons/levels/waves/classes
- /md reload : reloads data into the plugin
- /md j or /md join : joins a dungeon
- /md spec or /md spectate : joins as a spectator
- /md l or /md leave : leaves current dungeon
- /md generate: creates an area based on the WolrdEdit selection
- /md setoption: sets the given option to the given value
You can use /mbd or /mobdungeon as well!
Permissions
mobdungeon.join.*: description: Gives acces to join a dungeon mobdungeon.leave.*: description: Enables leaving a dungeon while it's active mobdungeon.spectate.*: description: Gives access to spectate a dungeon mobdungeon.list: description: Gives access to the lists of dungeons/levels/waves mobdungeon.cofig.*: description: Gives access to all editing commands for a dungeon/level mobdungeon.config.save: description: Saves all data to the files mobdungeon.config.reload: description: Loads the data again from files mobdungeon.config.editdungeon: description: Enables editing of a dungeon/level for the player mobdungeon.config.create.*: description: Enables creation of certain things. mobdungeon.config.delete.*: description: Enables deletion of certain things mobdungeon.config.create.dungeon: description: Enables creation of a dungeon for a player mobdungeon.config.create.level: description: Enables creation of a level for a player mobdungeon.config.delete.dungeon: description: Enables deletion of a dungeon for a player mobdungeon.config.delete.level: description: Enables deletion of a level for a player mobdungeon.config.create.warp: description: Gives access to setting a warp in a level mobdungeon.config.create.spawn: description: Gives access to setting a spawn in a level mobdungeon.config.editrequirement: description: Gives access of editing the requirement for the level default: false mobdungeon.config.changesize: description: Gives access of changing the size of a level mobdungeon.config.create.edge: description: Gives access of setting a corner for a level mobdungeon.config.setcurrent: description: Used to change level for editing mobdungeon.config.delete.edge: description: Gives acces to delete a corner mobdungeon.config.delete.spawn: description: Gives access to delete a spawn mobdungeon.config.delete.warp: description: Gives access to delete a warp
Installation & Setup
To install the plugin, just drop it inside the plugins folder and start the server. Configs will be created automatically! Setup for those things that you can't edit in game will follow!
Changelog
Version 1.1.4.1: - Added ready-area - Fixed issues when WorldEdit is not installed Version 1.1.4: - Fixed permissions problem on 'setcorner' command Version 1.1.3: - Added min/max players option - Added multi-language support (You need to write them on your own) - Added broadcasting messages - Added small global config - Added world edit support - Added button to set yourself ready - Added entrance fee - Added set option command to edit dungeon options in game - Fixed error when loading level with no requirement set - Fixed permissions (you won't need vault only permissions anymore) - Fixed using setspawn without parameters - Fixed update-notification - Removed "level" optional-parameter from all commands (except where it's a required parameter) - Unified all items defined anywhere in the config. You'll need to rewrite somm of them, sorry. - When you finish editing a dungeon, the inventory no longer gets reseted Version 1.1.2: - Fixed saving issue - Added dungeon mode. You can now choose between normal and hardcore (bring your own items) - Changed change size command. You can now specify which cuboid area you want to change (all cuboids are default) - Fixed some javadocs Version 1.1.1: - fixed saving issue - finished events Version 1.1: - Updated to lates CB version - Fixed issues with not getting items when dying in the dungeon and it directly ends - Some other small fixes. - Added option to enable/disable item sharing between players - Added Update-notifier - Added and fixed Bosses (Yes, enderdragons work too) - Added and fixed Abilities - Added something API-like - Added temporary permissions for join, leave, spectator and classes ! - Added YAML-Configs! v.1.0.7: - Added "sign under block" entrance - Fixed some things - Added economy support (Note: you need vault for that!) - More work on bosses. - build agains R4 - default config is available again Version 1.0.6b: - Forgot some issues with essentials. There shouldn't be issues anymore. Version 1.0.6: - Fixed issues with Essentials - Added ability to enable/disable monster drops - Started work on bosses Version 1.0.5: - Fixed some NullPointerExceptions - Players now get warped to spectator position when they die. - Some other changes. - Fixed chunk not being loaded when leaving/ending the dungeon. - Added death message. - Prevented some NPEs. Version 1.0.4: - Changed help for some commands and added missing ones. - Changed the order of parameters for some commands (see help). - Fixed some issues when trying to enter a dungeon with no levels. - Fixed spawning more mobs that stetted. - Fixed issue that the dungeon ends after the first level. - New spectators now get teleported to the last spectator spot. Version 1.0.3: - Fixed some NullPointerExceptions. - Fixed help command. - Fixed setcorner and setspawn not working properly. Version 1.0.2: - Moved plugin.yml to wok with fatjar. - Disabled standard config because they don't work with fat jar for some reason... - Fixed bugs when more than one player is in a dungeon. - Fixed error when trying to edit a dungeon. - Modified setSpawn a bit to be easier configureable. Version 1.0.1: - Fixed adding items to rewards instead of giving it to player when selecting class and if amount is greater that 64. - Fixed default level config. Version 1.0: - Initial release.
Videos
Ending
Thanks for using this and keep me at developing this ;) If you have questions, suggestions, bugs or something else, just let me know.
kumpelblase2
Download
Current file can be downloaded here: MobDungeonBeta
yea it is on the secound line and what indentation? could that make the classes not work?
@thelordofchaos
Besides that the indentation is gone, it looks fine to me, but "on the bottom" sound wrong. The class should be on the second line. btw: if you use the 1.1.5_pre version, you don't need the [MD] in the first line anymore but the class should still be in the second line.
I think i am just doing something wrong ith the text but i can't figure out what this is the link to how i made the classes. http://dev.bukkit.org/paste/5003/ everytime i start the dungeon it says that class doesn't exist, i have the [MD] on the first line and then the class name on the secound line but it still says the class does not exist
@thelordofchaos
Use an underscore. You can also take a look at the mobworth.yml, because there are all 'mobs' listed that you can spawn.
For the classes: can you post the error, make a ticket with the error or send me a pm with that error? thanks.
@stutiguias
If I understood you right, you mean that when you enter the dungeon, select a class and leave the dungeon you won't get back your old items? Well, depending on which you set the dungeon mode to, it might be a bug or not. When the mode is on hardcore that it's not a bug, because the hardcore mode is used to let the players enter with their own item and should NOT have classes. If you didn't set the mode to hardcore, can you post a ticket with some more info? Thanks.
nice plugin i really love it... if you make the class for the mobdungeon like pvparena... on pvparena if get the itens for some class .. if you leave/end pvparena you will lost the itens... but mobdungeon give the itens and never get it back... right or its a bug for me ???... ( player's will enter/leave just to get the itens of the class )
:) keep up the good work pls !
yea i figured it out but thanks! This is a very fun plugin but i cant figure out of to add creatures that have spaces in there name like the ender dragon and the pig zombie
edit: also everytime i load these custom classes they dont work can you please tell me whats wrong? http://dev.bukkit.org/paste/5003/ thanks
I have uploaded a preview version of mobdungeon. This version contains some/a lot of fixes. It would be nice if you could test it out and tell me if there are still errors/bugs. MobDungeon 1.1.5_pre
Version 1.1.5_pre:
- Fixed boss health
- Fixed entrance fee if amount is 0
- Fixed not canceling BlockBreak events
- Fixed dungeons not loading all settings correctly
- Fixed errors when entering dungeon/spawning a wave
- Added command whitelist/blacklist
to use the blacklist/whitelist: in your config.yml set
command_ban_type
to either whitelist or blacklist depending on what you want. then you can add commands to it. Here's an example on how a whitelist could look like:
MobDungeon commands will still be able to get accessed though.
@DarkIranus
1. just remove it. 2. I don't see any error
@thelordofchaos
Did you edited the level config?
im trying to edit my dungeon to make the secound level but every time i type /md editdungeon arena it says "An internal error occurred while attempting to perform this command" and then on the server is says this http://dev.bukkit.org/paste/4996/ please help
Oh ok! Thank you boss appears the message but also the boss has not given the HP nor the damage: s I believe that after his dervrait be good even if I bother you a lot already so it must be that I am sure every single one day ^ ^
bosses.yml http://pastebin.com/YPzWyXBg level.yml http://pastebin.com/1wDcx2TZ
@Toxic__Waste
well the lobby is the area where players can select their class while the ready area is to indicate that a player is ready. so whenever a players walks into the ready area he indicates that he's prepared to fight and if all players are ready, the dungeon will start. See http://dev.bukkit.org/server-mods/mobdugeon/pages/ready-area/ for info about how to set the area up.
@KERMITtheCOW I think you pasted the link wrong somehow. If it's an error, can you create a ticket then?
could you elaborate on the added ready area i thought we had a lobby thx
<script src='http://pastie.org/3689135.js'></script>
@shadstar
thx i didnt think the size of the arena would matter
@shadstar
Well, thanks for the tip with the block range, the other thing I figured out myself already^^
@andyvorld:
Until kumpelblase2 can fix the issue, make sure your spawn points are within 16 blocks of anywhere the player can go for that level.
@kumpelblase2:
change line 402 of MDLevel.java to:
if(dp != null && mob instanceof Creature)
Or change getClosestPlayer to search farther than 16 blocks. The problem is that getClosestPlayer only checks up to 16 blocks away and if no players are within 16 blocks of where the mob spawned, it returns null for the DungeonPlayer dp. You then try to setTarget of the mob to dp.getPlayer() but dp is null which causes the error.
Just trying to save you the time of figuring out the problem. =)
@andyvorld
can you make a ticket? thank you.
only one mob spawn on the first wave and i get this error on the console http:pastebin.com/Tbd06r7h
v1.1.4.1:
- Added ready-area
- Fixed issues when WorldEdit is not installed
how to create a ready-area, see: http://dev.bukkit.org/server-mods/mobdugeon/pages/ready-area/