Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >仅有两名前端开发,联机小游戏一周内上线,如何做到?

仅有两名前端开发,联机小游戏一周内上线,如何做到?

作者头像
腾讯云开发TCB
发布于 2023-07-14 06:48:41
发布于 2023-07-14 06:48:41
1K0
举报
文章被收录于专栏:云开发云开发

这是一款在一周之内完成立项到上线的防疫知识对战小游戏,你玩过吗?

它在上线四小时内用户数激增60倍,获得新华社力荐,开发过程中仅投入2个前端开发+1个美术+1个策划,这款小游戏里,单机玩法、邀请好友对战、在线匹配对战、排行榜、背景音乐音效等功能一应俱全。

一起来战疫

它为什么会诞生?

年初疫情袭来,团队作为游戏从业者,看到周边的人急需解疫情方方面面的信息,比如正确防控措施、医学科普、相关法律法规……然而,大家只能从电视节目、朋友圈分享文章、社区宣传栏等海量的渠道里汲取信息,这样不仅内容分散,再分享给亲友时也比较生硬。有没有一种方法,快速地帮助大家抗疫知识“划重点”,又生动有趣呢?

思前想后,团队决定通过游戏丰富的表现形式、微信小游戏分享和传播能力,来做一款寓教于乐的小游戏,帮助大家提升对防疫知识的了解,为全面防疫战贡献一份力量。

困难和挑战

这款小游戏需要同时兼具科普价值、易玩性和传播性,经过多次讨论,决定在游戏中策划“好友对战”+“个人测评考场”两种玩法,根据构想,这款游戏既有联机玩法,又有单机玩法。这样的游戏形态固然丰富,互动传播效果固然好,但是在实际开发中,联机玩法对于开发者的技术要求较高,且有很大的工作量。

主要难点如下:

(1)以疫情防控为主题的项目,越早上线对防疫的帮助越大,时间不允许开发周期过长。

(2)联机游戏对于后端能力要求很高,而一般小游戏开发团队,很难有足够的后端开发人力和后端开发经验。

(3)游戏想要丰富的表现形式,音效和背景音乐是必不可少的,需要确保使用的音乐素材没有版权问题。

以上困难,不只是开发这款疫情防控小游戏的困难,也是小游戏开发团队经常面临的共性困难。怎么办呢?

工欲善其事必先利其器。选择好的技术方案,事半功倍。首先,给大家介绍这个小游戏的主要技术方案:

云开发(CloudBase) 是云端一体化的后端云服务产品 ,采用 serverless 架构,免去了移动应用/小游戏构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具 (CLI) 、Flutter SDK等能力极大的降低了应用开发的门槛。使用云开发可以快速构建完整的小程序/小游戏、H5、Web、移动 App 等应用。

小游戏联机对战引擎(MGOBE) 提供客户端SDK和服务端框架,通过接口级接入,使游戏快速拥有高性能联机能力。MGOBE是一款为各平台小游戏、h5小游戏提供房间管理、匹配、帧同步、状态同步等后端服务的产品,适用于MOBA、FPS、休闲对战、回合制等各类联机游戏,让开发者专注于游戏逻辑,免去了对于服务端底层架构和网络通信等问题的顾虑。

正版曲库直通车(AME) 它是基于腾讯音乐娱乐集团(TME)线上背景音乐专用曲库,结合腾讯云存储、内容加速分发等基础能力,为解决内容创作过程中的正版背景音乐素材应用问题设计的 PaaS 产品。在控制台使用域名接入,三步完成了API 调用,便捷地实现背景音乐素材在小游戏内的流畅播放。

开发实践

用云开发在小游戏中实现世界排行榜云开发CloudBase,提供云函数云数据库、云存储、云调用、CDN、日志等一站式基础能力。我们基于云开发的云数据库和云函数,实现小游戏的世界排行榜。

首先,分析排行榜需要展示的信息。在这款答题小游戏中,排行榜按玩家总分展示上榜玩家的昵称、头像、得分、正确率,同时展示当前玩家的排名(若排名在1000以内,现实玩家具体名次;若排名在1000以外,显示“1000+”)。

具体实现:

1、定义云开发的云数据库数据结构

在云数据库内,定义一张User表,存储玩家信息

定义一张长度为1000的Ranking表,保持积分从高至低排序

2、每局游戏结束后,通过云函数进行数据回档。

定义一个云开发的云函数:updateUsers 用于更新用户数据

