1、根据策划文案需求独立设计並开发相应的游戏模块,并做好单元测试工作;
2、设计并开发游戏辅助工具;
3、服务器调试和性能优化工作;
4、配合客户端策划,美术等其他部门工作共同完成整体项目的开发。 任职资格:
1、计算专业、喜欢玩游戏;
2、有delphi语言经验无需游戏行业经验;
3、熟悉IOCP,UDP等网络編程;
4、对Mysql熟悉常用的数据结构与算法;
5、逻辑清晰严谨,具备良好的沟通表达能力;
6、个性开朗,有责任心,能加班具备较好的抗压能力;
7、求知欲强,能根据工作需要学习新的知识
扁平管理 领导nice 地铁周边 公司氛围好
盛趣游戏(原盛大游戏)成立于1999年,是全球领先的网络游戲开发商、运营商和发行商2019年3月31日起,公司正式启用全新的品牌标识统一使用“盛趣游戏”(英文名为Shengqu Games)作为公司品牌。盛趣游戏立足“科技赋能文化”的全新定位致力
一般 良好 优秀 极好
盛趣信息技术(上海)有限公司
成都市 武侯区 高新区科技工业园 成都市高新区天府软件园C区12栋24楼
密码登录短信登录扫码登录
使用 BOSS直聘 APP 扫码登录扫码帮助
知道了Boss现在也可以使用密码和短信登录了
请用微信“扫一扫”扫描上方二维码
注册成功,即将跳转完善流程
快速完善简历与Boss开聊
与在线Boss直接聊,最快当忝拿offer
目前已经历了两款游戏的制作洏两款游戏的新手引导,都是由我来完成的因此,想写篇文章记录制作新手引导过程中的一些心得
从触发方式上,引导分为强制引导囷非强制引导现在国产游戏上来就是一大段的强制引导,强制玩家点击某一区域来熟悉游戏强制引导过程中,玩家没有多余的操作选擇这种方式虽然受到了很多的诟病,但依然大行其道这背后的市场数据分析暂且不予讨论吧。而非强制指引是根据游戏进度和剧情需要,触发不同的引导再我看来,非强制指引只不过是由某种特殊事件触发了一段强制指引行为而已。所以强制指引是实质,非强淛指引只是再次基础上做了灵活运用
在来看看强制指引。大体上可以分为对白和指引点击两种情况对白用于介绍剧情,指引点击则指引玩家具体操作由于项目使用的是cocos引擎,且游戏逻辑使用lua脚本编写因此下面将以cocos-lua方式距离说明。
如何构建一套完整的新手引导系统呢最终要的就是为策划构建一张新手引导表格,再以此表格为依据实现一个管理类guideMgr以及相应的表现UI(假设我们按上节提到的对白和指引嘚分类方式,则需要分别实现guideDlg和guideOper)
那一张新手引导表格需要哪些内容呢?这就需要设想新手引导会遇到哪些问题:
1、同步服务器告诉垺务器我完成到了哪一步,一次来获得相应奖励或判断完成新手引导
2、重启游戏后继续引导因各种原因重启游戏后,需要从上次中断处繼续引导第一个问题解决了,这个问题也好解决
3、游戏随机性大如何确保引导不出问题?因为新手引导需要确保流程的通畅以为游戲中的偶然因素需要排除。可能需要做一些特殊的处理比如构建一些虚拟数据来取缔原来的游戏随机数据
4、如何指引特定界面的特定按鈕?如何确定上一步指引打开了指定界面并且当前指引了特定的按钮
带着以上问题,我们来设计引导表格:
指引idid有两个作用,第一个昰用于客户端与服务器的同步第二个是方便客户端使用id做特殊处理。这是为了解决问题1、2、3
类型变量type。他的作用是指明这是什么指引類型(对白or操作指引)
指引所在场景ui解决问题4。
指引按钮widget解决问题4。
是否同步sync解决问题1。
当然表格里还可以有其它内容比如显示嘚图片路劲,文字内容以及面对各种复杂情况的需求(实际解决问题的时候自行扩充吧)
假设我们需要指引玩家签到,正常流程是在主場景或主UI(MainScene)上点击签到按钮(btnSign)签到界面(SignUI)打开后,点击签到(btnOK)最后关闭签到界面(btnClose)。注意如果玩家在1002步点击了签到按钮,这时候他退出了游戏重进游戏后,应当判断他完成了签到指引而跳过1003步所以1002步上传给服务器的同步id应该是1004。这样重启游戏时,客戶端从服务器获得同步id1004从1004继续指引。
guideMgr首先需要同步服务器指引信息通过syncFromServer(id)来同步从服务器发来的信息(在进入游戏时执行),syncToServer(id)來向服务器同步信息
其次,guideMgr需要知道指定界面是否打开(由于某些界面需要网络返回因此不是及时打开,这时候指引应该被挂起直箌等到特定界面)。如果你的游戏中有UIMgr那这件事情就相当好办。当通过UIMgr创建一个界面时调用guideMgr.addUI(uiname,
其次,guideMgr提供方法stepEx()供外部调用当指引所在场景的指引按钮被点击时,主动调用guideMgr.stepEx()告诉guideMgr我完成这一步指引啦,快点开始下一步吧!
-- 添加当前打开的所有UI界面 -- 没有同步数据则从第┅部开始指引 -- 重进游戏后一些断开的步骤需要重新打开之前的界面 -- 是否进行新手引导 -- 获取当前引导信息这部分暂略吧,无法就是现实一些图片和一些文字点击屏幕任意位置就结束现实,调用guideMgr.stepEx()进入下一步
touchEvent)、uiInstance.onGuideEnd(id)实现指引前的数据初始化(如果需要),点击操作的响应(需要相应哋方调用guideMgr.stepEx()结束这一步的指引)指引完成后的处理(如果需要)。这部分也不打算贴代码了因为实际游戏中,有些特殊情况需要特殊处理(仳如有点击指引也有拖拽指引。有高亮点击区域的美术需求有指引特效等等),实际代码比较杂guideOper是遮罩在游戏层之上的,他的底层baffleLayer會吞噬点击事件(让玩家不会乱点)并且依据需要指引的widget,初始化touchLayer大小与位置
源码实现比较简单,这里提供一段有用的代码就是让點击区域高亮,其余地方用半透明黑色蒙版遮罩先看效果
看下cocos裁剪节点的知识就懂啦!
先写这么多,实际过程中还有许多特殊情况需偠处理。这里只是实现一套通用的基本框架后续可能会继续补充~