MoArrows
Update 11 October 2013: For those of you who have been asking, I no longer have the source for this plugin. I deleted all traces of it from my computer once I truly realized how Minecraft users treat developers. If you want the source, you'll have to decompile.
An honest and humbling note from MisterAverage: I've recovered my source code for the plugin. Unfortunately, after 8 months away from it, I feel like it might have well been written in a semi-foreign language. While I can still waddle my way through one procedure call to the next and make sense of it bit by bit, I can already tell that updating this archaic code (especially for the inevitable 1.6 update) will be a daunting chore for a one-man operation to say the least. I'm extremely surprised MoArrows maintained its functionality as long as it has. .
In addition, I've noticed this evening that there are quite a few other (*cough* ripoff *cough*) plugins that seem to have captured the arrow modification spotlight without giving the slightest bit of credit to original ideas coming from skeletonofchaos, ayan4m1, myself, or any other arrow modder on Bukkitdev. To be honest, that in itself sickens me enough to call it quits and just have fun with Minecraft like I did before all of this. Coding ethics just aren't what they used to be I guess. .
I've spent literally countless hours compiling a bunch of java and accompanying documentation for people that I don't know in an effort to make Minecraft a more fun game to play. In the process of doing that, I almost forgot what it was like to just have fun in this game with a group of friends without worrying about updates or tickets or testing. And quite frankly, I have more important things to attend to in my real life. I'm sure I'll still code from time to time. Hell, I might still write plugins. But in the future, they will all be public domain because they will be copied no matter what "license" i put on them. That being said, I would still be willing to assist anyone who wishes to reproduce an updated version. .
As of this message, all of my projects are open to the public (hence public domain) and free to clone, decompile, copy, alter, or whatever. I can provide source and give advice if necessary. I honestly don't care anymore. Credit me, or don't. It doesn't matter in the grand scheme of things. I just hope I had some impact on the game, and I thank you all for sticking with me for so long. To those of you who donated, be happy in the fact that you provided the beer for late night coding sessions during the development process of this plugin, and for that I'm eternally grateful. =P .
One last thing.. I'll see you all in game. You aint gettin' rid of me that easy! =P .
-MisterAverage (in game name: _MrAverage_) .
(message updated on 4 May 2013, 01:32 CST) .
.
Intro: Tired of bow usage being a joke? Want to add a new dimension of excitement to PvP battles? Wish there was more depth to archery in Minecraft? If you answered yes to any of these, read on.
Each arrow has it's own unique ability that adds more versatility to archery in Minecraft. In addition, this plugin attempts to solve the huge degree of imbalance between melee and ranged attacks in vanilla Minecraft. I was amazed that a player could empty half a stack of arrows into a diamond clad attacker and still not get a kill. This plugin provides the capability to even the playing field between bows and swords and make PvP battles much more dynamic. There is now an alternative to a bunch of tanks wildly swinging blades at each other! The overall goal is to make archery more playable, particularly in PvP servers.
(NEW!) Version 2.4.2 is awaiting approval. Check back in an hour or two for the download link!
(¡NUEVO!) ¡Para obtener ayuda en español, - haga clic aquí -!
.
Features:
- - More arrow types!
- - poison, explosive, (NEW!) compression, teleport, lightning, slow, razor, piercing, fire, net, doombringer
- - Perfect for a Ranger class!
- - see -this page- for detailed descriptions of all arrow types.
- - Beefy damage system!
- - Customize all base and crit damage levels! You decide what damage the bow does!
- - Replaces default crit system with a newer, sexier one
- - See -this page- for notes on physical vs. special damage
- - Take your time and aim.. damage is increased when crouching (sneaking) while shooting!
- - Customize arrow damage over time effects (fire, poison, etc)!
- - Heavy armor reduces bow effectiveness.. it's hard to shoot with plate armor on!
- - For advanced users, you can customize the damage penalty levels!
- - Control who can use what arrows with new permissions support!
- - Add arrow cooldowns!
- - Add item costs for arrow types! Want the player to have TnT for an exploding arrow? No problem!
- - Add up to 10 item type requirements (64 items per requirement max) per arrow!
- - (You will never need more than this.)
- - WorldGuard support! Keep those deadly arrows out of safe regions!
- - If a region does not allow PvP, the arrow does no damage.
- - Towny support! Keep those deadly arrows out of non-PvP towns!
- - If a town has disabled PVP, the arrow does no damage.
- - Factions support! Add protection to faction zones!
- - Enable or disable block explosion and fire damage in the config.
- - Safe and peaceful zones are now protected against special arrows.
- - (NEW!) Users can now remove unwanted arrow types from bow cycling! See the usage instructions!
- - (NEW!) Customize razor and piercing multipliers as well as doombringer poison duration!
Installation:
- (If upgrading,) read the changelog for the version you have downloaded.
- (If upgrading,) delete or remove previous version's MoArrows files from the server's plugin directory
- Run or /reload the server with the MoArrows jar in the plugins folder to generate the default config
- Edit config to your desire (see the default config -on this page-)
- Install a permissions plugin, preferably PermissionsBukkit 1.6 or PermissionsEX 1.19.1
- If your server uses Towny, make sure you're using version 0.80.1.0 or later
- (optional) Install WorldGuard and WorldEdit
- Add or remove permissions to your liking (see sample permissions -on this page-)
- Restart or /reload your server for all changes to take effect
- Test your setup before going live with your users!
- If you have a quick question about a feature or setting, feel free to ask in the comments below.
- Problems? Please submit a ticket! It's the quickest and most organized way to get help. An example of the perfect ticket can be found - here -! This ticket was extremely detailed an allowed me to locate and fix the problem in very little time with no additional information required. If you do not follow the ticket format, you ticket will be declined. Period.
A note about permissions: If I set all permission defaulted to false, people who are unfamiliar with permissions usage complain that the plugin doesn't work. If I have them defaulted to true, people who are unfamiliar with permissions usage complain about everyone having use of all permissions. ALL MoArrows permissions can be enabled or disabled to suit your needs if you learn how to use your permissions plugin well. Please do not post any more questions about permissions unless you have exhausted all other options for learning the system.
Quote:Most arrows are enabled by default, yes. Please check out the default permissions to see what is and isn't enabled at the following link..
http://dev.bukkit.org/server-mods/moarrows/pages/plugin-yml/
The reason most types are enabled by default is because, when they were all set to false, so many permissions newbs complain that the plugin doesn't work when they haven't set any permissions for it (and subsequently uninstall MoArrows). Unfortunately, now that I've set many permissions default to true, I have people complaining that everyone can use "all" the arrow types.
It's an unfortunate double edged sword at my neck. If I set all to false, people say it doesn't work.. if i set all to true, people complain that it works for everyone. I don't have a remedy for this aside from saying to everyone "LEARN PERMISSIONS!" =)
Usage:
- left click with bow to cycle through arrow types
- Shift+left click to cycle backwards
- /moarrows [arrowtype] - disables or re-enables arrow types in the selection sequence at the user level
- /moarrows list - lists important config values
- /moarrows help - shows a quick command reference
- /moarrows help [arrowtype] - displays arrow summary and required materials
- /moarrows reload - reloads all config.yml values
- /moarrows version - displays the server's version of MoArrows
Permissions:
moarrows.use.all (default: false)
moarrows.bypassmaterials (default: false)
moarrows.bypasscooldowns (default: false)
moarrows.allowcrit (default: true)
moarrows.use.[arrow type goes here] (default: true except teleport and doombringer)
moarrows.list (default: true)
moarrows.help (default: true)
moarrows.reload (default: op)
Arrow types are currently normal, poison, explosive, compression, teleport, lightning, slow, razor, piercing, fire, net, and doombringer. Note: The superperms bug has been fixed. You can now safely disable features of MoArrows with them.
Change Log:
Please see v2.4.1 download page for the full changelog.
.
Special thanks: First and foremost, I'd like to thank ayan4m1 (the developer of multiarrow) for creating the initial framework for the first few versions of MoArrows. A big shout out goes to Shanko (owner of war.pvpzone.org:25600) for being the first server owner to beta test for me. I couldn't have completed the Towny support without the testing from Zombiemold. Factions support wouldn't have happened without spacecakeXD and Imkingoflive. A really cool guy named Cecell helped me out a bunch with McMMO testing on his server. LastWishESP from Youtube deserves muchas gracias for his 2.3.3 file translation and tutorial video. Thanks go out to Clanforge AKA multiplay.co.uk for adding MoArrows. Also, I am incredibly grateful for those of you who've donated to this project so far, as well as those of you who are considering doing so in the future.
@AgentPaperCraft
@TheCuddler
I'll add an "ignored worldguard region list" type thing in the config. That's a good idea guys.
@shankomaster
Edit: I used your exact config with the same version and it's running fine. Though the "0:0," should be in front of all the material requirements not behind. That may cause weird bugs the way you have it. This seems like it may be a plugin conflict. The first thing I would try would be to rename the config, let the jar generate a new one, and edit the new one. You can also try renaming the MoArrows jar to zMoArrows or 1MoArrows. This forces MoArrows to be loaded last or first. (They load in alphabetical order.) Also, if you still have your test server handy, you can remove plugins one at a time til the arrows explode. Then I'll know where to focus my efforts better if it is actually a plugin conflict.
Yeah I hopped on there to check it out and the visual effects and materials seem to work but none of the arrow effects work. I'm on it. Do you have server log errors when the special arrows hit the ground?
Hey man, the explosive arrows arent blowing up for me on the newest version =/
heres my config
http://pastebin.com/6HqSzbKz
I agree, this would be very useful. We have arenas set up that disallow players from building, but PvP is allowed.
@MisterAverage
Can you create a create an option to allow the Arrows to be used in specific regions? Our pvp arena is set to no build rights and that causes player not to have the ability to use the arrows.
This would be extremely helpful.
@Zombiemold
EDIT: As it turns out, the enderdragon bug is a bukkit issue as Zombie and I found out. Vanilla bukkit has the same issue.
I'm workin the issue right now.. but I'm dealing with the programmers worst nightmare: intermittence. Sometimes enderdragon damage works fine, others it doesn't. Gotta figure out what the cause is.
MrAverage, remember that issue I was having with toe volcano?
Well renaming it works, but I have found another issue.
When MoArrows is loaded, the enderdragon doesn't deal damage.
When it is disabled, it deals it's damage perfectly. What may be going on here?
@danielboyz
EDITx4 Glad we could get it workin for ya!
EDITx3: Think I may have fixed the problem now. I know i fixed one issue for sure. It was likely a combination of two things. Try 1.7.2 and lemme know.
EDITEDIT: Pm me your server info and email so i can send some test builds and talk to you directly.
EDIT: found a possible issue.. you are using worldguard right? And you probably dont have any regions in the nether I assume (most people don't). So since regionSet returns null in your nether, it causes an error in canShoot(). Working a fix now.
I'm on it.. we'll get this workin for ya!
@MisterAverage
The chain muliplier works, but the arrows still don't, and yes i get an error in onsole (didn't notice before) http://pastebin.com/7wPpujPH
Worldguard related I geuss
EDIT: I'm testing as an OP so permissions cant be the problem, and thanks for the quick replies and help!
@danielboyz
EDIT: Actually, it was a really easy fix. Version 1.7.1 is now up on the mediafire link. The smoke effect was linked only to worlds named "world" and that was causing issues. This issue is fixed. I tested it in the nether as well and it worked great. Remember, if you're using multiworld permissions, you might want to double check your permission setup for MoArrows. I also added chainmail. =)
Hey man I think I know what the problem is in your case.. working a fix now. Are you getting a server log errors when you fire outside of the spawn world? And yes, I'll add chain armor to the 1.7.1 release. Should be done by tonight.
Like and use this plugin a lot! :D
But I updated the plugin and now it no longer works in worlds other then the spawn world... D: (fire arrow does work though (only on mobs)
Edit: Could you also add chain to armor penalty list?
@Thumbz707
No, unfortunately there's no bukkit parameter (like there is for tnt) to turn fire off with lightning strikes. The only thing I would recommend would be to disable firespread in worldguard. Or you could grab any one of the many plugins out there that give more control over world damage.
@Davoid10
Excellent! Yeah if you were playing as op, it automatically enables bypassmaterials. Glad you got it working man!
@MisterAverage
We fixed it! Apparently it works if we are not OP. Still don't know how it works, but it works!
Now we'll continue killing each other with lightning arrows :3
@MisterAverage
Okay, so I used the posted configuration but deleted the line with bypassmaterials but I still do not require materials, can still shoot stuff with only one arrow.
Any other information that might be helpful to you?
Also, do I need to edit the permissions file that is located in the same directory with the craftbukkit.jar? I haven't read anything about that so far but it seems useful.
Awesome Plugin. I really enjoy it, and so do my players. Is there anyway we can get an option to have lighting and fire arrows only light mobs/players? I can't let people have either of those until I know they won't burn down the city.
@Davoid10
Well if the default user is set to bypass materials, there won't be any materials subtracted from the default user inventory. That's the whole point of moarrows.bypassmaterials. Remove permission for that, and the materials will be deducted like normal.
@MisterAverage
Thanks for the quick response. We're all playing as op and yeah we checked it out and made this accordingly:
@Davoid10
Are you testing as op or in creative mode? Did you check out the sample permissions page? Also, use [.code] [./code] around your config posts so they aren't a clusterfuck to read.
Hello,
Me and two friends are trying to use your mod in a private PVP server, however, the arrows do not seem to use the items i assigned to them. The bow shoots only the arrow but leaves the rest of the inventory alone. I'm relatively new to bukkit but we can't find anything done wrong so far. We're using MC 1.2.5, PermissionsEx and your version of 1.6.6 (which ingame says 1.6.5 btw :))
Because we are also new to the permissions plugin this is how ours looks: users: *: group: - default *: group: - default *: group: - default groups: default: default: true permissions: - modifyworld.* - moarrows.use.all - moarrows.list - moarrows.help - moarrows.bypassmaterials:false
Our MoArrows config looks (at the arrow requirement part) like this
explosive-materials: 0:0, poison-materials: 0:0, lightning-materials: 0:0,371:6,331:6, teleport-materials: 0:0,348:1, razor-materials: 0:0,262:2,01:1, slow-materials: 0:0, fire-materials: 0:0, net-materials: 0:0, piercing-materials: 0:0,264:1, doombringer-materials: 0:0,
We are only using the arrows which have items assigned to
I hope you can help me, Best regards, David