🎬 Player Animation Core
Keyframe-based animation library for NeoForge — powering custom player animations in Minecraft.
✨ Overview
Player Animation Core (PAC) is a library mod for NeoForge that provides a flexible, layered animation system for player models. It powers custom animations for mods like Dinamyc Combat, allowing smooth, keyframe-based animations for combat, movement, and more — with full first-person support.
🎯 Features
🎞️ Keyframe Animation System
Define animations in JSON using GeckoLib-style keyframes. Full control over bone transforms: position, rotation, scale per keyframe with configurable easing.
🧩 Layered Animation Stacking
Multiple animations run simultaneously with priority layering. Higher-priority animations override lower ones per-bone, enabling complex blends like walking + attacking.
👁️ Four First-Person Modes
THIRD_PERSON_MODEL — Full 3D player model rendered in first person with configurable part visibility.
HANDS_ONLY — Item bone transforms applied on top of vanilla first-person hands.
HANDS_ONLY_ARM — Arm bone rotations (configurable scale) applied to vanilla first-person item rendering. Matches third-person arm swing without extra keyframes.
VANILLA — Standard Minecraft first-person view.
⚙️ FirstPersonConfiguration
Control visibility of arms, items, and armor per-animation. Configurable arm rotation scale, arm length, and pitch factor for per-weapon tuning.
🦴 Bone Transform API
Query and apply transforms to any body part: head, torso, arms, legs, right/left item. Automatically mirror animations for left-hand rendering with MirrorIfLeftHandModifier.
📦 Lightweight
Designed as a library — zero visual changes on its own. Only affects rendering when another mod triggers an animation. Perfect dependency for combat, parkour, emote, or any animation mod.
📋 Requirements
| Minecraft | 26.2 |
| NeoForge | 26.2.0.32-beta+ |
🎮 For Mod Developers
Add PAC as a dependency in your build.gradle:
repositories {
maven {
url "https://gitlab.com/api/v4/projects/stalking-dragons/minecraft/player-animation-core/packages/maven"
}
}
dependencies {
implementation "com.skd:player_animation_core:0.0.0-beta.1"
}
Register an animation factory:
PlayerAnimationFactory.ANIMATION_DATA_FACTORY.registerFactory(
Identifier.of("yourmod", "combat"), 1000, YourController::new);
Trigger animations:
var layer = PlayerAnimationAccess.getPlayerAnimationLayer(avatar, FACTORY_ID);
if (layer instanceof PlayerAnimationController controller) {
controller.triggerAnimation(animId);
}
Override first-person config:
@Override
public FirstPersonMode getFirstPersonMode() {
return FirstPersonMode.HANDS_ONLY_ARM;
}
@Override
public FirstPersonConfiguration getFirstPersonConfiguration() {
return new FirstPersonConfiguration()
.setArmRotationScale(1.0f)
.setShowArmor(true);
}
See the full API reference for details.
🔧 Compatible Mods
Dinamyc Combat — Custom weapon attack animations with first-person support.
Your mod here — PAC is designed for integration.
🙏 Credits
Based on Player Animation Lib by Kosmx.
Ported and extended for NeoForge 26.2 by Stalking Dragons.
https://codex.skdragons.com/
Codex Stalking Dragons — Minecraft Modding