CompatLink - Epic Fight Weapons Compat

Quick rating

CompatLink - Epic Fight Weapons Compat

No reviews yet

Give ANY modded weapon Epic Fight movesets — no coding, just JSON.

API/Library
Mod Loaders
Forge
NeoForge
Minecraft

Community voices

Reviews

Versions
Loading versions…
Match includes

Click once to include, again to exclude, again to clear

Rating Any
Any 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
Min
Max
Play Status
Reviews
Time Played
hrs+
Verified developers only
Has developer response
List view
Grid view
Compact view
Sort by
Date
Rating
Helpful
Unhelpful
Edited
Sort ascending
Delete this review?

This removes your review from the project. You can write a new review after.

Review submitted for moderation

Your review has been sent to moderators, who will check that it meets our guidelines before it appears publicly.

No reviews yet. Be the first to review this project!

Get it on

Available Platforms

Compatibility

Supported Environments

Dev Environment
Client Required
Server Required

About

Project Details

Type
Mod
License
All Rights Reserved
Latest Version
compatlink-neoforge-1.2.0.jar
Authors
CurseForge
Modrinth

For authors

Embed Badge

If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.

Custom banner text
ModDex rating badge preview

Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.

Identifiers

Platform IDs

CurseForge ID
Modrinth ID

Resources

External Links

Source Issues Wiki Discord

About

Description

CompatLink

Give ANY modded weapon Epic Fight movesets — no coding, just JSON.

