A mask-driven auto-battler prototype (Global Game Jam 2026).
Both teams start with the same unmasked mechs — strategy comes from assigning a few masks each round to reshape roles, targeting, and abilities.
- There are 3 mech chassis: Scout, Jet, Tank.
- At the start of each round, the game randomizes the mech lineup: 5–10 unmasked mechs are spawned and mirrored to both sides for a fair round.
- Each round, the player can assign only 2–3 masks (one mask per mech).
- A mask defines a role (behavior + targeting + one signature ability).
- Same mechs, different fights — the “Mask Effect” is how roles emerge from mask assignments.
- Total board: 40 tiles
- 15 tiles per player side (30 total)
- 10 neutral tiles in the middle: 2 lanes × 5 tiles (a buffer zone between teams)
- Mechs spawn on their side’s tiles; the opposing side is a mirrored copy of the same unmasked lineup.
Exact coordinate system is implementation-defined; the important part is symmetry + limited placement space.
- Round Setup (Randomized + Mirrored)
- Generate 5–10 unmasked mechs and place them on one side.
- Mirror the same lineup/positions to the other side.
- Mask Assignment
- Each player places 2–3 masks onto their mechs (one mask per mech).
- Auto Combat
- The fight runs automatically using basic AI + mask abilities.
- Next Round
- Repeat with a new randomized mirrored mech setup.
- High mobility / skirmisher profile
- Best at: repositioning, chasing weak targets, “hit-and-run” patterns
- Ranged pressure / backline harassment
- Best at: ignoring frontline blocking rules (target selection), hitting backline safely
- Frontline anchor / space control
- Best at: soaking damage, holding the line, setting up control effects (via masks)
Note: For MVP, chassis should stay simple. The identity comes primarily from masks.
Role: aggressive damage + pressure
- Scout Mech + Warrior Mask
- AI/Targeting: nearest enemy; aggressive pressure
- Ability (L1): Hit & Run — every 3rd attack grants +40% Attack Speed for 2s; after each attack, step back 1 tile if free
- Jet Mech + Warrior Mask
- AI/Targeting: highest-threat backline (e.g., highest DPS)
- Ability (L1): Dive Slash — every 6s, dive the target, deal burst damage, return to original tile
- Tank Mech + Warrior Mask
- AI/Targeting: nearest enemy; wants frontline
- Ability (L1): Challenge — on battle start, taunt nearby enemies for 3s; then every 5s on hit, gain a small shield (10% Max HP)
Role: picks off weak targets / executes
(Named “Rogue” to avoid confusion with the Scout mech chassis.)
- Scout Mech + Rogue Mask
- AI/Targeting: lowest HP; backline priority
- Ability (L1): Execute Chain — on kill, dash to the next target; next hit deals +25% damage
- Jet Mech + Rogue Mask
- AI/Targeting: lowest HP backline; prioritizes marked targets
- Ability (L1): Mark — first hit marks target for 6s; marked targets take +15% damage from your team; Jet prioritizes marks
- Tank Mech + Rogue Mask
- AI/Targeting: farthest support/backline (if reachable)
- Ability (L1): Grapple — every 7s, pull the farthest enemy into frontline and Root for 1s
Role: shields / mitigation / stabilization
- Scout Mech + Angel Mask
- AI/Targeting: protect lowest-HP ally; stays mobile
- Ability (L1): Guardian Leap — every 6s, leap to lowest-HP ally; grant a shield (20% Max HP) for 3s
- Jet Mech + Angel Mask
- AI/Targeting: support from anywhere; positioning-independent
- Ability (L1): Sky Barrier — every 6s, shield 2 allies for 3s (optional: cleanse 1 debuff if implemented)
- Tank Mech + Angel Mask
- AI/Targeting: hold frontline; protect nearby allies
- Ability (L1): Sanctuary — adjacent allies take -10% damage; every 8s emit a small heal pulse
- Max HP, Armor, Attack Damage
- Attack Interval (seconds between basic attacks)
- Range (tiles)
- Move Speed (tiles/sec)
- Evasion (chance to dodge basic attacks)
- Shield (temporary HP layer)
- Basic attacks roll against Evasion
- On dodge: no damage (and for MVP: no on-hit effects)
- Armor reduces damage using a simple diminishing rule, e.g.:
damageAfterArmor = floor(rawDamage * 100 / (100 + armor))
- Damage applies to Shield first, then HP
- Minimum damage on hit: 1
- Default: nearest enemy
- Tie-breakers: lowest HP, then stable deterministic ID
- Some masks override targeting (e.g., lowest HP, highest threat, backline priority)
- If target is out of range: move toward it
- Tiles are occupied; if blocked, try adjacent alternatives; otherwise wait
- Shield: absorbs damage before HP
- Mark: target takes increased damage (+15%)
- Slow: increases attack interval / reduces attack speed
- Root: cannot move
- Taunt: forced targeting toward the taunter
- Round ends when one team has no living mechs
- Optional: time limit (e.g., 45s) → remaining team HP decides
- Drag & drop masks onto mechs (2–3 masks per side per round, one mask per mech)
- Clear visual procs: shield icons, mark icons, grapple animation, taunt indicator
- Keep numbers small and rules visible (clarity > complexity).
- MVP has only Level 1 masks (no leveling, no item stacks).
- Add features only after unmasked combat feels solid and deterministic.
- Core auto-battler: Mech spawning (5-10 mirrored), movement AI with A* pathfinding, basic attack & damage system (evasion, armor, shield), health & death, win/loss condition.
- 5 Mech chassis (Scout, Jet, Tank, Sniper, Colossus) with 3D models and metal material textures. Sniper has charge-up mechanic; Colossus has dual-target cleave.
- 5 Masks (Warrior, Rogue, Angel, Phantom, Commander) with 25 mask-chassis abilities (5×5 matrix), status effects (Shield, Mark, Slow, Root, Taunt, Stun, Untargetable, Invisible, MissChance), targeting overrides.
- Battle Arena: 20x10 visual grid with 3 colored zones, camera controls (WASD, right-click rotate, scroll zoom).
- Mask Assignment UI: IMGUI left-side panel with colored mask buttons; click mask then click mech to assign. Two-tone mech visuals (bottom=team color, top=mask tint).
- Game loop: Round Setup → Mask Assignment → Auto Combat → Next Round. Enemy masks pre-assigned randomly; combat auto-starts when all player masks placed.
- Multiplayer networking: Mirror fully integrated with Singleplayer (localhost host), Host Game, and Join Game (IP input) flows via LobbyScene (UIToolkit). Server-authoritative mech spawning, mask assignment (per-side limits via
CmdAssignMask), mech repositioning (CmdRepositionMech), NetworkTransform sync.NetworkHelperdual-mode utility for seamless SP/MP code paths. Client-correct Game Over perspective. - Prefab system: All mechs and projectiles use prefab-based instantiation.
- URP materials: All project and Mirror example materials converted to URP. YughuesFreeMetalMaterials pack integrated for mech metal textures.
- Visual polish: Game Over UI, mask effect visual procs (shield/mark/taunt indicators), death particle effects (EnergyExplosion VFX). Enemy team color is yellow for clear distinction from player blue. Procedural Mars environment (voronoi cracks, FBM terrain, dusty skybox).
- Audio: Background music (2-track playlist, persistent MusicManager singleton). Chassis-specific laser SFX (Scout, Jet, Tank).
- Basic HUD (health bars, timer)
- Remaining sound effects (UI, Win/Loss)
- Stat balancing
Built for Global Game Jam 2026 by the team behind Mask Effect.
MIT