摘要:项目情况游戏名游侠姐妹工具说明本游戏前端使用白鹭开发,后端联网部分通过接入游戏云的实现。游戏简介游侠姐妹是一款支持联网对战的休闲类小游戏。游戏具体玩法为在屏幕中的大灰狼走到游侠姐妹的弓箭准星之中时,点击对应的准星进行射击,打中大灰狼加分。
项目情况
游戏名:《游侠姐妹》
工具说明:本游戏前端使用白鹭Egret开发,后端联网部分通过接入Matchvs游戏云的SDK实现。
游戏简介:
《游侠姐妹》是一款支持联网对战的休闲类小游戏。游戏具体玩法为:在屏幕中的大灰狼走到游侠姐妹的弓箭准星之中时,点击对应的准星进行射击,打中大灰狼加分。 红色姐妹只能打红色的大灰狼,蓝色姐妹只能打蓝色的大灰狼,打错颜色或者漏打自身颜色的大灰狼将扣除生命值。 成功集中大灰狼可以获得分数,使用金币可以复活。 随着游戏进行,大灰狼的前进速度将越来越快。在本局时间结束后,分数高的一方将获胜。
注意事项:
多人玩法:此游戏为联网对战游戏. 测试完整游戏流程需要两台手机和两个微信帐号,并同时进行多人对战。
单人模式:登录后大厅界面的 创建房间 按钮可体验真人+机器人玩法(需联网)
部分技术实现方案UI方面使用用Egret游戏引擎,Egret有一整套工具来支撑UI上的开发,网络利用Matchvs 的JavaScript SDK配合Matchvs云服务完成通信环节开发。同步机制采用Matchvs使用的是帧同步策略,定时触发同步但不等待。客户端定时上报消息,服务器定时下发数据给客户端,延迟高的客户端不会拖累其他人。
对于画面同步,实现方式也很简单。数据同步帧和渲染帧分离的情况下,收到同步帧数据,驱动渲染帧渲染。 首先在发送事件之前, 我们设置下同步帧的帧率,使用接口setFrameSync,一般设置为10(看你的项目要求)。这时, 我们发送帧同步数据,sdk只会在每整100ms( 1s / 你设置的帧率大小)时发送一次数据包,这个数据包括这段时间内的所有数据包(也可称之为这一帧的数据), 接收方就可以接到这一帧的数据。
具体的使用方法:先用接口setFrameSync设置帧率,然后再选择进入游戏界面,用接口sendFrameEvent发送帧同步事件(比如;游戏战斗情况实时事件)。这时房间内所有玩家通过绑定frameUpdate回调事件,就可以接受到这一帧的数据。
我们的实现: 玩家点击按钮射箭的判断以后,把消息通过接口sendFrameEvent发送出去,但是该玩家不立即处理客户端画面, 当玩家(包括该玩家)通过接口frameUpdate接受到数据,再修改客户端画面,从而实现同步。
基本原则;先绑定,再使用
发送帧同步事件(其实和普通接口一样的使用方式)
接受帧同步数据, 根据不同的event判断不同的事件
资源地址:
源码地址:https://github.com/matchvs/Ra...
目前游戏已经上线微信平台,在线体验地址如下:
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/95336.html
摘要:不努力不奋斗,可能就会在基层一辈子止步不前。不过,只一句,如果你还在做这一行,还是一名程序猿媛,想走上坡路的你,也许我这到手的十几家一线互联网公司性能优化项目实战可能会对你有所帮助。 ...
摘要:番茄工作法简约而不简单,本书亦然。在番茄工作法一个个短短的分钟内,你收获的不仅仅是效率,还会有意想不到的成就感。 @author ASCE1885的 Github 简书 微博 CSDN 知乎本文由于潜在的商业目的,不开放全文转载许可,谢谢! showImg(/img/remote/1460000007319503?w=728&h=792); 广而告之时间:我的新书《Android 高...
阅读 3015·2023-04-26 02:27
阅读 2717·2021-11-22 13:54
阅读 874·2021-11-12 10:36
阅读 3719·2021-10-09 09:44
阅读 3122·2021-10-09 09:41
阅读 1180·2021-09-22 10:02
阅读 2780·2019-08-30 15:56
阅读 3071·2019-08-30 11:02