Skip to main content

Module anims_table

Module anims_table 

Source
Expand description

Animation table file format support.

This module handles animation table files (*_tables.bin) which define animation sets and their associated fragments for unit skeletons in Total War games. These files act as indices that map skeleton types to their animation fragment files.

§File Format

Animation tables use a binary format (version 2) containing:

  • List of animation table entries
  • Each entry maps a skeleton type to animation fragments
  • Fragment references with metadata

§File Naming Convention

Animation table files must end with _tables.bin to be recognized by RPFM. This is a library-specific requirement for disambiguation, not a game limitation.

Common naming patterns:

  • humanoid01_tables.bin - Human skeleton animations
  • cavalry_tables.bin - Mounted unit animations
  • monster_tables.bin - Large creature animations

§File Organization

Animation tables are stored in:

animations/animation_tables/{skeleton_type}_tables.bin

§Structure

Each table contains entries that define:

  • Animation table name (logical identifier)
  • Skeleton type (which skeleton this applies to)
  • Mount table reference (for mounted units)
  • List of animation fragments with metadata

§Supported Versions

Currently only version 2 is supported, used in modern Total War games (Warhammer 2, Three Kingdoms, Warhammer 3, etc.).

§Usage

use rpfm_lib::files::anims_table::AnimsTable;
use rpfm_lib::files::Decodeable;

// Decode an animation table
let table = AnimsTable::decode(&mut data, &None)?;

// Access entries
for entry in table.entries() {
    println!("Table: {} for skeleton: {}",
        entry.table_name(),
        entry.skeleton_type()
    );

    // List fragments
    for fragment in entry.fragments() {
        println!("  Fragment: {}", fragment.name());
    }
}

Structs§

AnimsTable
Represents an animation table file (*_tables.bin).
Entry
Represents a single animation table entry mapping a skeleton to fragments.
Fragment
Represents a reference to an animation fragment file.

Constants§

BASE_PATH
Base directory path for animation files.
EXTENSION
File extension pattern for animation table files.