Phaser AE

First-person bosses

Pro packv3.0.0-0ArcadeNew

Boss fights for first-person shooters: a big enemy that changes how it fights as its health falls, with every attack announced before it lands.

This is a Pro pack. Upgrade to Phaser Pro to use it in your games.See Phaser Pro →

Released October 24, 2026

First-person bosses: a screenshot of its demo
A note about these graphics

Expansion packs don't come with graphics. This screenshot is one way of drawing what the pack does, made for its demo: none of the sprites, tiles or backgrounds in it are in the pack.

That's by design. A pack is a game's logic, mechanics and effects, and it works with whatever art you give it. Some packs draw effects, backdrops or 3D scenes of their own, but none carries a game's sprites.

So the look is yours. Make the art on phaser.io, bring your own, or let your agent draw it in code: the same pack can look like anything.

What it does

Pick an enemy kind the horde already knows (its health, size and sprite) and describe it as a boss: a list of phases, each lasting until its health falls to a share. The pack takes every enemy of that kind over. The horde keeps its health, flinches, death and voice; the boss controller moves it and fights with it.

Each phase has a way of moving and a pattern of attacks. It might hold its ground, chase, strafe round the player or keep its distance, and fire volleys, rings, aimed bursts, charges, slams, summons and teleports in order or at random. Every attack has a wind-up the game can show and sound, so the player can learn the pattern. A new phase can roar, turn the boss invulnerable for a moment, heal it, bring reinforcements and give it armour.

Like the horde, it reports what happens as events: shots for the game to fly, summons to spawn, slam and charge damage. So the same bosses fight on a cell-dungeon corridor map or a sector-map level.

Features

  • Phases by health — each with its own movement, attacks, pace and armour.
  • Seven attacks — volleys, rings, bursts, charges, slams with knockback, summons and teleports.
  • Warnings — every attack winds up first, as an event to draw and sound.
  • Phase entrances — a roar, invulnerability, healing and reinforcements.
  • A health bar — names, health and phase for each boss.
  • Any map — works wherever fps-enemies does.

Good for

  • The end of an episode — a three-phase guardian, as in sector-shooter's Warden.
  • An arena finale — a teleporting boss after the waves.
  • A mini-boss in a corridor — a single phase of volleys and a charge.

Make it yours

Phases, movement, attacks, timings, armour and entrances are all data. A slow chaser that fans fireballs, then strafes and rings the room, then charges and slams is one boss; a sniper that keeps away, teleports behind you and summons drones is another.

A quick look

Adopt the bosses among the enemies and run them each step.

const bosses = fpsBosses.createBosses([warden], horde, map.enemyWorld());
for (const e of horde.list()) bosses.adopt(e.id);
game.step('boss', dt => { for (const e of bosses.tick(dt, player)) apply(e); });

Works with

Good to know

  • A boss fights one player and does not join in infighting.
  • It draws nothing: show the wind-ups, the health bar and the shots yourself.

More Arcade packs

Show all →