This is a very early attempt at a Mobile Microgame Maker (MMM) for Minicade.
Minicade is built to make it easy for anyone of any skill level to build a minigame using the tool of their choice, but there aren’t any good tools suitable for building very simple HTML5 minigames on mobile devices, which is where we think a lot of our users are.
Minigame development is potentially well-suited for mobile and touch devices, as the minigame’s conceptual simplicity might complement the device’s relatively low screen real-estate and lack of physical keyboard. The existence and success of WarioWare DIY is suggestive of this.
Create a mobile-first, offline-ready HTML5 minigame maker that allows non-technical users to create a variety of simple minigames.
Minimum Viable Product (MVP) Requirements
Rough versions of the following types of games should be able to be created using MMM:
Minigames should be playable on mobile devices and desktop/laptop. This means that we can only assume that the player’s device represents a pointer capable of taps/clicks and drags. To be clear, this means no multi-touch gestures, no keyboard, no mouse hovering, and certainly no accelerometer/GPS/camera/etc.
Authors must be able to write very short text instructions for their game (which players should be able to read and comprehend during the tiny amount of time they have to play the game).
Authors must be able to select pre-made graphics for their games and position them on-screen. Each object should have a human-readable unique identifier, such as
Authors must be able to create win/lose screens consisting, at minimum, of text.
git clone https://github.com/toolness/mobile-microgame-maker.git cd mobile-microgame-maker npm install node bin/server.js
Then visit http://localhost:3000/ in your browser.
QUnit tests are located in the
test directory. Just visit
http://localhost:3000/test/ in your browser to run the test suite.
The default development "build" doesn't have support for offline
use and takes time to load every required requirejs module
from the server. For faster builds that support offline use, you'll
need to first run
npm install and then run
node bin/build-optimized.js. All files required for the optimized
build will be placed in the
build directory, which you can deploy
to any static web server or Amazon S3.
During development, microgame assets, such as spritesheets, sounds,
and so on, are expected to be stored in a Google Spreadsheet, which
allows content creators to add/change their assets without blocking on
a developer. The spreadsheet can be loaded by adding
?spreadsheet=<key> to the end of the MMM url, where
<key> is the
key for the spreadsheet. Alternatively,
?spreadsheet=on can be
supplied, in which case the default assets spreadsheet will
Assets added to the spreadsheet must be uploaded to a server that
supports CORS. Images must be placed in a
img directory, and
sounds must be placed in a
Note that any errors that occur while loading the sheet will be logged to the browser's developer console.
When ready to deploy the assets to production as part of an
optimized build, you'll want to run
node bin/fetch-assets.js [key].
[key] is not specified, then the default assets spreadsheet
will be used.
This script will regenerate
assets.json based on the contents of
the spreadsheet, and will copy all assets into the
directory. After that, you can run
node bin/build-optimized.js to
generate the optimized build, which will include an appcache
manifest instructing browsers to cache all assets for offline use.