[{"data":1,"prerenderedAt":6},["ShallowReactive",2],{"docs:wiki\u002FMobs\u002FTemplates":3},{"html":4,"title":-1,"frontmatter":5},"\u003Cp>Templates are a functionality that allows a mob to “inherit” the characteristics of one or more other mobs.\u003C\u002Fp>\n\u003Cp>If you are already familiar with Object Oriented Programming, you will then probably find the following quite similar to the concept of Inheritance.\u003C\u002Fp>\n\u003Cp>But regardless, Template may still be found to be quite complicated to understand at first. As such, we will be adding more nuanche to the concept as we go on explaining it, starting from the very basics and gettings to the more complex use cases.\u003C\u002Fp>\n\u003Chr>\n\u003Ch2>Introduction\u003C\u002Fh2>\n\u003Cp>As already stated, Templates allows a mob to inherit the characteristics of another. But what does this even mean?\u003C\u002Fp>\n\u003Cp>To explain it in simpler terms, we will present, as an example, a mob:\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">ZombieBrute\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Display\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&quot;&amp;2Zombie Brute &amp;7[Lv. &lt;caster.level&gt;]&amp;r&quot;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Health\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">30\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Damage\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">5\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Faction\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">Monster\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Equipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Helmet\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">HEAD\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Chestplate\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">CHEST\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Leggings\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">LEGS\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Boots\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">FEET\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Shield\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">OFFHAND\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">exp\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">10-15\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">rotten_flesh\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">1-2\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ZombieBrute_Hearth\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.01\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Options\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    AlwaysShowName\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventOtherDrops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventRandomEquipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventSunburn\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventItemPickup\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventJockeyMounts\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventTransformation\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AITargetSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">attacker\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">players\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AIGoalSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">meleeattack\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1.15\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.75\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was reduced to paste by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;Despite his best efforts, &lt;target.name&gt; could not prevail against a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was killed by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">SelectRandomWeapon\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:self\">self\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onSpawn\">onSpawn\u003C\u002Fa>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">ZombieBrute_Bash\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:target\">target\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:60\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.4\u003C\u002Fspan> ?\u003Ca class=\"mythic-ref\" data-mythic-ref=\"c:targetwithin\">targetwithin\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">d\u003C\u002Fspan>=\u003Cspan class=\"yaml-number\">10\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">CallZombies\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:EIR\">EIR\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:180\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.6\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>That, while not complex to make, certainly has quite a number of elements associated with it, hasn’t he? He’s got a Faction, some Drops, some Options…\u003C\u002Fp>\n\u003Cp>Now, what if we wanted to create another mob that shares some (if not most!) of the characteristics this mob has? We would normally need to copy-paste what we want from one mob to another, and while that works on the short term, what if we want to later \u003Cem>modify\u003C\u002Fem> those characteristics? We would need to track down every instance of them being present on some mob and then change those, one by one. That has no scalability whatsoever!\u003C\u002Fp>\n\u003Cp>But here, Templates comes to the rescue: remember what we said originally? They allows to inherit characteristics across mobs, and so, we would need to only make one mob that has all of those common characteristics, and if we want to change some of them at a later date, instead of going mob-by-mob, we could just modify that one mob and see the change being automatically applied to any mob that uses it as a template!\u003C\u002Fp>\n\u003Cp>And that brings us to our first, real example of using templates.\u003C\u002Fp>\n\u003Ch2>Single Template\u003C\u002Fh2>\n\u003Cp>Let’s say that we want to make a group of mobs share the Factions, the Options, the Ai, some of the Skills and some other element from ZombieBrute. First, we put those elements into a mob\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">MonsterFaction_Base\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Faction\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">Monster\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">exp\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">10-15\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Options\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    AlwaysShowName\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventOtherDrops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventRandomEquipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventSunburn\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventItemPickup\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventJockeyMounts\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventTransformation\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AITargetSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">attacker\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">players\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AIGoalSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">meleeattack\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.75\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.75\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was killed by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">SelectRandomWeapon\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:self\">self\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onSpawn\">onSpawn\u003C\u002Fa>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>And once we do that, let’s make the (now slimmer) ZombieBrute inherit those\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">ZombieBrute\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MonsterFaction_Base\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Display\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&quot;&amp;2Zombie Brute &amp;7[Lv. &lt;caster.level&gt;]&amp;r&quot;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Health\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">30\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Damage\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">5\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Equipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Helmet\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">HEAD\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Chestplate\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">CHEST\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Leggings\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">LEGS\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Boots\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">FEET\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Shield\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">OFFHAND\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">rotten_flesh\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">1-2\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ZombieBrute_Hearth\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.01\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1.15\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was reduced to paste by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;Despite his best efforts, &lt;target.name&gt; could not prevail against a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">ZombieBrute_Bash\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:target\">target\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:60\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.4\u003C\u002Fspan> ?\u003Ca class=\"mythic-ref\" data-mythic-ref=\"c:targetwithin\">targetwithin\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">d\u003C\u002Fspan>=\u003Cspan class=\"yaml-number\">10\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">CallZombies\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:EIR\">EIR\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:180\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.6\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>And there! With just a simple line, \u003Ccode>Template: MonsterFaction_Base\u003C\u002Fcode>, is now being Inherited by \u003Ccode>ZombieBrute\u003C\u002Fcode>, with any elements contained in \u003Ccode>MonsterFaction_Base\u003C\u002Fcode> now being automatically inherited by \u003Ccode>ZombieBrute\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-mermaid\">flowchart TD\n    A[MonsterFaction_Base] --&gt;|Is Inherited by| B[ZombieBrute]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>But what about elements that are present on both the mob and its template?\u003C\u002Fp>\n\u003Ch3>Shared Elements\u003C\u002Fh3>\n\u003Cp>When both the Mob and its Template share some elements, those are inherited in different ways depending on the \u003Cem>value\u003C\u002Fem> of the element in question.\u003C\u002Fp>\n\u003Cp>The \u003Cem>value\u003C\u002Fem> of the element generally falls into one of three categories:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The value is a \u003Ccode>string\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>The value is a \u003Ccode>list\u003C\u002Fcode> of strings\u003C\u002Fli>\n\u003Cli>The value are other \u003Ccode>elements\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>String Value\u003C\u002Fh4>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">TemplateMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Faction\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateFaction\u003C\u002Fspan>\n\n\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateMob\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Faction\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ExampleFaction\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This is the easiest to understand: when an element with a string value is inherited from a template (\u003Ccode>TemplateMob\u003C\u002Fcode>) to a mob (\u003Ccode>ExampleMob\u003C\u002Fcode>) that \u003Cstrong>also has the same element\u003C\u002Fstrong>, then the element is \u003Cstrong>overridden\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>So, when you spawn \u003Ccode>ExampleMob\u003C\u002Fcode>, its \u003Ccode>Faction\u003C\u002Fcode> will be \u003Ccode>ExampleFaction\u003C\u002Fcode>, since the mob’s element has overridden the template’s\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>List Value\u003C\u002Fh4>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">TemplateMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> &lt;\u003Cspan class=\"yaml-plain\">caster.name\u003C\u002Fspan>&gt; \u003Cspan class=\"yaml-plain\">yeeted\u003C\u002Fspan> &lt;\u003Cspan class=\"yaml-plain\">target.name\u003C\u002Fspan>&gt;!!\n\n\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateMob\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">You\u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&#39;re too weak &lt;target.name&gt;!!\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>When an element with a \u003Cem>list\u003C\u002Fem> of strings as its value is inherited from a template (\u003Ccode>TemplateMob\u003C\u002Fcode>) to a mob (\u003Ccode>ExampleMob\u003C\u002Fcode>) that \u003Cstrong>also has the same element\u003C\u002Fstrong>, then the element is \u003Cstrong>merged\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>This means that the resulting element will have \u003Cstrong>all\u003C\u002Fstrong> of the strings that made up the original lists, concatenated\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>So, when you spawn \u003Ccode>ExampleMob\u003C\u002Fcode>, its \u003Ccode>KillMessages\u003C\u002Fcode> will be\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> &lt;\u003Cspan class=\"yaml-plain\">caster.name\u003C\u002Fspan>&gt; \u003Cspan class=\"yaml-plain\">yeeted\u003C\u002Fspan> &lt;\u003Cspan class=\"yaml-plain\">target.name\u003C\u002Fspan>&gt;!!\n\u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">You\u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&#39;re too weak &lt;target.name&gt;!!\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>in this exact order\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch5>Order in List Values\u003C\u002Fh5>\n\u003Cp>There are instances where the \u003Cem>order\u003C\u002Fem> of inheritance matters a lot: for instance, if there is a list of instructions or a list of key-value pairs. For these situations, you must always remember that, usually, \u003Cstrong>lists are parsed from top to bottom\u003C\u002Fstrong>, so \u003Cem>instructions are parsed in that order\u003C\u002Fem>, and \u003Cem>in key-value lists, the bottom-most “wins out”\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>For instance, let’s take the following example with some AI Goals\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">TemplateMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AIGoalSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">meleeattack\u003C\u002Fspan>\n\n\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateMob\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AIGoalSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Given this situation, the end result will be\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">meleeattack\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Which does look a bit odd. But worry not! Even in situations as peculiar as this one, there is always an underlying logic. For instance, here the \u003Ccode>clear\u003C\u002Fcode> goal clears everything that was before it. So, we effectively get\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Another such instance is with DamageModifiers\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">TemplateMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n\n\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateMob\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.5\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Where, after the merge, the resulting list would be\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.5\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>In which case, among multiple modifiers with the same name, only the \u003Cem>bottom-most\u003C\u002Fem> is ultimately counted. Meaning, the above can be rewritten as\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.5\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Elements Value\u003C\u002Fh4>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">TemplateMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Options\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    FollowRange\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">32\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    Despawn\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    Glowing\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">false\u003C\u002Fspan>\n\n\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">TemplateMob\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Options\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    FollowRange\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">16\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>These are elements that, as a value, have other elements! Still, they do not behave like other elements with a “proper” value do.\u003C\u002Fp>\n\u003Cp>You can imagine the situation with “Elements that have other elements as values” being a sort of \u003Ccode>folder\u003C\u002Fcode>, and with the “Elements that have string or list values” being a sort of \u003Ccode>file\u003C\u002Fcode>. When you merge two folders, what happens is that \u003Cem>all files are kept\u003C\u002Fem>, \u003Cstrong>except\u003C\u002Fstrong> for those files that share the same name and folder.\u003C\u002Fp>\n\u003Cp>The same things happens here!\u003C\u002Fp>\n\u003Cp>For instance, \u003Ccode>TemplateMob\u003C\u002Fcode> has an \u003Ccode>Option\u003C\u002Fcode> element that, itself, has both a \u003Ccode>FollowRange\u003C\u002Fcode> element and a \u003Ccode>Despawn\u003C\u002Fcode> one. When \u003Ccode>ExampleMob\u003C\u002Fcode> inherits from \u003Ccode>TemplateMobs\u003C\u002Fcode>, \u003Cem>all options\u003C\u002Fem> are kept, \u003Cstrong>except\u003C\u002Fstrong> for \u003Ccode>FollowRange\u003C\u002Fcode>, which is in both \u003Ccode>TemplateMob.Options\u003C\u002Fcode> and in \u003Ccode>ExampleMob.Options\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Now, what happens for it?\u003Cbr>\nWell, \u003Ccode>FollowRange\u003C\u002Fcode> is an element with a string value, so it behaves like any other \u003Ca href=\"#string-value\">Element with a string value\u003C\u002Fa>!\u003Cbr>\nSimilarly, elements in here that have a list value also behaves \u003Ca href=\"#list-value\">like their counterparts\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cp>To make this more understandable, the following is a \u003Cem>non-exhaustive\u003C\u002Fem> list of some of the elements a Template may have and how the Mob will inherit them if the Mob has them too.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>\u003Cstrong>Element\u003C\u002Fstrong> \u003Cem>(in the Template)\u003C\u002Fem>\u003C\u002Fth>\n\u003Cth>\u003Cstrong>How it is inherited\u003C\u002Fstrong> \u003Cem>(if the Mob has it too)\u003C\u002Fem>\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>Type\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Display\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Health\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Damage\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Armor\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Bossbar\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Faction\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Mount\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Options\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only the shared options are overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Modules\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only the shared modules are overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>AIGoalSelectors\u003C\u002Ftd>\n\u003Ctd>Merged*\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>AITargetSelectors\u003C\u002Ftd>\n\u003Ctd>Merged*\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Drops\u003C\u002Ftd>\n\u003Ctd>Merged\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>DamageModifiers\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only the shared modifiers are overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Equipment\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only equipment with the same slot is overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>KillMessages\u003C\u002Ftd>\n\u003Ctd>Merged\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>LevelModifiers\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only the shared modifiers are overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Disguise\u003C\u002Ftd>\n\u003Ctd>Overridden\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Skills\u003C\u002Ftd>\n\u003Ctd>Merged\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>Trades\u003C\u002Ftd>\n\u003Ctd>Partially Overridden (only trades with the same number are overridden)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>* A special note must be made regarding the behavior of the AIGoalsSelector and the AITargetSelectors elements, as only stating that they are “merged” is a bit reductive. The selector of the Mob are, in fact, added to the end of the Template’s. So, for instance, if the Template has a \u003Ccode>clear\u003C\u002Fcode>,\u003Ccode>meleeattack\u003C\u002Fcode> AIGoals and the Mob has a \u003Ccode>randomstroll\u003C\u002Fcode> one, the final mob will effectively have \u003Ccode>clear\u003C\u002Fcode>,\u003Ccode>meleeattack\u003C\u002Fcode>,\u003Ccode>randomstroll\u003C\u002Fcode> as its AIGoals.\nIf one wishes to reset the Selectors from the Template, one can either use the \u003Ca href=\"#excluding-elements\">\u003Ccode>Exclude\u003C\u002Fcode>\u003C\u002Fa> element or use the \u003Ccode>clear\u003C\u002Fcode> Selector, as that will “delete” every Selector that came before it.\u003C\u002Fp>\n\u003Ch3>Excluding Elements\u003C\u002Fh3>\n\u003Cp>It is possible to stop a Mob from inheriting unwanted elements from its Template using the following syntax\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">  Exclude\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Element1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Element2\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">...\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>So, for instance, if we wanted a mob to not inherit the Equipment, the AITargetSelectors and the Skills, we would be using\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">ExampleMob\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MobTemplate\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Exclude\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Equipment\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">AITargetSelectors\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Skills\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>And the mob will now not inherit the specified elements.\u003C\u002Fp>\n\u003Ch2>Chained Templates\u003C\u002Fh2>\n\u003Cp>But why should we stop at only one Template? After all, Templates can have a Template, too! Let’s revisit out example from earlier, but this time splitting it up a little bit more\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">MonsterFaction_Base\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Faction\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">Monster\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">exp\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">10-15\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Options\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    AlwaysShowName\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventOtherDrops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventRandomEquipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventSunburn\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventItemPickup\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventJockeyMounts\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">    PreventTransformation\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-bool\">true\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.75\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ENTITY_ATTACK\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.75\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was killed by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">MonsterFaction_MeleeEntity\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MonsterFaction_Base\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Equipment\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Helmet\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">HEAD\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Chestplate\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">CHEST\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Leggings\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">LEGS\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Iron_Boots\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">FEET\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Shield\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">OFFHAND\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AITargetSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">attacker\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">players\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  AIGoalSelectors\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">clear\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">meleeattack\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">randomstroll\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">SelectRandomWeapon\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:self\">self\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onSpawn\">onSpawn\u003C\u002Fa>\n\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">ZombieBrute\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MonsterFaction_MeleeEntity\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Display\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&quot;&amp;2Zombie Brute &amp;7[Lv. &lt;caster.level&gt;]&amp;r&quot;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Health\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">30\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Damage\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">5\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">rotten_flesh\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">1-2\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ZombieBrute_Hearth\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.01\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1.15\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was reduced to paste by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;Despite his best efforts, &lt;target.name&gt; could not prevail against a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">ZombieBrute_Bash\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:target\">target\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:60\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.4\u003C\u002Fspan> ?\u003Ca class=\"mythic-ref\" data-mythic-ref=\"c:targetwithin\">targetwithin\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">d\u003C\u002Fspan>=\u003Cspan class=\"yaml-number\">10\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">CallZombies\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:EIR\">EIR\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:180\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.6\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This way, we have created a new mob, \u003Ccode>MonsterFaction_MeleeEntity\u003C\u002Fcode>, that is using \u003Ccode>MonsterFaction_Base\u003C\u002Fcode> as a Template.\u003C\u002Fp>\n\u003Cp>And with \u003Ccode>ZombieBrute\u003C\u002Fcode> using \u003Ccode>MonsterFaction_MeleeEntity\u003C\u002Fcode> as a Template, it does not inherit the only elements of \u003Ccode>MonsterFaction_MeleeEntity\u003C\u002Fcode>, but also those that \u003Ccode>MonsterFaction_MeleeEntity\u003C\u002Fcode> itself inherited up to that point.\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-mermaid\">flowchart TD\n    A[MonsterFaction_Base] --&gt;|Is Inherited by| B[MonsterFaction_MeleeEntity] --&gt;|Is Inherited by| C[ZombieBrute]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>Multi Templates\u003C\u002Fh2>\n\u003Cp>Up until now we have shown how to use a single Template inside of a mob, but a mob can use more than one at the same time.\u003C\u002Fp>\n\u003Cp>By simply using a list of Templates as the Template argument, we can make the mob inherit one template after another \u003Cstrong>from the leftmost on the list to the rightmost\u003C\u002Fstrong>. Simply said, by making a list of templates, it’s like we are chaining multiple templates together, starting from the leftmost one and ending with the rightmost one.\u003C\u002Fp>\n\u003Cp>But let’s see an example to make things clear:\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">DiamondArmorSet\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Type\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">ZOMBIE\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Equip\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Diamond_Helmet\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">HEAD\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Diamond_Chestplate\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">CHEST\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Diamond_Leggings\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">LEGS\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">Diamond_Boots\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">FEET\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This mob does nothing in particular by itself, its only characteristic being the diamond set of armor it has equipped. But if we use it like so:\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">ZombieBrute\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MonsterFaction_MeleeEntity\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">,\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">DiamondArmorSet\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Display\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-string\">&quot;&amp;2Zombie Brute &amp;7[Lv. &lt;caster.level&gt;]&amp;r&quot;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Health\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">30\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Damage\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-number\">5\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Drops\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">rotten_flesh\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">1-2\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">ZombieBrute_Hearth\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">0.01\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  DamageModifiers\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">PROJECTILE\u003C\u002Fspan> \u003Cspan class=\"yaml-number\">1.15\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  KillMessages\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;&lt;target.name&gt; was reduced to paste by a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Cspan class=\"yaml-string\">&#39;Despite his best efforts, &lt;target.name&gt; could not prevail against a &lt;caster.name&gt;&#39;\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Skills\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">ZombieBrute_Bash\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:target\">target\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:60\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.4\u003C\u002Fspan> ?\u003Ca class=\"mythic-ref\" data-mythic-ref=\"c:targetwithin\">targetwithin\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">d\u003C\u002Fspan>=\u003Cspan class=\"yaml-number\">10\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan>\n  \u003Cspan class=\"yaml-plain\">-\u003C\u002Fspan> \u003Ca class=\"mythic-ref\" data-mythic-ref=\"m:skill\">skill\u003C\u002Fa>\u003Cspan class=\"yaml-punc\">{\u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">s\u003C\u002Fspan>=\u003Cspan class=\"yaml-plain\">CallZombies\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">}\u003C\u002Fspan> @\u003Ca class=\"mythic-ref\" data-mythic-ref=\"t:EIR\">EIR\u003C\u002Fa> ~\u003Ca class=\"mythic-ref\" data-mythic-ref=\"tr:onTimer\">onTimer:180\u003C\u002Fa> \u003Cspan class=\"yaml-number\">0.6\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Then our dear \u003Ccode>ZombieBrute\u003C\u002Fcode> now will spawn with a shiny new set of diamond armor, since the \u003Ccode>DiamondArmorSet\u003C\u002Fcode> Template is overriding some of the equipments present in \u003Ccode>MonsterFaction_MeleeEntity\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-mermaid\">flowchart TD\n    A[MonsterFaction_Base] --&gt;|Is Inherited by| B[MonsterFaction_MeleeEntity] ---&gt;|Is Inherited by| C[ZombieBrute]\n    D[DiamondArmorSet]  --&gt; |Is Inherited by| C[ZombieBrute]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Chr>\n\u003Ch2>Item Templates\u003C\u002Fh2>\n\u003Cp>\u003Ca href=\"\u002Fdocs\u002Fwiki\u002FItems\u002FItems#template\">Items\u003C\u002Fa> can use Templating like mobs while referencing other items!\u003C\u002Fp>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">MyItem\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">MyOtherItem\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cpre class=\"language-yaml\">\u003Ccode class=\"language-yaml\">\u003Cspan class=\"yaml-key\">MyOtherItem\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">:\u003C\u002Fspan>\n\u003Cspan class=\"yaml-key\">  Template\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">: \u003C\u002Fspan>\u003Cspan class=\"yaml-plain\">YetAnotherItem\u003C\u002Fspan>\u003Cspan class=\"yaml-punc\">,\u003C\u002Fspan> \u003Cspan class=\"yaml-plain\">AndAnotherOne\u003C\u002Fspan>\n\u003C\u002Fcode>\u003C\u002Fpre>\n",{},1779063023754]