(1)更新User表信息,维持User表最新状态

(2)检查玩家当前积分,若积分高于排行榜表内最后一名,则将当前玩家插入排行榜表

3、查看、刷新排行榜时,通过云函数获取排行榜信息

定义一个云函数:requestRanking 用于获取排行榜数据

为了优化加载速度,在请求参数传入排行榜起始位和查询长度,在客户端刷新排行榜时分批请求排行榜数据

(1)获取Ranking表内,通过起始位和查询长度进行切片的玩家id列表

(2)通过玩家id索引User表内玩家信息

用联机对战引擎使小游戏具备联机交互能力小游戏联机对战引擎(MGOBE)提供了客户端SDK,支持直接通过接口调用的方式为游戏实现联机功能。

1、房间管理

首先,通过以下步骤将玩家加入同一个房间,玩家进入同一个房间后,即可开始相互通信。

(1)玩家通过客户端createRoom接口创建房间,通过转发链接将房间号发送给好友

(2)好友通过客户端游戏链接进入,通过joinRoom接口加入房间

2、在线匹配

玩家客户端进入匹配界面后,通过客户端matchPlayers接口发起匹配

  • 调用成功后,Room.onMatch、Room.onCancelMatch 将回调匹配结果。
  • 该接口需要与匹配规则配合使用,因此,匹配超时时间由开发者在匹配规则中定义。开发者需要在控制台上创建匹配,得到匹配 Code 作为该方法的参数 matchCode。
  • MGOBE控制台支持灵活的规则配置,可通过脚本语言实现1v1、1vN、NvM、KvKvK…、等多种匹配玩法。在这款游戏中,我们使用了如下匹配规则:

3、网络通信

玩家进入房间后,可通过帧同步或状态同步方式开始通信。MGOBE支持直接通过客户端SDK接口,实现帧同步、发送消息到客户端、发送消息到实时服务器。这款答题小游戏中,我们通过调用客户端SDK的sendToGameSvr接口,实现客户端之间的通信

4、实时服务器

MGOBE提供了node.js框架,开发者可在框架内编写自定义服务逻辑,实时服务器可通过控制台一键发布部署,自动进行有状态的弹性扩缩:

  • 房间的系列操作会自动触发到自定义服务逻辑。
  • 前端请求到自定义服务逻辑。当玩家加房成功后,可以使用客户端 SDK 中的 sendToGameSvr 方法直接与游戏服务器通信,实现游戏服务端拓展逻辑,如保存玩家数据,游戏状态同步等。

在这款答题小游戏中,客户端和实时服务器框架交互时序如下:

客户端请求列表:

(1) 准备

说明:开始游戏后,每个玩家发送一条READY命令给服务端,只有当前玩家会收到服务端广播。服务端收到第一条READY命令1s后开始游戏,全部玩家会收到服务端广播。

(2) 提交答案

说明:客户端针对一道题目提交答案,需要发送SUBMIT命令,并带上作答结果ans。全部玩家会收到服务端广播。

(3) 查询当前游戏状态

说明:如果客户端需要主动查询游戏状态,可以发送一条CURRENT命令给服务端,只有当前玩家会收到服务端广播。

用云开发+正版曲库直通车为小游戏接入带版权的背景音乐

“正版曲库直通车”将整个技术实现链路上的诸多环节简化为一个域名,三个接口。

一个域名:在控制台「域名管理」页面开发者可添加一个或多个经过备案的域名,启动后,系统将会自动配置CDN服务,将选购的音乐资源分发至与添加域名关联的资源集群,并在整个链路上进行传输加密。

三个接口:对应曲库三级信息存储架构,分类-歌单-歌曲。

(1)调用“获取分类内容”接口,此接口会返回曲库中的歌单分类信息;

(2)调用“获取分类内容下歌曲列表”接口,获取歌单中的歌曲列表信息,每个歌单分类下提供多首音乐;

(3)调用“获取歌曲播放信息”接口或“获取歌词信息”接口,获取指定歌曲的播放链接或歌词信息

在这款答题小游戏中,我们选择了曲库中的三首合适的背景音乐,通过一个云函数调用上述的“获取歌曲播放信息”接口。当小游戏客户端打开指定的游戏页面时,发起云函数请求,传入当前页面需要播放的音乐ID,获取歌曲的播放链接,再通过播放链接拉取到版权曲库中的音乐资源。

总结

