A feature-packed implementation of the classic puzzle game 2048 for muOS and PortMaster, built using the LÖVE framework.
This project is inspired by and references the popular open-source 2048 Android game by tpcstld, which itself is based on the original web game by Gabriele Cirulli. While taking visual and design references from the Android version, this codebase was written from the ground up in Lua for the LÖVE engine. In addition to the classic gameplay, I have introduced numerous new features, including multiple game modes, store, an achievement system, and a wide variety of themes to enhance the overall experience.
- Game Modes: Classic, Plus Mode with Bomb, Swap, and Undo powerups, and 4 Arcade Modes — Time Attack, 5x5 Huge, No Mercy, and Goose.
- Store & Customization: In-game Store with Coins currency, interactive Cat & Dog pet companions, board skins, and unlockable themes.
- Audio & Visuals: Dedicated Jukebox with lo-fi soundtrack, procedural SFX, and retro CRT shader.
- Achievements & Stats: 34 unlockable achievements with custom pixel-art icons, comprehensive stats tracking, and 100-move undo stack.
- Quality of Life: Auto-save & resume after every move, interactive pause menu with active perks HUD, and instant theme switching.
Note: Perhaps a well-known secret sequence of buttons might reveal something special...?
- Download the latest
.muxappfile from the Releases page or build your own following the Building from Source instructions. - Move the downloaded file to the
/mnt/mmc/MUOS/ARCHIVEfolder on your SD card. - Open Archive Manager on your device and select the file to install.
- After installation, you'll find an entry called "2048 Plus" in the Applications section.
- Launch the PortMaster application on your handheld.
- Go to All Ports or Ready to Run and search for
2048 Plus. - Select Install. The game will automatically download and install into your Ports menu.
- Download the game's
.ziprelease package on your PC from PortMaster or build your own following the Building from Source instructions. - Place the downloaded
.zipfile directly into theautoinstallfolder on your SD card for your OS:- muOS:
/mnt/mmc/MUOS/PortMaster/autoinstall/ - ArkOS:
/roms/tools/PortMaster/autoinstall/ - AmberELEC / ROCKNIX:
/roms/ports/PortMaster/autoinstall/ - Knulli:
/userdata/system/.local/share/PortMaster/autoinstall/
- muOS:
- Reinsert the SD card into your device and launch the PortMaster app once.
- PortMaster will automatically detect the
.zipfile and complete the installation.
Splash Animation
Splash animation dynamically changes colors based on the selected theme.
| Button | Action |
|---|---|
| D-Pad / Left Stick | Swipe tiles / Navigate Menus / Seek Track (◄ -10s / ► +10s in Jukebox) |
| A | Confirm / Select Item / Confirm Powerup Target |
| B | Undo Move (Classic & Plus Mode) / Cancel Target / Go Back |
| X | Quit to Menu (Pause / Game Over / Victory) |
| Y | Cycle Unlocked Themes |
| L1 | Activate Swap Powerup (Plus Mode) / Activate Shield (Game Over) / Open Jukebox |
| R1 | Activate Bomb Powerup (Plus Mode) / Activate Shield (Game Over) / Open Store |
| Select | Show Coin Balance During Gameplay |
| Start | Open Pause Menu / Resume Gameplay |
| Menu + Start | Exit the game safely (force quit) |
Note: Your progress is automatically saved after every move. You can safely close the game and pick up exactly where you left off.
To build the packages yourself, make sure you are in a Linux or macOS environment with bash and zip installed.
-
Clone this repository:
git clone https://github.com/saitamasahil/2048plus.git cd 2048plus -
Make the build script executable:
chmod +x build.sh
-
Run the build script:
./build.sh
-
Select your target from the interactive menu (or press Enter to build both):
1(muOS): Generates the muOS package inbuild/2(PortMaster): Generates the PortMaster package (2048plus.zip) inbuild/3(Both / Default): Generates both packages simultaneously
Note: You can also build non-interactively via CLI arguments: ./build.sh muos, ./build.sh portmaster, or ./build.sh both.
- Original Concept By: Gabriele Cirulli
- Android Port Reference: tpcstld - 2048
- Built using the LÖVE Framework
- Adorable Animal Sprites by: Elthen and Pixelcave
- Animated Button Prompts by: greenpixels_
- Icons provided by Flaticon
- Special Thanks: Egggdoggo & d98jay for early feedback, playtesting & incredible support!
- Background Music tracks provided via Chosic by authors: AudioCoffee, Ghostrifter Official, Purrple Cat, Roa, Sakura Girl, and Tokyo Music Walker.
Made with 💙 by saitamasahil