GameMaker (all)

Game 2048 Engine

Jamie Ford

You must be logged in to obtain assets


This is a full game engine. With just 3 lines of code you can be running the entire 2048 game. Support for custom images and styles. New update (22-Mar-2019). In this updated I completely re-coded the game engine. Taking advantage of ds_maps for data storage. Shouldn’t be too hard to update if you are using the old version.

Play the HTML5 demo here:


  • Unlimited grid size
  • Any number of games can run at the same time
  • In built swipe controls, so you can use the mouse or touch screen!
  • Works on ALL platforms (Windows, Android, HTML5, ect..)
  • Fully animated
  • Well commented code, so you can learn and change it to suit your game
  • Can draw upside down and scale to any size on the fly.
  • You can use whatever images you want as the background and the tiles
  • Animations are only visual, the underlining math is instant, so you can input controls into the game at any speed and it will keep up, it just skips the animation.
  • Portable, plug this engine into any game you like and use it as a mini game
  • Save and load the game to a json file
  • Undo moves as many times as you like
  • Each games data is stored in a single ds_map for easy modular control

A Demo object is provided, just put it in a room and press play. Example Code:

Create Event:

player1_map = setup_2048(4,4,true,grid_background_2048_sprite,grid_tile_2048_sprite,115,0,1,10);

Step Event:


Draw Event:


If you like this code, then check out my Onet game engine. It also runs on just 3 lines of code.

End User Licence Agreement (EULA).

Age Rating: 4+


GMS1 - Version 1.1.0. Published April 22, 2015

Added saving and Loading! Added a delete_2048 script to free the memory used by the engine. Added the ability to undo as many times as you want (new argument setup_2048 script) saving and loading supports the undo's .

GMS2 - Version 2.0.5. Published March 22, 2019

  • Fixed bug, score being kept when undoing, allowing for undo exploit.
Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait