查看原文
其他

关于 Matchvs 服务转移的公告

Cocos Service COCOS 2022-06-10


近期我们收到反馈,Matchvs 的服务能力无法跟上大家的开发需求。秉承着为开发者甄选优质第三方服务的宗旨,通过多方考察、对比、测试等立体评估流程,Cocos 为大家找到了新的实时对战解决方案。

即日起,凡是通过 Cocos 服务面板开通 Matchvs 的开发者,均可以转移至腾讯云 MGOBE,继续为您的游戏赋能联机对战服务。 

传统的第三方合作模式,开发者直接面向服务商,需要承担许多风险,其中之一便是当服务不满足需求不想再用以及服务断供时产生的经济损失

而通过 Cocos Service 接入第三方服务则不存在这样的问题,您的交易均是与 Cocos 直接进行支付结算。Cocos Service 对需要付费的服务,均进行了严格的支付风险管控,为大家的财产保驾护航,所以,各位开发者无需忧心,您为 Matchvs 充值的余额不会消失,均可正常用于 MGOBE 服务中。

MGOBE 是腾讯云为开发者提供的实时、弹性扩容的高性能联机对战服务,能够快速构建游戏多人一起玩的能力。提供了包括房间管理、在线匹配、帧同步、状态同步等网络通信服务,开发者无需关心底层网络架构、服务器扩缩容、运维等。MGOBE适用于回合制、策略类、实时会话(休闲对战、MOBA、FPS)等游戏。


Cocos 与腾讯云联合推出了详细的 API 迁移文档,您可以参考文档可以快速完成迁移工作。

初始化SDK

初始化 MVS:

初始化 MVS 前需要先将 MatchvsEngine、 MatchvsResponse 进行实例化:
const engine = new MatchvsEngine();const response = new MatchvsResponse();
然后可以使用 engine.init 方法进行初始化,需要设置 response、channel、platform、gameID 参数。其中,response 对象可以设置各个 API 相关的响应回调函数和广播回调函数,在执行注册、登录、发送事件等操作对应的方法之后,reponse中的回调函数会被SDK异步调用。
var result = engine.init(response,'Matchvs','alpha','200978');if(result === 0) { console.log(“初始化请求成功”);}
在 response 中可以设置 initResponse 回调函数,用来检查 init 方法是否成功响应:
response.initResponse = function (status) { if (status === 200) { console.log("初始化成功"); }}
此外,MVS 提供了 premiseInit 方法,用来初始化独立部署的游戏,用法与 init 类似。

初始化 MGOBE:

在 MGOBE 中,SDK 的初始化涉及到 Listener 和 Room 对象。房间相关的 API 都位于 Room 实例中,Listener 对象用于初始化 SDK,并且可以将Room 实例添加监听,用于接收后台广播事件。

调用 Listener.init 时,需要设置 gameId、secretKey、url、openId 参数。其中 openId 由开发者维护,开发者需要为每个玩家指定一个 openId。在微信小游戏中,可以通过微信的接口获取玩家 openId。而 gameId、secretKey、url 可以从 MGOBE 控制台 获取。

示例代码如下:
const { Listener, Room } = MGOBE;
// 第1步:实例化 Roomconst room = new Room();
// 第2步:将 Room 实例添加到监听Listener.add(room);
// 第3步:初始化 Listenerconst gameInfo = { gameId: "xxxx", openId: 'xxxxxxxxxxxx', secretKey: 'xxxxxxxxxxxx',};
const config = { url: 'xxxx.wxlagame.com'};
Listener.init(gameInfo, config, event => { if (event.code === 0) { // 初始化成功,可以开始调用房间API // ... }});

提示:
  • 在 MVS 中每个接口调用后都会同步返回一个 number 类型的值 result,用来表示请求是否发送成功。而在 MGOBE 中每个接口没有这种行为,接口调用的成功、失败都会体现在回调函数中。

  • MVS 中每个 API 的响应回调和广播回调都需要在 response 对象中设置;而 MGOBE 中每个 API 的响应回调都是通过 callback 参数方式传给 API,广播回调统一在 room 实例中设置。

  • MGOBE 没有单独提供 MVS 中 premiseInit 方法,开发者可以直接使用 MGOBE.Listener.init 代替。

  • MGOBE 中没有提供反初始化 uninit 方法


详细的 API 迁移教程,请查阅文档!

文档链接:
https://gitee.com/folgerhu/matchvs2mgobe



Matchvs 正式上线 Cocos 服务面板至今,为许多游戏提供了实时联网功能服务,覆盖手游、小游戏、页游等多个平台。在此我们也向这款产品对行业做出的贡献,为幕后团队在技术创新上所做出的努力致上谢意。

Cocos Service 将继续保持初心,为开发者甄选优质第三方服务,让大家省钱、省时、省心、省力!

如各位开发者在使用 Cocos Service 过程中遇到任何问题,欢迎随时通过社区与我们联系!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存