You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Unknown 83439d537f Some changes for switch to Gitlab and making public 6 years ago
api Lots of stuff 7 years ago
client Some changes for switch to Gitlab and making public 6 years ago
config Lots of stuff 7 years ago
migrations Lots of stuff 7 years ago
public Added popovers to team preview 7 years ago
server Properly direct as https 7 years ago
shared Made pokemon learn all moves regardless of level, apparently people feel really strongly about this 7 years ago
test Lots of stuff 7 years ago
.gitignore Lots of stuff 7 years ago
.nodemonignore Lots of stuff 7 years ago
Capfile Lots of stuff 7 years ago
Gemfile Lots of stuff 7 years ago
Gemfile.lock Lots of stuff 7 years ago
Gruntfile.coffee Lots of stuff 7 years ago
LICENSE Lots of stuff 7 years ago
Makefile Lots of stuff 7 years ago
README.md Some changes for switch to Gitlab and making public 6 years ago
Vagrantfile Lots of stuff 7 years ago
assets.coffee Lots of stuff 7 years ago
aws_config.json Lots of stuff 7 years ago
aws_config.json.example Lots of stuff 7 years ago
bootstrap.sh Lots of stuff 7 years ago
icomoon-selection.json Lots of stuff 7 years ago
index.coffee Lots of stuff 7 years ago
node_modules.tar.gz Resolve #27 7 years ago
nodetime.json Lots of stuff 7 years ago
npm-shrinkwrap.json Lots of stuff 7 years ago
package.json Lots of stuff 7 years ago
start.js Lots of stuff 7 years ago

README.md

Insurgence Battle Simulator

A competitive Pokemon battle simulator playable in the browser. Based on https://github.com/sarenji/pokebattle-sim

Set up

Installation

git clone https://gitlab.com/Deukhoofd/BattleSim.git
cd BattleSim
npm install

Next, you need to install two dependencies: redis and PostgreSQL 9.1.

Redis

On Mac OS X with homebrew, you can do:

brew install redis

On Windows, there is a Redis port that works fairly well: https://github.com/rgl/redis/downloads

PostgreSQL

PostgreSQL has installable versions for every major OS. In particular, for Mac OS X, there is Postgres.app.

When you install PostgreSQL, you should create a database for pokebattle, called pokebattle_sim. You can do this two ways:

# command-line:
$ createdb pokebattle_sim

# or via SQL client:
CREATE DATABASE pokebattle_sim;

Next, you must migrate the database. Simply run:

npm install -g knex
knex migrate:latest

If you get an error complaining that the postgres role doesn't exist, run this: createuser -s -r postgres.

Run server

We use Grunt to handle our development. First, you must npm install -g grunt-cli to get the grunt runner. Then you can type

grunt

to automatically compile all client-side files and run nodemon for you.

We also support Vagrant if you are on a Windows machine and so desire.

Run tests

npm test
# or
npm install -g mocha
mocha

Or if you're in the Vagrant VM, you can just run

mocha

Deployment

First, you must get SSH access to the server. Then, to deploy:

cap staging deploy
# test on staging
cap production deploy

Guide

pokebattle-sim is a one-page app. The server serves the client.

api/             Hosts the code for the API that we host.
client/          Main client code. Contains JS and CSS.
config/          For Capistrano and deployment.
public/          Public-facing dir. Generated files, fonts, images.
server/          Server, battle, move, Pokemon logic, etc.
shared/          Files shared between server and client.
test/            Automated tests for server and client.
views/           All views that are rendered server-side go here.
Gruntfile.coffee Contains all tasks for pokebattle-sim, like compiling.
start.js         The main entry point of pokebattle-sim.

Contributing

All contributions to the simulator logic must come with tests. If a contribution does not come with a test that fails before your contribution and passes after, your contribution will be rejected.

Other contributions (e.g. to the client) are much less strict!

Issues

Report issues in GitHub's issue tracker.