Git Product home page Git Product logo

codegarden's Introduction

Codegarden

A game about gnomes, programming and gardening

NOTE: Codegarden is still in its early stages of development! Expect glorious MS paint placeholder graphics intermixed with the actual good graphics, discrepancies between the design document and reality, and a general inability to mute the Wilhelm Scream sound effect that is played whenever your gnome falls off the edge of the level.

You can try out a snapshot of its current state here.

Developer instructions

In order to develop, you'll first need to have git and npm available as command-line utilities.

  • On Windows, you can get npm by installing NodeJS.
  • On Debian Linux you'll also need to install the nodejs-legacy package (see this stackoverflow question for the reason).

Building from Source

Open a command line interface in the directory that contains this README file, and use the following command to install Codegarden's other dependencies locally:

  • npm install

You can build and run Codegarden with either of the following:

  • npm start
  • npm run dev

Changes to the sourcecode will automatically cause the browser to refresh, and there is a level editor available under /levelEditor. The 'run dev' command also automatically runs and watches the automated tests, while 'start' just runs Codegarden.

To run the automated tests separately, you can use one the following scripts:

  • npm test
  • npm run test-watch

The first command runs the test once and then completes, the second will watch for changes and repeatedly re-run the tests.

Deploying a new version to Github Pages

First, confirm that Codegarden is working properly. Then use the following script:

  • npm run website

After this command completes, push the changed files in the 'docs' directory to Github.

Trees

Until you dig a hole, you plant a tree, you water it and make it survive, you haven't done a thing. You are just talking.

-- Wangari Maathai

codegarden's People

Contributors

bogdanbikics avatar jorisslob avatar marcotonino avatar siriah avatar vagrantblackbird avatar wroel avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

codegarden's Issues

npm install fails

When I run npm install I get the following error:

npm WARN deprecated [email protected]: Please use gulp-clean-css
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated [email protected]: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated [email protected]: cross-spawn no longer requires a build toolchain, use it instead!
npm WARN prefer global [email protected] should be installed with -g

> [email protected] install /home/jorisslob/Repositories/codegarden/node_modules/node-sass
> node scripts/install.js

