2048 was released in March 2014 by Gabriele Cirulli, a nineteen-year-old Italian web developer who wrote it over a weekend and put it online for free. The principle is radically simple: on a 4 × 4 grid you push every tile in one direction, and two tiles bearing the same number merge into a tile of double value. A new tile appears with every move, and the game ends when no move is left. The stated goal is to reach the 2048 tile, but nothing stops you from carrying on past it.
Cirulli never hid his sources of inspiration: Asher Vollmer's Threes!, released on iOS a few weeks earlier, and its clone 1024 by Veewo Studio. The difference lies in the model: 2048 was released under a free licence, playable in a browser, with no ads and no purchase. Within days it became a viral phenomenon, spawning hundreds of variants, and it has since become a classic testbed for search algorithms and machine learning.
Recalbox ships the libretro-2048 port, a native rewrite of the game playable with a controller and released into the public domain.
| Author | Gabriele Cirulli |
| Year of release | 2014 |
| Engine | Native libretro port |
| Game type | Puzzle |
| Port licence | Unlicense (public domain) |
| Controller | Mandatory |
2048 is entirely free, shipped complete with Recalbox: there is strictly nothing to provide or install. See the Included games page.
Emulator availability per board:
| Emulator | RPI3/RPI02W | RPI4/400 | RPI5/500 | OGA/OGS/RG351 | PC | RG353 |
|---|---|---|---|---|---|---|
| Libretro 2048 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Libretro 2048 is the only emulator for this system and is therefore used by default on every machine, including the Raspberry Pi Zero 2: the game needs no horsepower at all. Netplay is not available on this system and RetroAchievements are not supported. CRT output is handled by the core.
2048 is a read-only system: the game is shipped complete and its folder is not meant to be modified.
/recalbox/share_init/roms/ports/2048/
Supported extension: .game
The folder holds a single file:
/recalbox/share_init/roms/ports/2048/
└── 2048.game ← the game entry, launched by the core
The 2048.game file does not contain the game: all the code and graphics live inside the core itself. It is simply a marker that makes the "2048" entry appear in the game list and triggers the launch.
Unlike the other ports, this system does not read
/recalbox/share/roms/. Dropping files into/recalbox/share/roms/ports/2048/has no effect: they will not appear in the game list.