WARDLIGHT
Escape a dark dungeon with one continuous line of light. Lantern flames are your lives.


- Project
- Our own product
- Our role
- Game design · Architecture · Unity development
- Duration
- In development
01 / Behind the product
A real need. A considered solution.
Challenge
If level generation applies rules first and tests solvability after, the generator throws away most candidates and some unsolvable levels slip past the test.
Approach
We applied a "solution first, rules derived" principle. The generator produces a valid Hamiltonian path first, then derives every mechanic from that path. Every level is therefore solvable by construction rather than by testing. The level is the seed: `seed = (uint)(level * 2654435761)`, so level 1202 is identical for every player on every device.
Result
3200 levels swept, all solvable. The same 3200 generated twice, byte-identical output. Engine-independent core: the `Wardlight.Core` layer has zero UnityEngine references, enforced by asmdef. All external services sit behind interfaces, so the game runs in-editor with no SDKs at all.
02 / Inside the product
The experience, on screen.
Open a screen to explore the details.05 images
03 / Scope & details
The details make the experience.
- 01
3200 levels swept, all solvable by construction
- 02
Byte-identical output on regeneration
- 03
Zero UnityEngine dependency in the Wardlight.Core layer
- 04
Ads, purchases, analytics and cloud sync all behind interfaces
Technology
- Engine
- Unity 6000.5
- Languages
- TR · EN
Level generation & validation
Deterministic generation
seed = (uint)(level * 2654435761)3,200 levels swept
Your idea could be next.
What could we build for you?
From a first release to a growing platform. Let’s plan the design, development and launch together.
From Türkiye to the US, UK, Australia and everywhere in between.