sh: 1: node: not found
[email protected] /home/jorisslob/Repositories/codegarden
├── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├─┬ [email protected] 
│ │   │ │ └── [email protected] 
│ │   │ ├── [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ └── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├─┬ [email protected] 
│ │ │ │   │ └── [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   ├── [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   ├── [email protected] 
│ │ │   ├── [email protected] 
│ │ │   └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └─┬ [email protected] 
│   │ │   └─┬ [email protected] 
│   │ │     └── [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ └── [email protected] 
│ │   ├── [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └── [email protected] 
│   │ ├── [email protected] 
│   │ ├── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └─┬ [email protected] 
│   │ │   └── [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └─┬ [email protected] 
│   │     ├─┬ [email protected] 
│   │     │ ├── [email protected] 
│   │     │ └── [email protected] 
│   │     ├── [email protected] 
│   │     └── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ └── [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   └─┬ [email protected] 
│     └─┬ [email protected] 
│       └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ ├── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ ├─┬ [email protected] 
│ │ │ │ │ ├── [email protected] 
│ │ │ │ │ └─┬ [email protected] 
│ │ │ │ │   └── [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └── [email protected] 
│ │ │ └─┬ [email protected] 
│ │ │   └── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├─┬ [email protected] 
│ │ │ │ └─┬ [email protected] 
│ │ │ │   └── [email protected] 
│ │ │ └── [email protected] 
│ │ └── [email protected] 
│ └─┬ [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   ├── [email protected] 
│   └─┬ [email protected] 
│     └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   └── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ └─┬ [email protected] 
│   │   └── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ └── [email protected] 
│   └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └─┬ [email protected] 
│   │ │   └── [email protected] 
│   │ ├─┬ [email protected] 
│   │ │ └── [email protected] 
│   │ └─┬ [email protected] 
│   │   └─┬ [email protected] 
│   │     └── [email protected] 
│   ├─┬ [email protected] 
│   │ ├── [email protected] 
│   │ └── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   ├── [email protected] 
│   ├─┬ [email protected] 
│   │ └── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   ├── [email protected] 
│   └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├─┬ [email protected] 
│ │   │ │ ├─┬ [email protected] 
│ │   │ │ │ └── [email protected] 
│ │   │ │ └── [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   └── [email protected] 
│ └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ └─┬ [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ └── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └── [email protected] 
│ │   ├── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├── [email protected] 
│ │   │ ├─┬ [email protected] 
│ │   │ │ └── [email protected] 
│ │   │ ├── [email protected] 
│ │   │ └─┬ [email protected] 
│ │   │   ├─┬ [email protected] 
│ │   │   │ └── [email protected] 
│ │   │   └─┬ [email protected] 
│ │   │     └── [email protected] 
│ │   ├─┬ [email protected] 
│ │   │ ├─┬ [email protected] 
│ │   │ │ └─┬ [email protected] 
│ │   │ │   └── [email protected] 
│ │   │ └── [email protected] 
│ │   └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├── [email protected] 
│ │ ├─┬ [email protected] 
│ │ │ ├── [email protected] 
│ │ │ ├── [email protected] 
│ │ │ └── [email protected] 
│ │ ├── [email protected] 
│ │ └── [email protected] 
│ ├─┬ [email protected] 
│ │ └─┬ [email protected] 
│ │   └─┬ [email protected] 
│ │     └── [email protected] 
│ ├── [email protected] 
│ ├── [email protected] 
│ └─┬ [email protected] 
│   ├── [email protected] 
│   └── [email protected] 
├─┬ [email protected] 
│ ├── [email protected] 
│ ├─┬ [email protected] 
│ │ └── [email protected] 
│ ├── [email protected] 
│ └── [email protected] 
└── [email protected] 

npm WARN optional Skipping failed optional dependency /chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: [email protected]
npm WARN [email protected] No repository field.
npm ERR! Linux 4.4.0-22-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! node v4.2.6
npm ERR! npm  v3.5.2
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn

npm ERR! [email protected] install: `node scripts/install.js`
npm ERR! spawn ENOENT
npm ERR! 
npm ERR! Failed at the [email protected] install script 'node scripts/install.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-sass package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node scripts/install.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs node-sass
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls node-sass
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/jorisslob/Repositories/codegarden/npm-debug.log

And in the npm-debug.log the following information:

8262 warn optional Skipping failed optional dependency /chokidar/fsevents:
8263 warn notsup Not compatible with your operating system or architecture: [email protected]
8264 warn [email protected] No repository field.
8265 verbose stack Error: [email protected] install: `node scripts/install.js`
8265 verbose stack spawn ENOENT
8265 verbose stack     at ChildProcess.<anonymous> (/usr/share/npm/lib/utils/spawn.js:17:16)
8265 verbose stack     at emitTwo (events.js:87:13)
8265 verbose stack     at ChildProcess.emit (events.js:172:7)
8265 verbose stack     at maybeClose (internal/child_process.js:821:16)
8265 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
8266 verbose pkgid [email protected]
8267 verbose cwd /home/jorisslob/Repositories/codegarden
8268 error Linux 4.4.0-22-generic
8269 error argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
8270 error node v4.2.6
8271 error npm  v3.5.2
8272 error file sh
8273 error code ELIFECYCLE
8274 error errno ENOENT
8275 error syscall spawn
8276 error [email protected] install: `node scripts/install.js`
8276 error spawn ENOENT
8277 error Failed at the [email protected] install script 'node scripts/install.js'.
8277 error Make sure you have the latest version of node.js and npm installed.
8277 error If you do, this is most likely a problem with the node-sass package,
8277 error not with npm itself.
8277 error Tell the author that this fails on your system:
8277 error     node scripts/install.js
8277 error You can get information on how to open an issue for this project with:
8277 error     npm bugs node-sass
8277 error Or if that isn't available, you can get their info via:
8277 error     npm owner ls node-sass
8277 error There is likely additional logging output above.
8278 verbose exit [ 1, true ]

This is on Ubuntu 16.04
Package: nodejs
Version: 4.2.6~dfsg-1ubuntu4

Package: npm
Version: 3.5.2-0ubuntu4

Implement Swamp WaterType

Swampwater is like normal water, but it looks a bit more swampy. Instead of drowning, you slowly sink to the bottom like quicksand

  • Swampwater can be harvested to use on trees
  • Swampwater can be traversed while high
  • Swampwater has a different death animation from normal water.

Improve code editor

Make it obvious that drag & dropping and click-to-remove both work (some players only noticed that one of these was possible), implement drag-to-remove

Replace the drag & drop library with Dragula and see if that allows for better drag & drop behavior

Show 'drag' cursor to make it more obvious that commands can be dragged

Implement Swamp Groundtype

The swamp is a groundtype that slows down creatures walking into it, but otherwise acts as ground.

  • Gnomes require two turns instead of one to walk through swamp. This does not mean two actions are required, but rather that one action takes two turns.

Example:
Say you have tiles 1,2,3,4, with a Gnome starting on space 1 and wanting to go to space 4
In Case A, there is no swamp
In Case B, tile 2 is a swamp tile
In Case C, tile 2 and 3 are a swamp tile

For case A, the movement will be:
Forward (tile 2) - Forward (tile 3) - Forward (tile 4)
For a total of 3 turns until the 3 actions are done

For case B, the movement will be
Forward (tile 2; moving into swamp) - Nothing (tile 2; getting out of swamp) - Forward (tile 3) - Forward (tile 4)
For a total of 4 turns until the 3 actions are done

For case C, the movement will be
Forward (tile 2; moving into swamp) - Nothing (tile 2; getting out of swamp) - Forward (tile 3; more swamp) - Nothing (tile 3; getting out of swamp) - Forward (tile 4)
For a total of 5 turns until the 3 actions are done

This changes timing of Gnomes to make puzzles a bit more complicated.

  • Gnomes that are floating will negate the effects of swamp as long as they are floating
  • Traversing a crocodile over a swamp negates the effects of the swamp

Add cactuses

Cactus behavior: if a gnome walks into the cactus, it dies

Add cactuses to some of the existing levels for flavor

Missing requirements for running the tests

I think the package.json is missing a dependency on tslint.
Or the README needs updating that gulp test requires the installation of tslint.

~/Repos/codegarden$ gulp test
module.js:328
    throw err;
    ^

Error: Cannot find module 'tslint'
    at Function.Module._resolveFilename (module.js:326:15)
    at Function.Module._load (module.js:277:25)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/home/arabis5/Repos/codegarden/node_modules/gulp-tslint/index.js:5:14)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)

and after running a

npm install tslint

I get the following errors:

~/Repos/codegarden$ gulp test
[20:41:56] Using gulpfile ~/Repos/codegarden/gulpfile.js
[20:41:56] Starting 'test'...
[20:41:56] Starting 'clean'...
[20:41:56] Finished 'clean' after 93 ms
[20:41:56] Starting 'copy'...
[20:41:56] Finished 'copy' after 177 ms
[20:41:56] Starting 'assets'...
[20:41:56] Finished 'assets' after 57 ms
[20:41:56] Starting 'scripts'...
[20:41:58] Finished 'scripts' after 2.03 s
[20:41:58] Starting 'ts-test'...
[20:42:00] Finished 'ts-test' after 2.21 s
[20:42:00] Starting 'jasmine-karma'...
[20:42:00] Finished 'jasmine-karma' after 3.74 ms
[20:42:00] Finished 'test' after 4.58 s
22 10 2016 20:42:00.973:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
22 10 2016 20:42:01.001:INFO [launcher]: Starting browser PhantomJS
22 10 2016 20:42:01.007:ERROR [launcher]: No binary for PhantomJS browser on your platform.
  Please, set "PHANTOMJS_BIN" env variable.
22 10 2016 20:42:01.008:ERROR [launcher]: [TypeError: Cannot read property 'stderr' of undefined]
TypeError: Cannot read property 'stderr' of undefined
    at Object._start (/home/arabis5/Repos/codegarden/node_modules/karma-phantomjs-launcher/index.js:79:18)
    at Object.<anonymous> (/home/arabis5/Repos/codegarden/node_modules/karma/lib/launchers/process.js:14:10)
    at emitOne (events.js:82:20)
    at Object.emit (events.js:169:7)
    at Object.start (/home/arabis5/Repos/codegarden/node_modules/karma/lib/launchers/base.js:42:10)
    at /home/arabis5/Repos/codegarden/node_modules/karma/lib/launcher.js:94:17
    at next (/home/arabis5/Repos/codegarden/node_modules/batch/index.js:118:7)
    at Batch.end (/home/arabis5/Repos/codegarden/node_modules/batch/index.js:154:5)
    at launch (/home/arabis5/Repos/codegarden/node_modules/karma/lib/launcher.js:111:11)
    at invoke (/home/arabis5/Repos/codegarden/node_modules/di/lib/injector.js:75:15)
    at Server.<anonymous> (/home/arabis5/Repos/codegarden/node_modules/karma/lib/server.js:171:24)
    at Server.g (events.js:260:16)
    at emitNone (events.js:67:13)
    at Server.emit (events.js:166:7)
    at emitListeningNT (net.js:1263:10)
    at nextTickCallbackWith1Arg (node.js:430:9)

events.js:141
      throw er; // Unhandled 'error' event
      ^
Error: Failed Unit Tests!

So there are multiple requirements missing in the documentation or installer.

Implement Frogs

Frogs are creatures that can move. They block Gnomes trying to walk through them.

  • Actions on a frog chase it away in the opposite direction of where the action came from - if the action comes from the left, the frog moves to the right. This is not dependent on the direction the frog is facing

  • A frog will change the direction it is facing after an action is execute on it

  • Pouring water over a frog has no effect

  • Floating Gnomes can not float over a frog (possibly clarified via an animation, such as licking)

  • Frogs can move into any passable object and into water

  • If a frog is forced to move into an impassable object (such as a rock, tree or gnome), it will not move but it will change the direction it is facing

  • If a frog is forced to move into the mouth of a SpookTree, it gets eaten instead. This will keep the SpookTree occupied as before.

  • Frogs reset after a loop, even if they were eaten

  • The order of movement is as follows; gnome acting on frog => frog => next gnome. In other words, the movement from the frog resulting from the action of the gnome is part of that same gnome's movement.
    This is to prevent cases of gnomes and frogs entering the same space at the same time.

Implement SpookTrees

SpookTrees are trees that eat Gnomes. They are a means of blocking Gnomes.

  • If a Gnome steps in front of a SpookTree, it gets eaten, unless the SpookTree is already eating a Gnome

  • Eating a Gnome takes 3 turns

  • The only way to pass a SpookTree is by feeding it a Gnome

  • Actions on a SpookTree have no effect

  • Giving water to a SpookTree has no effect

  • Gnomes that are high are also eaten

Stacking commands can overflow the screen height

When inputting commands into your program in the box below, you can keep on adding commands until they overflow the screen height. This means that I cannot see the entire program. Maybe there should be a maximum to the length of the program box, and/or it the blocks in it should resize to allow more commands.

My screen size was 1280x800. If there are requirements on the screen size, this should also be documented.

Create better 'play' controls

Right now you can only let the gnomes go through their program at a single (rather fast) speed. To make it easier to see what is going on, let's add some features:

  • The ability to have gnomes take one step at a time
  • Play with two speeds: slow and fast

Make the game playable on mobile devices

Playing Codegarden in a mobile browser doesn't work properly yet. I had the following issues on my Android smartphone:

  • The game is too large to fit in the Chrome window and can't be zoomed
  • Drag/drop activates too quickly when trying to press a button
  • Tooltips aren't as nice (they appear after tapping a button, which is not the ideal time to present such information)
  • Double-tap can activate by accident when pressing a button twice in a row. The unwanted zoom can then not be cancelled except by double-tapping an HTML part of the GUI, because the Phaser canvas has its touch events turned off.

Allow players to see a gnome's codestack

Multiple people requested being able to see in the code editor which command is currently being executed. A good solution should work nicely with libraries as well, however, so let's add some way of seeing a gnome's full code stack during code execution instead.

Cannot run gulp commands

When I follow the README.md to get codegarden to work I get the following error:

/home/jslob/Repos/codegarden/gulpfile.js:37
gulp.task('browserSync', () => {
                          ^
SyntaxError: Unexpected token )
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Liftoff.handleArguments (/usr/local/lib/node_modules/gulp/bin/gulp.js:116:3)
    at Liftoff.<anonymous> (/usr/local/lib/node_modules/gulp/node_modules/liftoff/index.js:198:16)
    at module.exports (/usr/local/lib/node_modules/gulp/node_modules/liftoff/node_modules/flagged-respawn/index.js:17:3)
    at Liftoff.<anonymous> (/usr/local/lib/node_modules/gulp/node_modules/liftoff/index.js:190:9)

Gulp version:

jslob@joris-asus-x73s ~/Repos/codegarden[master*]$ gulp -v
[21:56:28] CLI version 3.9.1
[21:56:28] Local version 3.9.1

Implement crocodiles

Crocodiles are creatures with a fixed orientation. They form a one way bridge over water.

  • If a Gnome steps on a crocodile from the back or the side, it can walk over it

  • If a Gnome tries to step on a crocodile from the front, it gets eaten

  • Actions on a crocodile have no effect

  • Pouring water on a crocodile has no effect

  • If a Gnome is high, it will not get eaten, even when stepping on a crocodile from the front

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.