幼麟・闪影・奎特尔~2019不太冷!

原创
2019/01/23 14:48
阅读数 18

为了自己的第一个处女作《奎特尔数字大冒险》又封闭了近10天时间,给游戏增加金币和新角色,用了一个晚上研究微信云开发,感觉局限性太大又用了两天去搞腾讯的小游戏框架wafer-client-sdk、wafer-node-sdk、mysql、nodejs...虽然勉强把服务器是弄好了,但怕我临时折腾的服务器Bug太多,连登录都成问题,最后还是改成了本地的存储数据!

直到前天才空了下来,逛了下论坛才知道发生了不少趣事,看来沉迷于游戏开发与沉迷玩游戏同样要不得...

1. 幼麟棋牌开源版-四川麻将

幼麟棋牌在社区中的贡献是毋庸置疑的,据了解有些创业公司的项目就是在此的基础上起家的,也是不少同学踏上Cocos Creator的开发的第一个完整的学习教程。

在2019年元旦,麒麟子大神就在论坛上公布了「麟棋牌开源版-四川麻将升级到 Cocos Creator 2.0.6,真的是业界良心,行业楷模,同时也为Cocos Creator 2.x带来了更多的案例!

麒麟子还总结了在引擎升级过程中遇到的坑,Shawn在此当一个搬运工:

  1. 移除了 cc.director.getWinSize、cc.director.getVisibleSize 替代方案可使用 cc.winSize 、cc.view.getVisibleSize;

  2. Canvas 的 width 和 height 在onLoad的时候,不会随着屏幕变化;

  3. Widget 原来的 align once 变成了三个值:  ONCE 、ON_WINDOW_RESIZE 、ALWAYS ,默认是 ON_WINDOW_RESIZE,看下图:

      

  4. EventTarget.emit事件不再附加detail,如 node.emit('event'data),现在 node.on('event',data)时收到的就是data,携带的参数最多可支持5个,通过引擎源码中可以看到: CallbacksInvoker.prototype.invoke=function(key,p1,p2,p3,p4,p5){...}

  5. build的时候collider包暂时不能去,去掉的话执行会报错!

幼麟棋牌升级到了2.0.6,总的来说 Prefab 和场景加载确实快了许多,顺带幼麟棋牌还处理了几个问题:

  1. 替换了新Logo

     

  2. 全屏幕适配,目前支持从 iPhoneX 到 iPad 有兴趣的朋友直接源码搜索 setFitScreenMode;

  3. 网页版本不再检查版本号 不会再出现 新有版本 需要下载 的提示。

github地址:https://github.com/babykylin/babykylin_scmj

2. 闪影地图编辑器

闪影是什么?他与Tiled比有什么不同?他与CCC是怎样的关系?

首先闪影是隐形人(Cocos论坛ID),个人开发的一款游戏地图设计软件,目的是让一切变的灵活可控。

他和Tiled不同,Tiled是发布一个文件,CCC进行显示解析。但是闪影是在自有的显示界面,进行数据计算,然后在CCC中进行加载显示,也就是闪影用的所有东西,都是在CCC API基础上进行的,所有图块都是一个Node,所有的对像,你都拥有绝对的控制权,而且绝对不会有一点兼容问题。甚至通过闪影,你几乎可以完成对游戏地图上,所有的需求与设计。

下面看几个演示gif:

Shawn 还在 bilibili 上看了两集闪影的视频教程,非常的牛逼,有机会一定要实际体验一番,之后公众号还会陆继转载更多闪影教程。

4. 我近期遇到的问题

Creator2.0.7 BMPFont字体问题

在实践微信小游戏开发的过程中,Shawn之前使用的是2.0.5,后来升级到了2.0.7发现子域BMPFont字体会报错,而且2.0.5修改BMPFont的Label节点颜色在微信子域中也不生效。

将此问题报告给了引擎组大神,第二天就给我了解决方法,如果你也遇到些问题,可以参考这里: https://github.com/cocos-creator/engine/pull/3731

