Phaser AE

Crowd cannon and multiplier gates

Pro packv3.0.0-12DArcade

A crowd battle with a cannon: fire a stream of units through gates that multiply them, against an enemy base sending its own waves back. The field, the gates and the balance are options, and the pack hands you every unit to draw.

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

Released October 19, 2026 · updated October 20, 2026

Crowd cannon and multiplier gates: 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

The cannon sits at the foot of a field. You slide it with move or drag it towards a point with aim, and while fire is held it sends units up the field at a steady rate. Gates sit across the field. A unit that crosses a gate's line within its width becomes several of itself, or gains a few more, once per gate; the units it makes have passed that gate too and carry on to the gates beyond, so a good line through two multipliers turns a trickle into a flood. Some gates swing from side to side, and gateX tells you where one will be at any time.

At the head of the field is the enemy base. It sends red units down towards the cannon, slowly at first and faster as the round goes on. A blue and a red that touch take a hit point from each other. Blue units that reach the base wear it down; red units that reach the cannon's line wear you down. Every shot charges a meter, and when it is full launch sends a giant, slow and worth many units in a clash and at the base.

The pack is pure rules. It advances in fixed steps of 1/60 s and reports events for shots, giants, multiplications, clashes, damage to either side, and the win or loss. view() gives every unit, the gates where they are now and the cannon, for your game to draw as a crowd in 3D or as dots on a 2D field.

Features

  • A sliding cannon — keyboard-style move, drag-style aim towards a point, and fire while held.
  • Multiplying gates — x gates that make n of each unit and + gates that add n, each counted once per unit, with clones carrying on.
  • Swinging gates — any gate can sweep side to side over a range at a rate.
  • Gates by seed or by hand — planCannonGates lays out bands of mostly x2, some x3 and a few +2 or +3, half of them swinging, or you pass your own.
  • Thickening waves — the enemy's rate ramps from a start to an end over a set time.
  • The giant — a meter charged by shots, launching a unit with its own hit points and base damage.
  • Events — shot, giant, multiply, clash, base, breach, won and lost, for effects and the HUD.
  • Autopilot — fires, launches giants when ready and aims where the best gate will be when its shots arrive.
  • Snapshot and restore — the round as plain JSON, and back.

Good for

  • Hyper-casual crowd battles in the style of Mob Control, with a cannon, gates and an enemy base.
  • Tug-of-war arcade games where two streams of units meet in the middle and the bigger one wins.
  • Aim-and-time puzzles, where swinging gates reward firing at where a gate will be rather than where it is.
  • Short mobile levels, tuned by base hit points, wave ramp and gate layout.
  • Attract modes and balance tests, driven by the autopilot.

Make it yours

createCrowdCannon takes the seed, the field's width and length, gates by hand or a count to generate, the base's hit points and yours, the fire rate, the speeds of your units and the enemy's, the waves as a start rate, an end rate and a ramp time, the giant's charge, hit points and damage, the most units on the field at once, and the cannon's slide speed. validateCrowdCannon reports every fault, the gates' included, one line each.

Two different levels from one pack: the default round, a field twelve wide and forty long with three generated gates and a base of 800 hit points; or a hand-built gauntlet with a long field, five gates of which the best are fast swinging x3s, a giant every twenty shots, and waves that start thick and reach their peak within twenty seconds.

A quick look

A round aimed by dragging, fired while the pointer is down, with a giant on a tap:

const round = game.crowdCannon.create({ seed: 2 });
round.aim(dragX);
round.fire(pointerDown);
if (tapGiant) round.launch();
round.step(dt);
for (const u of round.state.units) drawUnit(u.side, u.x, u.y, u.giant);

Works with

  • crowd-runner — for a crowd steered up a lane through number gates instead of fired from a cannon.
  • projectile-patterns — for patterns of bullets in a shooter.

Good to know

  • Units are points that run straight, not bodies pushing each other.
  • Past the unit cap, gates make no more units.
  • There is one base and one cannon; obstacles and enemy cannons are not modelled.
  • The pack draws nothing: your game draws the crowd, the gates and the cannon from the view.

More Arcade packs

Show all →