Members: Sinan Unan, Dogacan Colak, Erce Ozmetin
- to run it locally
- install npm
- run
npm starton the terminal to start the backend - connect to
localhost:2567/clientto add a client
- or connect to
https://erceozmet.github.io/TankRoyale/to join online
srcrooms: contains the backend codeMyRoom.ts: Contains all room specific functionsschema: directory containing all schemas which are syncable blocks for ColyseusGameMap.ts: class for the game map. contains all synced and unsynced game informationGameObject.ts: an abstract class for a GameObjectTank.ts: extensive class for the tank/player game objectObstacle.ts: class for the obstacle game objectProjectile.ts: class for the projectile game objectWeapon.ts: class and subclasses (smg, pistol, etc.) for the weapon game object
static: contains the frontend codeclient.js: the main program for the frontend. creates the frontend and processes server messagesClientState.ts: An example client state containing all game information and game objects. Two instances used as the map and the minimap.index.html: html of the frontend
images: contains the images of the gamearena.config.ts: contains the configurations for the Colyseus server
lib: contains the compiled typescriptnode_modulescontain the necessary modules for node.jsindex.ts: main entry point, register an empty room handler and attach@colyseus/monitorloadtest/example.ts: scriptable client for the loadtest tool (seenpm run loadtest)test: contains some tests