Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/2004seraph/rogues
My A-level Computing project, an online multiplayer platform fighter game!
https://github.com/2004seraph/rogues
fighting-game game online-multiplayer website
Last synced: about 1 month ago
JSON representation
My A-level Computing project, an online multiplayer platform fighter game!
- Host: GitHub
- URL: https://github.com/2004seraph/rogues
- Owner: 2004seraph
- License: other
- Created: 2021-10-20T10:06:56.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-08-05T15:41:53.000Z (5 months ago)
- Last Synced: 2024-08-05T17:36:02.402Z (5 months ago)
- Topics: fighting-game, game, online-multiplayer, website
- Language: JavaScript
- Homepage: https://rogues.seraph.parts/
- Size: 8 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# **Rogues Online**
My College Computer Science project; a 2D web-based multiplayer platform fighting game.
[Play online now](https://rogues.seraph.parts/) - Also available as a Progressive Web App.
[Serverless GitHub Pages Backup](https://2004seraph.github.io/rogues/) - Has no backend server, so no online functionality. Exists due to `repl.it` pricing changes.
Be warned this app is broken by AdBlockers.
## Operation
To start the webserver which hosts and serves the game, type this into shell within the project root directory - supplying a port number as an environment variable.
```console
~/rogues$ PORT= node index.js
```## TODOs
### Musts
- [x] when you tab out and tab back in the colliders will break
- [x] update position every frame
- [x] update attacks as they are made
- [x] update everything else every 10 frames
- [x] add all login prompts
- [x] show usernames on gameover screen in multiplayer
- [ ] add one more stage
- [x] add speedy character
- [ ] add heavy character
- [ ] add first median character
- [ ] add second median character
- [x] add competitve matchmaking for Elo
- [ ] make interace gradienty
### Coulds
- [ ] lobby text-chat
### Maybes
- [ ] 2^n stepped screen resolution changes
- [ ] finish implementing scalable resolution
- [ ] try vector-midpoint collsion detection
- [ ] minify the game## Known Issues
### Client
- [OPEN ] very rarely the game will not load on start. This is fixed by refreshing the page.
- [OPEN ] characters playing the exact same move will both use the same animation progress, so both will perform the move animation twice as fast.
- [OPEN ] very rarely players wont both load the same map in multiplayer if they both vote on different stages.
- [OPEN ] sometimes some moves are not registered by the server.
- [OPEN ] client side server-player sometimes does attacks for no reason.
- [OPEN ] damage desyncs during online versus matches.
- [FIXED] very rarely the character/stage select screen will fail in multiplayer, choices do not sync and the lobby stops; it is because clients aren't being left properly from rooms.### Server
- 'nuke' command does not log out authenticated sockets, leading to an inconsistent server state.