S86 Powers
Introduction
Minecraft is a great game on its own, but chances are if you're here and you're a server admin then you're looking for more to offer your clients. As you may know by now, when it comes to the extras every player wants something unique. Some want new mechanics, others want better weapons. Some want to help their friends, others want to dominate them. The problem is most plugins often offer a blanket solution. While it may fulfill the needs of a few, the remaining may not want to participate. Sure you can mess with permissions to exclude some people, but why not just cut to the chase and give every player EXACTLY what they want?
For the server that wants its players to each have individual benefits and abilities, S86 Powers is the plugin for you.
How It Works
S86 Powers is a plugin that allows users to have powers assigned to them. The core plugin comes with internal powers, but is also capable of importing powers made by others (more info to come).
To get started, simply place the S86Powers.jar file where you put your other plugins. Note that ProtocolLib is required for S86 Powers to function. On first run, several configuration files are created with default values. It is recommended that you not edit these files directly unless the server is off, as entered values may be overwritten the next time the server shuts down or restarts.
Next, you'll want to review permissions and configuration options. Operators by default get permission to everything, otherwise assigning the permission s86powers.admin will accomplish the same thing. To view configuration options, use the command /p config list [page#] (for example, /p config list 2 shows you page 2). For more information on what an option does, use the command /p config info [config], and to change config options use the command /p config set [config] [value].
Finally, for players to use powers they must first have them assigned, and before they can do that they'll want to know what's available. Use the command /p power list to get a list of loaded powers, then /p power [power] for more info on a specific power. If you don't like how a power is setup, you can check and set its configurable options with /p power [power] option. Note that changes to power options affect all users, and may require a server reload/restart for changes to take effect.
Players can be assigned powers in several ways, the two most prominent being admin-assigned or self-assigned. Admin-assigned requires a user with the s86powers.manage.user permission to use the command /p user [player] add [power]. Note that the above permission allows the user to set anyone's powers and shouldn't be given to most players. Self-assigned requires a user to have the s86powers.manage.self permission, and use the command /p add [power]. This method is safer, as the user can only modify their own powers.
What Are Powers?
Most powers come in three categories: offensive, defensive, and passive. Offensive and defensive powers operate similarly: the player does something with a specified item, and it causes an effect. Offensive powers usually do something that causes damage to others, while defensive powers usually do something to protect the player in some way. Passive powers tend to work automatically and provide some kind of bonus that neither hurts others nor protects the player (though there are exceptions).
An example of an offensive power is Laser. In its default configuration, left-clicking while holding a dispenser will fire a laser in the direction that the player is looking. This laser steadily does damage to anything it hits but uses redstone dust as fuel. The laser turns off when either the player left-clicks while holding a dispenser again, or when the player runs out of redstone dust. After using Laser, the player has to wait for a 10 second cooldown before using it again.
An example of a defensive power is Celestial Pillars. Left-clicking the ground while holding a sea lantern will create pillars of light around you. While these pillars stand, nothing can pass between the pillars except for the player. Pillars last for 45 seconds, however the player can't create new ones until the old ones expire.
An example of a passive power is Lumberjack. With Lumberjack assigned, breaking one log block of a tree with an axe will cause all adjacent tree blocks to break as well, essentially harvesting the entire tree at once. By default, a threshold is put in place so players can't level entire jungles.
Some powers have additional effects when they're used a lot. For example, after creating 60 pillars with the Celestial Pillars power, you gain the ability to create a second set of pillars by left-clicking the same block with a sea lantern again.
By default, players can only have one of each of the above power types assigned to them, though this limit can be removed with config options.
The last power type is utility. Utility powers can be used by anyone, including players with no assigned powers. Neutralizer Grenade allows players to throw lapis lazuli like a grenade, temporarily disabling the powers of any players nearby when it hits. Neutralizer Beacon allows players to create a block that constantly disables the powers of players who go near it.
Commands / Permissions
All commands can be viewed by simply using the /powers help command. You can view additional pages using /powers help [page], or view help on specific topics like /powers help player.
Donate
Creating and maintaining a plugin this size can be a full-time job on its own. I enjoy working on this plugin and don't mind doing it for free, but the fact remains that I must commit a majority of my free time to do this. If you like my work and would like to support it, please consider donating.
Need support? Have an idea for a power? Join my Discord server!
-
View User Profile
-
Send Message
Posted Nov 13, 2012@sirrus86
Glad to see you're still alive man.
Yeah, I think making the fake weapons configurably removed or just removed in general would be good. People keep trying to pick up diamond swords that aren't really there.
I didn't really say why I was wanting Tumble, but mainly it's to also ask you to give a noFallDamage: true variable for Acrobat so I could set mine to false. I like the idea of players being able to jump higher but taking no fall damage seems a little overpowered, however I can't have someone else's power idea changed just for me, which is why I was wanting a config option for it too. Then, players on my server could buy Tumble too. Just more variety, I guess.
Got another "bug", or at least something that "bugs" me. I use the Turrets plugin which allows you to enter the turrets (minecarts) and manually shoot at players, right? Well, when I right-click to enter a minecart, my Bloodbend makes that annoying noise. Is it because minecarts are entities? Maybe a in the code throw (ifTargetIsEntity && ifTargetIsNotAMinecart) lol not actual code but yeah just something minor.
You're a super good dev man. There are only a handful of really amazing plugins. This is one of them. If I were rich, I'd hire you so you could put all your time into this plugin.
-
View User Profile
-
Send Message
Posted Nov 13, 2012@n33dy1
lol have some edits...
Disable Powers - Maybe not for v4.0 but in a following update I'll see about getting this implemented.
Fire Timer - Actually the fire created by lightning isn't something flagged or hookable from a coding standpoint, meaning I can't determine if, when, or where it'll occur usually. But I'll try and see if I can get something like this in a future version.
Helmets - Yes, placing them in the inventory is preferable, and having an empty inventory slot could be a requirement of the power. This may annoy some players however, as once it's dumped into the inventory there's no perfect way to reapply it again without the player doing it themselves.
Fake Weapon - This occurs because the client sees the diversion's death as a player death, and therefore the "player" would always drop their carried item. Since the "player" doesn't really exist, the item they drop is fake too. The only way I know to prevent this is to make the diversion hold no item.
WorldGuard PvP - El'druin uses direct player-to-player damage whereas Bloodbend uses custom source-less damage. I believe this is fixed in v4.0.
Dodge - I like this idea... except you KNOW there'll be some guy (me) who hides underground mining like a madman for weeks then one day pops out and he's INVINCIBLE... Maybe a configurable cap would help.
Tumble - I really like this idea too.
Disable Thunderbow - Yeah yeah, I'll get it in there...
Feather Fall - I'm kinda redoing how item entities are handled in v4.0, this should fix some problems (he said for the 50th time).
Disable Diversion - Nope. You asked too much, now I'm not doin it.
@Mirreducki
The current source (about a month outdated) for v4.0 is at https://github.com/sirrus86/me.sirrus86.S86_Powers, however there are no powers, only loading scripts. If you need help or anything just PM me if you want, I'm far from an expert and my code can be messy but hey it works... usually... Also in the future I plan to release some powers as standalone plugins (for example Grappling Hook, Vampirism, etc), which will include source.
-
View User Profile
-
Send Message
Posted Nov 13, 2012Could i have a look on your source code?:)
I started doing plugins a month ago and i want to try making my own Ability/power plugin however i got no idea how to start, so i thought about your plugin and decided to ask you:) I will not steal any abilities or such thing:)
-
View User Profile
-
Send Message
Posted Nov 10, 2012I thought of more powers, again!
Dodge: Chance to avoid damage from melee and ranged attacks is based on your level. At level 1, you have a 1% chance to avoid damage. At level 5, it's 5%. 12, it's 12%, etc. This goes past 30%. If a user reaches level 100, they are 100% immune to all melee and ranged attacks. This works with PvP and PvE.
Tumble: Take no fall damage when falling from 5 blocks or less. At 6 blocks, you have a 50% chance to take half damage. At 7 blocks, it's 40% chance for half damage. 8 blocks is 30% chance for half damage. 9 blocks is 20% chance for half damage. 10 blocks is 10% chance for half damage. Falling from more than 10 blocks = you take full damage from the fall. (this power could go well with Feather Fall so you can hold shift more often and blast people back while taking less damage)
EDIT: One of my players wishes they could disable Thunderbow.
EDIT 2: Feather Fall makes a weird ghost area that causes people to bob up and down when they walk into it.
EDIT 3: One of my players wants to disable Diversion because it doesn't attack the Wither and makes fighting it very troublesome.
-
View User Profile
-
Send Message
Posted Nov 5, 2012@sirrus86
It would be nice to toggle all powers individually too though because what if you got Arachnophile and some spiders followed you up to your best friend and they ate him? Or what if you had Diversion but wanted to show someone your Acid Blood and each time they hit you they freaked out because "you" suddenly started attacking them? Not to mention Fire Aura when you're not mining for diamonds near bedrock and you decide to swim around real fast in some water with Aquaphile, but the water is hurting you. It would suck if you were bad at fishing and had Grappling Hook and each time you snagged a tree, you were sent flying into the water. I for one would prefer to use Dark Regen only when mining for diamonds.
As for the fire, I suppose real fire is fine since it doesn't stay forever. Is it possible to reduce the time the real fire is present? If so, maybe let that be configurable? (so those that like it can keep it)
As for the possibility of losing helmets on a /reload or something, hmm... that would suck. Who knows who might be eating when I do a /reload. Good point, however, what if you made it so it did use their actual inventory, but if their inventory was full (or simply missing the 1 free slot for their helm) it doesn't do anything? The heads can be in that itemstack you were talking about.
EDIT 3 Days Later: Can you make it so when the Zombie Pigman clone from Diversion dies, the fake weapon entity it was holding does too?
Also I don't think they wear 1.4 masks.
And... Eldruin respects WorldGuard for no PvP in my spawn area I defined, but Bloodbend does not.
-
View User Profile
-
Send Message
Posted Nov 5, 2012@n33dy1
[status] Hit - One for each status maybe? Absolutely.
Toggling Powers - This is being addressed in v4.0 for some of the powers where the previous version may have been inconvenient. For example, Bloodbend can now be configured to work with an item rather than barehanded. Also, AeroBlade has been updated to be toggleable using an item. If I miss anything with the Alpha release of v4.0, it's not a hard feature to implement.
Fire - Fire is actually automatically generated both client and server side when lightning strikes. The server side fire and damage can be prevented, however the players may still see fire as the client sometimes renders it regardless. What you're left with is a sort of ghost block that remains until you leave and revisit the area. I can see about adding this option.
Chomp/Spooky Face - So basically a cosmetic under certain circumstances, easy enough.
"okay, so if the user has a full inventory... where does his existing helm go?" - Create a map where each player is assigned an itemstack. When the effect begins, assign their helm itemstack to that player before replacing the helm with the mask. Once the effect ends, call the itemstack that was set to that player and set it as their helm again. The only problem is if the server stops or reloads while the mask is in effect, the player will lose the itemstack assignment and will essentially be screwed out of a helm but will gain the mask. This can be overcome using an external config file, but that could slow down the server as it'd be constantly saving and loading config data.
-
View User Profile
-
Send Message
Posted Nov 5, 2012Got another idea for a power! (I'm on a roll.)
Chomp Face:
Each time your health goes up, your mask will change from a zombie head to a creeper head over and over in 1s intervals until 10s have passed. If your health goes up again during this time, the 10s timer resets.
I got the idea for this power by putting on a zombie head and holding a creeper head in my inventory and walking up to people and changing them back and forth. it looks like the mouth is opening and closing and looks really neat.
Spooky Face:
This does the same thing, 1s intervals for 10s, but only it does skeleton skulls and wither skulls and will activate when you take damage. (might freak a noob out long enough to save your life)
I was thinking of the programming side of this and I was like "okay, so if the user has a full inventory... where does his existing helm go?" Well, that I do not know. Good luck with that one lol
-
View User Profile
-
Send Message
Posted Nov 4, 2012@sirrus86
Well, a percentage (not too overpowered and maybe even configurable) would be fine too.
Also how about a Slow Hit power that slows an enemy for 5 seconds (configurable) every time you hit them with melee or ranged weapons.
And a Blind Hit that blinds an enemy for 5 seconds (configurable) every time you hit them with melee or ranged weapons.
This way the users on my server which purchase powers (I use the MagicSpell plugin too) can buy multiple powers like this and gain more advantages in PvP.
If you could add a /toggle PowerNameHere command for ALL the powers, that would be really nice. That way, say I was using Eldruin and Aero Blade but I didn't want to use both, I could be like /toggle aeroblade and it would say "Aero Blade is now disabled". If I did /toggle aeroblade again it would say "Aero Blade is now enabled".
What you might do is in the If statement (or whatever that's used) that checks if you even have the power, put a "&& (power.aeroblade.enabled == true)" or something in there. I don't know your variable names and whatnot, but it seems like it would be an easy add for all the powers.
One I'd use the most is /toggle bloodbend before I try to charge a Creeper with Creeper Blood. Just seems so worth having. :) http://roleplaycraft.com/powers.php shows what I meant by users buying the powers from me. I like combining the good ones. Martyr + Electrified + Reflexes + AcidBlood = Really good at staying alive and just blocking, except when their swords knock you into the fire caused by the lightning!
I think some people might like the fire but I don't, so if you added a fireDamage: true in the pConfig.yml file under Electrified or wherever it should go, that would be awesome too. You got like the best plugin meant for fun or PvP man. I hope you start releasing updates more often again, you're a great dev.
EDIT: I had an idea for what you said about the floating heads. On that other plugin I mentioned, there are these 2 spells Volley and Freeze. One shoots arrows down at an angle from the sky like buckshot, the other sends snowballs out like buckshot. If you made a power that let you shoot a buckshot of heads out at enemies that do 1/2 hearts per head that hits with a configurable cooldown, that'd be neat! It could even shoot the head type you're holding, such as the Creeper one of the Steve one. I don't think they should be allowed to be picked up though (like how currently Aero Blade bugs with the feathers) because then people might get lots of Wither heads...
-
View User Profile
-
Send Message
Posted Nov 4, 2012@n33dy1
Floating Heads - I've actually tried and failed to have an item float or even hover around the player. The problem is all entities have a constant downward velocity (simulated gravity) that's VERY touchy; applying no y-velocity has the entity fall as it normally does, applying even the slightest y-velocity will make it fly straight up.
Shuriken - I like it! A decent use for an otherwise under-utilized item.
Poisoned Weapons - I like this too, but I personally dislike the "every twenty hits" idea, I prefer some randomness as it otherwise makes the benefit abusable and/or tedious.
-
View User Profile
-
Send Message
Posted Nov 4, 2012Found something from another plugin that would be cool for this one. It should be easy for you to make, too, seeing as how you have CookieStars. Make a Shuriken power which let's you throw shurikens (flint) when clicking with Flint. Then people will mine gravel all day instead of having to bake cookies. :)
Another power that would be cool is Poisoned Weapons which would make 1/20 attacks with melee or ranged weapons have a poison effect (the same one as what Acid Blood has). For levels 30+, it's 1/10 attacks. Users should be allowed to find animals like sheep and attack them until the poison kicks in (a message will show for the player using it only) and then attack like 19 (or 9 if lvl 30+) more times, go find an actual player, hit them once and the poison should kick in. The message will show for the player being hit, too. I don't think I'd want it sent to the whole server that someone got poisoned (especially if they survived it).
-
View User Profile
-
Send Message
Posted Oct 31, 2012Another idea for a new power! Something with heads. Floating around you and maybe flying at enemies and doing 1 heart damage per head that hits, but they don't hit all at once, but maybe like 1 per second, so other people have time to get away from you if they noticed they just came too close to a badass. No idea what to call it though.
EDIT: Zombies follow me and attack me even with Diversion. :(
-
View User Profile
-
Send Message
Posted Oct 27, 2012@karatepancake
Great minds think alike.
@n33dy1
Eldruin no longer destroys blocks. This also means long grass, torches, etc will stop it from continuing its path, which will make it less effective in small corridors.
I forgot to add an ability to toggle Aero Blade, but I'll see that it gets added.
-
View User Profile
-
Send Message
Posted Oct 27, 2012I hope the ability to disable Eldruin from destroying blocks will be added this update.
The ability to toggle Aero Blade on and off would be nice, too.
-
View User Profile
-
Send Message
Posted Oct 26, 2012sirrus86: I look forward to your new re-writed powers. I use your plugin already. May I suggest with the new mob bats out you could make vampires turn into them and fly.
-
View User Profile
-
Send Message
Posted Oct 26, 2012@n33dy1
I spent a majority of my last few days working on nothing but this plugin. As I'm rewriting powers I'm also adding new options and improving where I can. With that said I am now 50% done, in conclusion this won't be finished by the 27th.
I will however give you guys a preview of the improvements I've made:
With MC 1.4.2 out, my goal is to complete the plugin for the latest Bukkit 1.3.2, then update it for 1.4.2 in the next version if needed.
-
View User Profile
-
Send Message
Posted Oct 23, 2012@n33dy1
...That means I'm going to TRY to get it done by the 27th. I have a lot of time off the next few days but I'm not even half done with rewriting the powers.
-
View User Profile
-
Send Message
Posted Oct 23, 2012Before the 27th? That means you only have 3 days... =o that means this week!
-
View User Profile
-
Send Message
Posted Oct 20, 2012Yay. I have been checking this everyday and im glad i now have a date to hopefully look forward to. :)
-
View User Profile
-
Send Message
Posted Oct 18, 2012@n33dy1
Har har.
I'm an admin on a server that uses this plugin, and have set the goal to have v4.0 Alpha ready before the 27th.
-
View User Profile
-
Send Message
Posted Oct 16, 2012This is me. http://www.jewishworldreview.com/images/waiting_skeleton_cover.jpg