Mount Texture Configuration

Configure textures for mountable mounts — the same sprite sheet, animation, and light mask system used by mobs.

Mounts are rideable entities. Their textures use the exact same system as Mob Texture Configuration — sprite sheet layout, sprites, states, per-frame timing, light masks, YAML anchors, and overrides all work identically. This page covers the mount-specific file locations and naming; see the mob doc for the full mechanics.


File Location

Config file:

mods/<your-mod>/assets/textures/mounts/mounts.yaml

Texture images go in the same folder:

mods/<your-mod>/assets/textures/mounts/<name>.png

The file name must match the name field exactly (case-sensitive), with spaces kept as spaces in the file name.


Minimal Example

textures:
  - name: my_mount
    sprites:
      - name: idle
        frame-count: 1
    frame-width: 32
    frame-height: 32

This registers a mount named my_mount from my_mount.png. It will be referred to as YourMod:my_mount anywhere a mount name is expected.


Full Field Reference

textures:
  - name: my_mount              # Required. Registered as YourMod:my_mount
    override: Creation:test_mount  # Optional. Replace another mod's registered mount (see below)
    light-mask: my_mount_mask   # Optional. Light mask texture
    frame-width: 32             # Required. Width of one frame in pixels
    frame-height: 32            # Required. Height of one frame in pixels
    sprites:                 # Required. One or more named animation sequences
      - name: riding            # Required. Animation name
        frame-count: 4          # Required. Number of frames in this animation
        frame-time-ms: 100      # Optional. Milliseconds per frame (default: 100)
        frame-durations-ms:     # Optional. Per-frame timing override
          - count: 4
            duration-ms: 100
    states:                     # Optional. Named static poses
      - name: idle
        sprite: riding
        frame: first
FieldRequiredDescription
nameYesIdentifier for this mount. Registered as ModName:name.
overrideNoFull name of another mod’s mount to replace. See Overrides.
light-maskNoName of a separate PNG used as the light emission mask.
frame-widthYesWidth of a single frame in pixels.
frame-heightYesHeight of a single frame in pixels.
spritesYesList of named animation sequences. At least one required.
sprites[].nameYesAnimation name, used by scripts to trigger playback.
sprites[].frame-countYesHow many frames this animation plays through.
sprites[].frame-time-msNoMilliseconds per frame for uniform timing. Default: 100.
sprites[].frame-durations-msNoPer-frame timing override.
statesNoNamed static poses scripts can snap the mount to.
states[].nameYesState name, referenced by mount scripts.
states[].spriteYesWhich sprite this state uses.
states[].frameYesfirst, last, or a zero-based frame index.

For the sprite sheet layout diagram, per-frame timing formats, light mask rules, YAML anchor/alias reuse, and override semantics — all identical here — see Mob Texture Configuration.


Complete Example

Based on the real shipped mount texture:

textures:
  - name: test_mount
    sprites:
      - name: test_mount
        frame-count: 1
    frame-width: 32
    frame-height: 32

Overrides

Your mod can replace the texture used for any mount from another mod without changing that mod’s files. Add override with the full mod-namespaced name of the mount to replace:

textures:
  - name: my_sailboat
    override: OtherMod:sailboat
    sprites:
      - name: my_sailboat
        frame-count: 1
    frame-width: 32
    frame-height: 32
  • The name field is still required (it is used to locate your replacement PNG in your mod’s folder).
  • Your texture file must match the frame dimensions of the original mount.
  • Your override entry fully replaces the animation configuration of the original, so you must redeclare all sprites, states, and timing you want to keep.