Full Throttle into a Dead End
The heart of my TV game rewarded, of all things, boredom. The concept lab let me fix that faster than ever before – so fast that at some point I no longer noticed where the journey was actually going.
The Most Boring Optimum in the World
Scheduling the program is the heart of Televism. This is where the player makes their decisions, and this is where it’s supposed to be interesting and varied. And it was exactly this heart that, in the first test games, produced a result that sobered me up quite a bit: the best strategy was more of the same.
Why It Was Boring
There are several target groups – kids, housewives, workers, managers and so on – who watch TV at different times and have different tastes. There are titles that fit those tastes more or less well. What attracts one group puts off another, and higher quality makes a title better – and more expensive.
For a viewer to pick my channel, two things have to be right: the title has to appeal to them, and they have to know it’s on. That visibility grows with the profile, which builds up slowly, over many days of broadcasting. This was supposed to give rise to the core mechanic: am I investing in my profile right now, in the future that is, or do I grab the maximum ratings of today? Strategy versus tactics.
Except that the first model didn’t have this trade-off at all. The profile was tied to the genre, and a good title delivered ratings and profile at the same time. Building a profile cost nothing; strategy and tactics always pointed in the same direction. What looked good on paper didn’t hold up in reality.
The Lab Is Born
Turning a few constants wasn’t going to fix that. In the production code, though, the core was tangled up with other rules, a database and a lot of surrounding machinery. So we cut the heart out, stripped it down radically and rebuilt it as a small simulation tool in the browser – with all kinds of charts that let me turn constants and see the result immediately. The concept lab was born.
What followed were two intense, busy weeks. “I need a visualisation of the profile over time.” Bam, there it is. “The curve should rise flat at first, then steeply, then saturate.” – “You need a sigmoid.”
In the end the curves looked good. It was the right first step – but I realised it isn’t enough to judge the core loop by whether I like a chart. “Looks good” isn’t a verdict, it’s a feeling, and my feeling shifted a little with every new curve.
An Algorithm That Rates the Algorithm
In the second iteration the lab learned to rate itself. A solver searches for the best program plan for an entire season, hour by hour, starting from zero profile. That best solution is then checked against my criteria:
- Is the best solution varied? Or does even the perfect player stubbornly air the same thing again?
- Is good, forward-looking play rewarded? Whoever plans ahead has to be clearly ahead of the one who only looks at today’s ratings, and that one in turn ahead of the one airing nonsense.
- Are there several play styles that are equally good?
On top of that came a few rules that simply describe how I want the game to feel:
- that blockbuster titles don’t pay for themselves and are only good for chasing records,
- that a change of strategy hurts first before it pays off,
- that the viewer numbers stay comprehensible.
Throwing More Algorithms at It
If an algorithm can rate my viewer algorithm, then an algorithm can optimise it too. The workflow went like this: I define the rating. Claude adjusts constants and formulas based on it and has hundreds of variants computed. I then look at the result in the concept lab and check whether it holds up to my gut feeling.
These were the best sessions I’ve had with my agent so far. Solver, optimiser, metrics, visualisations – everything was up and running in no time. Had I been forced to program all of it myself, I’d have spent weeks on it. Every idea was implemented in minutes, every question answered in minutes. A rush – and nowhere a point where I would have had to stop and think.
Except the beautiful algorithms didn’t hold up. Sometimes it made sense to air the best titles at the fringes of the day. Mathematically entirely consistent, but hard to explain. Then focusing on one target group was hopelessly inferior to spreading out across several. Then you could get rich with any old nonsense.
And once again it looked good on paper: 12 out of 14 metrics met.
Losing Control
In practice the next weeks went by, and I didn’t manage to get all my goals to fit together even in the rating – let alone get curves I actually liked. At some point I had lost myself in my optimisations. “Claude, adjust the rating like this.” “Claude, optimise.” “Claude, why isn’t this working?” And then came an explanation I no longer understood. What does “regime” mean in this context? What exactly is a “tactician” again?
The problem was that my concept couldn’t carry all those lovely goals. I didn’t notice, and neither did my agent – instead it kept reassuring me that paradise was waiting behind the next optimisation. And because every new idea was implemented so quickly, a lot had piled up without me noticing: different target groups with different gameplay, extended concepts like the audience flow, different play styles that were all supposed to be balanced against each other – and all of it at once. In all that productivity I had long since lost control without realising it.
When I did realise it, it was time to slam on the brakes. I had to scale everything back to a level of complexity I can actually handle. All target groups are now completely symmetric: they have different tastes and different viewing times, but under those conditions they all play the same. The audience flow is on ice for now. And instead of many equally good play styles, I’m focusing on the one that’s supposed to be varied.
That hurt, because there were great ideas among them that had taken a lot of time and brainpower. But not everything fit together, and I had charged ahead too fast to control the spirits I had summoned.
What Came Out of It
I’m now at a point where I have a play style that applies equally to all six target groups. When I look at the solver’s best program (the truly optimal one can’t be found in finite computing time), I see variety in the daily schedule and, in the vast majority of cases, I understand what is aired when and why. The few surprises at least show me that there’s still something to discover.
Three views from the concept lab show what that looks like today. They all belong to the same season: 42 days starting from zero profile. Every 14 days, advertisers pay double the contact price for a different target group – first for kids, then for workers, then for pensioners.
That’s no proof yet that Televism is fun. But it is a model whose decisions I can follow and whose results match what I set out to achieve. Above all, building the profile over weeks now works the way I imagined it.
What I Learned
Along the way I learned a few things:
- Game designer is a profession of its own for good reason. There’s a lot of craft behind it that you first have to acquire.
- Starting small applies to game design, too. Get one thing working first, then raise the goals step by step.
- Speed is no substitute for an overview. When every idea is implemented in minutes, the natural brake that otherwise forces you to think is missing. My agent was a real help in many places, but whether the direction was right was something I had to notice myself – and it couldn’t make up for my lack of experience in this field.
I set out to fix a core loop that rewarded doing the same thing over and over. It is fixed – but only after I deliberately took my foot off the gas. A faster tool gets you ahead faster. It just also gets you into a dead end faster.