Back to Projects

Back to Projects

PROJECT

PROJECT

WILDORE

WILDORE

WILDORE

Wildore is a 2D RPG where you farm, hunt, and explore dungeons to gather resources and rebuild your childhood farm.

Wildore is a 2D RPG where you farm, hunt, and explore dungeons to gather resources and rebuild your childhood farm.

Wildore is a 2D RPG where you farm, hunt, and explore dungeons to gather resources and rebuild your childhood farm.

Procedrual Generation

State Machine

2D Animation

DURATION

20 Weeks

ROLE

Team Lead / Programmer

TEAM SIZE

2

PLATFORM

PC

ENGINE

Unity

OVERVIEW

OVERVIEW

"Wildore" is a 2D RPG/adventure game where players take control of a character who finds themselves back on their childhood farm. They grow crops, hunt animals, forage in the woods, and explore the mines. The player's main mission is to gather enough resources from the forest and the dungeons to repair the farm's ruined buildings.


This was my first project where I worked in a team, serving as the Team Lead. My responsibilities were managing the game's progress and organization, including the documentation.

"Wildore" is a 2D RPG/adventure game where players take control of a character who finds themselves back on their childhood farm. They grow crops, hunt animals, forage in the woods, and explore the mines. The player's main mission is to gather enough resources from the forest and the dungeons to repair the farm's ruined buildings.


This was my first project where I worked in a team, serving as the Team Lead. My responsibilities were managing the game's progress and organization, including the documentation.

TRAILER

Worked On Systems

EXPLANATION

CODE

Procedural Generation

The Challenge:

We needed a fast dungeon Generator to create unique layout every time a player enters the dungeon. sizes up to 500x500 units per dungeon

My Solution:

I created a custom procedural dungeon generator combining Binary Space Partitioning (BSP) for the structural layout and Cellular Automata for organic cave-like structures. To ensure every map is fully playable, I integrated a Flood Fill algorithm to eliminate isolated pockets and developed a custom corridor-checking algorithm to elimate desgin errors.

Extra:

To speed up our workflow, I didn’t just stop at the generator itself: I built a interactive in-engine tool. This allowed me to instantly test seed generation and even paint custom layouts by hand,

EXPLANATION

CODE

Procedural Generation

The Challenge:

We needed a fast dungeon Generator to create unique layout every time a player enters the dungeon. sizes up to 500x500 units per dungeon

My Solution:

I created a custom procedural dungeon generator combining Binary Space Partitioning (BSP) for the structural layout and Cellular Automata for organic cave-like structures. To ensure every map is fully playable, I integrated a Flood Fill algorithm to eliminate isolated pockets and developed a custom corridor-checking algorithm to elimate desgin errors.

Extra:

To speed up our workflow, I didn’t just stop at the generator itself: I built a interactive in-engine tool. This allowed me to instantly test seed generation and even paint custom layouts by hand,

EXPLANATION

CODE

State Machine / AStar

The Challenge:

We needed an intelligent, role-based AI system where enemies dynamically form squads with Leaders and Minions, defend valuable assets in the mines, and intelligently fallback to standalone behaviors if they are separated from their group.

My Solution:

I built a state machine with six behaviors: Idle, Grouping, Searching, Patrolling, Retreating, and Attacking. The system is driven by a 'Group Manager' from Boss enemies, as well as valuable points of interest around the dungeon that enemies patrol to protect. Everything is designed so that enemies look for groups to fight alongside; however, if no groups or valuable spots are nearby, they will patrol alone and fight independently.

Extra:

To complement the chase system, I developed a custom AStar tailored specifically to my dungeon layouts. This ensures enemies can relentlessly pursue the player without getting stuck on walls, environmental decorations, or interactable objects like ores and chests.

EXPLANATION

CODE

2D Animation

The Challenge:

To support our pixel-art art style, we needed a custom animation controller capable of handling all pixel-based sprite animations across both the player and diverse enemy types. The core challenge was creating a highly generic, reusable system that featured a robust event architecture that triggers on various animation states.

My Solution:

I developed a highly decoupled, ScriptableObject-driven animation controller that requires only a movement component to function. The system automatically calculates the entity's directional vector, handles sprite rendering, and fires precise frame-specific events based on the current animation state. By leveraging ScriptableObjects, adding new actions or behaviors is entirely data-driven and requires zero extra code.

Screenshots

COPYRIGHT © TOBIAS HÖFLMEIER 2026