Epic Fight only knows vanilla weapons out of the box. CompatLink lets you connect any modded weapon to an Epic Fight moveset by dropping a small JSON file in your config folder. Claymores swing like greatswords, katanas draw like uchigatana, spears thrust like spears — for any mod, in minutes.

  • Available for Forge 1.20.1 (Epic Fight 20.14.17+) and NeoForge 1.21.1 (Epic Fight 21.13+)

  • Any item, any Epic Fight moveset — including weapon types from other Epic Fight addon mods, not just the built-in ones

  • Swing trails, combat-stat tuning, and (experimental) mob movesets — all from the same JSON

  • New in 1.2.0 — fixes modded armor that renders broken in battle mode, with one line of JSON

  • 100% data-driven: no code, no datapack knowledge required for basic use

  • Safe by design: broken mapping files are skipped with a log message — never a crash

  • Loads fine without Epic Fight installed (mappings just wait until it's there)

For players & modpack makers: 30-second setup

  1. Install CompatLink (plus Epic Fight).

  2. Open config/compatlink/mappings/ — CompatLink creates it with an example on first run.

  3. Create mymappings.json:

{
  "format": 1,
  "backend": "epicfight",
  "weapons": [
    { "target": "simplyswords:iron_claymore", "preset": "epicfight:greatsword" },
    { "target": "cataclysm:the_incinerator",  "preset": "epicfight:greatsword" },
    { "target": "somemod:*_katana",           "preset": "epicfight:uchigatana" }
  ]
}
  1. Start the game (or run /reload). Done — the log prints

    CompatLink: N entity mappings, M weapon mappings applied.

Wildcards (somemod:*) and priorities (higher wins; exact id beats wildcard on ties) let you map whole mods in one line and override single items afterwards.

Available weapon presets include epicfight:sword, epicfight:greatsword, epicfight:longsword, epicfight:uchigatana, epicfight:tachi, epicfight:spear, epicfight:dagger, epicfight:axe, epicfight:bow and any weapon type added by Epic Fight datapacks.

Use movesets from other Epic Fight addons

A preset is just an Epic Fight weapon-type id, so you're not limited to the built-in ones — you can borrow movesets registered by other Epic Fight addon mods. Any item can take any moveset:

{
  "format": 1,
  "backend": "epicfight",
  "weapons": [
    { "target": "minecraft:golden_apple", "preset": "wom:ender_blaster" }
  ]
}

Here a plain golden apple picks up the full attack animations of the wom:ender_blaster weapon type from another addon. Whatever weapon types are registered in your modpack — Epic Fight's own or ones added by other mods — are all valid presets.

Weapon trails: mapped weapons automatically inherit their weapon type's Epic Fight swing trail — no extra setup. Add an explicit "trail" object to a mapping for a custom one (EF item_skins schema: color, begin_pos, end_pos, lifetime, interpolations, texture_path, particle_type). Opt a single weapon out with "trail": "none" (or false), or disable automatic trails entirely — so only weapons with an explicit "trail" object get one — by setting "auto_trails": false in config/compatlink/settings.json. Optional "params" tune EF weapon attributes (impact, armor_negation, max_strikes, damage_bonus, speed_bonus).

Fix broken modded armor in battle mode (NEW in 1.2.0)

In Epic Fight's battle mode, armor from many mods renders as a garbled, nearly invisible mess. Epic Fight falls back to a generic armor mesh whose UVs assume a vanilla 64x32 texture, so mods that use 64x64 armor textures (Ice and Fire CE and plenty of others) sample the wrong part of the sheet. One line of JSON fixes it:

{
  "format": 1,
  "backend": "epicfight",
  "armors": [
    { "target": "somemod:*" }
  ]
}

One exception: if a dedicated compat mod already restores that mod's armor (e.g. CompatLink: Ice and Fire CE, which rebuilds Ice and Fire armor with its original 3D shape), do not also list that mod here — a generated mesh takes priority over the better fix and silently replaces it with the vanilla silhouette.

No texture sizes, no preset — CompatLink measures each item's armor texture itself and generates a corrected mesh only where one is needed. Non-armor items and armor that already renders correctly are skipped automatically, so mod-wide wildcards are safe. Optional texture_width / texture_height are there if auto-detection ever fails. New files apply on the next resource reload (F3+T) or the next launch, and persist from then on.

The result is the vanilla armor silhouette wearing the mod's texture — mod-specific 3D armor shapes (face guards, wings, crests) don't show up in battle mode, the same treatment Epic Fight gives every non-GeckoLib armor. Client-side only, and Epic Fight must be installed. No Epic Fight asset is bundled: the base mesh is read from your own install at runtime.

For pack/mod authors: ship mappings as a datapack

Put mapping files at data/<your_namespace>/compatlink/mappings/*.json in any datapack or mod jar. They participate in /reload and merge with config-folder mappings under the same priority rules. Ready-made packs: CompatLink: Simply Swords (all 122 weapons mapped) — see the project page sidebar.

Entity mapping (EXPERIMENTAL)

You can also give mobs Epic Fight combat AI/animations with an entities array (e.g. map an illager-type boss to the minecraft:evoker preset). This is an experimental feature for advanced pack authors:

  • The preset must share the target's model family and texture layout — otherwise the mob renders broken (the game itself keeps working).

  • Validation is strict: if anything about a mapping can't be wired safely, CompatLink registers nothing for it and logs the reason.

FAQ

Does the server need it? The client? Both, on dedicated servers — install CompatLink (and the same mapping files) on client and server. In singleplayer one install is enough.

What happens if Epic Fight is missing? Nothing breaks. CompatLink loads, parses your files, and reports "backend 'epicfight' unavailable" in the log.

A mapping file has a typo — will my game crash? No. That one file is skipped and the reason is logged; everything else applies.

Can other combat mods be supported? The core API is a loader-agnostic, MIT-licensed backend SPI. Epic Fight is the first backend; NeoForge 1.21 support is on the roadmap.

Do weapon params do anything yet? Not yet — the field is parsed and reserved for future tuning (attributes, colliders).

CompatLink

Give ANY modded weapon Epic Fight movesets — no coding, just JSON.

Epic Fight only knows vanilla weapons out of the box. CompatLink lets you connect any modded weapon to an Epic Fight moveset by dropping a small JSON file in your config folder. Claymores swing like greatswords, katanas draw like uchigatana, spears thrust like spears — for any mod, in minutes.

Available for Forge 1.20.1 (Epic Fight 20.14.17+) and NeoForge 1.21.1 (Epic Fight 21.13+) Any item, any Epic Fight moveset — including weapon types from other Epic Fight addon mods, not just the built-in ones Swing trails, combat-stat tuning, and (experimental) mob movesets — all from the same JSON 100% data-driven: no code, no datapack knowledge required for basic use Safe by design: broken mapping files are skipped with a log message — never a crash Loads fine without Epic Fight installed (mappings just wait until it's there) For players & modpack makers: 30-second setup Install CompatLink (plus Epic Fight). Open config/compatlink/mappings/ — CompatLink creates it with an example on first run. Create mymappings.json: { "format": 1, "backend": "epicfight", "weapons": [ { "target": "simplyswords:iron_claymore", "preset": "epicfight:greatsword" }, { "target": "cataclysm:the_incinerator", "preset": "epicfight:greatsword" }, { "target": "somemod:*_katana", "preset": "epicfight:uchigatana" } ] }

Start the game (or run /reload). Done — the log prints CompatLink: N entity mappings, M weapon mappings applied.

Wildcards (somemod:*) and priorities (higher wins; exact id beats wildcard on ties) let you map whole mods in one line and override single items afterwards.

Available weapon presets include epicfight:sword, epicfight:greatsword, epicfight:longsword, epicfight:uchigatana, epicfight:tachi, epicfight:spear, epicfight:dagger, epicfight:axe, epicfight:bow and any weapon type added by Epic Fight datapacks.

Use movesets from other Epic Fight addons

A preset is just an Epic Fight weapon-type id, so you're not limited to the built-in ones — you can borrow movesets registered by other Epic Fight addon mods. Any item can take any moveset:

{ "format": 1, "backend": "epicfight", "weapons": [ { "target": "minecraft:golden_apple", "preset": "wom:ender_blaster" } ] }

Here a plain golden apple picks up the full attack animations of the wom:ender_blaster weapon type from another addon. Whatever weapon types are registered in your modpack — Epic Fight's own or ones added by other mods — are all valid presets.

Tune weapon stats with  params

Each weapon mapping can also tune Epic Fight combat attributes — same meaning as Epic Fight's own datapack attributes.common, no datapack needed:

{ "target": "simplyswords:iron_claymore", "preset": "epicfight:greatsword", "params": { "impact": 8.0, "max_strikes": 6, "damage_bonus": 2.0 } }

impact — stagger/knockback strength (decimal) armor_negation — % of armor ignored (decimal) damage_bonus — extra damage in battle mode (decimal) speed_bonus — attack speed bonus (decimal) max_strikes — max targets hit per swing (integer)

Unknown keys or malformed numbers are warned about in the log and ignored — the weapon still gets its moveset.

Weapon trails

Mapped weapons automatically inherit their weapon type's Epic Fight swing trail — no extra setup. Want a custom one? Add a trail object to the mapping (Epic Fight item_skins schema):

{ "target": "simplyswords:runic_katana", "preset": "epicfight:uchigatana", "trail": { "color": [120, 40, 255], "begin_pos": [0.0, 0.0, -0.2], "end_pos": [0.0, -0.22, -1.25], "lifetime": 4, "interpolations": 6, "texture_path": "epicfight:textures/particle/swing_trail.png", "particle_type": "epicfight:swing_trail" } }

Trail too big on a small item? Turn it off for that one weapon with "trail": "none" (or false). To disable automatic trails entirely — so only weapons with an explicit trail object get one — set "auto_trails": false in config/compatlink/settings.json.

Trails from config mappings show from game start; wildcard/datapack mapping trails apply after a resource reload (F3+T). Trails defined by Epic Fight itself or other mods always take priority over CompatLink's generated ones.

For pack/mod authors: ship mappings as a datapack

Put mapping files at data/<your_namespace>/compatlink/mappings/*.json in any datapack or mod jar. They participate in /reload and merge with config-folder mappings under the same priority rules. Ready-made packs: CompatLink: Simply Swords (all 122 weapons mapped) — see the project page sidebar.

Entity mapping (EXPERIMENTAL)

You can also give mobs Epic Fight combat AI/animations with an entities array. This is an experimental feature for advanced pack authors:

{ "format": 1, "backend": "epicfight", "entities": [ { "target": "illagerinvasion:basher", "preset": "minecraft:vindicator" }, { "target": "illagerinvasion:necromancer", "preset": "minecraft:evoker" } ] }

The preset must share the target's model family and texture layout (an illager-shaped mob needs an illager preset like minecraft:evoker/minecraft:vindicator, a zombie-shaped mob needs epicfight:zombie, etc.). Custom-model mobs (GeckoLib bosses) are not supported by design. Built-in safeguard: before wiring anything, CompatLink compares the target's texture size with the preset's. On mismatch the mapping is rejected with a clear log message (e.g. texture size mismatch 64x128 vs 64x64 — mapping skipped) and the mob stays 100% vanilla — no broken models, no crashes. Validation is strict: if anything about a mapping can't be wired safely, CompatLink registers nothing for it and logs the reason. FAQ

Does the server need it? The client? Both, on dedicated servers — install CompatLink (and the same mapping files) on client and server. In singleplayer one install is enough.

What happens if Epic Fight is missing? Nothing breaks. CompatLink loads, parses your files, and reports "backend 'epicfight' unavailable" in the log.

A mapping file has a typo — will my game crash? No. That one file is skipped and the reason is logged; everything else applies.

Which loader/version do I download? compatlink-1.1.2.jar for Forge 1.20.1 (Java 17), compatlink-neoforge-1.1.2.jar for NeoForge 1.21.1 (Java 21). Same features, same JSON format on both.

Can other combat mods be supported? The core API is a loader-agnostic, MIT-licensed backend SPI. Epic Fight is the first backend.

Do weapon params do anything? Yes — impact, armor_negation, damage_bonus, speed_bonus and max_strikes are applied exactly like Epic Fight datapack attributes. See "Tune weapon stats" above.

Screenshots

Gallery

This project has no gallery images yet.

Versions

Files

Relations

Project Relations

More like this

Similar Mods

Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.

On ModDex

Community snapshot

0
Ratings
0
Followers
0
In stacks

By the numbers

Statistics

~1,000
Total Downloads
CurseForge
<1,000
Modrinth
<1,000
Last Updated
CurseForge
Created
CurseForge
Modrinth
Last synced
When ModDex last fetched this project from CurseForge or Modrinth. Every project is re-checked on a schedule, and any project that ships a new file is synced automatically within hours of the release.
New file updates sync automatically
How syncing works