v / examples / 2048 / README.md
62 lines · 43 sloc · 1.54 KB · fa8c5e369ae7934eb7c467ff1773d8356b439073
Raw

V 2048

This is a simple 2048 game, written in the V programming language.

WebAssembly demo: https://v2048.vercel.app

screenshot

Description

Merge tiles by moving them. After each move, a new random tile is added (2 or 4). The goal of the game is to create a tile with a value of 2048.

Keys

Escape - exit the game Backspace - undo last move n - restart the game t - toggle the UI theme Enter - toggle the tile text format

UP,LEFT,DOWN,RIGHT / W,A,S,D / touchscreen swipes - move the tiles

Running instructions

Compile & run the game with ./v run examples/2048

Compiling to WASM

  1. Install Emscripten from: https://emscripten.org/docs/getting_started/downloads.html
  2. Make sure that the environment in your shell is setup correctly, i.e. that emcc --version works.
    . /opt/emsdk/emsdk_env.sh
    emcc --version
    
  3. Compile the game to WASM: (the JS file contains a loader for the .wasm file, without the extension):
    v -prod -os wasm32_emscripten -o examples/2048/index.js examples/2048/
    
  4. Run/test the game:
    emrun examples/2048/index.html
    
    If you prefer, instead of emrun, you can start a simple V http file server:
    v -e 'import net.http.file; file.serve(folder: "examples/2048")'   
    
    and then open http://127.0.0.1:4001/ in your browser.Once you have opened the game in your browser, you can make changes to the V source, then recompile (step 3), and refresh the browser window with the game, to see their effect.