Custom mobs (MythicMobs, ModelEngine)

A collection (groups.yml > mobs) or a card (cards.yml > entity) can target:

KeyMatched mob
COWvanilla mob
mythic:SkeletonKingMythicMobs mob of this type (exact name, case-sensitive, as in /mm mobs list)
modelengine:dragonany entity wearing this ModelEngine model, whatever plugin applied it

Example (a commented template is provided at the end of groups.yml and cards.yml):

# groups.yml
  boss:
    pack_id: boss_pack
    package_drop_chance: 50
    mobs: [mythic:SkeletonKing, modelengine:dragon]
# cards.yml
  boss_skeleton_king: { number: 1, name: "Skeleton King", group: boss, entity: "mythic:SkeletonKing", rarity: EPIC }
  boss_dragon:        { number: 2, name: "Ancient Dragon", group: boss, entity: "modelengine:dragon", rarity: LEGENDARY }

Rules:

  • A MythicMobs or ModelEngine mob uses its own collections. If it is in none, it does not count as its base vanilla mob: a MythicMobs boss of type ZOMBIE does not give the Monsters pack or the Zombie card. custom_mobs.vanilla_fallback: true restores that behavior.
  • A MythicMobs mob wearing a ModelEngine model is recognized by both keys.
  • The card text comes from cards.yml and its texture from ItemsAdder, just like vanilla cards.
  • Startup validation: an unknown MythicMobs name gives an explicit warning. ModelEngine loads its models after startup: models that cannot be found are listed in the console once that loading is done. If the plugin is not installed, the related cards are hidden and everything else works normally.
  • custom_mobs.mythicmobs / custom_mobs.modelengine (config.yml) disable each integration (restart required).
  • Both APIs are called through reflection, only in fr.tcg.mob.MythicMobsHook and fr.tcg.mob.ModelEngineHook. The jar does not depend on them and starts without them.

Versions: MythicMobs 5.12 / 5.13 (tested in-game on 1.21.11, at startup on 26.2), ModelEngine R4 (API checked against R4.2.0, not tested in-game).