Featured Project

Lifeburn

A competitive trading card game built from the ground up in Unity with C#

C# Unity .NET SQL Server JSON Schema
Scroll

The Story

Lifeburn represents my first large-scale project completed entirely on my own.

Every architecture decision, every system design, and every implementation was deliberate and planned. This project taught me the value of understanding every piece of code that goes into a system, and the confidence that comes from building something you truly comprehend inside and out.

From the encrypted account system to the server-authoritative gameplay logic, Lifeburn was built with scalability and security as core principles from day one.

265 Unique Cards
100% Server-Authoritative
2+ Years Development

Client-Server Architecture

One of the aspects I'm most proud of is the client-server interaction design. All gameplay logic runs on the server to ensure fair play and prevent cheating.

Architecture Diagram

Visual representation coming soon

Unity Client

  • Handles UI and visual rendering
  • Sends player actions to server
  • Receives and displays game state updates
  • No game logic—pure presentation layer

.NET REST Server

  • Processes all gameplay logic
  • Validates every player action
  • Manages game state and turn order
  • Handles account authentication

SQL Database

  • Stores encrypted account data
  • Manages player deck collections
  • Tracks match history and stats
  • Ensures data persistence

Key Features

Custom Card Schema

Designed a comprehensive JSON Schema that defines all 265 cards in the game. This schema allows for elegant card integration, easy balancing updates, and clean separation between card data and game logic.

The schema supports complex card abilities, targeting rules, and effect chains while remaining human-readable and maintainable.

{
  "cardId": "LB-142",
  "name": "Brass Golem",
  "type": "unit",
  "cost": 4,
  "attack": 3,
  "health": 5,
  "abilities": [
    {
      "trigger": "onPlay",
      "effect": "dealDamage",
      "target": "enemyUnit",
      "value": 2
    }
  ]
}

Event System

Built a robust event-driven architecture that handles complex card interactions and ability chains. The system supports triggers, responses, and nested effects while maintaining clean code organization.

This design allows cards to interact with each other in emergent ways while keeping the codebase maintainable and extensible.

Event System Flowchart

Security-First Design

Account data is protected using modern encryption algorithms. The server-authoritative model means the client never has access to sensitive game state that could be exploited.

Every action is validated server-side, ensuring a fair competitive environment for all players.

Encrypted Storage
Server Validation
Secure Auth