Hello from the new issue of GameDev’s Journey! In today’s issue:
How to tell story with game mechanics
Observer Pattern. A flexible way of communicating between scripts
Free icons for games
Inspiration and more
LET’S GO.
Game Design
How to Forge Story-Rich Mechanics
There are many ways of telling a story in a game. Some games use usual methods like cut-scenes, dialogue trees, lore beats; some games tell stories through player’s actions and behaviors. In one of the reports published by Polaris Game Design Retreat 2022, we can look at how we can put meaning into player’s action and forge a “playful narrative”. Great read for those who wants to focus on building mechanics that tell a story.
There are different ways in which story and mechanics talk to each other. In some games, like Kenshi, story and mechanic cannot be separated because both aspects build each other up. (Story builds mechanics, players actions build story).
Expressive Mechanics: Traditional non-narrative mechanics (like shooting, cooking, fishing) can be redesigned by assigning emotional expression ("cook resentfully" or "explore joyfully"). In The Quarry, for instance, the shooting mechanic serve a greater purpose beyond mere skill or competition. Instead, it plays a crucial role in character development and serve as a means for making significant plot choices.
Player-World Reciprocity: Another way of telling a story is to enable players to build their own story depending on their way of interaction with the game world. In the game Kenshi, progression unfolds through active engagement with the game world. For instance, one can increase their natural toughness and resilience by enduring beatings or by engaging in activities like lifting heavy objects and carrying them around. Kenshi embraces a playful approach to crafting and experiencing its narrative. The story is not fixed or dictated by explicit plot choices; instead, it emerges and evolves through the player's actions and the world's dynamic influence on the player.
Rethinking Narrative Progression: Progression is typically tied to specific goals, guiding the player's journey through the game. But what if narrative progression didn't focus primarily on reaching resolutions? In Sable, who the protagonist is and who they become isn't a fixed endpoint or resolution. Instead, it's shaped by the player's actions, exploration, pursuit of badges, and more. The game encourages players to create their own narrative through their unique experiences.
There is also a practical exercise you can apply to create expressive mechanics at the end of the report, so make sure check it out!
Tutorials
Observer Pattern
When we create scripts and components that communicate and share data with each other, we also make them dependent on each other. This sometimes makes it harder to debug or make changes. The observer pattern is a way to make our components less dependent and more scalable. The idea is to create a “subject” script that sends notifications to “observer” scripts when there is a change. Observer scripts will be listening the subject script and reacting when an event occurs. I hope you find it useful.
Other
I started looking for icons on the internet since the game I’m working on at the moment will require many 2D icons and discovered Game-icons.net. It has 4131 free icons you can use! It also enables you to edit those icons, like changing their color, background, size, etc.
Inspiration
Discovered a game named Card Shark. Haven’t played it myself yet, but I like the visuals and the premise.
Me
Reading: Cosmos by Carl Sagan. Just to make myself feel smaller.
Watching: The Marvelous Mrs. Maisel.
Playing: Pathfinder: The Wrath of the Righteous. There are so many character customization options that it took more than three hours to just create a character. I finally decided to play as Bloodrager. We’ll see how it goes!
Listening:
And that’s it from today’s issue of GameDev’s Journey. I hope you enjoyed it and find it useful. If you did, please like and leave a comment. Let me know your thoughts, suggestions, objections, etc.
But regardless, thank you so much for reading, and have a great game dev journey.