stared / quantum-game

Quantum Game (old version) - a puzzle game with real quantum mechanics in a browser
http://v2016.quantumgame.io/
MIT License
343 stars 43 forks source link
game javascript physics puzzle quantum-game quantum-mechanics

Quantum Game with Photons (2014-2016)

A note: this repository is an old Quanutm Game (2014-2016), no longer maintained. The new one (2019-) is at quantumgame.io.

Quantum Game - play with photons, superposition and entanglement. In your browser! With true quantum mechanics underneath!

Screenshot

Development version

It's JavaScript, ES6. To build it you need Node.JS and jspm.io package manager.

It's open for collaboration - from level creation, through interface (re)design and adding additional effects (two-photon interference, interactions with an electron). Interested? Mail pmigdal@gmail.com.

Installing

After installing Node.js and jspm.io, and cloning this repository:

Then install local packages.

npm install
jspm install

Additionally, for development we use eslint with eslint-plugin-lodash.

A note: jspm is seriously outdated and the build may not work.

Running server

Start local HTTP server in the quantum game directory (e.g. by http-server). Does not need an install, as there are pre-built files.

Running tests

./node_modules/.bin/karma start

Production version

Bundle it (and minify, if you want):

jspm bundle-sfx --minify app

It creates a build.js file. To run it we need a modified index.html (it is a manually-modified file, stored in bundled/index.html).

On the server, the structure of files should look as follows:

css\
favicon.ico
build.js
index.html

Docker

Alternatively, you can install dependencies using Docker.

Building

Running

and then open up a web browser and point it to port 80 on your Docker host.