Our team is trying to create a multiplayer game (4 players) with many small (but distinct) activities on a single map/level. Similar to Stardew Valley but each activity (fishing, cooking, etc.) uses a unique set of game logic.
A player will freely be able to travel to other streamed sublevels and participate in an activity while other players are in another area. Since each persistent level can only have one ‘Game Mode’ and ‘Game State’ and the entire game takes place on one level/map; we need a smart way to organize the logic. We’re trying to avoid creating a single giant ‘Game State’ with logic for every event.
Here are the requirements (as I see it):
- Multiplayer
- One Level/Map (with sublevels)
- Able to accommodate any number of unique activities/gameplay events in tandem
- Each player must be able to participate in an activity without interrupting current activities that other players are participating in
- A player can join another player’s in-progress activity. A wave defense activity, for example. If Player One was on wave 3, Player Two would also be on wave 3 when they enter the area.
I’m looking for any idea or suggestions on a good clean way to manage all this -we’re stumped.