Safety Preflight

Upload One Clear Full-Body Photo

Use a photo of yourself with face, outfit, and stance visible. Selfies, minors, nudity, masks, heavy blur, and private info are rejected.

Continue to Confirm
Signed-in route. Live actions enforce auth and fail closed until provider state is configured.

Photo Check

Drop in the fighter photo only when it is really yours.

The live upload action should validate the file, reject unsafe inputs, and create a reusable upload record only after checks pass.

Requirements Checklist

  • One adult person
  • Full body visible
  • Clear face and outfit
  • No nudity
  • No minors
  • No private info
  • No heavy blur
  • No friend photo for callouts

Why This Matters

The render pipeline needs a readable full-body subject so the fight feels like you entered the arena, not a random cropped sticker.

Source of Truth

Locked Product Rules

  • Users upload clear full-body photos of themselves, not selfies.
  • Each callout participant uploads their own photo.
  • Fight Opponent reserves 25 Battle Tokens and spends them only after final MP4 delivery.
  • Callouts hold 40 Battle Tokens and spend only after acceptance plus successful final MP4 delivery.
  • The backend rolls D20 plus hidden bonuses before rendering starts.
  • Only active Fighting Style and active Finisher influence the MVP user roll.
Arena Promise

The app sells the video, the matchup, and the social loop while keeping hidden math hidden.