Use cartoony weapons, run over humans, take down the Goose Mafia that wants you dead, drop giant snowballs into crowds, fly your stunt car across a packed island. Do whatever you want in this Simpsons Hit & Run-inspired open world-sandbox!
Because the game was open world, I needed every system to fully work with each other. Think NPCs starting missions, changing states during missions, etc... On top of this they also had to be cancellable and restartable & work with a save system. Because of this I made a lot of use of polymorphism, dependency injection, and the strategy pattern to make sure every system was as modular as possible. It's ended up being modular enough that I still use these systems in new projects today.
A voiceover or intro text would've been easy, but broke a core design pillar: let the player discover the world themselves.
Let NPCs explain the world through dialogue, so players pick things up naturally as they play.
This meant heavy playtesting to make sure players didn't get lost or confused, but it ended up being the right call.