DarkFormula is a dark fantasy adventure game about a lone alchemist exploring a mysterious and ever-shifting world, gathering rare resources and crafting potions to survive.
The project was built as a desktop application using WPF and the MVVM architectural pattern, serving as a practical demonstration of UI techniques, real-time rendering, and multiple design patterns applied in a structured architecture.
- C#
- .NET (WPF)
- MVVM Architecture
- XAML, Styles
- Data Binding, Commands & Converters
- CompositionTarget Rendering Loop
This project demonstrates practical implementation of multiple design patterns:
- Builder
- Factory
- Singleton
- Decorator
- Facade
- Proxy (Smart Proxy)
- Chain of Responsibility
- State
- Strategy
These patterns are used to structure gameplay logic, crafting mechanics, world behavior, and object interactions - not as theoretical examples, but as functional architectural solutions.
The player takes the role of a lone alchemist exploring a mysterious and shifting world.
The world moves together with the player.
If you travel too far in one direction, returning becomes impossible - reinforcing a mystical, irreversible exploration experience.
There are 4 unique biomes, each containing different environmental conditions and resources.
The starting biome. A dense and familiar woodland where the alchemist begins their journey.
- Abundant with basic food and water sources
- Contains standard crafting resources such as wood, stone, sticks, and berries
- A safe and welcoming environment that eases the player into exploration
A vast and colorful meadow filled with exotic flora.
- Home to a wide variety of rare and common plants
- Many flowers hold unique alchemical properties useful for potion crafting
A murky and treacherous wetland that tests the player's patience and resourcefulness.
- Rich in swamp-specific resources: frog, leech, reed, swamp roots, crystals, glowing mushrooms
- Large patches of muddy bog slow the player's movement, making navigation challenging
- A dark and oppressive atmosphere signals that the journey is becoming more dangerous
- The area is covered with poisonous fog
- The player must find a hidden key
- Unlock a chest
- Receive one of two secret potion recipes
The player must manage:
- Hunger
- Thirst
- Health
If hunger or thirst reaches critical levels:
- Health begins to decrease
- The player can die
- Death results in resource loss
This adds tension and strategic planning to exploration.
- Resource collection
- Quick access slots
- Drag & Drop mechanics
- Smart resource usage logic
- Dynamic UI updates via MVVM bindings
Resources are biome-dependent and required for potion crafting.
The player starts with 4 basic potion recipes.
Additional recipes:
- Can be discovered
- Can be unlocked
Recipes are validated dynamically based on ingredient combinations.
The central mechanic of the game is alchemy brewing.
The player:
- Collects resources in different biomes
- Opens the cauldron interface
- Drags ingredients into the cauldron
- If a valid combination is detected — a potion is crafted
- If player experiments too aggressively, the cauldron may explode
Each potion has unique effects, such as:
- Health regeneration
- Swamp mobility boost
- Poison fog immunity
- Survival stat restoration
