Welcome to our new article! Looking for a good plugin for unique player abilities? Meet our development: CloudSkills. The idea is simple: a player picks a combat skill, and it triggers on its own at the moment they hit an opponent. No buttons, cooldowns or extra menus in combat.
A skill is not an active ability you have to remember to press. It's what happens to your opponent when you reach them.
| Skill | What it does | Numbers | Stackable |
|---|---|---|---|
| Zeus's Blessing | Strikes the target with lightning at the moment of the attack | 6 damage, 100% trigger chance | no |
| Hellfire | Sets the opponent on fire | burning for 10 seconds | yes |
| Poisoner | Applies poison | Poison II for 3 seconds | yes |
| Pilot | Sends the opponent into flight | Levitation I for 3 seconds | yes |
Pay attention to the last column. Zeus is a loner skill: while it's active, you can't take others, and the plugin will tell you so plainly. The other three live together just fine, so "ignite, poison and send skyward" in one hit is a legitimate combo. The compatibility flag is set per skill, so you decide the balance on your server.
Inside, every skill is a set of features, and a single skill can have as many features as you like. Three types are available:
So you're not limited to the four presets. Want a skill that has a one-in-three chance to apply blindness for five seconds and at the same time ignite for three? Just add two lines and it appears in game. The chance is set as a fraction from zero to one, so "triggers 15% of the time" is as easy to configure as "always triggers".
This is where the plugin differs from alternatives: in most of them skills are hardcoded and you take what you're given. Here the skill set is your config, not ours.
When a skill triggers, both sides get a title in the middle of the screen: the attacker is told the skill fired, the victim is told it was used on them. The title's fade-in, stay and fade-out can be tuned frame by frame, and if such messages get in the way, one parameter turns them off.
The player controls everything with one command, /skill (also /skills):
/skill list: list of skills, with a green dot for active ones and gray for disabled/skill select <skill>: enable/skill info <skill>: what the skill does/skill reject <skill>: disable one/skill reject all: disable all at onceEach skill has its own permission. That's a ready-made donation mechanic: give Zeus only to owners of the top rank, Poisoner to the middle one, and leave Pilot for everyone. You don't need to write anything extra, it's all done in LuckPerms or whatever you use.
The plugin is not only well developed but also well optimized: we worked separately on database queries and the operations that usually load a server, and they create no extra load. A player's choice is saved automatically every five minutes, so a server restart loses nothing.
Every plugin message lives in the config and can be edited to fit your style: the prefix, activation and deactivation texts, the refusal when trying to combine incompatible skills, titles, status icons and even the help line. Colors use regular codes, so the plugin adapts to your server's design, not the other way around.
The four skills out of the box are a starter set, not a ceiling. A skill in CloudSkills isn't hardcoded: it's assembled in config.yml from ready-made building blocks, so you can add your own without a single line of Java.
There are three blocks, each written as one line separated by semicolons:
# LIGHTNING;<damage>;<chance 0..1>
# FIRE;<burn seconds>;<chance 0..1>
# EFFECT;<effect>;<level>;<seconds>;<chance 0..1>
Here is how "Poisoner" is built, the whole skill, including its permission and compatibility with the others:
skills:
poison:
display: '&2Poisoner'
description: 'Poisons the opponent on attack'
permission: cloudskills.poison
combinate: true
features:
- 'EFFECT;POISON;2;3;1.0'
POISON level 2 for 3 seconds, chance 1.0, meaning it always triggers.
From here on it's your setup. Chance is the last number in the line: set 0.25 instead of 1.0 and the skill fires on a quarter of hits. Strength is the effect's level and duration; for Zeus it's the lightning damage instead. And combinate decides whether the skill can be held together with others: Zeus has false, so lightning doesn't stack with poison and levitation.
A skill can have several features at once, and they trigger independently of each other. Want a hit that strikes with lightning, ignites and blinds at the same time? Just add three lines to one features list. We set no limit on the count.
storm:
display: '&9Storm'
permission: cloudskills.storm
combinate: false
features:
- 'LIGHTNING;4;0.3'
- 'FIRE;5;0.3'
- 'EFFECT;BLINDNESS;1;2;0.3'
An example of a custom skill: three effects in one hit, each with its own chance.
Each skill has its own permission, so it's convenient to hand them out through ranks: one skill for base players, the whole set for donors. The plugin knows nothing about your permission system, it simply checks for the permission with the right name.
The design is fully configurable too. The title on trigger can be turned off or stretched, and the autosave of player choices can be sped up or slowed down:
settings:
titles: true
fade-in: 10
stay: 40
fade-out: 10
save-interval: 300 # player data autosave, seconds
And not one phrase is hardcoded: all plugin messages, from the prefix to the refusal to combine skills, live in the config and can be rewritten to match your project's tone.
messages:
prefix: '&e&lSkills &8| &f'
selected: 'Skill %skill% &factivated!'
no-combine: 'This skill cannot be combined, disable the others.'
no-permission: 'You do not have access to this skill!'
CloudSkills adds a layer to PvP that is usually missing: combat stops being an exchange of blows and starts to depend on which skill you picked before the fight. The plugin needs no resource pack and no client mods, and works on 1.16.5 and above on a clean server.
Updates and support are free. If you need your own skill set for your project, message us and we'll build it.