4.8.0 [Dev]

Major Stuff

Versions

  • Dropped 1.11 support (why aren't you on 1.12 yet?)

AI Update

  • Many AI goals/targeters have been improved
  • Performance has been improved
  • A new API has been added for registering custom AI goals

Villager Trades

You can now configure villager trades! Please note that villagers must have certain professions to be able to trade, and some items may require the villager to be a certain level.

MerchantTest:
  Type: VILLAGER
  Display: '&6Merchant Test'
  Health: 20
  Faction: tester 
  Options:
    Profession: NITWIT
    Type: DESERT
    Level: 2
  Trades:
    1:
      Item1: 5 EMERALD
      Item2: 5 DIAMOND
      Result: DIAMOND_SWORD
      MaxUses: 5
    2:
      Item1: 64 EMERALD
      Result: SkeletonKingSword
      MaxUses: 1

Chain Mechanic

A really cool new mechanic! See entry in the mechanics section.

Commands

  • Added -p flag to mob spawn command, allowing you to spawn mobs at aspecific player

Mobs

  • Added WANDERING_TRADER

Options

  • Added Options.PreventTransformation: true to stop zombies from turning into pigmen or drowned

Mechanics

NEW: BarCreate

NEW: BarSet

NEW: BarRemove

NEW: BlockWave

Creates a wave of blocks. This effect is client-side (there is no risk to your server).

NEW: BloodyScreen

NEW: Chain

This allows you to make skills that bounce between targets, like a “chain lightning” type skill.

BounceConditions are evaluated after each “bounce” of the skill. With the example, if someone were on the other side of a wall from the mob but you were standing in the doorway, it could bounce from you to them since it bounced around the wall

It will only bounce to the same entity per cast once. Also every time the skill bounces, the entity it is bouncing from will be the “origin” in the skill and the inherited target of onBounce will be the next entity it is bouncing to, so fromOrigin is your friend for making effects!

Example:

  1. chain{

bounces=5;

    bounceRadius=10;
    bounceDelay=1;
    hitSelf=false;
    hitPlayers=true;
    hitNonPlayers=true;
    hitTarget=true;
    onBounce=[
      - effect:particleline{p=flame;fromOrigin=true}
    ];
    bounceConditions=[
      - inlineofsight
      - hasaura{aura=damageResist} false
    ];
  } @target ~onTimer:20

NEW: CloseInventory

NEW: MountMe

NEW: SendToast

NEW: Stun

An aura mechanic that will stun the target entity for its duration.

  1. stun{auraName=stunned;d=100;facing=true;onTick=[ - particles{p=crit;amount=10;hS=0.4} ]} @trigger ~onInteract

Cast

  • Added skillName, showCastBar options to cast mechanic
  • The Cast mechanic will show a hologram castbar if showCastBar=true

Damage

  • Added damageType option, can be set to whatever you want
  • You can use any custom damageTypes you define in DamageModifiers and in the onDamaged aura

Here are some examples of this in action:

  1. damage{amount=10;element=FIRE} @target ~onUse
  2. damage{amount=10;element=ICE} @target ~onUse
DamageModTest:
  Type: COW
  DamageModifiers:
  - LIGHTNING 0.1
  - FIRE 2.0
  - AIR 1.0
  - ICE 0.5
  Skills:
  - message{m="Damaged by <skill.var.damage-type> for <skill.var.damage-amount>"} @PIR{r=50} ~onDamaged

onDamaged

  • Added damageMods option, letting you create auras that apply damage modifiers.
  • Can also specify custom damageMods that you use in the damage mechanic
  1. onDamaged{

auraName=damageResist;d=200;

    onTick=[
      - particles{p=flame;amount=10;hS=0.4}
    ];
    damageMods="FIRE 0.5"} @self ~onInteract

Particles

  • Added campfire_cosy, campfire_signal particles
  • Allowed a bunch of placeholders in more mechanics

Conditions

NEW: EnchantExp

NEW: EnchantLevel

NEW: FoodSaturation

NEW: FoodLevel

NEW: LocalDifficulty

Targeters

New Sorters

  • Added new Target sorters
    • HIGHEST_HEALTH
    • LOWEST_HEALTH
    • HIGHEST_THREAT
    • LOWEST_THREAT
@ThreatTablePlayers{sort=HIGHEST_THREAT;limit=5}	

NEW: @RandomLocationsNearTargets

AI Goals/Targets

NEW: NearestConditionalTarget

A premium-only AI Targeter that will cause the mob to attack any nearby entities that meet the supplied conditions.

Example:

AITargetSelectors:
- clear
- nearestConditionalTarget{conditions=[
      - entitytype PLAYER
      - hasaura{aura=marked_for_death}
    ]}

NEW: FleeConditional

A premium-only AI Goal that will cause the mob to flee from any nearby entities that meet the supplied conditions.

Example:

AIGoalSelectors:
- clear
- fleeConditional{distance=5; speed=2; conditions=[
      - inlineofsight
      - entitytype COW
    ]}

Placeholders

  • Added missing trigger.threat placeholder

Compatibility

LibsDisguises

  • Fixed some disguise bugs

Bug Fixes / Other

  • Added better error catching for placeholders
  • Most mob config keys can now be lowercase if desired
  • Removed some outdated methods for determining mob type
  • Fixed ParticleAtom effect on 1.13+
  • Fixed bugs with global variables
  • Fixed some issues with goToOwner AI goal
  • Fixed bug with BlockUnmask effect
  • Fix for BLOCK projectile bullets on pre1.13 versions
  • Fixed inline conditions not working inside of metaskills
  • Fixed variableMath mechanic adding instead of setting values
  • Fixed NPE with target.name placeholder
  • Fixed some compatibility issues with WorldGuard on 1.8
  • Fixed plugin not loading on 1.8.8 PaperSpigot
  • Fixed a mob loading error on 1.8
  • Fixed hasParticles=false in potion mechanic
  • Fixed NPE when creating spawners that use mpets
  • Fixed vault currency reward messages to be rounded to 2 decimal places
  • Fixed some issues with bstats
  • Fixed a bunch of broken AI targeters on 1.14
  • Fixed bug with goToOwner AI goal
  • Fixed NPE in rally mechanic
  • Fixed NPE in @MobsInRadius targeter
  • Fixed numerous bugs with auras
  • Fixed projectiles hitting and stopping on non-creatures
  • Fixed projectile mob bullets sometimes getting stuck and not despawning
  • Fixed some inconsistencies with ThreatTables
  • Fixed mob sometimes not being marked in combat when targeting players
  • Fixed ThreatTable mobs continuing to target players that died
  • Fixed onDropCombat skills sometimes firing twice
  • Fixed sounds playing with infinite range on 1.14
  • Fixed some bugs with the Wearing condition
  • Fixed some bugs with item NBT
  • Fixed some bugs with shootFireball
  • Fixed creeper damage being modified when it shouldn't
  • Fixed some bugs with targeters
  • Fixed some issues with the prison mechanic

4.7.1 [Latest]

  • Fixed several bugs with placeholders
  • Fixed number ranges not working in drops
  • Backported several other random bug fixes

4.7.0

Major Features

1.14 Support

  • Full support for 1.14.4
  • Dropped support for 1.7, 1.9 and 1.10

New Mobs

  • Cat
  • Fox
  • Panda
  • Pillager
  • Ravager

New Particles

  • flash
  • landinglava
  • sneeze
  • composter
  • fallinglava
  • fallingwater

Better MetaSkills

MetaSkills can now in many places be put in-line instead of having to reference another skill. This means you will no longer have to make multiple small skills in order to use certain complex meta-skills, such as projectiles.

This is done by creating a new list of mechanics surrounded by square brackets []s instead of putting a skill name. You can do this to nest skills pretty much infinitely. Each new list of skills should be properly indented to make sure YAML reads them correctly.

Skills:
- projectile{
      interval=1; velocity=30; bulletType=BLOCK; material=MAGMA_BLOCK; tyo=0.5; g=1; bulletSpin=-40; hnp=true; stopatentity=false; duration=100;
      onHit=[
          - damage{amount=50}
          - ignite{ticks=20}
      ];
      onTick=[
          - particles{p=flame;a=20;hs=0.5;vs=0.5}
      ];
      onEnd=[
          - particles{p=largeexplode;a=50;speed=1;hs=0.05;vs=0.05}
          - effect:sound{s=entity.dragon_fireball.explode;p=0.6;v=2}
          - damage{amount=30} @ENO{r=5}
      ];
  } @targetlocation

Math/Placeholders

This feature is Premium-only.

You can now use math and numeric placeholders in lots of places! The plan is to expand this to be usable anywhere, but it's a big undertaking.

In order to use math where able, you can simply put placeholders and equations between '' where you'd normally put a number value.

For example:

Skills:
- damage{amount=1}
- damage{amount='5 + 5'}
- damage{amount='<caster.level> * 10'}

and so on

The following mechanics can use math so far:

  • damage
  • damagePercent
  • heal
  • healPercent
  • setLevel

Math is also usable in drop amounts:

Drops:
- gold_nugget '1 + (0.2 * <caster.level>)'

Projectile Bullets

Projectile mechanics can now specify a bullet type that will represent the projectile. No longer are projectiles just limited to particles!

These work with the projectile, missile, and orbital mechanics.

Bullet types available are:

  • ARROW - projectile{bulletType=ARROW;…}
  • BLOCK - projectile{bulletType=BLOCK;material=STONE;…}
  • ITEM - projectile{bulletType=ITEM;material=STONE;…}
  • MOB - projectile{bulletType=MOB;mob=SkeletonKing;…}

Yes, that's right, you can even shoot projectiles made up of other Mythic mobs! Mobs shot with the projectile skill cannot be interacted with, but will still use all their skills…

You can also use the new bulletSpin=# option to give your bullets some spin.

Mobs

Added support for all 1.14 mob types.

Mechanics

NEW: onShoot

A special Aura mechanic that adds a temporary onShoot skill to the target.

Skills:
- onShoot{auraName=fireball_bow;onShoot=[ shootfireball ];duration=200;charges=5} @self

In this example, the caster's next 5 bow shots will shoot fireballs instead of arrows.

NEW: Speak

Speak is similar to the message skill, but is used for making mobs “talk”. Mobs will talk in the chat using a configured syntax, and if you have a hologram plugin installed, they will also have speech bubbles!

  1. speak{m=“OH BOY I HAVE SPEECH BUBBLES NOW”} @trigger ~onInteract
  2. speak{m=“OW THAT HURTS I CANT BELIEVE YOU WOULD HIT AN INNOCENT MAN”} @trigger ~onDamaged

NEW: VariableMath

Conditions

NEW: DamageAmount

NEW: DamageCause

NEW: Health

NEW: Moving

Items

  • Added the Model option for setting an item's CustomModelData NBT tag.
  • Placeholders and variables are now usable in item lore

Drops

Math

  • *Premium Only* You can now use math equations and placeholders in drop amounts, surrounded by single-quotes.
  • Drop messages now use regular placeholders

NEW: cmd

  • Added a new drop type to run a command for the killer

Placeholders

  • Name-related placeholders will now show the entity's type instead of Unknown if the mob has no name
  • Added <trigger.luck> placeholder
  • Added <caster.enchantlevel.ENCHANT_NAME> placeholder
  • Added <caster.heldenchantlevel.ENCHANT_NAME> placeholder
  • Added <&nm> placeholder for number signs #

Spawns

  • Regular mobs will now obey the MaxMobsPerChunk option

Compatibility

Holographic Displays

All hologram-related things now support using Holographic Displays, including health bars, nameplates, and speech bubbles.

LibsDisguises

  • Added a bunch of missing disguises

Bug Fixes / Other

  • Fixed some bugs with serialization
  • Fixed missiles to hit the target's body instead of their feet
  • Fixed wearing condition
  • Fixed some egg-related crashes on 1.14
  • Fixed placeholders in drop messages
  • Fixed singlequotes breaking message mechanics
  • Fixed <.php> placeholders
  • Fixed the shootpotion mechanic
  • Fixed a bunch of errors related to world unloading
  • Fixed despawn event throwing an async error
  • Fixed despawning errors on shutdown
  • Fixed xp messages showing up even when disabled
  • Fixed droptable inline item display names not parsing special characters
  • Fixed inline OnBlock and WorldTime conditions
  • Fixed an error with recursive drops
  • Fixed several variable-related bugs
  • Fixed custom API drops not rolling amounts correctly
  • Fixed various errors with Random Spawns
  • Fixed particle effects appearing in the wrong world
  • Fixed delayed skills throwing errors when the world was unloaded
  • Fixed toggleLever not obeying the set duration
  • Fixed another error with shootpotion
  • Fixed MythicMobs breaking the Guilds plugin
  • Fixed onSurface option in summon mechanics

Older Changelogs

changelog.txt · Last modified: 2019/12/10 20:10 by xikage