In this 2018 GDC session, Spry Fox‘s Daniel Cook explains how to keep human beings from being treated as interchangeable, disposable, or abusable when designing multiplayer games.
If you’re developing, or thinking about developing a multiplayer game, this is a great talk to better understand the challenges of designing multiplayer interactions that result in more engagement and player satisfaction.
Daniel talks about the potentially negative social effects of multiplayer implementations, the effects of proximity, propinquity, serendipity, and density on people’s relationships, the logistics of forming new friendships in games out of strangers.
He covers basics like persistent identities (and repeat encounters), events (and their density), daily incentives, and offline communities as well as anti-patterns such as anonymous players, empty spaces, too many gameplay modes, and separation of players by skill. He also talks about the challenges of matches and matchmaking, which often necessitate large amounts of concurrent players to be viable, and the issue of matchmaking queue churn, resulting in low repeat interactions. The talk also covers the topic of similarities; tribalism, nationalism, their negative effects, and how to work with similarities in a positive context through fictional places and cultures. Daniel speaks to reciprocity, how it levels up relationships by building trust for more meaningful and deeper interactions, and the challenges of building trust, which is easily destroyed by cheating, scamming, or even premature disclosure which then kills relationship leveling.
I think the whole talk is fantastic, but the friendship levels of solitary play, parallel play, ambient/accidental coop, soft coop, and hard coop, are something any multiplayer game designer should think about because designing games around those different levels can have far-reaching effects and give games the proper appeal they need to grow and thrive.
The low trust, medium trust, and high trust Venn diagrams of increasingly more discrete player skills can also be found on Raph Koster’s website in his post about The Trust Spectrum. It’s a great read. The topics apply to all games, but it makes me appreciate Deep Rock Galactic even more for its well-thought-out design.
I find it funny that Daniel calls out retrofitting a social architecture as hard because I define architecture fundamentally as “that which is difficult to change later.” The context or nature of the architecture is usually less important.
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
I’m wrapping up development on version 1 of the Inventory System, which is currently at v1.18.1. All core functionality is in place, and it provides many quality-of-life features. The guide covers and walks through most of the code base, and the demo projects show off a lot of use cases. This first version has been …
Godot-matcha is an addon that lets you use WebRTC for multiplayer games by handling matchmaking using WebTorrent trackers. Conceptually it’s quite an interesting, novel approach. WebTorrent uses a modified BitTorrent protocol that allows it to work with WebSockets. A WebTorrent tracker is essentially a directory service that keeps track of torrents offered by users. A …
I had a setup with nested CanvasLayer nodes. Toggling the visibility of the root CanvasLayer doesn’t hide any nested CanvasLayer nodes. My solution was to listen to the visibility_changed signal, find any CanvasLayer child nodes, and apply the same visibility to them.
Design Patterns for Building Friendships
In this 2018 GDC session, Spry Fox‘s Daniel Cook explains how to keep human beings from being treated as interchangeable, disposable, or abusable when designing multiplayer games.
If you’re developing, or thinking about developing a multiplayer game, this is a great talk to better understand the challenges of designing multiplayer interactions that result in more engagement and player satisfaction.
Daniel talks about the potentially negative social effects of multiplayer implementations, the effects of proximity, propinquity, serendipity, and density on people’s relationships, the logistics of forming new friendships in games out of strangers.
He covers basics like persistent identities (and repeat encounters), events (and their density), daily incentives, and offline communities as well as anti-patterns such as anonymous players, empty spaces, too many gameplay modes, and separation of players by skill. He also talks about the challenges of matches and matchmaking, which often necessitate large amounts of concurrent players to be viable, and the issue of matchmaking queue churn, resulting in low repeat interactions. The talk also covers the topic of similarities; tribalism, nationalism, their negative effects, and how to work with similarities in a positive context through fictional places and cultures. Daniel speaks to reciprocity, how it levels up relationships by building trust for more meaningful and deeper interactions, and the challenges of building trust, which is easily destroyed by cheating, scamming, or even premature disclosure which then kills relationship leveling.
I think the whole talk is fantastic, but the friendship levels of solitary play, parallel play, ambient/accidental coop, soft coop, and hard coop, are something any multiplayer game designer should think about because designing games around those different levels can have far-reaching effects and give games the proper appeal they need to grow and thrive.
The low trust, medium trust, and high trust Venn diagrams of increasingly more discrete player skills can also be found on Raph Koster’s website in his post about The Trust Spectrum. It’s a great read. The topics apply to all games, but it makes me appreciate Deep Rock Galactic even more for its well-thought-out design.
I find it funny that Daniel calls out retrofitting a social architecture as hard because I define architecture fundamentally as “that which is difficult to change later.” The context or nature of the architecture is usually less important.
This talk also reminds me of Penny Arcade’s Greater Internet F***wad Theory, which is soon coming up on its 20th anniversary.
Related Posts
Audio Manager to handle the loading of sound effects in bulk
Years ago I purchased a game dev bundle on HumbleBundle. Part of that was a sound library called Pro Sound Collection. It’s pretty comprehensive, whether RPG or FPS, there are sounds for a ton of use cases. I might as well use them for something. Luckily for me, the sound collection is pretty well organized. …
Inventory System v1.18.1 available (and v2 progress update)
I’m wrapping up development on version 1 of the Inventory System, which is currently at v1.18.1. All core functionality is in place, and it provides many quality-of-life features. The guide covers and walks through most of the code base, and the demo projects show off a lot of use cases. This first version has been …
godot-matcha: Free multiplayer without a server
Godot-matcha is an addon that lets you use WebRTC for multiplayer games by handling matchmaking using WebTorrent trackers. Conceptually it’s quite an interesting, novel approach. WebTorrent uses a modified BitTorrent protocol that allows it to work with WebSockets. A WebTorrent tracker is essentially a directory service that keeps track of torrents offered by users. A …
Toggling Visibility of Nested CanvasLayers
I had a setup with nested CanvasLayer nodes. Toggling the visibility of the root CanvasLayer doesn’t hide any nested CanvasLayer nodes. My solution was to listen to the visibility_changed signal, find any CanvasLayer child nodes, and apply the same visibility to them.