The Best Resource for Minecraft
The Best Resource for Minecraft

Citadel Wiki

Citadel is a shared library and API used by mods like Alex's Mobs - keyframe animations, entity data attachments, an in-game guidebook system, and rendering helpers.

5 sections · 639 words

Overview#

Citadel is a library / API mod by AlexModGuy. It adds no creatures, blocks, or items of its own - instead it provides a powerful toolbox of shared code that other mods build on top of. The most well-known mod that depends on it is Alex's Mobs, but many other content mods use Citadel for animation and utility support.

What Citadel provides:

  • a keyframe animation framework for smooth, complex entity animations,
  • advanced entity model and render helpers,
  • a persistent entity data-attachment system for storing custom data on entities,
  • a configurable in-game guidebook system with 3D entity and recipe previews,
  • post-processing shader effects,
  • and common networking, registration, and utility helpers.

Because it is a dependency, you install Citadel only because another mod asks for it.

Do I Need This?#

Yes - if another mod tells you to. Citadel is a required dependency for mods such as Alex's Mobs. Those mods will crash or fail to load without it.

No - on its own. Installing Citadel by itself does nothing visible in-game: it adds no mobs, blocks, items, or world content. There is nothing to "use" directly as a player.

Rule of thumb: if your modpack or a mod's install page lists Citadel as a requirement, install it. Otherwise you do not need it.

Getting Started#

  1. Match the version. Always download the Citadel build that matches both your Minecraft version and the version required by the mod that depends on it. A mismatched Citadel is the #1 cause of crashes.
  2. Drop the jar into .minecraft/mods alongside the mod that needs it (and your mod loader).
  3. Launch. That is all - Citadel works silently in the background, powering the dependent mod's animations, guidebook, and data.

There is no config you normally need to touch; Citadel just needs to be present and version-correct.

Developer API#

Modders depend on Citadel to avoid re-implementing animation, rendering, and data plumbing. Add it as a dependency, then use its APIs.

Declaring the dependency (Gradle)

repositories {
    maven { url = "https://cursemaven.com" }
}

dependencies {
    // Replace with the build that matches your MC/loader version
    implementation "curse.maven:citadel-331986:<FILE_ID>"
}

Also declare Citadel as a required dependency in your mod metadata (e.g. neoforge.mods.toml / fabric.mod.json) so the loader enforces load order.

Animated entities

Implement IAnimatedEntity on your entity and drive it with Citadel's keyframe Animation system:

public class MyCreature extends Animal implements IAnimatedEntity {
    public static final Animation ANIMATION_ATTACK = Animation.create(15);
    private int animationTick;
    private Animation currentAnimation = NO_ANIMATION;

    @Override public int getAnimationTick() { return animationTick; }
    @Override public void setAnimationTick(int tick) { this.animationTick = tick; }
    @Override public Animation getAnimation() { return currentAnimation; }
    @Override public void setAnimation(Animation a) { this.currentAnimation = a; }
    @Override public Animation[] getAnimations() {
        return new Animation[]{ ANIMATION_ATTACK };
    }
}

Call AnimationHandler.INSTANCE.updateAnimations(this) each tick and trigger an animation with setAnimation(ANIMATION_ATTACK).

Other utilities

  • Entity data attachment - persist custom data on any entity without editing its class.
  • Guidebook - register entries with 3D entity/recipe previews (this is what powers in-game dictionaries).
  • Render helpers - shared model/renderer base classes and post-processing shader hooks.
  • Networking & registration - boilerplate helpers for packets and deferred registration.

Always compile and test against the exact Citadel version your release targets - the API surface can change between Minecraft versions.

Troubleshooting & FAQ#

My game crashes and the log mentions Citadel or a missing dependency. Install the correct Citadel build, or update it to match the version the dependent mod requires.

I installed Citadel but nothing changed. That is expected - Citadel adds no content on its own. You need the mod that uses it (e.g. Alex's Mobs).

Can I remove Citadel? Only if you also remove every mod that depends on it; otherwise those mods break.

Is Citadel a performance mod / does it change gameplay? No. It is a code library; it has negligible direct gameplay impact and exists purely to support other mods.