引擎源码修改了,但官方还没有发布新版本怎么办呢?但有不少同学不知道怎么整合到当前Creator的版本中,这里简单介绍下方法:

  1. 进入Creator安装包目录,找到engine目录,将要修改的引擎源文件替换。例如这里修改的文件是: cocos2d/core/renderer/canvas/renderers/utils.js 在Mac下路径为: /Applications/CocosCreator.app/Contents/Resources/engine/cocos2d/core/renderer/canvas/renderers/utils.js;

  2. 在命令终端回到/Applications/CocosCreator.app/Contents/Resources/engine下,执行 npm install安装引擎编译依赖;

  3. 在命令终端执行: gulp

  
  
  1. [11:02:56] Using gulpfile /Applications/CocosCreator.app/Contents/Resources/engine/gulpfile.js

  2. [11:02:56] Starting 'clean-cache'...

  3. [11:02:56] Starting 'build-debug-infos'...

  4. [11:02:56] Finished 'build-debug-infos' after 5.1 ms

  5. [11:02:56] Starting 'build-html5-preview'...

  6. [11:02:56] Starting 'build-jsb-preview'...

  7. [11:02:56] Finished 'clean-cache' after 166 ms

  8. [11:02:56] Starting 'build-jsb-dev'...

  9. [11:02:56] Starting 'build-jsb-min'...

  10. [11:04:27] Finished 'build-jsb-preview' after 1.52 min

  11. [11:04:57] Finished 'build-html5-preview' after 2 min

  12. [11:04:57] Finished 'build-jsb-dev' after 2 min

  13. [11:04:57] Finished 'build-jsb-min' after 2 min

  14. [11:04:57] Starting 'build-jsb'...

  15. [11:04:57] Finished 'build-jsb' after 50 μs

  16. [11:04:57] Starting 'build'...

  17. [11:04:57] Finished 'build' after 2.2 μs

  18. [11:04:57] Starting 'default'...

  19. [11:04:57] Finished 'default' after 2.3 μs

  20. /Applications/CocosCreator.app/Contents/Resources/engine

大约两分钟时间引擎编译完毕,这时再回到自己项目构建即可。

圆形遮罩Shader

之前Shawn发过一篇教程《CreatorPrimer| 2.x ShaderHelper组件速递》,其中附带的源码中有一个MaskShader实现将Sprite裁剪为圆形,在较小尺寸的图片上存在缺陷,只显示了部分,在论坛上了有同学提及。

之后参考「小叔叔」的https://github.com/fylz1125/ShaderDemos中的做法,将其移置到Creator 2.x中,成功实现圆形遮罩,看下图:

下来我会尽快将它整合到之前的ShaderHelper源码。

pbkiller对Creator1.10的支持

这段时间对公众号疏忽了很多,「MG」同学在公众留言了好几条消息,反馈pbkiller在1.10上报错,非常抱歉因为我的疏忽,给大家带来的困扰!

目前解决办法是将pbkiller.js 88行,修改如下:

  
  
  1. if (cccVer >= 2 || (cccVer >= 1.1 && cccVer < 1.2) && ProtoBuf.preloaded)  {

  2.   ...

  3. }

新增 (cccVer >= 1.1 && cccVer < 1.2)对1.1的版本,它与2.x的处理方式相同。我下来也会尽快提交Cocos商店,再次感谢「MG」同学,帮助我发现pbkiller的Bug!

5. 结语

最后还是不得不说一下《奎特数字大冒险》,新增加了角色、金币功能,为的是能留住用户,帮助小朋友们能够使用这款披着游戏外表的脑力训练软件 。

为什么要继续坚持更新下去呢?

前几天发生了这样一幕,我和女儿去理发店,人很多需要排队,我拿出手机让女儿当我的专职测试人员,尝试我调整的游戏难度!

她是百般的不情愿,它已经被玩麻木了,没办法我只好答应她:“打过100分请你吃好吃的!”。

旁边一位小男孩被我们的游戏声音给吸引了过来,凑过来看我们玩。

我问道:“小朋友,你上几年级了?”

 小男孩说:“3年级,你们在玩什么呢?”

 我对女儿和小男孩说:“我们玩的是数学游戏,馨儿,我们给这位小朋友试试,看他能打多少分?” 小男孩高兴地说:“好呀、好呀!”

小男孩试了几把,找到了感觉,但在遇到4个数字的BOSS怪兽就有些心慌了,掉了一滴血,就直接把手机扔回给了我们。

我女儿接下手机,从容不迫地接着玩下去,说道:“你来算小的,我算大的”,就这样两个小朋友配合着,喊着数字继续战斗。

女儿刚上一年级,目前通过我的压迫充当《奎特数字大冒险》的测试人员,已经对20以内,3个数的加法已经是不需要思考了,一眼能看到能凑成10的数字 ,范围在20~30的也能在5秒左右计算出来,小男孩只能在旁边看着,只能跟上计算量在10以内的怪兽。

我无意中观察到,打到后面,面临怪物的逼近,就算有时数字识别有点问题,女儿还是能很冷静的将之前的数字擦除,然后再工整的重写上去。

面临危机,还是能保持冷静,看着她能不断成长,心里很高兴!!!



欢迎关注「奎特尔星球」公众号,欢迎大家投稿,来我们一起成长!

「奎特尔星球」微信公众号

「奎特尔星球」博客网站,建设中...

本文分享自微信公众号 - Creator星球游戏开发社区(creator-star)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部