在开发微信小游戏《六彩跳棋 》后,发现 微信平台 提供的能力真的很方便和强大。之前已经介绍了跳棋游戏的 开发逻辑 ,以及使用 CocosCreator 游戏开发引擎和框架的开发经历,这次就轮到微信开发平台的 开发经历 了。
使用微信扫码,进入微信小游戏《六彩跳棋 》
系统信息
微信框架下,提供了获取用户设备和系统信息的接口。设备型号 不同,小游戏的运行效果可能不同,可以通过这个信息调整小游戏的兼容效果。屏幕尺寸 不同,小游戏的显示效果也不同,一般都会采用自适应,适应屏幕宽度,高度按照比例调节,还要注意屏幕的 安全区域 ,特别是屏幕上方的 状态栏 高度,如果要显示状态栏,就要留出足够的高度。
事件绑定
微信框架下的交互功能,一般是要使用微信自带的事件绑定进行处理的。虽然会增加代码量,但是兼容效果肯定比较好,一般不会出现问题。只要处理好 显示的兼容效果 就好了,微信自带的组件是按照设备尺寸进行显示的,可能和小游戏的引擎框架不同,一般会按照屏幕像素尺寸显示,看上去会小得多。
授权信息
通过用户授权可以获取用户的信息,常用的是用户的 头像和昵称 ,用于小游戏显示和在线匹配时区分用户。用户的头像是一个地址信息,通过地址获取头像照片,地址要加入 白名单 才能访问到,可能要设置 照片格式 才能使用,在引擎框架使用前还要实例化为 图像精灵 才能绘制到屏幕上。昵称的处理上,至少要判断格式是否为字符串,才能正确显示。
数据处理
微信开放平台上提供了 本地存储 ,可以保存用户相关的信息,存储容量有限制。分为 同步接口 和 异步接口 两种,可以写入和读取,还有删除等。
微信开放平台提供的 后台服务 有云函数,云托管和服务器等。云函数 是最方便的,只要把接口的代码上传到微信服务端就可以调用了,但是代码不能 常驻运行 ,什么时候调用什么时候运行。收费方面,在用户量比较少的时候可以使用 免费版本 的,后期根据情况选择合适的收费套餐。
云函数的执行上,除了调用时传入的参数,还有微信提供的 用户ID ,这是根据用户在具体小游戏上生成的,用于识别不同用户。在云函数中可以使用数据库,并且不受数据库的权限控制。数据库采用 JSON格式 存储,可以设置访问权限。
在小游戏前端可以 监听数据库 ,访问数据库时要有相应的权限,当数据库的对应数据发生变化时,前端可以获取到数据,可能会多次触发,也可能受到网络影响延迟触发。
创建活动
微信提供了很多服务,方便小游戏玩家之间的互动。通过 微信服务 提供的接口,可以创建活动,更新活动参数,玩家转发给好友时可以设置相关参数,好友打开后进入小游戏可以调用接口获取到参数,然后执行具体任务。活动的参数有总人数和当前人数,活动进行中或者结束。可以在邀请好友一起游戏时使用。
交互功能
小游戏交互效果上,除了 音乐和音效 之外,微信提供的 震动接口 也很重要。特别是用户静音时,使用震动可以提高交互效果,但是在电脑端是无法使用震动功能的。震动分为长的和短的,适合游戏开始时和用户点击时。 微信提供的 弹窗组件 也很方便,弹窗支持 输入框 ,这样就更方便了,兼容效果还很好。
微信场景
微信场景支持也值得考虑, 游戏圈 的场景支持用户发布相关话题,内容可以是文字和表情符号,还有图片上传。排行榜数据 可以发送玩家的游戏数据,在微信场景里可以提供给用户查看。
微信还提供了 订阅通知 的功能,需要设置通知的格式,然后玩家点击订阅,就可以接收到小游戏发送的通知了。按照通知的格式,发送具体参数给微信服务端,用户就可以接收通知,打开通知后,可以进入小游戏和获取相关参数执行操作。订阅功能在用户点击后可以隐藏,但是下次打开还要显示,否则可能过了时效性,用户无法收到通知。通知内容可以是排行榜的排名和奖励,可以提高玩家的兴趣。
最后
总之,在开发《六彩跳棋 》这款微信小游戏时,本来以为挺简单的,开发时间应该很短,但是在实际的开发中却不是这样的。虽然游戏的 主要逻辑和功能 可以很快的做完,但是还要考虑到 CocosCreator 游戏引擎框架的功能和接口进行细节处理,还要根据 微信开发平台 提供的功能完善整个游戏的流程。最后,需要不断 测试和调整 游戏的流程和逻辑。最后的最后,就是总结开发过程,写点文章到技术博客 CSDN 上面来,以及 微信公众号 那里去。
使用微信扫码,进入微信小游戏《六彩跳棋 》
|