geckos.io
Our great sponsors
geckos.io | among-us-tutorial | |
---|---|---|
5 | 2 | |
1,289 | 9 | |
2.1% | - | |
7.0 | 3.3 | |
5 months ago | 9 months ago | |
TypeScript | TypeScript | |
BSD 3-clause "New" or "Revised" License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
geckos.io
-
How to properly scale an IO game?
First, I would try exchange Socket.io over Geckos - https://github.com/geckosio/geckos.io.
- I need a new framework for my game.
-
Show HN: Hathora – Multiplayer Game Development Made Easy
I agree the scope is massive. I think a lot of people struggle with figuring out how to even get started with multiplayer dev, and I hope Hathora can be a useful tool for them.
Thanks for linking matchbox - I've been looking into https://github.com/geckosio/geckos.io as a way to integrate WebRTC into Hathora
- I spent the past year building a multiplayer web game in Typescript/Node
-
Show HN: PSX Party – Online Multiplayer Playstation 1 Emulator Using WebRTC
https://github.com/pion/datachannel looks great! Thank you for sharing your project with the open source community.
I just starred it, it does seem like it'd alleviate a some of the pain. Another similar (more end to end) project I had come across is: geckos.io. This previous HN thread[1] discusses some of the (at least perceived) difficulty with using WebRTC as a "WebSockets but UDP" solution.
I'm not sure I follow the concern about congestion control. UDP doesn't have it either, presumably since if you're building an application that requires such latency sensitivity, you don't mind rolling your own congestion control algorithm that makes most sense given your application's specific needs, right? Pretty much all FPS games do this, as far as I understand.
[0] https://github.com/geckosio/geckos.io
among-us-tutorial
-
Hathora – Make Web Based Multiplayer Games w/ NodeJS
Among Us Demo (180 LOC)
-
Show HN: Hathora – Multiplayer Game Development Made Easy
Hi HN, this is Harsh, I am the developer behind Hathora. I tried making a simple multiplayer game a few years ago and, as someone with software engineering experience but no gamedev experience, I found it to be very challenging. On top of the challenges of building a single player game, you now have to constantly battle the network and latency, find ways to prevent cheating, and figure out how to make a scalable backend architecture. With Hathora my goal was to encode best practices for online multiplayer game development into a framework so developers can simply focus on implementing their game logic.
Some technical pieces of Hathora I wanted to highlight:
- Hathora includes a system I think of as “gRPC for games”. You define your API in Hathora’s declarative format and the framework spits out typesafe data models, clients, and server endpoint stubs across multiple programming languages (although currently only Typescript is implemented). Minimal packet sizes are achieved through a binary serialization format which includes a delta encoding feature, allowing the framework to efficiently synchronize state by sending data diffs.
- Hathora includes a Swagger-like Prototype UI generated from the API definition. This allows you to view the game state and call server methods all in realtime, letting you interact with your backend logic without writing a single line of frontend code. Once you are happy with the backend logic, you can create a fully custom frontend using any framework/technology you’d like and just use the Hathora client to communicate with the backend.
- By handling generic game functionality (state synchronization, messaging, persistence, etc) for you, Hathora lets you create multiplayer games with very few lines of code. For example, see chess which is implemented in under 200 lines of user code: https://github.com/hathora/hathora/tree/develop/examples/che.... I also made (a massively simplified version of) Among Us in under 200 lines of code: https://github.com/hathora/among-us-tutorial
I am looking for developers interested in making online multiplayer games to try out Hathora and give me feedback. Additionally, if the roadmap seems interesting to you I would gladly welcome contributions: https://docs.hathora.dev/#/roadmap. I’ll be around to answer questions, let me know what you think!
What are some alternatives?
React-Discord-Clone - Discord Clone using React, Node, Express, Socket-IO and Mysql
nakama - Distributed server for social and realtime games and apps.
ggpo - Good Game, Peace Out Rollback Network SDK
builder - Multiplayer game framework
webtransport - WebTransport is a web API for flexible data transport
quilkin - Quilkin is a non-transparent UDP proxy specifically designed for use with large scale multiplayer dedicated game server deployments, to ensure security, access control, telemetry data, metrics and more.
SkyOffice - Immersive virtual office built with Phaser, React, Redux, PeerJS, and Colyseus.
gridia
datagram - In-progress version of draft-ietf-quic-datagram
open-saves - Open Saves is a cloud native data store for game development.
joystick-mapper - A Rust library to map joystick input to keyboard, mouse and custom actions
matchbox - Painless peer-to-peer WebRTC networking for rust wasm (and native!)