0.0.1 • Published 3 years ago

gokart.js v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

GoKart.js

NOTE: this is very much in alpha stage, more exploring the pure ECS pattern and current web toolkits. Suitable for a jam game at most!

GoKart.js is a web game starter kit based on ECSY.io, Three.js, and Ammo.js, with React examples. This starter provides a game canvas with basic Three.js rendering system, ECSY component structure, and 2D/3D physics support, controls handling, as well as a React component layer to build on, and a HUD data communication layer. Mostly targeted at "action" games, currently focused on single player.

Try Out the Demo

Core Features

  • 3D with physics pre-connected (just customize the entity components classes)
  • Mobile touch based gamepads for on-screen controls
  • Control system to handle and map controls to "actions" (ala Godot)
  • HUD bindings to show realtime game info in React-driven HUD
  • TBD - JEST test setup for unit tests on ECS component/systems
  • Webpack example
  • Docker-Compose file for build env

Using This

You can either look in the examples folder for the demo projects, or Look at the template project.

The template project will show gokart being pulled in as a library, and is currently setup with esbuild rather than webpack.

Origin

This started as a web game experiment procgen-bhell, playable at bullethell.nikolaj.dev, where I put these pieces together. Further advanced in our LD48 game, playable at ld48.nikolaj.dev.

Key Libraries

All possible only due to much awesome work:

Bundled character model by nikolaj with animations from Mixamo.