olly-larkin / SOMAS2020

Main repository for SOMAS2020 Coursework

Home Page:https://somas2020.github.io/SOMAS2020

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SOMAS 2020

Main repository for SOMAS2020 Coursework.

Running code

# Approach 1
go run . # Linux and macOS: Use `sudo go run .` if you encounter any "Permission denied" errors.

# Approach 2
go build # build step
./SOMAS2020 # SOMAS2020.exe if you're on Windows. Use `sudo` on Linux and macOS as Approach 1 if required.

Parameters & Help

go run . --help

Output

After running, the output directory will contain the output of the program.

  • output.json: JSON file containing the game's historic states and configuration.
  • log.txt: logs of the run

Visualisation Website

See website/README.md

WebAssembly Build

Scripts provided to compile the program into WebAssembly for the website.

If you have node

node ./website/scripts/buildWasm.js

Otherwise

On Linux/maxOS,

./build_wasm.sh

On Windows,

build_cmd.cmd

Testing

go test ./...

Structure

Important documents pertaining to codebase organisation, code conventions and project management. Read before writing code.

Internal SOMAS2020 packages. Most development occurs here, including client and server code.

  • clients Individual team code goes into the respective folders in this directory.

  • common Common utilities, or system-wide code such as game specification etc.

  • server Self-explanatory.

More generic packages dealing with general use-cases, such as system-related or file-operation utilities.

Source code for visualisation website.

About

Main repository for SOMAS2020 Coursework

https://somas2020.github.io/SOMAS2020


Languages

Language:Go 90.0%Language:TypeScript 6.9%Language:JavaScript 2.3%Language:CSS 0.5%Language:HTML 0.2%Language:Batchfile 0.0%Language:Shell 0.0%