by Kenta Cho.
This is a collection of 30+ tiny arcade games, each of them delightful, compelling, and playable in seconds. They’re created in what the author calls “Crisp Game Lib“, a personal, puzzlescript-like framework specially made for making these kinds of rapid/minimal arcade things.
This whole thing is just, like, incredibly cool. The games themselves are a blast, especially played as a collection – and the framework behind it all is fascinating. The entirety of each game is contained in a single typescript file, with variables shared across each game – a score
, a simple description
so that you know what the controls are, and common functions like end()
to trigger a game over. Graphics are defined as these big strings where you can block out rough sprite designs:
Want sound effects? You can just write play("jump")
or play("explosion")
, and it all works. Want background music? set isPlayingBgm
to true
and it’ll just… generate some. What?
You can find the entire collection on the crisp-game-lib page, but here are a few that I particularly liked:
[Play FLOATER] | [Play COUNT] |
[Play GRENADIER] | [Play FORFOUR] |
[Play DOSHIN] | [Play DIVARR] |
[Play ARCFIRE] | [Play SLALOM] |
[Play SURVIVOR] | [Play FLIPBOMB] |
[Play LLAND] | [Play PILEUP] |
[Play CYWALL] | [Play REFBALS] |
It’s worth saying: Kenta has been doing this sort of thing for a very long time now – Crisp Game Lib is the latest iteration of a series of projects that includes mgl.coffee, and a collection of flash games made in the now defunct wonderfl.
(Via Tim at Warp Door. Thanks, as always!)