boxtype, out now!

@boxtype.app

2d platform puzzle game by @inconvergent.net. live now at: https://boxtype.app (keyboard required)

v 3.12.0: display welcome message with short "tutorial" on first visit. minor improvements to levels and level order. fix duplicate character box in "box types" level

i didn't know any clojurescript when i started writing @boxtype.app (in january). the only issue i had from time to time was that i didn't know what the function i wanted was called, so i couldn't find it in the docs

here hare three screenshots with most recent versions of levels an ui. one shows the level editor mode, which can be instantly toggled on/off. working on some more levels before release

a level called ellipsis. with blocks to spell the title. there are three diagonal large squares with three of the letters on thema view from the level editor. the level editor switches board to black and white, and shows a diamond in the corner of each block for interaction (scaling). a level with the title gravity. parts of the world have background textures (checkers, diagonal lines) and they appear lighter than the rest of the board (background). the alter gravity

i compress and encode worlds in @boxtype.app in the url. i use [somthing like] this arbitrary metric to indicate the efficiency of the encoding: (/ (size (lz+b64-encode (str-encode boxes))) (size boxes)) eg. this world with 85 boxes has an "efficiency" of 6.976. now you can't unknow this.

a fairly complex 2d world with letters to spell CREVICE. debug output in terminal . the enoded world and some other details are displayed. the number 6.976... is highlighted

here is a table view for editing world names and seeing statistics from @boxtype.app that i am starting to like a little. the symbols are; box: number of boxes; hour-glass: win time; diamond: win steps; exclamation: wins; empty set: losses; plus: restarts

table view in web browser. header logo reads boxtype. the table contains a list of worlds with names and some metadata for each. bright magenta and cyan are used to highlight some columns

i made keybindings and colour config for @boxtype.app work with local storage. now i need to find a way to give names to levels locally. currently they are only encoded/compressed as b64 in a url parameter

config for keybindings and colors in a web page with a menu from boxtype game. on the right is a level from the game with some of the colours visible. the level consists of mostly white boxes but three are yellow, cyan, purple respectively

here are some screenshots from the game. i just finished setting up the key mapping system today. the config is in one of the screenshots. now i need to figure out how to record some gameplay. among many other things ...

boxtype logo in upper left. a target phrase. a game world consisting of boxes of various sizes. some boxes have letters and symbols in them. world is centred on the player. a small box with a symbol insideboxtype logo in upper left. a target phrase. a game world consisting of boxes of various sizes. some boxes have letters and symbols in them. world is centred on the player. a small box with a symbol insidea config screen with mappings for movement keys. along with some statistics and details about the current device (session id etc)