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
- Create a new folder inside your M.U.G.E.N chars directory named MyFirstFighter.
- 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
- Gather sprite images (PNG) for idle, walk, attack, and hit poses. Keep them small (e.g., 150–250 px tall).
- 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).
- Set each sprite’s origin (hotspot) so the feet are aligned across frames. Use the Align tool to match frames.
3. Build animations
- 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.
- Create a walk animation (Animation 100). Add frames from group 1, set appropriate delays, and enable horizontal flipping for left movement.
- 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).
- Create a hit/reaction animation (Animation 300) using group 3.
4. Define state controller (cns)
- 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)
- 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
- Use basic examples from FFU’s templates if unsure — they provide parameter layouts for Move, Velocity, and HitDef.
5. Add hit detection and collisions
- 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)
- 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)
- 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)
- Use basic triggers like trigger1 = command and trigger2 = stateno to prevent spamming while attacking.
7. Sound and effects (optional)
- Import sound files into the Sound Editor (SND). Assign attack and hit sounds to play on the matching animation frames.
- 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
- Save all files and open M.U.G.E.N. Add MyFirstFighter to the select.def and test.
- Check idle, walking, facing direction, attack hit registration, and hit reaction.
- 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.
Leave a Reply