https://github.com/revenantx/liteentitysystem
Pure C# HighLevel API for multiplayer games
https://github.com/revenantx/liteentitysystem
csharp dotnet game-development gamedev litenetlib mono multiplayer udp unity
Last synced: 19 days ago
JSON representation
Pure C# HighLevel API for multiplayer games
- Host: GitHub
- URL: https://github.com/revenantx/liteentitysystem
- Owner: RevenantX
- License: apache-2.0
- Created: 2022-04-25T13:19:33.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2025-04-14T07:56:29.000Z (about 2 months ago)
- Last Synced: 2025-05-06T15:45:46.022Z (29 days ago)
- Topics: csharp, dotnet, game-development, gamedev, litenetlib, mono, multiplayer, udp, unity
- Language: C#
- Homepage:
- Size: 6.05 MB
- Stars: 240
- Watchers: 6
- Forks: 28
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# LiteEntitySystem
Pure C# HighLevel API for multiplayer games using .NET Standard 2.1[](https://stand-with-ukraine.pp.ua)
**Discord chat**: [](https://discord.gg/FATFPdy)
[Little Game Example on Unity](https://github.com/RevenantX/LiteEntitySystemUnityExample)
[Documentation](https://revenantx.github.io/LiteEntitySystem/api/LiteEntitySystem.html)
## Build
### [NuGet](https://www.nuget.org/packages/LiteEntitySystem/) [](https://www.nuget.org/packages/LiteEntitySystem/) [](https://www.nuget.org/packages/LiteEntitySystem/#versions-body-tab) [](https://www.nuget.org/packages/LiteEntitySystem/)
### [Releases](https://github.com/RevenantX/LiteEntitySystem/releases) [](https://github.com/RevenantX/LiteEntitySystem/releases)
## Manual installation notices
Please use Roslyn Analyzer (inside AnalyzerBinary) to prevent errors when assigning SyncVars.
Only SyncVar.Value can be changed (never do x = new SyncVar())## Features
* .NET Standard 2.1 and pure C# (but with some IL magic)
* Can be used with Unity (2021.2 and later), Godot, Monogame or just pure .net
* Can be used for creation any multiplayer game (2d,3d,4d,...), but best suited for fast paced games like FPS/TPS shooters and action rpg
* Can handle up to 255 players on one instance
* Works with Unity IL2CPP
* Epic speed
* Lag compensation
* Serialization of custom types (like strings,lists,arrays,jsons,etc)
* Synchronized variables (with optional notifications on change)
* Client-side prediction
* Client-side spawn prediction (for projectiles)
* Remote procedure calls (RPC) with compile-time checks
* Client input system
* Basic hierarchy system (childs, parent)
* Controllers and Pawns concept
* Interpolation system (local and remote for smooth visuals)
* Delta-compressed state synchronization and input
* LZ4 compression of initial world state
* Also works as game logic engine
* LiteNetLib as default transport, but you can implement any other transport## Dependencies
* LiteNetLib 1.x: https://github.com/RevenantX/LiteNetLib
* LZ4: https://github.com/MiloszKrajewski/K4os.Compression.LZ4## Support developer
* [](https://www.buymeacoffee.com/revx)* USDT TRC20: `TE5eBgq8SyEeZFKtCgZG9GwL34sANmbc67`
* USDT BEP20/ERC20: `0x4c0D6DC76c6A6B354f5ec6c9e51893fFC6510d1E`
* Bitcoin: `bc1q269ecs8r5vnrum5qr5j98sdglhnxlulv0f6egd`