Skip to the guide
Pixx Suite

Build · Hitbox, pivot & frame-event editor · Intermediate

Pixxeta — Intermediate

Annotate whole move sets fast: templates and layer defaults, box tracks and interpolation, sockets with attachments, events, frame data and checks.

Open Pixxeta

#What you'll learn

  • How to set up a character in one click with templates, and give every new box sensible gameplay values.
  • How box "tracks" work across frames, so copying and interpolating saves you redrawing.
  • How to attach weapons and effects to sockets and test them.
  • How to plan attacks with frame data and the collision preview.
  • How to keep a project clean with Checks, and hand it on to Pixxula and Pixxizi.

#Before you start

  • You should know the basics from the Pixxeta Beginner guide: opening an animation, drawing boxes, pivots and Export.
  • Have a character animation with at least an idle and an attack, or use Try the sample knight.
  • Frames can be up to 480 × 480 pixels each.

#How-tos

#How to start from a character template

  1. In Box layers, open Character template and pick one: Platformer hero, Fighting-game fighter, Run-and-gun shooter, Top-down character, Boss / large enemy, Projectile / spell, Breakable prop or Rideable mount.
  2. Click Apply. You get the layers and sockets that kind of character usually needs, for example the fighter's Head, Torso and Legs hurtboxes plus Push, Strike and Parry.
  3. Click each layer's gear to set its defaults (damage, knockback, priority, hitstop). Every new box on that layer starts with them, so you only type the exceptions.

#How to work with box tracks

  1. A box keeps the same id when you copy it with → Next frame, → Rest of animation, Copy boxes or Ctrl+C / Ctrl+V. Boxes with the same id across frames form a track: one row in the timeline, one shape in your engine.
  2. Duplicate (Ctrl+D) makes a new box with a new id, a separate track.
  3. Use copies when it's the same box moving (a sword swing), and duplicates when it's a new box (a second hit).

#How to interpolate a moving box

  1. Place the box on the first key frame, copy it forward, and go to the last key frame.
  2. Move and resize the box there.
  3. Under Frame → Interpolate, enter the two key frame numbers and click Interpolate.
  4. Every frame in between gets a gliding box (and gliding sockets). Fix any frame by hand afterwards; it stays a key.

#How to attach weapons and effects

  1. Add sockets (hand_r, hand_l, muzzle, head, feet, mount, vfx_origin, shield, back, or your own name).
  2. Place each socket on every frame where it exists, and drag its aim dot to set the angle (hold Shift to snap to 15°).
  3. In Collision preview → Attach to a socket, pick the socket and load a weapon or effect with Image… or Library. Play the animation to check it follows.
  4. Checks warns when a socket disappears partway through an animation.

#How to design an attack with frame data

  1. Draw the hitboxes on the active frames only.
  2. Open Animations & frame data: Startup counts frames before the first hitbox, Active the frames with hitboxes, Recovery the frames after the last one, each in frames and milliseconds, plus the highest Damage.
  3. Change frame timing under Frame → Duration (ms) and watch the numbers update.
  4. Type on hit and on block advantages you designed; they're exported with the data.
  5. Add hit_active events at the start and end of the active window, and cancel_window where the move can be cancelled.

#How to test with the collision preview

  1. Tick Dummy target, then drag it or type its size to match a typical opponent's hurtbox.
  2. Play with ¼× or ½×, or step with , and .. The dummy turns red and shows HIT while a hitbox overlaps it.
  3. Untick this anim to play every frame instead of looping the current animation.

#How to plan events for your game code

  1. Add events where your game needs to react: footstep (with a surface), spawn_projectile (id, speed, angle, socket), play_sound (sound, volume), camera_shake (strength, ms), invuln_on / invuln_off, vfx (id, socket), hitstop (frames), cancel_window (into), or custom.
  2. Edit each value; your code receives the event name and its values when the frame plays.
  3. For play_sound, click ♪ to pick a sound from your library, for example one made in Pixxibu.

#How to clean up with Checks

  1. Open Checks before every export.
  2. Fix each line: missing hurtboxes on attack frames, boxes outside the frame, tiny boxes, hitboxes without damage, overlapping hitboxes, sound events without a sound, sockets that vanish mid-animation.
  3. Click a line to jump to the frame and select the box.

#Workflows

#A full move set for a platformer hero

  1. Apply Platformer hero, then Auto boxes → Padded on Body for All frames.
  2. Auto pivots → Feet for all frames, so the character stands on the same spot.
  3. Draw attack hitboxes on active frames, interpolate the swing, add events.
  4. ⇋ Left-facing copies, then Checks, then Export for your engine.

#Pixxava → Pixxeta → Pixxula → Pixxizi

  1. Send a character sheet from Pixxava and accept Auto boxes from rig.
  2. Add attacks, sockets and events, then Send to App → Pixxula: the gameplay data stays attached while frames are packed.
  3. Send to App → Pixxizi to package it with your other assets for your engine.
  4. Track the whole chain as a Flow run so each person knows when their step is ready.

#Hand off to a programmer

  1. Export Generic JSON (or your engine's format) plus CSV for the frame data table.
  2. Share the zip; the CSV opens in any spreadsheet for balancing.

#Tips and shortcuts

  • Tools: V select · R box · C circle · K capsule · P polygon · O pivot · S socket · H pan.
  • Space play/pause · , / . step · 0 fit · scroll to zoom.
  • Arrows nudge 1 pixel, Shift + arrows 8 pixels · Ctrl+D duplicate · Delete remove · Esc deselect.
  • Ctrl+Z undo · Ctrl+Shift+Z or Ctrl+Y redo · Ctrl+S export.
  • Onion skin (the half-moon button) shows neighbouring frames and their boxes.

#Troubleshooting

  • Interpolate says there's nothing to do: the key frames don't share the same box id. Copy, don't duplicate.
  • Frame data shows no startup: the animation has no boxes on a Hitbox layer. Check the layer's type in Box layers.
  • The attached weapon jumps around: the socket isn't placed on some frames, or its angle flips. Place it on every frame.
  • New boxes have the wrong damage: change the layer's defaults with its gear button; existing boxes keep their values.
  • Auto boxes on Body parts made nothing: the figure is too small or the frame is empty. Use Padded instead.