Play a free sliding tile game on a 4 x 4 grid. Slide, merge equal tiles, build the biggest tile you can and keep going. Keyboard, swipe or buttons, with one-step undo.
Score 0
Best -
Largest 2
Moves 0
Click the board, then use the arrow keys or W, A, S, D to slide every tile as far as it goes. On a touch screen, swipe on the board. Equal tiles that meet merge into one worth double, and the merge adds to your score. U undoes the last move, but after you use undo that game stops updating your best score.
Each row or column is slid as a small list: tiles squeeze together toward the edge you pushed, then neighbours that are equal merge, starting from that edge. A tile made by a merge is skipped in the same pass, so it cannot merge again until the next move. A move that changes nothing is ignored and adds no tile. After a real move, one new tile appears in a random empty cell, a 2 nine times in ten and a 4 otherwise. The game ends when the board is full and no two equal tiles touch. Make a glowing top tile (the ones with an amber rim) and you get a note, then you can keep playing.
As-is, no warranty. These apps are free under their listed license and run entirely in your browser. Use at your own risk — don't blame me if your PC catches fire, your dog runs away, or the math turns out wrong. Verify anything that actually matters. None of this is professional financial, medical, legal, or engineering advice.
The board is a 4 x 4 grid. Each move slides every tile as far as it can in one direction. When two tiles with the same number meet, they merge into one tile worth double, and the new tile’s value is added to your score. After any move that changed the board, one new tile appears in a random empty cell: a 2 about nine times in ten, a 4 otherwise.
Tile colours climb with the value: a pale sky blue for 2, then sky, teal, green, lime, amber, orange, rose and violet as the numbers grow. The number is printed on every tile, so you never need the colour to read the board. The board is a cool violet-tinted tray, and the glowing top tiles get a brief halo (not at all if your device asks for reduced motion).
Click the board to focus it, then use the arrow keys or W, A, S, D. On a phone or tablet, swipe on the board; a drag of 24 pixels or more counts as one move. The four buttons beside the board do the same thing if you prefer to tap. U undoes the last move. New game starts over.
Make one of the glowing top tiles, the ones with an amber rim, and you get a note, then you can keep playing for a higher score. The game ends when the board is full and no two equal tiles touch. Arrow keys only scroll the page when the board is not focused.
A tile made by a merge cannot merge again in the same move. So a row of four 2s becomes two 4s, not one 8, and a row of 2, 2, 4 becomes 4, 4 rather than a single 8. When three equal tiles line up, the pair nearest the edge you are sliding toward merges first and the third waits for the next move. These cases are pinned by name in the test suite.
The engine is a handful of pure functions with no page code in them. Sliding is done one line at a time: the non-empty tiles are squeezed toward the leading edge, then neighbours that are equal merge in a single pass that skips over any tile it has just made. Rows and columns share that one routine, with a small index map that turns “left, right, up, down” into the same operation.
Randomness is passed in as a function. The page hands it a source backed by crypto.getRandomValues, and the tests hand it a seeded generator, so a whole game can be replayed move for move. The tests check, among other things:
Each tile has a stable identity, which is what lets the page animate it. A tile that slides keeps its element and moves by changing its position; a merge slides both tiles into the cell and then replaces them with a new, doubled tile. If your system asks for reduced motion, none of that animates and tiles simply appear in place.
Your score is the sum of the tiles created by merges. Your best score is saved in your browser. Undo is a single step, and once you use it that game stops updating your best score, since it lets you retry a move after seeing the next tile. A score you reached before your first undo in that game is still kept. You can keep playing after an undo; the rest of that game just cannot raise your best.
Nothing is uploaded and there is no account. The best score is a small number kept in your browser’s local storage, inside a small JSON object under one key. Clearing site data removes them. If storage is blocked, the game still works; scores just do not persist.
Everything runs locally in your browser.
For informational purposes only. Not financial, medical, or legal advice. You are solely responsible for how you use these tools.