Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
MythicMobs MythicMobs
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 142
    • Issues 142
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • MythicCraft
  • MythicMobsMythicMobs
  • Wiki
    • Changelogs
  • 4.6.x_changelogs

4.6.x_changelogs · Changes

Page history
moved changelogs to their own folder authored Mar 27, 2024 by Lxlp's avatar Lxlp
Hide whitespace changes
Inline Side-by-side
Showing with 0 additions and 0 deletions
+0 -0
  • changelogs/4.6.x_changelogs.md changelogs/4.6.x_changelogs.md +0 -0
  • No files found.
changelogs/4.6.x_changelogs.md 0 → 100644
View page @ 8dcf42ce
4.6.5
=====
- Basic support for 1.14
- Backported lots of bug fixes from 4.7
4.6.0 - 4.6.4
=============
General
-------
- Added config option RandomSpawning.DisableVanillaSpawns
- Skills can now be called with a new shorthand syntax **skill:name**
<!-- -->
Skills:
- skill:someskill ~onAttack
Major Features
--------------
### Better Saving
Mobs with **Despawn: false** will now save their information far more
reliably, and now remember everything about themselves between restarts
such as their owner, stance, etc.
### Variables System
MythicMobs now includes many new mechanics and conditions for dealing
with variables, with options for temporary, non-saving, or permanent
variables that can be placed on mobs or players. See the variables page
for more information.
### Placeholders
The Placeholders (formerly called variables for some reason) system has
been totally redone and is now much faster, in addition to having an
assortment of new placeholders.
*This refers to the system of having &lt;&gt; placeholders in any
configured strings such as &lt;caster.name&gt;*
This system now integrates with PlaceholderAPI, and you can use
%placeholderapi% placeholders anywhere that you can use MM placeholders
Placeholders should now usable in any mechanics and conditions that
allow strings.
Some of the new Placeholders include:
- &lt;caster.var.X&gt; - gets the value of the variable X on the
current caster
- &lt;target.var.X&gt; - gets the value of the variable X on the
current target
- &lt;trigger.var.X&gt; - gets the value of the variable X on the
current trigger
- &lt;skill.var.X&gt; - gets the value of the variable X on the
current skill tree
- &lt;random.\#to\#&gt; - a random number between \# and \#
Variable placeholders can have a \|default appended in-case the variable
you're looking for isn't set.
<target.var.something|default>
### In-Line Conditions
You can now use basic conditions within mechanics using the new ? "if"
operator. These conditions only run as regular conditions (targeting the
caster), can not have **condition actions**, and they always check if
the condition is **true**.
For example:
Skills:
- message{m="hey i'm on a gold block!"} @trigger ?onBlock{t=GOLD_BLOCK} ~onInteract
Your mechanic lines can have as many of these as you want in it,
multiples do work.
Mobs
----
- Added **Options.PreventSunburn: true** for burnable mobs
Mechanics
---------
### NEW: BreakBlock
Breaks the block at the targeted location
Skills:
- breakblock @targetlocation
### NEW: onAttack
A special Aura mechanic that adds a temporary onAttack skill to the
target. Can also be used to modify damage done by the attack.
Skills:
- onAttack{auraName=fiery_strikes;onHit=FireStrike;duration=200;charges=5;multiplier=2} @self
In this example, the caster's next 5 physical hits within 10 seconds
would trigger the FireStrike skill targeting whatever was hit and also
deal 200% damage. However, if FireStrike's conditions failed, it would
deal regular damage as the multiplier would not trigger either.
onAttack has the following options:
- All options available to Auras
- **onHit=\[skill\]** - A skill to execute while the aura is active
- **cancelEvent=true** - Whether to cancel the event and do no base
damage
- **multiplier=\#** - An optional multiplier on the original hit's
damage
- **add=\#** - An optional static increase to the original hit's
damage
### NEW: onDamaged
A special Aura mechanic that adds a temporary onDamaged skill to the
target. Can also be used to modify damage done by the attack.
Skills:
- onDamaged{auraName=fire_shield;onHit=FireShield;duration=200;charges=5;multiplier=0.5} @self
In this example, the caster's next 5 hits taken in 10 seconds would
trigger the FireShield skill targeting whatever hit them and also deal
50% damage. However, if FireShield's conditions failed, it would deal
regular damage as the multiplier would not trigger either.
onDamaged has the following options:
- All options available to Auras
- **onHit=\[skill\]** - A skill to execute while the aura is active
- **cancelEvent=true** - Whether to cancel the event and damage taken
- **multiplier=\#** - An optional multiplier on the original hit's
damage
- **sub=\#** - An optional static decrease (or increase if negative)
to the original hit's damage
### NEW: RemoveOwner
Removes the target mob's owner.
### NEW: SendResourcePack
Forces the target player to download a resource pack. Player must have
resource packs enabled on the server.'
Skills:
- sendResourcePack{url=www.website.com/resourcepack.zip} @target
### NEW: SetFaction
Sets or changes the target mob's faction
Skills:
- setFaction{faction=X}
### NEW: SetGameMode
Sets the game mode of the targeted player
Skills:
- setGameMode{mode=ADVENTURE} @trigger ~onInteract
### NEW: Shield
Shields the target with absorption hearts for a set amount.
Skills:
- shield{amount=10;maxShield=20} @target
### NEW: ShieldPercent
Shields the target with absorption hearts for a percentage of their
maximum health.
Skills:
- shield{multiplier=0.5;maxShield=2} @target
MaxShield also acts as a multiplier, so the example shield would stack
up to 2x the target's max health.
### NEW: VariableSet
Sets a [variable](/skills/variables) on the specified scope.
setVariable{
variable=[scope].[name];
value=[the value];
type=[variable_typpe];
save=[true/false];
duration=[optional_duration_in_ticks]
}
Skills:
- setvariable{var=skill.testVar;value="hello";type=STRING} ~onInteract
- setvariable{var=caster.something;value=1;type=INTEGER;save=true} @self ~onInteract
- setvariable{var=target.temporaryVar;value="im temporary";type=STRING;duration=200} @target ~onAttack
Scope can be set by prefixing **scope.name** to the variable, or by
using the **scope=\[scope\]** option.
### NEW: VariableAdd
Adds an amount to a [variable](/skills/variables) on the specified
scope. Only works with numeric variable types.
Skills:
- variableadd{var=skill.testVar;amount=1} ~onInteract
### NEW: VariableSubtract
Subtracts an amount to a [variable](/skills/variables) on the specified
scope. Only works with numeric variable types.
Skills:
- variablesubtract{var=skill.testVar;amount=1} ~onInteract
### Auras
Added various options to Auras, and fixed many bugs:
| **Option** | **Description** |
|--------------------------|----------------------------------------------------------------------------------------------------------------|
| **maxStacks=5** | The maximum stacks of an aura that can exist on a target from a particular caster |
| **mergeAll=false** | Defaults to false, auras from all casters on the same target will be merged and have their stacks increased |
| **mergeSameCaster=true** | Defaults to true, auras from the same caster on the same target will be merged and have their stacks increased |
| **refreshDuration=true** | Defaults to true, refreshes the duration on auras when a new stack is applied |
### Heal and HealPercent
- Overhealing now applies absorption hearts instead of increasing
maximum health.
- Added MaxOverhealing option for both skills, working exactly like
the similar shield mechanics.
### PushButton
- Fixed on 1.13
- Now works with location targeters
### Summon
- Added summonerIsParent=false, summonerIsOwner=false options
### ToggleLever
- Fixed on 1.13
- Now works with location targeters
Conditions
----------
### NEW: StringEquals
Returns true if the the two strings match. Both values can use
placeholders.
Conditions:
- stringEquals{value1="yes";value2="<mob.var.ready|nope>"}
- stringEquals{value1="yes";value2="%essentials_godmode%"}
### NEW: VariableEquals
Returns true if the variable matches the value. The value can contain
placeholders/other variables/etc.
Conditions:
- variableEquals{variable=[scope].[variablename];value="[a value]"}
- variableEquals{variable=target.somevariable;value="hello"} true
BearGrowl:
TargetConditions:
- variableEquals{var=target.heardbear;value="yes"} cancel
Skills:
- message{m="You hear a growling noise"}
- setvariable{var=target.heardbear;value="yes";duration=6000}
### NEW: VariableIsSet
Returns true if the variable is set on the target scope.
1. variableIsSet{variable=\[scope\].\[variablename\]}
2. variableIsSet{variable=target.somevariable} true
### NEW: VariableInRange
Returns true if the variable is within the given range. Only works with
numeric variables.
1. variableInRange{variable=\[scope\].\[variablename\];range=\[range\]}
2. variableInRange{variable=target.somevariable;range=&gt;10} true
Triggers
--------
### NEW: onDespawn
After years of people asking, we've finally figured out how to add a
decent \~onDespawn trigger. This should fire whenever the mob stops
existing for any reason other than death.
Items
-----
### NBT Support
- You can now specify NBT tags on items in the format:
<!-- -->
Item:
Id: DIAMOND_SWORD
NBT:
Base:
ATag: 20
SomeOtherTag: something
GemSlots:
RedGem: 0
'Denizen NBT':
somedenizentag: a_string
This allows cross-over with a lot of other plugins, or just for storing
some custom information.
For the more technically-inclined, anything under 'Base' will go under
the item's base compound tag, and anything else will go under the
corresponding key (or if no sub-items are defined, everything will go
under the base tag).
If using with Denizen, all tags you want to use in Denizen must go under
'Denizen NBT' and must be lower-case to work in your Denizen scripts.
Drop Tables
-----------
- Added "nothing" droptype for helping with weighted droptables
- Finally fixed/implemented BonusLevelItems and BonusLuckItems
**BonusLevelItems: \[number\]/\[range\]**
- A modifier on the number of items dropped based on the mob's level
- Can be set as a range, i.e. 0.2to0.5
- Works like: **amount = amount + (mob\_level \*
bonus\_level\_items)**
- Requires that **TotalItems**, **MinItems**, or **MaxItems** be set
on the table to work
**BonusLuckItems: \[number\]/\[range\]**
- A modifier on the number of items dropped based on the killer's luck
stat
- Can be set as a range, i.e. 0.15to8
- Works with Luck attribute, Luck-based enchants/curses, and Luck
potion effects
- Works like: **amount = amount + (luck \* bonus\_luck\_items)**
- Requires that **TotalItems**, **MinItems**, or **MaxItems** be set
on the table to work
RandomSpawns
------------
- Optimized and improved random spawn point generation
- Fixed RandomSpawns not obeying MaxMobsPerChunk option
### PositionType
- Added **PositionType: \[LAND/SEA\]** option, defaults to LAND
- Land spawns will only ever spawn on land
- Sea will only ever spawn in water
Compatibility
-------------
### PlaceholderAPI
Placeholders from PlaceholderAPI can now be used anywhere MythicMobs
placeholders can be used, including in mechanics, conditions, etc.
1. message{m="&lt;trigger.name&gt; has God-Mode?
%essentials\_godmode%"} @trigger \~onDamaged
### WorldGuard
- Readded WorldGuard 6 support for Minecraft 1.8-1.12
API
---
Added **MythicMobDespawnEvent**, which should trigger whenever mob stops
existing for any reason that isn't death.
Bugs/Other
----------
- Fixed MPets compatibility
- Fixed bugs with new particle options
- Fixed potential dupe glitch with consumeHeldItem mechanic and
Artifacts
- Fixed bugs with item durability not applying on 1.13+
- Fixed various bugs with item generation
- Fixed SkillAPI and McMMO xp messages showing even when disabled
- Fixed RandomSpawns not obeying MaxMobsPerChunk option
- Fixed targeter sort=RANDOM not returning any targets
- Fixed &lt;trigger.name&gt; not displaying when trigger is a mob
- Fixed particle projectiles being stopped by half-slabs
- Fixed console spam from WorldGuard
- Fixed some spawner issues involving not tracking despawning mobs
correctly
- Fixed imported bukkit items not loading
- Fixed cast/castinstead condition actions not obeying cooldowns
- Fixed many legacy items not converting properly in droptables
- Fixed damaged mobs not dying with ignoreArmor=true
- Fixed mobs spawning multiple mounts in some scenarios
- Fixed mob owner and cooldowns not saving between restarts
- Fixed threat tables not dropping targets that change worlds
Clone repository
Home
Changelogs
Premium Features
Commands and Permissions
FAQ / Common Issues
Mythic Add-ons
Compatible Plugins
API Information
Packs
  • Pins
Mobs
  • Mob Options
    • Display Options
  • Mob Levels
  • Mob Factions
  • Power Scaling
  • Damage Modifiers
  • Equipment
  • BossBar
  • Custom AI
  • Custom Kill Messages
  • Threat Tables
  • Immunity Tables
  • Templates
  • Vanilla Overrides
  • Extra: Disguises
  • Extra: ModelEngine
Skills
  • Mechanics
  • Targeters
    • Filters
  • Triggers
  • Conditions
    • In-line conditions
  • Metaskills
  • Placeholders
  • Variables
Items
  • Options
  • Attributes
  • Enchantments
  • Potions
  • Banner Layers
  • Firework
Drops & DropTables
  • Drops
  • DropTables
  • FancyDrops
Spawning
  • Spawners
  • Random Spawns
Stats
  • Custom Stat Options
  • Modifiers
  • Built in Stats
Technical
  • Math
  • Operations
    • Attribute Operations
    • Stats Modifiers
  • Particles Types
  • Audience
Examples
Useful Tips