Enderdragons+
Enderdragons Plus
Description
The plugin controls the spawning of Enderdragons. It fixes the feature that Enderdragons will always fly to the point 0,70,0 if they have no target. It also gives the dragons a home position, where it will return, if he flies to far away.
The Plugin will replace all dragons witch are spawned by these dragons. (except they are not of class: net.minecraft.server.EntityEnderdragon). It is compatible with DragonTravel. It is compatible with RideThaDragon.
There are multiple possibility to configure Dragons. Also there is the possibility to have different Dragon types (different Ages of Dragons) on the Server (see the section Dragon Ages).
Also you can ride dragons with this plugin and fire fireballs while riding (pure Awsomeness)!!
IMPORTANT! This will only work with CraftBukkit!!! (Tested with Version 1.7.2 R0.1) All other Bukkit Implementation and Versions can work, but it is not guaranteed.
Commands
- /edp : gives some info to the plugin
- /sedp : spawns an EnderDragon.
- /kedp [range] : kills all registered EnderDragons in the given range. range = 0 means All Enderdragons regardless of range and world.
- /edpunload : unloads all EnderDragons to an extenal files.
- /edpload : loads all external EnderDragons from files.
- /edpinfo : gives info how many EnderDragons are loaded.
- /edpreload : reloads the config of EnderDragons+.
- /edpgohome : sends all Enderdragons to their Home-Locations
- /edprespawner ... : does respawner commands
- /edpride [speed] : lets you ride a dragon.
PermissionNodes
Permissions are bound to the commands:
- edplus.create : /sedp
- edplus.kill : /kedp [range]
- edplus.commandback : /edpgohome
- edplus.reloadconfig : /edpreload
- edplus.unloadall : /edpuload
- edplus.loadall : /edpload
- edplus.info : /edpinfo
- edplus.riding.ride : /edpride [speed]
- edplus.riding.fireball : firing a fireball while riding a dragon (press q, key for throwing item away. Has to have an Item in hand)
Others:
- edplus.targeting.ignore : The person gets ignored by Dragons
- edplus.riding.fireball : fires a Fireball while riding with key 'q' (throw Item away).
Riding a Dragon
Simply use /edpride [speed] . The Speed is from very slow to unlimited. Recomondations are: slow: speed = 1, medium: speed = 3, fast: speed = 5.
You can Fire fireballs when riding a dragon. Simply press 'q' (throw Item away Key). Then The Dragon will fire a fireball on your Target location.
There are 2 Permissions. One for Riding, one for Fireball spitting. -> see Chapter: PermissionNodes.
Respawners:
IMPORTANT!!!!: if a player does not have the edplus.resawner.see Permission, he will not see the Respawner-Sign! Permissions:
- edplus.respawner.create: '/edprespawner create <spawnername> [respawnTime] [dragons]' and '/edprespawner link <spawnername>'
- edplus.respawner.remove: Hitting the sign to kill the respawner
- edplus.respawner.clear: /edprespawner clear
- edplus.respawner.info: /edprespawner info
- edplus.respawner.debug: /edprespawner debugsigns
- edplus.respawner.see: IMPORTANT: If the Player has this permission, he sees the Respawner Sign, if not, he does not see it!!
- edplus.respawner.port: /edprespawner port [number]
Commands:
- /edprespawner create <spawnername> [RespawnTime] [MaxDragons] : creates a respawner named: as in <spawnername>, with [RespawnTime] as respawn time and [MaxDragons] as maximum dragons at the same time (respawn time is in SECONDS).
- /edprespawner link <spawnername> : links your current location to the spawner named in: <spawnername>
- /edprespawner clear : clears all respawners and deletes them. (Emergency command)
- /edprespawner info : gives info where and how many Respawners are.
- /edprespawner debugsigns : if the respawner exists, but the Sign is not there, it will be replaced. ATTENTION, noticing, if the Sign is invisible!!
- /edprespawner port <Respawner Name> [number] : ports to the respawner with the name in <Respawner Name> and the Number: [number] (can be seen on sign or with /edprespawner info)
The Plugin is compatible to the following PermissionSystems:
- Vault
- PermissionsEx
- GroupManager
- BukkitPermissions
- bPermissions (experimental)
- No permissions (Op only)
Config
The Configuration is mostly good documented (config.yml).
Dragon Ages
There is another configuration. The Dragon ages located in the ageTable.yml.
Different Dragons with different ages can be spawned. This makes it possible to have different difficulties (like: small, normal, hard, etc.). For further information and syntax look at: Dragon Ages.
API (for developer)
API class: de.tobiyas.enderdragonsplus.API.DragonAPI Methods:
- public static boolean setTarget(LivingEntity dragon, LivingEntity target);
- public static boolean setTarget(LivingEntity dragon, Player player);
- public static boolean setTarget(LivingEntity dragon, Location location);
- public static boolean sendHome(LivingEntity dragon);
- public static boolean setNewHome(LivingEntity dragon, Location location);
- public static boolean setNewHomeAndGoTo(LivingEntity dragon, Location location);
- public static LivingEntity spawnNewEnderdragon(Location location);
- public static boolean setPropertyToDragon(LivingEntity dragon, String property, Object value);
- public static Object getPropertyToDragon(LivingEntity dragon, String property);
- public static boolean spitFireballOnTarget(LivingEntity dragon, Entity target);
Information that has to be given (Disclaimer):
- The Plugin is capable of uploading errors to a database. This is disabled by default. To Enable this feature, enable it in the configuration (uploadErrors: true).
- The Plugin collects metric data for usage (https://mcstats.org/). This is enabled by default. To disable this feature, set the config option to false (uploadMetrics: false).
Known Bugs (V1.11.0)
- On dragon reloading (chunk unload and reload) it will give a Bukkit warning that the dragon was stored wrong
Upcoming in next Version (V1.11.1)
- Currently working on V1.11.1:
- Untested:
- Still missing: - Fire breath (70%, looks promising, but needs more testing)
Thanks To:
- @NazzyDragon: for the Idea and the support for testing :)
- @V10Lator: for the Plugin: RideThaDragon (gonna miss you :( thanks for the cool plugin!)
- @XemsDoom, @Phiwa: for the Plugin: DragonTravel (gonna miss you :( thanks for the cool plugin!)
- @CraftBukkit team: for the API and "cleaning" Notch's code
OTHER
If you want to help me by donating, this would be great! This Project consumes a lot of time. The changes the bukkit Team / Mojang do are not always that fine to look through. Donating always motivates to do more/better work ;) . The link is on the top right!
I need some 'Beta testing people' to help me find bugs to already existing stuff. :/ can't do coding + testing at once (unfortunately I only have 2 arms...).
-
View User Profile
-
Send Message
Posted May 27, 2013<<reply 1518526="">>
Thanks very much. :)
I try my best, but university consumes to much time.
Version 1.9.0 is uploaded and needs verification via bukkit staff.
<<reply 1514741="">>
Well when bukkit staff has verified, it's tomorrow. ;)
-
View User Profile
-
Send Message
Posted May 26, 2013@Tobiyas
I made a small donation and if you need any help testing let us know.
From what I understand you study, I wouldn't expect you to put this project first.
Cheers!
-
View User Profile
-
Send Message
Posted May 24, 2013@Tobiyas
Is it tomorrow yet? :-D
-
View User Profile
-
Send Message
Posted May 22, 2013<<reply 1492034="">>
yep. Doing it tomorrow. Sorry for the delay.
<<reply 1486469="">>
Craftbukkits 'update strategies' prevent a rapid update on the plugin... every import changed. (like always.) gonna be done tomorrow. I Think.
-
View User Profile
-
Send Message
Posted May 14, 2013are you going to update it to 1.5.2 plz do i really wan t to use it
-
View User Profile
-
Send Message
Posted May 13, 2013This broke for me with 1.5.2 - - Is there any other Plugin that simply prevents Dragons from flying to Spawn when spawned in normal world?
-
View User Profile
-
Send Message
Posted May 12, 2013Can you please just recompile 1.8.6 for 1.5.2 first? Thanks.
-
View User Profile
-
Send Message
Posted May 6, 2013Does this work with 1.5.2? Or should I wait, thanks!!!
-
View User Profile
-
Send Message
Posted May 6, 2013Hey again Tobiyas,
I am now running the latest Bukkit builds if you have any dev builds to test?
-
View User Profile
-
Send Message
Posted Apr 30, 2013@Necromedes
-
View User Profile
-
Send Message
Posted Apr 23, 2013I am assuming that the ender dragon effect of destroying blocks wherever it goes has been disabled? I don't need a dragon flying into a mountain every five minutes and leaving a hole, you know?
-
View User Profile
-
Send Message
Posted Apr 19, 2013you might wanna see this: http://forums.bukkit.org/threads/better-enderdragon-boss.142112/
-
View User Profile
-
Send Message
Posted Apr 16, 2013@John__B
Was afraid of this... Someone has a usefull methode where to hook and exchange creatures while spawning? Can't even find a usefull reflection target...
-
View User Profile
-
Send Message
Posted Apr 15, 2013@LihPeu
tracking would not have broken this, in spigot 719 they updated
async-operations-catching
which stops "breaking" plugins from even being used (atleast thats what i got out of what md_5 said to me)
http://www.spigotmc.org/threads/async-broken-build-724.1178/
edit: This is not something that is going to go away either...
Im still waiting for VariableTriggers to get an update so i can update past 718 lol...
meanwhile... spigot is past 790
-
View User Profile
-
Send Message
Posted Apr 15, 2013@Tobiyas
Ok I have changed replaceAllDragons from true to false and left replaceonfly true.
I'm going to try spigot build#712 as the error involves EntityTracker and in build #713 they changed something to do with Entity Tracking Intervals http:ci.md-5.net/job/Spigot/713/ not sure if that's related.
I do feel like this is a unfair test as you might be compiling against 1.5.1 R0.2 and I am trying to run it on 1.5.1 R0.1 builds.
-
View User Profile
-
Send Message
Posted Apr 15, 2013@LihPeu
hm.. I see. Strangly enough this is an async problem (which should be prevented by spigot?!?!?). Very strange. This can also happen on Craftbukkit. I just noticed it. Problem is, that I see no possibility to now fixing this at the point where the error happens. I' ve got an idea where their might be some place I could hook. I'm not sure, if it is possible, though.
EpicBoss kind of does simular stuff. Possibly spigot is the issue. I'll still try to find a work around. The easiest thing I see to prevent the error would be, setting the following config option: replaceAllDragons: false and replaceOnTheFly: true. I can't test at the moment, but it could fix it temporarly. No promise, though.
-
View User Profile
-
Send Message
Posted Apr 15, 2013@Tobiyas
Hold that thought, it might be due to that build of spigot that I am forced to use as some plugins I use need to be updated to not use async as spigot will not allow it from build #717+. I had another couple of crashes with the same error from another mob plugin EpicBoss, so it could just be that build of bukkit, and im unable to test with newer builds due to the async issues a core plugin creates.
Our mini game is automated so I spawn the dragon using a console command from another plugin at a target location, not sure if edp supports console commands for spawning?
I'm about to test edp on a older build of spigot that has been really reliable for me 1.5.0#865 and see if edp even loads never mind work :D Will edit this post with my results.
EDIT: Sadly 1.9.0-ALPHA doesnt load with spigot-1.5#865. I can help with testing when I have a plugin updated or decided to use default Bukkit builds again.
Thanks for your work on this project.
-
View User Profile
-
Send Message
Posted Apr 15, 2013@LihPeu
Oh crap... some deep craftbukkit error. :/ Not sure how to fix that... I'll try fixing this but it does not look that promessing.
Did you spawn the Dragon through another plugin, or directly by EnderdragonsPlus, the command or a respawner?
EDIT: just noted, that it was replaced. Seems that the replacer is broken... Bad craftbukkit guys replacing working code with wrong stuff...
I Guess I need a neu methode for that.
-
View User Profile
-
Send Message
Posted Apr 13, 2013@Tobiyas
Hey again, had a server crash with the alpha, might not be the cause but was the last thing the server did before crashing. http:pastebin.com/T0yPdwtY hope this helps with bug fixes.
Java Version: 1.7.0_17, Oracle Corporation CraftBukkit version git-Spigot-716 (MC: 1.5.1)
EDIT: It happened a second time just after a dragon spawned with the same error. Also I found it had done it earlier but not crashed the server with more info in this error. http:pastebin.com/qG9V04xx
-
View User Profile
-
Send Message
Posted Apr 11, 2013@LihPeu
No problem. ;)
Like said. It's only an Alpha till now. More fancy stuff + bug fixes to come.