# gamematch.updateMatchRule

本接口应在服务器端调用,详细说明参见服务端 API

修改 matchid 对应的匹配规则。 小游戏修改 matchid 对应的规则时,只能修改状态为关闭的 matchid。 matchid 的状态可以通过setMatchIdOpenState修改。

# 请求地址

POST https://api.weixin.qq.com/wxa/business/gamematch/updatematchrule?access_token=ACCESS_TOKEN

# 请求参数 - Query

属性 类型 默认值 必填 说明
access_token / cloudbase_access_token string 接口调用凭证

# 请求参数 - Body

属性 类型 默认值 必填 说明
match_id number 需要变更状态的 matchid,通过createMatchRule后台接口创建
team_count number 匹配结果中的队伍数量
team_member_count number 匹配结果每个队伍对应的成员数量
need_room_service_info number 是否需要在下发匹配结果时同步创建帧同步房间。0:不需要,1:需要。如果填 1,则会在下发对局匹配结果时携带accessInfo,用于加入帧同步房间。 要求 team_count * team_member_count 不超过 10 人才可以使用该项。
game_room_info Object 创建帧同步房间时的房间信息。在 need_room_service_info 为 1 时有效。

game_room_info 的结构

属性 类型 默认值 必填 说明
game_tick number 后台下发游戏逻辑帧的周期,单位 ms,最小不得小于 33ms
start_percent number 不填或者填 0 代表微信后台只要收到一次“开始游戏”指令就会开始游戏,否则微信后台会统计发送“开始游戏”指令的玩家数达到规定的百分比后才能启动游戏,填 50 表征 50%
udp_reliability_strategy number 使用的 UDP 可靠性策略,N:固定冗余 N 帧。建议值:3
need_user_info bool 房间是否需要用户的头像昵称——如果填 True,微信后台会去校验用户是否授权该应用获取其头像昵称的权限。如果房间需要头像昵称但是用户未授权,则用户后续加入房间的请求会返回失败;如果 need_user_info 为 False,后续用户的加入房间操作会成功,但微信后台不会在房间信息中下发用户的头像昵称。
game_last_time number 游戏对局时长,单位 s,不得超过微信后台最大限制 1 个小时,如果不填或填 0 则默认为 20 分钟
need_game_seed bool 是否需要在创建房间时同时生成一个随机的游戏种子

# 返回值

# Object

返回的 JSON 数据包

属性 类型 说明
errcode number 错误码
errmsg string 错误提示信息
match_id string 匹配池对应的 id,加入匹配时需要携带 matchid 以加入对应的匹配池

errcode 的合法值

说明 最低版本
0 请求成功
-1 系统繁忙,此时请开发者稍候再试
1 matchid 不存在
200000 无效的请求数据
500005 无效的 matchid
500008 每个对局需要的玩家数量超过房间服务人数上限

# 调用示例

curl -X POST -d '{"team_count": 3,"team_member_count": 3,"need_room_service_info":1, "match_id":"FD0PT4rKguEdK-L83RaJgdbchUCW8wjhSwgCku4CLQk", "game_room_info" : { "game_tick": 30, "udp_reliability_strategy": 3,"start_percent": 100, "need_user_info": true, "game_last_time": 3600, "need_game_seed": true}}' https://api.weixin.qq.com/wxa/business/gamematch/updatematchrule?access_token=ACCESS_TOKEN

# 返回结果示例

{
  "errcode": 0,
  "errmsg": "ok"
}

点击咨询小助手