前端答题小游戏_这是什么神奇操作!两个前端一周上线一款联机小游戏
这是一款在一周之内完成立项到上线的防疫知识对战小游戏,你玩过吗?
![](/assets/blank.gif)
它在上线四小时内用户数激增60倍,获得新华社力荐,开发过程中仅投入2个前端开发+1个美术+1个策划,这款小游戏里,单机玩法、邀请好友对战、在线匹配对战、排行榜、背景音乐音效等功能一应俱全。
它为什么会诞生?
年初疫情袭来,团队作为游戏从业者,看到周边的人急需解疫情方方面面的信息,比如正确防控措施、医学科普、相关法律法规……然而,大家只能从电视节目、朋友圈分享文章、社区宣传栏等海量的渠道里汲取信息,这样不仅内容分散,再分享给亲友时也比较生硬。有没有一种方法,快速地帮助大家抗疫知识“划重点”,又生动有趣呢?
思前想后,团队决定通过游戏丰富的表现形式、微信小游戏分享和传播能力,来做一款寓教于乐的小游戏,帮助大家提升对防疫知识的了解,为全面防疫战贡献一份力量。
遇到的难点
这款小游戏需要同时兼具科普价值、易玩性和传播性,经过多次讨论,决定在游戏中策划“好友对战”+“个人测评考场”两种玩法,根据构想,这款游戏既有联机玩法,又有单机玩法。这样的游戏形态固然丰富,互动传播效果固然好,但是在实际开发中,联机玩法对于开发者的技术要求较高,且有很大的工作量。主要难点如下:
(1)以疫情防控为主题的项目,越早上线对防疫的帮助越大,时间不允许开发周期过长。
(2)联机游戏对于后端能力要求很高,而一般小游戏开发团队,很难有足够的后端开发人力和后端开发经验。
(3)游戏想要丰富的表现形式,音效和背景音乐是必不可少的,需要确保使用的音乐素材没有版权问题。
解决之道
以上困难,不只是开发这款疫情防控小游戏的困难,也是小游戏开发团队经常面临的共性困难。利用腾讯云为游戏行业开发者提供小游戏解决方案,可以精准解决上述痛点。
利用小游戏联机对战引擎(MGOBE)提供客户端SDK和服务端框架,通过接口级接入,使游戏快速拥有高性能联机能力。MGOBE是一款为各平台小游戏、h5小游戏提供房间管理、匹配、帧同步、状态同步等后端服务的产品,适用于MOBA、FPS、休闲对战、回合制等各类联机游戏,使开发者专注于游戏逻辑,免去了对于服务端底层架构和网络通信等问题的顾虑。
同时,利用云开发(CloudBase)云端一体化的产品能力,采用 serverless 架构,免去了小游戏构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具 (CLI) 、Flutter SDK等能力也降低了多端开发的门槛。
在游戏BGM中应用了正版曲库直通车(AME),它是基于腾讯音乐娱乐集团(TME)线上背景音乐专用曲库,结合腾讯云存储、内容加速分发等基础能力,为解决内容创作过程中的正版背景音乐素材应用问题设计的 PaaS 产品。在控制台使用域名接入,三步完成了API 调用,便捷地实现背景音乐素材在小游戏内的流畅播放。
具体需求具体分析
1.房间管理
通过MGOBE的客户端SDK接口,“一起来战疫”小游戏中的双人多战答题房间,实现了创建房间、加入房间、退出房间、解散房间、查询房间的操作。
2.在线匹配
MGOBE提供了多样化匹配规则设计,在控制台上使用脚本语言配置匹配规则集,生成匹配code,通过客户端SDK的匹配接口传入必要的匹配信息,快速实现了针对玩家属性值的“区间分段匹配”和“误差匹配”。
对战游戏关键一点是能让玩家快速找到对手,在好友约战、在线匹配基础上,需加入机器人逻辑。MGOBE提供了一个特色能力——机器人匹配,游戏在非高峰时期时,很难为所有真人玩家建立匹配,利用MGOBE灵活的匹配规则集,设定匹配等待时间,超时候根据配置,自动为玩家匹配机器人。
![](/assets/blank.gif)
3.对战实时通信
玩家在答题对战中,需要在客户端之间进行通信,以同步对方的答题和得分状态。对于玩家之间的通信,MGOBE提供了客户端消息发送、帧同步、通过服务端进行消息转发的通信方式。“一起来战疫”通过使用服务端消息转发,实现了对局中不同客户端之间的一个状态同步。
4.对战的服务端逻辑
玩家在答题对战中,需要在服务端处理一些业务逻辑,比如判定输赢、更新玩家数据、回档对局结果等。“一起来战役”用到了MGOBE的实时服务器框架,在框架内编写机器人逻辑、调用云函数获取题库、通过云函数读写云数据库内的玩家表等数据,轻量化实现游戏的服务端能力。
![](/assets/blank.gif)
5.数据读写和数据存储
在“一起来战疫”中,数据读写需求频繁,比如读写用户表更新用户答题得分、计算排行榜信息、获取对战的题目和答案等。这些需求都可以通过使用云开发(CloudBase)产品能力实现。在微信的平台下,云开发(CloudBase)提供了登录鉴权能力和接口使用方式,可以在客户端SDK内直接调用云开发的云调用功能进行数据库访问,也可以在服务端进行云开发的数据库读写。
6.背景音乐
实现了基本的玩法之后,就是让游戏的表现形式变得更生动和丰满了。对于一款优秀的游戏而言,合适的背景音乐和音效是必不可少的。AME开通了针对游戏场景提供的背景音乐曲库,本款小程序挑选了三首单曲,在AME控制台上配置之后,直接在客户端调用api实现了音乐播放,并且完全不需要担心版权问题。
相比传统购买音乐版权后繁琐的版权配置、自行搭建或购买CDN分发服务、音乐资源的存储与防泄露等工作。AME将整个技术实现链路上的诸多环节简化为一个域名,三个接口,极大缩短开发时间,规避版权风险。
总结
对于小游戏而言,抓住市场的热点动向,快速研发上线,是小游戏成败的关键之一。借助腾讯云提供的小游戏解决方案,“一起来战疫”这款疫情防护相关小游戏,最终实现了:2个前端开发+1个美术+1个策划,在仅1周时间内,完成项目从立项到上线。
“一起来战疫”借助新华社和腾讯健康,官方、专业、及时的信息与题库,提供了优异的游戏交互体验、丰富有趣的游戏玩法,更及时地为大家普及最新的防疫相关知识,承载了高并发的压力,实现了高质量的玩法和性能交付。
![](/assets/blank.gif)
前端答题小游戏_这是什么神奇操作!两个前端一周上线一款联机小游戏相关推荐
- qt 3d迷宫游戏_类似《纪念碑谷》的好游推荐,这5款独立游戏你玩过没?
本文将为大家推荐5款别具一格的好游推荐,如果你喜欢玩独立游戏可千万别错过了,游戏中美妙的旋律和唯美的画面,将为您带来更加舒适的游戏体验.其中<机械迷宫>是一款休闲益智类的迷宫游戏,< ...
- 生日祝福小程序_唐嫣迎来生日,好友王冠送上祝福,晒出多张小姐妹合照
唐嫣迎来生日 说到唐嫣,大家是很熟悉的吧,唐嫣在娱乐圈的人气是很高的,这段时间也参加了一些盛典,盛典上的装扮女神范十足,生了小宝宝的唐嫣在状态上依旧是很不错的,之前主演的电视剧也有着不错的成绩.而12 ...
- 前端工程师号称魔术师_使用graphql将rethinkdbs实时魔术带到前端
前端工程师号称魔术师 In a recent post we explored how RethinkDB's built-in reactivity is a perfect fit to writ ...
- mame 删除游戏_创建我自己的Mame Arcade橱柜,Mame for Media Center PC和X-Arcade游戏杆
mame 删除游戏 This last week saw the release of MAME 0.100, the Multi-Arcade Machine Emulator. An amazin ...
- 比亚迪秦wince玩游戏_【新闻】1.5T比亚迪秦Pro或要降价/多款亲民新车上市!
看车玩游戏还能拿现金大奖!快戳进来! 日前有相关媒体报道,比亚迪秦Pro将于3月底推出搭载1.5T+6MT动力总成的新车型.发动机部分预计沿用目前在售的1.5T发动机,该发动机最大功率为154马力,峰 ...
- web前端入职配置_我如何从全职妈妈变成前端Web开发人员
web前端入职配置 I thought about writing about my personal coding journey many times, but never had the cou ...
- python第一周小测验_荐测验1: Python基本语法元素 (第1周)
测验1: Python基本语法元素 (第1周) 选择题: 1.Guido van Rossum正式对外发布Python版本的年份是: A.2002 B.2008 C.1991 D.1998 正确答案 ...
- 前端接收pdf文件_如何实现springmvc将返回的给前端的pdf文件放在浏览器里预览
展开全部 1,在web路径下建立一个uploadFiles文件636f707962616964757a686964616f31333361316561夹. 2,在springMVC里映射PDF文件就像 ...
- 我用消息队列做了一款联机小游戏
学算法认准 labuladong 后台回复课程查看精品课 点击卡片可搜索文章
最新文章
- Ubuntu16.04如何彻底删除Apache2
- CSS布局基础之二认识Viewport
- 推荐一个比较好的SQL工具——SQL Prompt
- 【机器学习入门笔记10:TensorFlow矩阵基础】20190217
- crawler_爬虫开发的曲线图
- mysql分布式数据库中间件对比
- oracle左右结合,oracle中的左右连接
- php workman实现socket服务及客户端连接
- 用友ERP-NC系统 漏洞 NCFindWeb接口任意文件下载
- oracle 分析函数之分组求和、连续求和
- Nacos视频教程分享
- 用计算机画经验频率曲线,第四节经验频率曲线经验频率曲线的绘制步骤收集水文资料,组成.ppt...
- linux配额管理命令,Linux管理员配额管理
- 在这个世界我只喜欢三件事---暮光之城
- Android自动待机和唤醒,Android深度睡眠和唤醒锁
- 一款Java神仙接私活项目,吊到不行!
- 管理订单状态,该上状态机吗?轻量级状态机COLA StateMachine保姆级入门教程
- Kafka 关于消费者组名Consumer Group
- wp主题模版xsbrand修改
- 模拟电路学习入门的建议(综合整理)
热门文章
- dubbo:9个你不一定知道,但好用的功能
- php 日志处理类,php中自定义日志处理类(类似于java中的log4j)
- CSS样式----标记选择器
- DB2 在线分析处理(OLAP函数的使用)
- OpenCV4.5.x DNN + YOLOv5 C++推理
- Swish激活 hswish激活
- PyTorch 0.4新版本 升级指南 no_grad
- python3射线法判断点是否在多边形内
- libreadline.so.6: undefined symbol
- pil拷贝,剪切,缩放