Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lance-gg/lance
Multiplayer game server based on Node.JS
https://github.com/lance-gg/lance
game-development game-server gamedev multiplayer multiplayer-game-server networking nodejs websockets
Last synced: 29 days ago
JSON representation
Multiplayer game server based on Node.JS
- Host: GitHub
- URL: https://github.com/lance-gg/lance
- Owner: lance-gg
- License: apache-2.0
- Created: 2016-06-10T12:58:57.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-04-21T20:29:28.000Z (7 months ago)
- Last Synced: 2024-04-24T01:27:14.292Z (7 months ago)
- Topics: game-development, game-server, gamedev, multiplayer, multiplayer-game-server, networking, nodejs, websockets
- Language: TypeScript
- Homepage: https://lance-gg.github.io/
- Size: 9.66 MB
- Stars: 1,545
- Watchers: 55
- Forks: 168
- Open Issues: 36
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Lance](https://lance-gg.github.io/) is a real-time multiplayer game server
It provides an extendible Node.JS based server, on which game logic runs, as well as a client-side library
which synchronizes the client's game state with the server game state. In order
to provide a smooth visual experience for each connected client, Lance implements
efficient networking methods, position interpolation and extrapolation, user input
coordination, shadow objects, physics and pseudo-physical movement, automatic
handling of network spikes.Lance aims to optimize the player's visual experience, while providing
a simple development model which is highly configurable and easy to analyze
and debug.## Features:
* Focus on writing your game. Lance takes care of the netcode
* Can support any type of game or genre
* Optimized networking
* TCP via websockets
* Communication is packed and serialized into binary
* Automatic handling of network spikes with step correction
* Intelligent sync strategies for lag handling
* Extrapolation (client side prediction) with step re-enactment or:
* Interpolation for optimal object motion
* Tools for debugging and tracingMore features in the pipeline:
* UDP via WebRTC
* Full-stack testing suite
* Replay saving
* More physics engines## That's so neat! Where do I start?
The official [Lance documentation](https://lance-gg.github.io/docs_out/index.html) contains articles on theory and rationale, as well as the structure and architecture of the project.
## Something went wrong! I need help!
If you're not exactly sure how to do something, [Stack Overflow](http://stackoverflow.com/questions/tagged/lance) is your friend.
If you've encountered a bug and it's not already in the [issues page](https://github.com/lance-gg/lance/issues), open a new issue.