Custom Abilities: Keywords - BoBoBalloon/InnovativeItemsDOCS Wiki

Intro

Abilities give server owners an immense amount of control over their custom items and allows them to bring their ideas to life. But, abilities need to get code from somewhere, and that's where keyword come in. Keywords are developed and registered by Java developers (via the developer API) and once registered can be used by anyone (regardless of Java expertise) to customize and innovate.

If you don't know Java and can't take advantage of the developer API that's fine, because there are a lot of keywords built into the plugin.

Example

An example of a keyword named test without any arguments is provided below:

- 'test()'

Keywords are structured so that the name of the keyword is first, after that parentheses, inside of said parentheses contains all the arguments with commas separating each one. If you do not follow this syntax the keyword will fail to load and you will be notified with a warning in console.

List of Native Keywords

Below will be a list of all built-in keywords that you may reference while writing new abilities.

If a keyword can take more than one targeter inside of an argument, they will be separated by "|".

(Remember, this is an incomplete list and keywords can be removed and added at any time)

Keyword Description Arguments Example
delay Delays the rest of unexecuted keywords by a set amount {delay in ticks} - 'delay(20)'
ability Executes another ability with a trigger that has at least the same targeters {ability name} - 'ability(test-ability)'
randomability Executes a random ability from the list with a trigger that has at least the same targeters (separated by semicolons) {ability name;ability name} - 'randomability(test-ability;testing-2)'
command Executes a command from console (replaces player targeter with player name) {command} - 'command(tp ?player 5 10 2)'
damage Damages the targeted entity by a set amount ?player|?entity {amount of damage} - 'damage(?player, 5)'
heal Heals the targeted entity by a set amount ?player|?entity {amount of healing} - 'heal(?player, 5)'
damagepercent Damages the targeted entity by a percent of their max health ?player|?entity {percent} - 'damagepercent(?player, 75)'
healpercent Heals the targeted entity by a percent of their max health ?player|?entity {percent} - 'healpercent(?player, 25)'
sethealth Sets the health of targeted entity by a set amount ?player|?entity {amount} - 'sethealth(?player, 6)'
feed Adds to the hunger level of targeted entity by a set amount ?player|?entity {amount} - 'feed(?player, 10)'
kindle Sets the targeted entity on fire for a set amount of ticks ?player|?entity {duration in ticks} - 'kindle(?player, 100)'
lightning Strikes lightning at the specified location and deals a set amount of damage to those nearby ?player|?entity|?block {amount} - 'lightning(?player, 2)'
message Sends a chat message to a target entity ?player|?entity {message with color codes} - 'message(?player, &e&lHello World!)'
particle Fires a particle at the targeted location ?player|?entity|?block {name of particle} {amount of particles} {x offset} {y offset} {z offset} - 'particle(?player, FLAME, 10, 0, 0, 0)'
effect Gives an entity a potion effect ?player|?entity {name of effect} {duration in ticks} {level} - 'effect(?player, SLOW, 100, 2)'
playsound Plays a sound to a player ?player|?entity {sound} {volume} {pitch} - 'playsound(?player, BLOCK_COMPARATOR_CLICK, 1, 1)'
giveitem Gives a vanilla minecraft item to a player ?player|?entity {material} {amount} - 'giveitem(?player, PLAYER_HEAD, 3)'
givecustomitem Gives an innovative custom item to a player ?player|?entity {item name} {amount} - 'givecustomitem(?player, blood-blade, 1)'
removehelditem Removes a set amount of the item the target is holding ?player|?entity {amount} - 'removehelditem(?player, 2)'
gamemode Sets the targets gamemode ?player|?entity {gamemode} - 'gamemode(?player, creative)'
velocity Adds to the targets velocity ?player|?entity {change in x} {change in y} {change in z} - 'velocity(?player, 0, 1.5, 0)'
switcheroo Swaps the positions of the casting player and the trigger related entity ?entity - 'switcheroo(?entity)'
actionbar Sends an actionbar message to the targeted entity ?player|?entity {message with color codes} - 'actionbar(?player, &e&lHello World!)'
titlemessage Sends a title message to the targeted entity ?player|?entity {title with color codes} {subtitle with color codes, could also be null for no subtitle} {ticks to fade in} {duration} {ticks to fade out} - 'titlemessage(?player, &e&lHello World!, null, 0, 60, 0)'
teleport Teleports the entity to the specified location ?player|?entity {x coordinate} {y coordinate} {z coordinate} {world name} - 'teleport(?player, 50, 75, 100, world)'
teleportto Teleports the entity to the location of another targeter ?player|?entity ?player|?entity|?block - 'teleportto(?player, ?entity)'
time Sets the time in the world {MORNING,NOON,NIGHT} - 'time(NIGHT)'
sudo Executes a command as a target entity ?player|?entity {command} - 'sudo(?player, gamemode creative)'
dropitem Drops a vanilla minecraft item at the location of the target ?player|?entity|?block {material} {amount} - 'dropitem(?player, DIAMOND_SWORD, 3)'
dropcustomitem Drops a innovative custom item at the location of the target ?player|?entity|?block {item name} {amount} - 'dropcustomitem(?player, blood-blade, 1)'
explode Creates an explosion at the target location ?player|?entity|?block {power/yield} {should break blocks} - 'explode(?player, 4, false)'
shootprojectile Fires a projectile the way the executing player is facing {projectile type} - 'shootprojectile(WITHER_SKULL)'
setequipmentslot Sets the equipment slot on the provided player ?player|?entity {item name or material} {HAND,OFFHAND,HEAD,CHEST,LEGS,FEET} {is custom item} - 'setequipmentslot(?player, DIAMOND_HELMET, HEAD, false)'
lunge Causes the entity to jump towards the direction they are facing ?player|?entity {multiplier} - 'lunge(?player, 1.5)'
mythicmobsskill Executes a mythicmobs skill (requires MythicMobs) {skill name} ?player|?entity - 'mythicmobsskill(SummonSkeletons, ?player)'