← All stories
2013

Designer-first configs: a month that turned a tester into a level designer

We started Steam Defense by keeping every config in Unity prefabs, and that turned out to be a mistake: renaming a parameter or changing its type wiped the values, and complex data structures couldn’t be edited in the Inspector at all. So configs moved into source code, and the Inspector was left for art only — models, pictures, sounds.

Still, every balance change went through a programmer. I spent a whole month rebuilding all configs around the game designer: separate configs for gold and experience curves, values that could be overridden per monster at runtime, and a small lfloat type for parameters that grow along a curve with the level.

Scenarios were the opposite decision. Instead of a visual system of 10–20 predefined blocks, we wrote them in plain C#. Code gave level scripts unlimited freedom, and the config layer kept the numbers out of the code.

The result surprised us: one of our testers, armed with these tools, became our level designer. He joined in the middle of January and kept inventing new things for the scenarios and asking me to build the features for them.

The lesson: tooling for non-programmers pays off fastest exactly where the team argues most — balance and content.