BoneAnza: My largest project to date.


a cooperative multiplayer experience where you fight complex enemy waves, upgrade your builds, and push to survive longer each run

Boneanza

Role: Design & Development

Tools: Unity, C#, Netcode for GameObjects

The Project

Boneanza is a co-op wave survival game built on the concept of The Mirror Threat. 4 outcasts don’t just fight monsters, they fight skeletal reflections of their own heroes after using an old relic to defy destiny. My goal was to move away from static bullet sponges and instead design enemies with distinct combat behaviors that force players to prioritize targets and communicate.


Design Philosophy: Readability & Fairness

In a chaotic co-op game, visual noise is the enemy. I focused heavily on Combat Readability:

  1. Telegraphed Cues: Every heavy attack features a long wind-up animation, making clear warnings that allow players to react with a well timed dodge or block. This ensures that combat feels fair and rewards player anticipation.

  2. Color-Coded Visuals: I implemented a distinct visual language where VFX are tied to the game's narrative. By rendering all dark enemy magic in Green and player abilities in Purple, I created a high-contrast environment that allows players to subconsciously identify threats. This system ensures that players instantly recognize any green trail or effect as a danger, enabling near-instant reaction times even during chaotic co-op encounters.

  3. Synergetic Gameplay: I designed enemies with specific weaknesses that reward team coordination. For example, the Lurker becomes extra vulnerable after being caught in the Mage’s (Aelith) trap, while the Archer (Veljko) can heal frontline tanks from a distance, ensuring the team stays in the fight without breaking the combat flow.

In this example i changed the wind-up of the Lunge Dash attack from the peasant to be more clear and readable for the player.

Before tweaking the animation After tweaking the animation

Meta-Progression & Economy: Risk vs. Reward

The economy in Boneanza is built on the constant tension between surviving the present and investing in the future. By earning gold for every kill, players are forced into a strategic decisionmaking process that bridges two distinct loops:

  • Tactical In-Run Survival: Immediate spending on Revive Potions and Bone-Keys. The team must decide whether to commit resources now to survive the current wave or save for the long term.

  • Permanent Meta-Growth: Extracted gold is invested in the Lobby through a non-linear Skill Tree. This shifts the gameplay from pure survival to theory-crafting, allowing players to build specialized loadouts using a Trigger & Action perk system.

  • Dynamic Session Scaling: To maintain combat flow, a separate XP system provides a power spike within the run. Scaling at roughly 10 levels per floor, player stats grow organically alongside the growing threat of the waves.

Documentation & Download



AI Archetypes & Combat Personalities

I developed a Personality-Based AI system. Instead of all enemies simply running at the player, each archetype uses a specific engagement logic to fill a different role in the combat encounter:


  • The Chaser (Aggressive Pressure): Uses a constant move-to-player logic. Designed to flush players out of cover.

  • The Lurker (Area Denial): Programmed to maintain a Sweet Spot distance. If the player gets too close, the Lurker retreats. If too far, it closes distance.

Data-Driven Combat Balancing

To ensure a consistent combat feel across all encounters, I developed a balancing framework. By decoupling enemy logic from their specific stats, I can fine-tune the entire game’s difficulty through a single source of truth.

The Balancing Matrix: I used a structured spreadsheet to manage every frame of the combat experience. This allows for rapid iteration on:

  • Frame Data & Timings: Adjusting wind-up and movement patterns.

  • Numerical Scaling: Balancing Damage, range and cooldowns

  • Systemic Consistency: Ensuring that similar attack types across different enemies share a logical baseline.

Scalable Enemy Architecture

Beyond individual design, my primary focus was building a Modular Enemy System:

  • Component-Based Logic: I built a library of reusable behaviors (SpinAtttack, Lunges, Teleports, Ranged attacks). Creating a new enemy is now a matter of plug-and-play with these modules.

  • Stat-Injection: Using Unity’s ScriptableObjects, the system injects the data directly into the enemy prefabs.

  • Workflow Optimization: Once the system is in place, the hardest part of enemy creation is shifted back to where it belongs: Art and Intentional Design.



Mage gameplay showcasing the gameplay flow, please note: the map is still in the testing phase and is not done

*All the heroes next to their undead counterparts

Technical Implementation & Readability

  • Tracking: The teleportation trail acts as a breadcrumb for the player's camera, reducing visual confusion.

  • Balancing: The Glass Cannon stats (low HP , high mobility and a lot of damage) ensure that the player feels powerful when they successfully read the pattern.

  • Co-op Synergy: In a group setting, one player can bait the dash while another prepares for the Blink-window, rewarding team communication.


  • The Vermin (Mobility & Chaos): Uses erratic, circular pathing rather than direct lines. It’s designed to distract and waste player resources.

Enemy Breakdown: The Vermin

Design Goal: The Vermin is a Harasser class enemy, designed around the Window of Opportunity principle. The goal was to create an erratic, hard-to-track threat that remains predictable and fair through rhythmic combat phases.

The Combat Loop

I structured the Vermin’s behavior into four distinct phases to balance tension and punish-windows:

Phase 1 : The Engagement:

The Vermin maintains a dynamic orbit around the player (2-3 units). By implementing a distance-based offset, I ensured that groups of Vermin don't stack in a single line, forcing the player to manage spatial awareness and look beyond their immediate front.

Phase 2 : The Strike :

The enemy steps in to initiate a high-velocity melee dash. This shift in movement speed serves as the primary telegraph, signaling the transition from passive threat to active danger.

Phase 3 : The Blink:

Upon impact or miss,the Vermin teleports. I designed a Pre-Blink Window where the enemy is briefly vulnerable. To reward precision over spamming, the Vermin has a low health pool: killable with one critical hit or two standard strikes making this split-second window high-stakes.

Phase 4 | The Punishment:

If the player misses the window, the Vermin fires a magic projectile from its new location. I implemented a visual trail during the teleportation phase to ensure the player can track the repositioning, turning a potentially frustrating off-screen attack into a fair, readable challenge.

  • The Brute (Crowd Control): A slow-moving threat with high HP. Its attacks are telegraphed with clear visual cues, acting as a raid mechanic within the wave.



Next
Next

Studio Bloodshed - Narrative and System Designer (September 2025 - December 2025)