This function will create a multi-player session using the Session Template, matchmaking hopper and Secure Device Association template, which you should have created beforehand in the XDP dashboard. The user ID you can retrieve for a particular game pad by calling the xboxlive_user_for_pad() function and visibility will be one of the following constants:
| Constant | Description |
|---|---|
| xboxlive_match_visibility_open | specifies that the session can be joined by the others. |
| xboxlive_match_visibility_private | specifies that the session is not visible to users who are not session members. |
| xboxlive_match_visibility_usetemplate | specifies that the value used in the session template should be used (this should normally be used as you can't override a template's value if one has been set in XDP). |
The function returns a unique Request ID value, which can then be used to identify the correct Social Asynchronous Event for this function. This event will be triggered when the session has been created and will contain a DS Map in the variable async_load with the following key/value pairs:
xboxlive_matchmaking_create(user_id, visibility, template, hopper, sdatemplate, [matchattributes]);
| Argument | Description |
|---|---|
| user_id | The user ID pointer to use |
| visibility | One of the constants listed above |
| template | The name of the session template |
| hopper | The name of the matchmaking hopper |
| sdatemplate | The name of the secure device association template |
| matchattributes | [OPTIONAL] |
Request ID (integer)
var userID = xboxlive_user_for_pad(global.PadIndex);
result = xboxlive_matchmaking_create(userID, xboxlive_match_visibility_usetemplate, "MatchTicketSession", "MatchTicketHopper", "PeerServerTraffic");
The above will retrieve the user ID for the user on the given gamepad and then initialise a matchmaking session for them.