Overview
To group players together by creating an entity with a lifecycle, you can choose a service among Party, Lobby, and Group.
Feature | Party | Lobby | Group (Social) |
---|---|---|---|
Persistent object | No | No | Yes |
Concurrent limit per player | 1 | 1 | 10 |
Member management | Weak | Weak | Strong |
Chatting support | Yes | Yes | Yes |
Mute member | No | No | Yes |
DS Hosting integration | No | Yes | No |
Custom data | No | Yes | No |
To group players together based on custom rules, you can choose a service between Matchmaking and World.
Feature | Matchmaking | World |
---|---|---|
Rule complexity | Complicated | Simple |
Waiting time | Long if rules are strict | Short |
Teams | Yes | No |
Custom expressions | Yes | No |
Solo join | Yes | Yes |
Group join | Yes | Yes |
DS Hosting integration | Yes | Yes |
Standalone integration | Yes | No |
The following content is used to introduce the basic functions of these services.
1. Party
1.1 What is Party
Party allows players to get together in groups before entering a battle session, and provides a low-latency chat and data communication service.
1.2 Features
Creation and invitation
- Player can create a party as a leader
- Any member can invite other player to join in
- Every member will get instant notification when other member joins or leaves party
Interaction
- Members can chat with each others, supported by chat service
- Support for extension KV store and notification
Joining a battle
- A party can start matchmaking as a team(by leader)
- A party can enter lobby as a team(by leader)
1.3 Documentation
For more details, please refer to the Party.
2. Matchmaking
2.1 What is Matchmaking
Matchmaking provides a great way to enhance your game's matchmaking services with intelligent queuing and battle session placement.
2.2 Features
- Basic
- Players and the party leader can start matchmaking
- Support for team and solo modes
- Developers can create different placers of rule on web portal
- Rule sets
- Basic: Distance, Comparison, Latency, Collection
- Sort: Distance sort, Absolute sort
- Field type: number, string, string list, map
- Support for player data retreival, e.g. skill, level, MMR, ELO value…
- Advanced
- Dedicated Server backfill capabilities
- Matchmaking simulator
2.3 Documentation
For more details, please refer to the Matchmaking.
3. Lobby
3.1 What is Lobby
Lobby is a more traditional service to start a battle compared to automatic matchmaking service. Typically, a player can create or join one lobby to chat with others, form teams, select pre-gaming options, and invite friends before entering a battle session.
3.2 Features
Basic
- Created by any player or party leader
- All members can invite any other players
- Support for visibility and password settings
- Support for extensible KV storage and notification
- Support for group chating within a lobby
Advanced
- Customizable team options
- Query lobby list using filters
- Handle concurrent joining requests
- Start battle by lobby owner
- Broadcast status change events
3.3 Documentation
For more details, please refer to the Lobby.
4. World
4.1 What is World
World is a service similar to Matchmaking, but unlike Matchmaking, which takes some time to find matches that meet certain criteria, World uses Filters to distribute players based on attributes and join them into a BattleSession. World is more suitable for implementing large-scale scenarios like Game Hubs, which are typically the preliminary stages where players initiate Matchmaking or enter a Lobby.
4.2 Features
- Basic
- Join world as a single player
- Join world inviting other players
- Track world battle session events
- Advanced
- Join a specified world session
- Check runtime world buckets
4.3 Documentation
For more details, please refer to the World.
5. Battle Session
5.1 What is Battle Session
Battle Session provides management of battles running on game DS and players in the battles. Players can start a battle session from matchmaking or lobby.
5.2 Features
Basic
- Allocates and maintains Dedicated Server instance based session
- Support for battle record query
- Support for battle data getting and setting
- Support for chat in battle
- Monitoring of battle session on web portal
Advanced
- Battle result calculation based on Cloud Script (coming soon)
- Developers can calculate customized data (like MMR, ELO value… ) and store them into player data
5.3 Battle Data
5.3.1 What is Battle Data
Battle Data is designed to manage battle's history information. Battle history information for a game can be customized. Battle history information is usually generated when a battle is coming to end, and consists of the battle-associated data such as battle attribute information, players' information and battle statistics information.
5.3.2 Access Permissions
Battle data is read only for game client.
Game server has full access permission to battle data.
5.4 Documentation
For more details, please refer to the Battle Session.