Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

zerk

kristophjunge18MIT0.3.2

JavaScript Game Engine

readme

Zerk Game Engine

Zerk is a JavaScript game engine developed by Kristoph Junge and others.

Zerk is based on an Entity-Component-System architecture.

Zerk aims to be able to run various types of 2D games on desktop and mobile devices.

More information can be found here kristophjunge.com.

Other Software that Zerk is using:

Box2DWeb a JavaScript port of the Box2D physics library written by Erin Catto and others. Used as the main physcis engine.

JSON5 by Aseem Kishore and others. Used to to parse JSON files with comments.

Poly-Decomp a library for decomposition of polygons into convex regions writte by Stefan Hedman. Used to decompose complex polygons inside the entity editor.

Node.js by Joyent, Inc. and other Node contributors. Used to serve the zerk tool chain like the development server.

Installation

Zerk can be installed via npm.

$ npm install -g zerk

Using Zerk

Zerk is currently at an early development stage, use it at your own risk.

Navigate into an empty game directory and run:

$ zerk init
$ zerk dev

License

Zerk is licensed under the MIT License.

Documentation

The Zerk API documentation is available at http://dev.kristophjunge.com/zerk/doc/latest

changelog

0.1.0

  • Application base structure
  • Class system with classical inheritance
  • Experimental autoloader
  • Entity system
  • World definition
  • Basic canvas rendering, currently without sprites
  • Box2DWeb physics implementation
  • Keyboard and mouse input processing
  • DOM abstraction layer
  • Configuration system
  • Debug message system
  • Jump and run game demo

0.2.0

  • Entity-Component-System architecture
  • Data driven entities and worlds (JSON)
  • Entity ids and tags
  • Rendering backend abstraction (first step to use WebGL)
  • Physics engine abstraction (Another physics engine than Box2D can be used)
  • Wireframe renderer system (Seperate wireframe renderer system)
  • Advanced error handling
  • Advanced log system
  • Game configuration file (JSON)
  • Refactored helper and cross browser functions
  • JSON resource loader
  • Sandbox and procedural generation demo

0.3.0

  • Sprite and texture rendering
  • TexturePacker Spritesheet support (JSON)
  • Dynamic asset loading
  • Available as npm package
  • Node Development Server
  • Server side dependency tree generation
  • Project level configuration file zerk.json
  • Integration of poly-decomp.js for polygon decomposition
  • Various debug and example graphics
  • Crates example
  • Balls example
  • Stones example
  • Shape example
  • Render test example
  • Incomplete snakebot example
  • Incomplete monstertruck example
  • Incomplete entity editor

0.3.1

  • Two new example textures
  • Minor bugfix in some example game classes
  • Removed some unused files

0.3.2

  • Added zerk init command
  • Entity Editor: Fixed polygon creation
  • Entity Editor: Reeditable polygons