... | ... | @@ -5,61 +5,4 @@ Using the right skill trigger, you can have an ability cast when the player kill |
|
|
**Damaging** abilities can either deal **physical** or **magical** damage. Depending on their type, the ability damage can be increased by a specific item stat, either `Physical Damage` or `Magical Damage`. Physical abilities correspond to abilities which utilize items or weapons, like _Circular Slash_ or _Item Throw_. Magical abilities correspond to elemental/magical abilities like _Firebolt_, _Fire Comet_...
|
|
|
|
|
|
## Adding abilities to MMOItems using MythicMobs
|
|
|
**This works in 6.6.X or lower. For MMOItems 6.7 please refer to this [new page](https://git.lumine.io/mythiccraft/mythiclib/-/wikis/Custom%20Skills).**
|
|
|
|
|
|
If you have MythicMobs installed on your server, you can utilize the _/MMOItems/dynamic/mythic-mobs-abilities_ folder in order to add item abilities to MMOItems using the MythicMobs skill creation feature. Create a YAML configuration file in that folder and write the following:
|
|
|
```
|
|
|
# The internal name of the MM skill.
|
|
|
mythicmobs-skill-id: <Internal name of your MythicMobs skill>
|
|
|
|
|
|
# Ability name displayed in lore.
|
|
|
name: <Ability name displayed in item lore>
|
|
|
|
|
|
# Ability Modifiers (default values).
|
|
|
cooldown: <Default cooldown value>
|
|
|
damage: <Default damage value>
|
|
|
````
|
|
|
MMOItems requires MythicMobs (at least 4.7.0) in order to function.
|
|
|
In order to setup a MM ability in MMOItems, you need to specify three different things: the **MM internal skill name** which will be used by MMOItems to detect and cast the corresponding MM skill, the **ability name** which is used by MMOItems to display the ability in the item lore, and the **modifiers** the ability has as well as the default modifier values.\
|
|
|
For instance, if you want the ability to also have a `damage` modifier, like when creating a damaging projectile based skill, you only need to add to the config file: `damage: 6`. This has the effect of registering a new modifier as well as setting its default value to 6.
|
|
|
|
|
|
ONE VERY IMPORTANT THING TO NOTE IS THAT YOUR FILE NAME IN MMOITEMS SHOULD BE CALLED THE SAME THING AS THE MYTHICMOBS SKILL ID SO ITS ALL UNIFORM, ATTACHING THE .YML TO THE END OF COURSE!
|
|
|
|
|
|
Requires a server restart for ability to show up.
|
|
|
|
|
|
## Using ability modifiers in MythicMobs skills
|
|
|
Let's say you have setup an `Ice Bolt` skill (skill example in the MM wiki) which casts a damaging ice projectile.
|
|
|
```
|
|
|
IceBolt:
|
|
|
Skills:
|
|
|
- projectile{onTick=IceBolt-Tick;onHit=IceBolt-Hit;v=8;i=1;hR=1;vR=1;hnp=true} @TargetLocation
|
|
|
IceBolt-Tick:
|
|
|
Skills:
|
|
|
- effect:particles{p=snowballpoof;amount=20;speed=0;hS=0.2;vS=0.2} @origin
|
|
|
IceBolt-Hit:
|
|
|
Skills:
|
|
|
- mmodamage{a=10}
|
|
|
- potion{type=SLOW;duration=100;lvl=2}
|
|
|
```
|
|
|
As you can see, the skill currently deals 10 damage to whatever entity it hits. As of right now however, the skill will deal 10 damage no matter what modifier the ability has. We need some way to retrieve data from the ability when it is cast using an item from MMOitems, in order to deal the correct amount of damage using the MythicMobs damage skill mechanic.\
|
|
|
This can be done using placeholders. Instead of writing `damage{a=10}`, use `mmodamage{a="<modifier.damage>"}`. Thanks to this placeholder you can retrieve modifier data, from the item itself.
|
|
|
|
|
|
Since MythicMobs (premium builds) also supports math formulas for these type of mechanics which support numeric values, you can also use for instance `a="<modifier.damage> * 10"` which takes the ability modifier value from MMOItems and multiplies it by 10. Coupled with skill conditions you can have brand new amazing skills with really complex features and formulas.
|
|
|
|
|
|
## MythicMobs skill placeholders
|
|
|
Here is the full list of placeholders implemented by MMOItems. Some of them are actually implemented by MythicLib which means you can also use them in MMOCore custom skills.
|
|
|
| Placeholder | Description |
|
|
|
| -----------------------------------|-----------------------------------------|
|
|
|
| `<modifier.(mod_name)>` | Skill modifier, as decimal number |
|
|
|
| `<modifier.int.(mod_name)>` | Skill modifier, as integer |
|
|
|
| `<cooldown.mmoitems_skill_(name)>` | Remaining cooldown for a MMOItems skill |
|
|
|
| `<stat.(stat_name)>` | Player stat value, as decimal number |
|
|
|
|
|
|
## New MM skill mechanics
|
|
|
The only skill mechanic MythicLib implements is a damaging mechanic:
|
|
|
|
|
|
`mmodamage{amount="<modifier.damage> + 10";type="SKILL,MAGIC,PROJECTILE"}`
|
|
|
|
|
|
You can specify the ability damage using "amount" or "a" as well as the damage types using "types" or "t". The list of available damage types can be found [here](https://git.lumine.io/mythiccraft/mythiclib/-/wikis/Damage%20System).
|
|
|
|
|
|
It works just like the default damage mechanic, except that it completely supports the MythicLib damage system, which means that it will apply damage buff stats (additional skill damage, etc), damage reduction stats, on-hit effects (on-hit abilities from MMOItems when using the WEAPON damage type), skills from MMOCore that trigger when dealing damage to entities.... |
|
|
\ No newline at end of file |
|
|
Since MMOItems 6.7, custom skills are handled within MythicLib. Please refer to [this wiki page](https://git.lumine.io/mythiccraft/mythiclib/-/wikis/Custom%20Skills). |
|
|
\ No newline at end of file |