Skip to content

The client-server game with battler-like mechanics

License

Notifications You must be signed in to change notification settings

KonH/BattlerGame

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Battler Game

Summary

The client-server game with battler-like mechanics

Features

  • Turn-based battle system
  • Linear level progression
  • Units & items with different properties
  • Event levels
  • Time-limited (farming) levels
  • Daily rewards

Tech

  • Client-server communication, the authoritative server
  • JSON for data transfer, state & config
  • JWT for auth
  • Command pattern to hold logic into short classes
  • Game state modified on client & server, it works deterministically, full state transition isn't required after login
  • Client-side cheats are not allowed, server applying only valid commands
  • Server: works in memory, provide auth, state storage, and command validation
  • Unity client: support all required commands and have the ability to simulate server locally
  • Console client: support all available commands using reflection
  • Unit Tests: cover almost all use cases, related to commands
  • Async tweening extensions

Tools

  • .NET Core 3.0
  • Unity 2019.1