2048

2048 is a puzzle game created by Italian developer Gabriele Cirulli as a clone of the proprietary mobile game 1024! (itself a clone of the also-proprietary game Threes). 2048 is available under the terms of the MIT License. The original version of the game is web-based and played in a browser, but dedicated ports supporting swipe controls have been made for mobile devices.

2048 is a simple puzzle that involves moving numbered tiles around on a grid. Whenever two tiles with matching numbers collide, they will fuse together to form a tile with double their previous value. The goal is to produce a tile with a value of 2048.

Gameplay
Gameplay in 2048 involves moving square tiles with numbers on them around on a 4x4 board. These tiles can be moved in any cardinal direction, but all tiles that can be moved will move each time. The number on each tile is always a power of 2. If two tiles with matching numbers collide while moving, they will form a single tile with a number equal to double the value of the previous tiles. After each move, a new tile will spawn at a random location on the board. This tile usually has a value of 2, but has a 10% chance of spawning with a value of 4 instead. The game ends in a win if the player is able to produce a tile with a value of 2048, and in a loss if the board fills up with blocks and the player can't make any more moves. Each time a match is made, points are added to the total score for the round, and the player's highest score is recorded, even for losses. If a 2048 tile is created, the player can choose to continue playing in order to try to get a higher score.

The web browser version of 2048 is controlled with the keyboard (using the arrow keys, WASD, or Vim keys), but mobile ports are controlled by swiping in the desired move direction.

History
Gabriele Cirulli developed 2048 over the course of one weekend in March 2014 as a clone of the game 1024! by Veewo Studios. Cirulli's version of the game was intended to replicate its inspiration but to feature a different visual style and faster animations. Cirulli published the source code of 2048 on GitHub under the MIT License, explaining that he did not want to keep the game private since he had so heavily based it on someone else's work.

2048 received an unexpectedly large amount of attention after a post was created about it on Hackernews. Millions of games of 2048 were played within a week of its launch, and the game and its creator were featured in news media. The attention that 2048 received led to some controversy, particularly from the developers and fans of the game Threes, which 2048's predecessors had originally been clones of. The developers of Threes wrote an article in response to the popularity of 2048 and other clones, describing the development of their own game and complaining that 2048 in particular was too easy. Cirulli responded to these and other comments in a post on Medium.

Many unofficial variants of 2048 have been made, some of which are free software.

Development
2048 is a web app written primarily in JavaScript. The official git repository is hosted on GitHub and is currently maintained by Anna Harren and sigod. Mobile ports of the game have been released on F-Droid, the iOS App Store and the Google Play Store. The Android port of the game is also available on GitHub.