TACZ-Legacy-Next

Run 1.20.1 TaCZ gun packs on Minecraft 1.12.2 Forge — same pack format, same gameplay semantics, no data conversion.

What this is

TACZ-Legacy-Next is a compatibility continuation of the 1.12.2 port of TaCZ (Timeless and Classics Zero), continuing from hippo08241/TACZ-Legacy.

Two goals, not just "it launches":

  1. Restore upstream 1.20.1 behavior — gameplay values, attachment mechanics, shooting feel, animations and sounds, script behavior are aligned to the 1.20.1 reference; anything the upstream does that 1.12.2 can do is implemented.
  2. Run 1.20.1 gun packs as-is — a pack written for 1.20.1 should drop in and work, without the pack author changing anything for 1.12.2.

Priority: align upstream semantics first, then build equivalent implementations where the platform lacks the mechanism. Things 1.12.2 genuinely cannot do (such as the KubeJS 1.12.2 runtime) are documented as limitations instead of faked.

Current release

v0.1.3 (2026-11-09).

Version 0.1.3 improves third-person body rotation while holding a gun, adds optional Player Animator 1.12.2 skeletal animation support, and fixes animation jitter when turning. It includes the 0.1.2 scriptable gun smith recipes, JEI recipe category, and scope-mask fixes after shader framebuffer rebuilds.

Requirements

   
Minecraft 1.12.2
Loader Forge 14.23.5.2859
Java 8
Required mods MixinBooter 11.x · Forgelin-Continuous

Put all three jars in mods/. Gun packs go to .minecraft/tacz/<pack name>/ (a directory or a zip both work).

Optional additions (not required to play):

  • Player Animator 1.12.2 for third-person skeletal animations. Only guns whose display definition declares player_animator_3rd play animation clips; other guns retain static poses. Without this library, vanilla-model gun-holding poses remain available.
  • JEI 4.x / HEI for gun smith recipe lookup.
  • CraftTweaker 4 + MTLib or GroovyScript 1.5+ for recipe scripting. These integrations are optional and independent. See scripting compatibility documentation.

Dedicated server: same mods. The server pushes gun pack data (values / scripts / lang / display) to clients, but models and textures still need the pack locally — same architecture as upstream, those files are too large for packet sync.

Highlights

  • Gun pack loading — 1.20.1 index / data / display / geo_models / lang / script structure supported as-is; broken fields degrade per-item instead of dropping the whole gun; cross-pack tacz_tags merge.
  • Attachment modifiers — all 16/16 modifiers actually reach gameplay (upstream port had 4); exclusive_attachments does full AttachmentData replacement with per-entry isolation.
  • Shooting & ballistics — rpm, heat, bolt action, three reload types, spread tiers, hold-breath, charging, lying and zoom states aligned with upstream.
  • Server sync — gun pack data pushed from dedicated server; fixed the disconnect that happened during sync.
  • Audio — direct OpenAL reading without full pre-decode; context rebuild on reset.
  • Rendering / UI — 3D previews in workbench and gun smith table, hurt bob, scope rendering, GUI slot textures, muzzle flash.
  • Port-upstream bug fixes — 40+ items, including glTF CUBICSPLINE spline animation (was an empty stub returning identity), save-data corruption on legacy workbench structures, attachment duplication, ammo box exploits, firing during reload, NaN/out-of-range shoot input, GUI black overlay on attachments.

Full per-system diff against 1.20.1: docs/UPSTREAM-DIFF.md.

Not implemented (by design)

  • KubeJS integration: its JavaScript runtime is not available for this 1.12.2 port. CraftTweaker, GroovyScript and JEI support are implemented and runtime-verified.
  • NPC gunners — no EntityAIBase; the IGunOperator layer is open to any LivingEntity.
  • Skin system — upstream only has an empty shell.

Known limitations

  • Third-person gun orientation (v0.1.3): the gun model can point approximately 90 degrees sideways. This is a known placement issue, separate from the body-following-view fix, and remains pending.

  • After /tacz reload, lang and vanilla-side textures still need F3+T (auto refreshResources() causes a StackOverflow on the integrated server).

  • Loot injection only applies when loot tables load; /tacz reload does not re-inject.

  • Server sync is only enabled on dedicated servers (-Dtacz.syncGunPack=true forces it).

  • Bedrock models with format_version minor < 12 are not built (same as upstream).

License

Code: GPL-3.0 — same as upstream TaCZ.

Assets: upstream TaCZ art assets are licensed CC BY-NC-ND 4.0 by the TaCZ artists (NekoCrane, Receke, Pos_2333). This port contains ported and adapted versions of some of those assets, needed to make them work on 1.12.2. Attribution is kept, the project is non-commercial, and the original project is linked above. This notice is here so the license situation is explicit. If you are a rights holder and want something changed or removed, please open an issue.


Note: This overview is synchronized with the GitHub documentation and v0.1.3 release notes as of 2026-11-12. Please refer to GitHub for the latest and authoritative information.

Source: https://github.com/zsjs110110-cpu/TACZ-Legacy-Next

TACZ-Legacy-Next Team

profile avatar
Owner
  • 1
    Projects
  • 154
    Downloads
Donate