Possibilities & Limitations

Develop an understanding of the unique rules faced building a multi-player experience.

Before You Build

Game Maker v0.6.9 has specific limitations you will need to keep in mind when building a Social Hub.

Because multi-player has different requirements to single-player experiences, you will need to contact The Sandbox to review and test your experience so that we can help make sure everything works as it should before it is set to 'social' and published.

So that your experience is as prepared as possible for review, we will look at some of the key features you’ll have available when designing your experience, explore how to use them, look at what to avoid, and explain why some of these limitations currently exist.

The Sandbox will continue to evolve, and each new milestone hit on the roadmap will lead to updates and more opportunities to upgrade your experiences.

Understanding Multiplayer

One critical consideration is understanding the difference between a Solo Experience compared to a Multiplayer Experience when it comes to using Quests, Objects, Behaviours, and Components.

In a solo experience, your actions aren’t impacted by the presence of other players, so if you click a button then your input is the only trigger that needs to be calculated, and the resulting outcome of that action also only needs to be visible to you.

In a multiplayer experience, the actions and movements of many players interacting with different objects, at different times, need to be calculated all at once, accommodating multiple inputs and outcomes all at the same time.

For example, if a whole group of players are pressing a button that activates a platform, then the Game Client needs to be able to make sure those inputs and outcomes are synced between players otherwise...well... chaos ensues.

There are currently limitations around what syncs between players, and for this reason, there are some best practices to consider while building your multi-player experiences that focus on tools that either don’t need to be synced to other players or are currently compatible.

Basic Guidelines

Syncing limitations are a consideration, but they won't stop you from being able to create some really engaging experiences.

For example, when you talk to a non-player-character (NPC) only your Avatar will be able to see that specific instance of the NPC response. So in this case, each player in a multiplayer experience will see their own version of that NPCs text boxes.

The same can be said of sending messages. There is not really a limitation on messages being sent, it’s what you do with those messages that matter.

For example, you could have an Asker Behaviour that sends a message activating a Quest. This would activate just for the individual player, not for each player in the group, and so there is no need to sync.

However, you would need to avoid using the Asker Behaviour to trigger an Asset Spawner or a Victory condition , because they would face syncing issues.

While there isn’t an exhaustive list of all the working features, here are a few guidelines that should serve as a base for making some good design choices:

  • Avoid adding or spawning any moving assets with Collison such as basic platforms, assets with gravity + collision, moving NPC Behaviours like Citizen, Fighter, Prey, or Doors.

  • Avoid "Collect" Quest (Solo players can collect for other participants, even if they haven't started the quest).

  • Anything related to fighting/ combat is currently not available.

  • The Void Behaviour can't currently kill the player.

So with those design points in mind, the following topics will focus on each of the Behaviours and Components you CAN use in your Social Hub to create a fun multiplayer experience.

Last updated