Examining difficulty in games - aka what went wrong in TTL


Hey everyone! For the Weekly Game Jam 115 (the theme was Life is Short) I developed Time To Live, a retro styled game where you have to route packets to their correct places and avoid collisions between packets.


If you played the game you'll know that it is very (I mean veeeery) difficult. So here's my take on how you shouldn't develop hard games, based on my experience with Time To Live. 

Difficulty Modifiers

The difficulty modifiers are what change the difficulty of the game (shocker!). The modifiers can work through different aspects. The following list contains some modifier types and examples of how they can make games easier. Of course the opposite example can be used to make the game harder 

  1. They can modify the difficulty of the game elements
    • player deals more damage
    • enemies are weaker
  2. They can adapt the level
    • less enemies spawn
    • only a subset of enemies is spawned
  3. They can modify the reward/penalty system. This system can be related to scoring, positioning, drops, etc.
    • The penalty for making a mistake is not as punishing
    • The reward for a good action is bigger

When I was making TTL some of the difficulty modifiers considered were:

  • The rate at which the packets were created
  • The rate at which hops passed (the ticks)
  • The packet's time to live (the packet would be destroyed after that many ticks)
  • Packet spawn location (further or closer to destination)
  • Pipe occupancy for spawn (if there was a packet really close, it would be easier if that pipe had less chance of spawning a packet)
  • The penalty for colliding packets
  • The penalty for delivering to the wrong pipe
  • The reward for delivering to the correct pipe
  •  

At the end of the day, only the packet rate and the tick speed were implemented. Yup, TTL's packets don't actually have a TTL (oops), the spawn locations are determined completely randomly (with the exception that a pipe must spawn a packet of a different type) and the points are constant through difficulty levels. 

Difficulty Settings

Having determined the difficulty modifiers, you have to determine the difficulty settings. These are the specific values for the difficulty modifiers. 

In Time To Live you can define the difficulty modifiers (spawn rate and tick rate) before playing. This can be done in two ways. 

  1. Controls that allow you to set the modifier values manually
  2. Presets that set the value, which the player can update after (this is where I went wrong)

TTL difficulty controls

Manual controls in red, presets in yellow

Although the player can set the values manually, there are two problems:

  1. These values don't mean anything to the player so he won't know what the consequences for them are
  2. From the feedback I got, if there are presets, players are much more likely to just use those because they should be tailored for the best experience within that difficulty setting.

This was one of the problems with TTL, due to time constraints, by the time I realized the presets were way off, it was already too late to update them.

What else could be changed?

There are other problems in the difficulty level of the game besides the modifiers.

  • It's hard to notice that a packet is coming out of a pipe
    • More emphasis should have been added to the pipes with incoming packets. Maybe a slight color change or the pipe flashing to maintain the black and white style
  • Packets that were stationary were often hard to identify when there were a lot of packets moving at the same time
    • This ties into the previous point, when a pipe releases a packet, due to its lack of emphasis, you might not notice that it's there
  • It was a bit hard to quickly identify where each packet should go, so when there are a lot of packets coming it is hard process all of them

All in all, I think this was a pretty successful attempt at a two day game, and the lessons learned from it will surely improve future games and if you got here, hopefully you can also take something out of it!


Thanks for reading!

PS: Special thanks to Lauwwie for his play testing and invaluable feedback!

Leave a comment

Log in with itch.io to leave a comment.