LiteEntitySystem
API Pure C# HighLevel pour les jeux multijoueurs utilisant .NET Standard 2.1
Discussion Discorde :
Petit exemple de jeu sur Unity
Documentation
Construire
NuGet
Sorties
Avis d'installation manuelle
Veuillez utiliser Roslyn Analyzer (à l'intérieur d'AnalyzerBinary) pour éviter les erreurs lors de l'attribution de SyncVars. Seul SyncVar.Value peut être modifié (ne faites jamais x = new SyncVar())
Caractéristiques
- .NET Standard 2.1 et C# pur (mais avec un peu de magie IL)
- Peut être utilisé avec Unity (2021.2 et versions ultérieures), Godot, Monogame ou simplement .net pur
- Peut être utilisé pour créer n'importe quel jeu multijoueur (2d,3d,4d,...)
- Fonctionne avec Unity IL2CPP
- Vitesse épique
- Compensation du décalage
- Sérialisation de types personnalisés (comme les chaînes, les listes, les tableaux, les jsons, etc.)
- Variables synchronisées (avec notifications facultatives en cas de changement)
- Prédiction côté client
- Prédiction d'apparition côté client (pour les projectiles)
- Appels de procédure à distance (RPC) avec vérifications au moment de la compilation
- Système de saisie des clients
- Système hiérarchique de base (enfants, parent)
- Concept de contrôleurs et de pions
- Système d'interpolation
- Synchronisation et entrée d'état compressé en delta
- Compression LZ4 de l'état mondial initial
- Fonctionne également comme moteur logique de jeu
- LiteNetLib comme transport par défaut, mais vous pouvez implémenter n'importe quel autre transport
Dépendances
- LiteNetLib 1.x : https://github.com/RevenantX/LiteNetLib
- LZ4 : https://github.com/MiloszKrajewski/K4os.Compression.LZ4
Développeur de support