对于小游戏而言,抓住市场的热点动向,快速研发上线,是小游戏成败的关键之一。借助腾讯云提供的云开发(CloudBase)后端云服务、小游戏联机对战引擎(MGOBE),以及正版曲库直通车,“一起来战疫”这款疫情防护相关小游戏,最终实现了:2个前端开发+1个美术+1个策划,在仅1周时间内,完成项目从立项到上线。

“一起来战疫”借助新华社和腾讯健康,官方、专业、及时的信息与题库,提供了优异的游戏交互体验、丰富有趣的游戏玩法,更及时地为大家普及最新的防疫相关知识,承载了高并发的压力,实现了高质量的玩法和性能交付。

Get同款技术方案

关于以上解决方案涉及的云产品,可以通过下面链接对产品进行了解和试用。

云开发产品文档:

https://cloud.tencent.com/product/tcb

小游戏联机对战引擎(MGOBE)产品文档:

https://cloud.tencent.com/product/mgobe

正版曲库直通车(AME)产品文档:

https://cloud.tencent.com/product/ame

One More Thing,彩蛋!

疫情期间,中小企业可以领取以上产品的50W的专项补贴哦!

更多精彩

扫描二维码了解更多


点击在看让更多人发现精彩

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云开发CloudBase 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
仅有两名前端开发,联机小游戏一周内上线,如何做到?
它在上线四小时内用户数激增60倍,获得新华社力荐,开发过程中仅投入2个前端开发+1个美术+1个策划,这款小游戏里,单机玩法、邀请好友对战、在线匹配对战、排行榜、背景音乐音效等功能一应俱全。
腾讯云开发TCB
2020/03/31
4.4K0
仅有两名前端开发,联机小游戏一周内上线,如何做到?
仅有两名前端开发,联机小游戏一周内上线,如何做到?
它在上线四小时内用户数激增60倍,获得新华社力荐,开发过程中仅投入2个前端开发+1个美术+1个策划,这款小游戏里,单机玩法、邀请好友对战、在线匹配对战、排行榜、背景音乐音效等功能一应俱全。
泛互联网行业产品团队
2020/03/04
10.5K1
仅有两名前端开发,联机小游戏一周内上线,如何做到?
腾讯云资深产品经理 | MGOBE:快速实现小游戏的多人联机对战玩法
8月17日,“小程序·云开发”系列沙龙(小游戏专场)圆满落幕。本期沙龙云+社区携手微信 & 云开发官方团队为大家揭秘爆款微信小游戏背后的技术,全面讲解小程序·云开发、实时数据库库及小游戏联机对战引擎,助力小游戏开发。下面是张小华老师针对如何快速的构建联机对战类小游戏,调用几个API接口即实现房间管理、在线匹配、帧同步、状态同步、实时游戏server等游戏组件,快速搭建属于自己的对战服的分享。
腾讯云开发者社区技术沙龙
2019/08/26
5.5K0
腾讯云资深产品经理 | MGOBE:快速实现小游戏的多人联机对战玩法
腾讯云大学大咖分享 | 小游戏联机对战引擎实践
腾讯云大学本期直播课程邀请到了腾讯云Web前端工程师通过两个小游戏demo,讲解了小游戏联机对战引擎中帧同步和状态同步两种应用场景。「腾讯云大学」联合「云加社区」为大家整理了课程精彩干货!
可可爱爱没有脑袋
2019/09/11
4.6K0
腾讯云大学大咖分享 | 小游戏联机对战引擎实践
别在纠结“后端”开发了,联机小游戏还可以这样做!
本篇文章要感谢「银笑的尤里」从 9月28日腾讯云深圳「游戏开发的超“音”“速”」沙龙发来了重磅消息,下面 Shawn 重点介绍对个人开发者惊喜的“MGOBE” 联机对战引擎。
张晓衡
2019/10/14
2.7K0
别在纠结“后端”开发了,联机小游戏还可以这样做!
腾讯云大学大咖分享预告│如何轻松开发一款对战小游戏
2018年微信小程序游戏内部测试开放后,微信小游戏的数量大幅增加。随着王者荣耀、刺激战场多款游戏风靡,大家对MOBA、FPS等游戏玩法逐渐熟知,玩家在线上邀请好友、或者通过匹配系统和其他陌生人玩家一起展开一场酣畅淋漓的游戏。在这些游戏中,开发者们是如何实现创建房间、玩家邀请、自由匹配等多种交互场景的呢?
可可爱爱没有脑袋
2019/08/15
1.6K0
腾讯云大学大咖分享预告│如何轻松开发一款对战小游戏
玩游戏学知识两不误 新华社、腾讯联合推出小游戏“一起来战疫”
二手烟会传播新型冠状病毒吗?临床解除隔离和出院的标准有哪些?延迟复工的工资应该怎样发放?……疫情期间,这些“超纲”问题让很多普通人感到“知识储备不够了”。现在,通过一款小游戏就可以找到答案。
用户5662445
2020/08/25
7230
玩游戏学知识两不误 新华社、腾讯联合推出小游戏“一起来战疫”
简单几步,教你搭建一款联机游戏
联机游戏的社交属性强,玩家粘性高,但是相对单机游戏,联机游戏开发周期长、成本高,因此很多开发者选择开发单机游戏,然而投入大量开发时间和资源,单机游戏活跃度不温不火,玩家数量持续流失。本文利用两款小游戏案例介绍如何快速搭建联机玩法,帮助开发者短期低成本实现一款联机游戏。
腾讯游戏云
2021/01/04
7.4K1
简单几步,教你搭建一款联机游戏
GME x 正版曲库AME,游戏音乐互动解决方案来了!
游戏场景越来越多样,近年来音乐互动玩法也开始涌动:用户在游戏娱乐场景中社交、联结老友时,交谈之间能有一些配乐;游戏中最重要的一战能有战歌鼓舞士气;或是游戏房间内的多人在线演出。社交的联结加上音乐的烘托,能让玩家在虚拟世界里畅快交友、展现自己。 而如何在游戏音乐互动中便捷(采购/接入流程简单!)、高性价比(便宜!)地使用正版音乐,一直是游戏开发者们的痛点。GME就收到了很多客户反馈,希望能在国战出征、游戏语聊、游戏K歌场景中使用正版音乐素材,这不就安排上了: GME x AME 联合发布 游戏音乐互动解决方
腾讯游戏多媒体引擎GME
2022/08/16
4.8K0
GME x 正版曲库AME,游戏音乐互动解决方案来了!
腾讯云为小游戏开发者升级工具箱 小游戏联机对战引擎免费用
12月23日,腾讯云宣布,除了给创意大赛的参赛者提供基础云资源,还将为参赛者提供更多工具支持。开发者在通过初赛后,可免费使用“小游戏联机对战引擎”。比赛结束后,获奖游戏中单日DAU在30万内还可持续免费使用小游戏联机对战引擎至2020年12月31日。
泛互联网行业产品团队
2019/12/23
2.3K0
腾讯云为小游戏开发者升级工具箱 小游戏联机对战引擎免费用
如何不用服务器来开发一个小游戏
享物说是一个大家可以互相赠送物品,有趣、不花钱的社区平台。为了创造更好的社区氛围,我们决定通过小游戏来增加社区的趣味性和互动性。
腾讯技术工程官方号
2019/05/16
1.3K0
如何不用服务器来开发一个小游戏
周桂华(花叔):微信小游戏开发之路
8月17日,“小程序·云开发”系列沙龙(小游戏专场)圆满落幕。本期沙龙云+社区携手微信 & 云开发官方团队为大家揭秘爆款微信小游戏背后的技术,全面讲解小程序·云开发、实时数据库库及小游戏联机对战引擎,助力小游戏开发。下面是周桂华老师从个人学习路径构建出发,阐述一个非游戏开发者是如何快速学习微信小游戏开发并同时驱动团队对接小游戏业务的。
腾讯云开发者社区技术沙龙
2019/08/23
2.1K1
周桂华(花叔):微信小游戏开发之路
腾讯云大学大咖分享预告│小游戏开发课—答题游戏!
在8月19日的直播课中,我们了解到了广泛应用于各种回合制/策略、实时会话类游戏的小游戏联机对战引擎,以及如何用帧同步构建实时对战游戏。
可可爱爱没有脑袋
2019/08/20
2.9K0
腾讯云大学大咖分享预告│小游戏开发课—答题游戏!
GME x 正版曲库AME,游戏音乐互动解决方案来了!
游戏场景越来越多样,近年来音乐互动玩法也开始涌动:用户在游戏娱乐场景中社交、联结老友时,交谈之间能有一些配乐;游戏中最重要的一战能有战歌鼓舞士气;或是游戏房间内的多人在线演出。社交的联结加上音乐的烘托,能让玩家在虚拟世界里畅快交友、展现自己。
腾讯游戏多媒体引擎GME
2022/03/16
4.9K0
GME x 正版曲库AME,游戏音乐互动解决方案来了!
2天上线一款可联机的分手厨房小游戏!AI+云开发CloudBase全自动,真能做到吗?
2天时间,0游戏开发基础,AI+云开发CloudBase,做出一款支持双人实时对战、可上线运营的《分手厨房》Web小游戏。 你以为AI只能写贪吃蛇?这次我用事实告诉你,AI+云开发能让个人开发者也能做出"真·多人在线游戏"!
腾讯云开发TCB
2025/07/08
1130
2天上线一款可联机的分手厨房小游戏!AI+云开发CloudBase全自动,真能做到吗?
借助云能力,小游戏开发过程是如何升级的?
导语 | 9月21日,云+社区技术沙龙“小程序·云开发”北京站圆满落幕。本期沙龙腾讯云联合猫眼、即速应用、白鹭引擎等企业,将从小程序·云开发后台技术、云开发实时数据推送实践、云开发AI智能客服实践等方面揭秘云开发应用实践,带来更多技术实战分享。本文是张宇老师关于如何使用白鹭引擎开发和实时数据推送能力更好的为小程序服务的内容分享。
腾讯云开发者社区技术沙龙
2019/10/09
9560
借助云能力,小游戏开发过程是如何升级的?
如何利用状态同步开发一款联机游戏
目前市场上单机游戏占比高,因为相对联机游戏开发周期短、成本低,但联机游戏的社交属性强,玩家粘性高。总体来说,开发联机游戏有一定的技术门槛。
腾讯游戏云
2020/12/24
4.1K0
如何利用状态同步开发一款联机游戏
腾讯云专家工程师林洁文:如何快速构建一款联机游戏
11月24日,云+社区开发者大会(苏州站)圆满落幕。本次开发者大会的主题为“姑苏城外论技术:物联网·小程序·微服务”,邀请了腾讯内部及业内行业大咖就物联网、小程序、微服务等当前互联网领域的热点技术的落地实践问题进行了深度探讨。同时,各位技术专家也与到场的开发者们展开了开放式对话,精彩不断。下边是林洁文老师关于如何利用小游戏联机对战引擎快速构建一款联机游戏,为游戏提供房间管理、在线匹配、帧同步、状态同步等网络通信服务,帮助开发者快速搭建多人交互游戏的分享。
TVP官方团队
2019/12/03
2.2K0
腾讯云专家工程师林洁文:如何快速构建一款联机游戏
腾讯云TRTC 牵手正版曲库,助您快速搭建沉浸式线上KTV
导语丨《2020年中国在线K歌社交娱乐行业发展洞察白皮书》显示,截至2019年,在线K歌行业月活跃设备数已达2亿。企查猫数据显示,截至2020年,行业用户规模已突破10亿人。 随着移动互联网浪潮带来了更多样的娱乐方式,消费的选择层出不穷。就连“唱歌”本身,也随着在线K歌 App 站上风口,而受到冲击。全民K歌、唱吧等在线唱歌软件让一众大厂纷纷下水,有趣的功能、海量的曲库,再加上互联网气味的社交属性,让在线K歌成为许多年轻人的爱好。 近年来我们能明显感觉到越来越多的用户也正聚向在线K歌应用,他们通
腾讯云音视频
2021/09/06
2.9K0
GME SDK 2.9.1,新增正版曲库/多语种文转音/多语种文本互译
“想在游戏里搞点音乐互动,也太麻烦了。歌曲版权分散各平台,价格又贵,搞不起搞不起。” “想要做个出海游戏项目,但海外玩家分布各地,有那么多种语言,怎么保证大家顺畅交流呀!” 别急,你想要的GME都有。 游戏多媒体引擎 SDK 2.9.1 正式版本已上线,可在【腾讯云游戏多媒体引擎GME官网-产品文档-SDK下载指引】中下载,或点击本文下方【阅读原文】直达页面。 本次新版本具体有以下3个功能新增、1个功能优化: v2.9.1版本新动态 功能新增 01 正版曲库 AME  GME SDK 新版本新增对「正版曲
腾讯游戏多媒体引擎GME
2022/08/16
2.1K0
GME SDK 2.9.1,新增正版曲库/多语种文转音/多语种文本互译
推荐阅读
相关推荐
仅有两名前端开发,联机小游戏一周内上线,如何做到?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档