Beginner’s Tutorial: Creating Your First Character with Fighter Factory Ultimate

Beginner’s Tutorial: Creating Your First Character with Fighter Factory Ultimate

Overview

This tutorial walks a beginner step-by-step through creating a basic playable character using Fighter Factory Ultimate (FFU). Assumptions: you have FFU installed on Windows and a compatible M.U.G.E.N character folder to work in. We’ll create a simple character with sprites, animation, basic movement, and a single attack.

1. Project setup

  1. Create a new folder inside your M.U.G.E.N chars directory named MyFirstFighter.
  2. In FFU, choose File → New Project → Character and set the project folder to MyFirstFighter. FFU will generate the basic files (sff, cfg, cmd, cns, def).

2. Prepare and import sprites

  1. Gather sprite images (PNG) for idle, walk, attack, and hit poses. Keep them small (e.g., 150–250 px tall).
  2. In FFU, open the Sprite Editor (SFF). Choose Import → Images → From Folder, select your PNGs, and import them into logical groups (idle = group 0, walk = group 1, attack = group 2, hit = group 3).
  3. Set each sprite’s origin (hotspot) so the feet are aligned across frames. Use the Align tool to match frames.

3. Build animations

  1. Open the Animation Editor. Create an animation for idle (Animation 0). Add frames from group 0, set frame delays to 4–6 ticks for a smooth loop.
  2. Create a walk animation (Animation 100). Add frames from group 1, set appropriate delays, and enable horizontal flipping for left movement.
  3. Create an attack animation (Animation 200). Add attack frames from group 2, and place a trigger frame where the attack should register (we’ll add hit detection next).
  4. Create a hit/reaction animation (Animation 300) using group 3.

4. Define state controller (cns)

  1. Open the CNS editor. Add basic states:
    • 0: standing (links to Animation 0)
    • 100: walking (Animation 100)
    • 200: attack (Animation 200)
    • 300: hit (Animation 300)
  2. For each state, add simple state-type controllers:
    • Standing: type = ChangeAnim 0
    • Walking: ChangeAnim 100 + apply velocity for left/right movement (set vel_x accordingly)
    • Attack: ChangeAnim 200 and use HitDef on the active frame to create the attack’s hitbox
    • Hit: ChangeAnim 300 and recover back to standing after animation end
  3. Use basic examples from FFU’s templates if unsure — they provide parameter layouts for Move, Velocity, and HitDef.

5. Add hit detection and collisions

  1. In the attack state, on the attack frame add a HitDef controller:
    • Damage: 50 (adjust as desired)
    • Guard flag: 1 (allow blocking)
    • Opponent state: 300 (hit reaction)
  2. Add a BodyDef for the character’s hurtbox and an AttackBox for the hitbox positioned relative to the sprite hotspot.

6. Configure control bindings (cmd)

  1. Open CMD editor. Add simple commands:
    • Left/Right movement mapped to walk state (e.g., when Left key pressed, selfstate = 100)
    • Attack button mapped to attack state (e.g., when A pressed, selfstate = 200)
  2. Use basic triggers like trigger1 = command and trigger2 = stateno to prevent spamming while attacking.

7. Sound and effects (optional)

  1. Import sound files into the Sound Editor (SND). Assign attack and hit sounds to play on the matching animation frames.
  2. Add simple visual effects (like a flash) using palette or overlay sprites, triggered on the attack frame.

8. Test in M.U.G.E.N

  1. Save all files and open M.U.G.E.N. Add MyFirstFighter to the select.def and test.
  2. Check idle, walking, facing direction, attack hit registration, and hit reaction.
  3. Iterate: adjust hitbox positions, frame timing, velocities, and damage until behavior feels right.

9. Troubleshooting — common fixes

  • Sprites misaligned: adjust hotspots so feet line up.
  • Attack not hitting: ensure HitDef frame delay and AttackBox coordinates are correct and that the attack uses the correct group/plane.
  • Infinite state or stuck character: add GuardTime or EndState controllers to return to standing.
  • Animation not playing: confirm ChangeAnim parameters and that the animation number exists.

10. Next steps

  • Add blocking, crouch, and jump states.
  • Create multiple attacks and combos using cmd states.
  • Implement AI opponent behavior and testing.
  • Optimize sprite sheets into fewer groups and refine hitboxes.

Happy modding — tweak values and reuse FFU templates to expand your character.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *