{"id":27277314,"url":"https://github.com/jakmobius/tanks","last_synced_at":"2025-04-11T16:58:23.173Z","repository":{"id":42016665,"uuid":"294810989","full_name":"JakMobius/tanks","owner":"JakMobius","description":"Browser action game project","archived":false,"fork":false,"pushed_at":"2025-03-15T21:53:53.000Z","size":17409,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-15T22:27:46.115Z","etag":null,"topics":["game","multiplayer","typescript","webgl","websocket"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JakMobius.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-11T20:59:08.000Z","updated_at":"2025-03-15T21:53:56.000Z","dependencies_parsed_at":"2025-03-08T22:31:54.664Z","dependency_job_id":null,"html_url":"https://github.com/JakMobius/tanks","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakMobius%2Ftanks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakMobius%2Ftanks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakMobius%2Ftanks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JakMobius%2Ftanks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JakMobius","download_url":"https://codeload.github.com/JakMobius/tanks/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248445865,"owners_count":21104988,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["game","multiplayer","typescript","webgl","websocket"],"created_at":"2025-04-11T16:58:22.484Z","updated_at":"2025-04-11T16:58:23.165Z","avatar_url":"https://github.com/JakMobius.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tanks\nBrowser action game project\n\n#### Please, note that project is under continious development\nThis repository should not be treated as a real finished game for now. The code is constantly being refactored in one place or another, and some features might not work at the moment.\n\n### Features\n\n- WebGL graphics\n- Client-server architecture\n- Map editor\n- Realistic explosions\n\n# Installing the game\n\n1. Clone the repo\n```\ngit clone https://github.com/JakMobius/tanks/\n```\n2. Navigate to project folder\n```\ncd tanks\n```\n3. Install dependencies\n```\nnpm install\n```\n\n# Building \u0026 running the server\n- To build server from sources, type the following command:\n  ```\n  npm run build\n  ```\n- To start server with default settings, simply type\n  ```\n  node dist\n  ```\n### Server command line arguments\n- `-script \u003cscript name\u003e`\n\n  This flag is used for running scripts as soon as server starts. Server scripts are located under `src/server/scripts` directory.\n\n  This flag can also be used with `-s` alias.\n\n- `-preference-string \u003ckey\u003e=\u003cvalue\u003e`\n\n  This flag is used for setting up your server preferences right before server starts. For example, if your database is located at a new address, you should use this flag as following:\n  ```\n  -preference-string database.url=mongodb://new-database-host:27017\n  ```\n\n  This flag can also be used with`-ps` alias.\n\n  You should only use this flag when you want to overwrite a string. If you want to set up a port or something else that is not a string, use one of the flags listed below\n- `-preference-number \u003ckey\u003e=\u003cvalue\u003e`\n\n  Use this flag to overwrite setting with a number\n\n  This flag can also be used with`-pn` alias.\n\n- `-preference-boolean \u003ckey\u003e=\u003cvalue\u003e`\n\n  Use this flag to overwrite setting with a boolean\n\n  Value can either be:\n    - `yes`, `true` or `1` mean `true`\n    - `no`, `false` or `0` mean `false`\n\n  This flag can also be used with`-pb` alias.\n\n### Configuring the server\n- To configure the server port and database credentials, edit the `dist/server/server-preferences.json` file. If this file does not exist, start the server once. The default configuration file will be created.\n\n  **Note: your custom preferences file is listed in .gitignore, so your database password and other confidential data will not be shared**\n- By default, the server only binds the port specified in the configuration. To start the game room and enter the game, you must first start the corresponding server modules using the `service` command. In the future this feature will help to create distributed systems where the hub and the game server can be located on different servers. For now it is enough to enter `service on` command to start the web-server and the game socket. After that you can use the `room create` command to create a game room. Then you will be able to go to `localhost:port/game` and play the game.\n\n  **Note: If you use the `-s autorun` flag when starting the server, or run the `run autorun` command in the server console, the server will automatically start all necessary modules and create several game rooms.**","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakmobius%2Ftanks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjakmobius%2Ftanks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjakmobius%2Ftanks/lists"}