Stormancer.Server.Plugins.PartyMerging 0.1.2.25-pre

This is a prerelease version of Stormancer.Server.Plugins.PartyMerging.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Stormancer.Server.Plugins.PartyMerging --version 0.1.2.25-pre                
NuGet\Install-Package Stormancer.Server.Plugins.PartyMerging -Version 0.1.2.25-pre                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Stormancer.Server.Plugins.PartyMerging" Version="0.1.2.25-pre" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Stormancer.Server.Plugins.PartyMerging --version 0.1.2.25-pre                
#r "nuget: Stormancer.Server.Plugins.PartyMerging, 0.1.2.25-pre"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Stormancer.Server.Plugins.PartyMerging as a Cake Addin
#addin nuget:?package=Stormancer.Server.Plugins.PartyMerging&version=0.1.2.25-pre&prerelease

// Install Stormancer.Server.Plugins.PartyMerging as a Cake Tool
#tool nuget:?package=Stormancer.Server.Plugins.PartyMerging&version=0.1.2.25-pre&prerelease                

Sometimes, players want to find other players to fill up their parties. To this effect they can use party invitations and codes, or make their party searchable through the party search API.

This plugin offers another option. Using it, parties can declare themselves as searching for other members. When doing that, the party joins a matchmaking system which will try to match the party with other parties once every second until the party leaves matchmaking or it is filled.

The matchmaking system works by offering members of one or several of the parties currently in matchmaking to leave their party and join another one, therefore merging the player parties. It can also query for searchable parties and offer players to join these if they match, on any kind of similar logic.

Server

Creating a custom merging algorithm

Admin APIs

Get status

GET: /_app/{accountId}/{app}/_admin/_partyMerger/{partyMergerId}/status

This api provides real time information about the merging process, including customizable data generated by the Algorithm by implementing IPartyMergingAlgorithm.GetStatusAsync.

Client

Getting the current party merging status.

The current status of the party merging system is available in the public server data of the party.

auto party = tryGetParty();
if (party != nullptr)
{
    const auto& serverData = party->settings().publicServerData;
    auto it = serverData.find("stormancer.partyMerging.status");
    
    if(it != serverData.end())
    {
        std::string status = it->second; //InProgress, Completed, Cancelled or Error.
    }
}
else
{
   //Not in a party
}

Fields related to the party merging plugin in public server data are:

stormancer.partyMerging.status contains the status of the current or last merging operation. Possible values are:

  • InProgress
  • Completed
  • Error
  • Cancelled

stormancer.partyMerging.merger contains the id of the last merger used.

stormancer.partyMerging.lastError contains the message associated with the last error encountered while running a merger.

stormancer.partyMerging.merged exists if the merger has been successfully run on this party once.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Stormancer.Server.Plugins.PartyMerging:

Package Downloads
Stormancer.Server.Plugins.SampleApp

The core features of the Stormancer sample application in a nuget package.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.1.2.77-pre 56 9/26/2024
0.1.2.76-pre 40 9/26/2024
0.1.2.75-pre 48 9/26/2024
0.1.2.74-pre 42 9/26/2024
0.1.2.73-pre 67 8/9/2024
0.1.2.72-pre 45 7/29/2024
0.1.2.27-pre 58 7/9/2024
0.1.2.26-pre 53 5/28/2024
0.1.2.25-pre 66 4/22/2024
0.1.2.24-pre 59 4/22/2024
0.1.2.22-pre 87 4/2/2024
0.1.2.20-pre 45 3/11/2024
0.1.2.18-pre 119 12/11/2023
0.1.2.17-pre 82 12/8/2023
0.1.2.16-pre 67 12/7/2023
0.1.2.15-pre 90 12/1/2023
0.1.2.13-pre 68 11/30/2023
0.1.2.12-pre 79 11/24/2023
0.1.2.4-pre 75 11/24/2023
0.1.2.3-pre 76 11/24/2023
0.1.2.2-pre 67 11/20/2023
0.1.2-pre 76 11/14/2023
0.1.1.3-pre 84 10/27/2023
0.1.1.2-pre 79 10/26/2023
0.1.1.1-pre 76 10/26/2023
0.1.1-pre 80 10/25/2023
0.1.0.15-pre 70 10/19/2023
0.1.0.14-pre 79 10/18/2023
0.1.0.13-pre 73 10/13/2023
0.1.0.12-pre 64 10/11/2023
0.1.0.11-pre 71 10/5/2023
0.1.0.3-pre 67 10/5/2023
0.1.0-pre 63 10/4/2023

Added
*****
- Created the plugin party merging, which enables to create server side logic to merge parties on request by party leaders.
- Added progressive party merging.
- The party data stormancer.partyMerging.merged is  set to true as soon as an user joins the party through the merging process.