gamestartr
v0.7.13
Published
A bare-bones, highly modular game engine for 2D 8-bit games.
Downloads
36
Readme
GameStartr
A bare-bones, highly modular game engine for 2D 8-bit games.
GameStartr is an in-progress experimental game engine targeted to 8-bit retro 2D games. It's got some great features built-in, such as:
- :zap: Blazing-fast start times: averaging sub-second on a 3G connection & old laptop including HTML parse and load
- Lazily-instantiated and -loaded components
- Lazily-instantiated actor classes with inline POJO sprite declarations
- ~200KB minified / ~50KB gzipped
- :wrench: Easy scaffolding for extensible mods, level editors, and random map generation
- :open_hands: Full touch UI support with UserWrappr and TouchPassr
:x: :warning: GameStartr isn't production ready or well-supported - you're better off using a more standard game engine. :warning: :x:
Development
After forking the repo from GitHub:
git clone https://github.com/<your-name-here>/GameStartr
cd GameStartr
npm install
npm run setup
npm run verify
npm run setup
creates a few auto-generated setup files locally.npm run verify
builds, lints, and runs tests.
Building
npm run watch
Source files are written under src/
in TypeScript and compile in-place to JavaScript files.
npm run watch
will directly run the TypeScript compiler on source files in watch mode.
Use it in the background while developing to keep the compiled files up-to-date.
Running Tests
npm run test
Test files are alongside source files under src/
and named *.test.ts?
.
Whenever you add, remove, or rename a *.test.ts?
file under src/
, re-run npm run test:setup
to regenerate the list of static test files in test/index.html
.
You can open that file in a browser to debug through the tests.
npm run test
will run that setup and execute tests using Puppeteer.