Futbol Fan
Small-sided soccer, 1v1 to 4v4, with a broadcast camera, charged shots, chips and tackles. Practise alone or open a room.
Azure against Crimson over two 90-second halves. The nearest player controls a low, slow ball and dribbles it with short touches. Passes lead a teammate, shots charge while you hold the button, and a chip lifts the ball over whoever is in the way. A standing tackle can win it back.
Play solo to practise against a simple opponent, or open a multiplayer room. Teams fill by slot, so 1v1, 2v2, 3v3 and 4v4 all work, and the room's server decides every touch, goal and restart so everyone sees the same match.
Built from a prompt
How it was built
The brief this demo started from, and what the AI did with it inside the editor.
The brief, in short:
Build small-sided soccer in this project: 1v1 up to 4v4 on an authoritative room server, with a separate solo practice mode. FIFA-inspired broadcast camera and controls: move, sprint, assisted pass, charged shot, chip, standing tackle. Dribbling should be physical, with the ball actually rolling off the player's feet. Two halves, a change of ends, restarts, and a rematch vote.
The agent's first move was to take a checkpoint called Before soccer demo, then clear the starter content. It then wrote five Lua scripts: the authority match rules (roster, possession, kicks, scoring, the clock, halftime and restarts), a predicted player controller, a browser-side presentation script, a per-player marker, and the HUD.
- Player models and soccer motion clips (jog, ready, pass contact, chip) came from the Mixamo library, prepared with small glTF Transform tools into compact team-coloured GLBs. The match ball and the stadium crowd are generated by scripts in the workspace.
- Every intent (pass, shoot with a power value, chip, tackle, ready, rematch) is a declared multiplayer action. The scene script checks who sent it, the match phase, distance to the ball and cooldowns before it does anything.
- Dribbling was tuned against recorded physics runs: before, after, and a dedicated dribble recording are kept as regression evidence.
It tested the match rules with Wasmoon and mocked object APIs, ran the real physics simulation to catch an opponent being launched into the air on contact (then fixed the collision filtering), and ran the publish check before each of the four releases. The QA record separates what rule tests prove from what only a real room with signed-in players can prove.
More demos
All demos
Ashen Duel
A sword duel in a ruined courtyard. Pick the Warden, the Paladin or the Ninja, read the blade, dodge the strike, then punish the recovery. Or duel a friend online.
CityScape
Walk a neon boulevard in the year 2186. A city block of more than 3,000 objects, twelve citizens to talk to, and room for seven friends.
Starter Kit Racing
Kenney's Starter Kit Racing, rebuilt in Airogel from primitives and generators. Race the circuit alone or with up to four trucks in a room.