WiGame道具服务器同步开发者游戏服务器接口说明

玩家购买wigame道具后,如果游戏本身有道具服务器,wigame系统会调用道具服务器的接口,同步道具信息。

调用格式如下:

 HTTP POST方式调用

调用参数

wigame_uid: wigame的用户ID,开发者在自己的用户系统中应有保存wigame用户ID的表,或字段

buy_list: 购买信息,格式为:’道具id,购买数量‘,游戏服务器可以解析这个参数得到购买道具的id及购买数量。

timestamp: 时间戳,uinx时间。官方解释

extra: 额外信息,可以在调用WiGame发起道具购买时传入。一般用来存储游戏玩家的信息。

sig: 这个参数是一个检验参数,用来保证请求是wigame发出,格式为: md5(buy_list+timestamp+extra+secret_key),其中secret_key可以在wiyun网站的应用主页中获取,请保证这个key不被泄露。游戏服务器可以用sig来检验请求是否合法。

游戏服务器处理成功后返回http状态200,非200的返回均视为操作失败,玩家的购买不会成功,会提示稍后再试。

游戏服务器的接口地址,即http url,在 wiyun网站->应用->道具商店->道具商店设定 中可以填写

超链接标签的渲染与点击处理

WiEngine的Label目前不支持内嵌超链接, 当然要做这个功能不是不可能, 只是没时间而已. 不过有些同学又催的急, 所以我这里提一个简化的方案, 这个方案只适用于Android平台, 语言使用Java.

这里提的方案, 并不是只能用于渲染超链接, 严谨的说, 这个方案是用于渲染富文本的, 也就是文本里面每个字都可能有自己的颜色, 样式, 大小, 甚至插入图片到文字里, 都是可以的.

要解决两个问题: 一个是渲染, 一个是点击处理. 以前写过一个文章, 看看谁还有印象: 阿拉伯文的支持示例, 没印象的快去复习. 我们可以使用同样的策略让android帮助我们渲染富文本, 而本文的demo也基本是修改这个而来的.

点击的问题, 主要是要两点: 一是从点击的像素位置获得点击的字符位置, 二是从字符位置检查是否点到了链接, 所幸android都提供了这样的api, 因此这点也轻松, 具体看注释.

这种方式的缺点:
1. 依赖于Android Java API, 不能跨平台
2. 标签贴图是通过Bitmap生成的, 目前不支持自动恢复
3. 每个标签都必须有一个TextView对应, 不然处理点击不方便, 因此这样的标签不要太多. 不过这点如果深挖一下也许可以解决, 因为布局实际上是Layout这个类处理的, 应该可以想办法重用一个Layout类来处理所有的点击.

Android版demo

HGE Bitmap Font Editor使用说明

hgefonted(全称HGE Bitmap Font Editor)是由Relish Games公司开发的一款开源图片字体工具,不过由于其不支持中文, 所以我们对其做了修改, 特此说明一下修改的地方.

主界面

请注意用红圈标注的部分, 后面会解释

如何编辑中文?

在主程序界面,点击Edit按钮,会弹出一个文本框,在文本框中输入文字内容,移动鼠标离开文本框到窗体内其他空白区域(鼠标会不显示,没关系)点击一下,之前输入的内容就会显示在右侧区域内。编辑时最好保证没有重复字符, 这样可以得到更小的图片。

如何查看当前被选中的是什么字体?

当前被选中字体会显示在标题栏中。

“????”是什么字体?

非英文字体,移动鼠标到上面,在标题栏中即可看到该”????”所代表的真正字体是什么。

如何保存?

点击保存按钮,输入要保存的文件名即可。保存成功会生成两个文件,.fnt文件和.png文件。
命名时最好为小写字母,因为eclipse编译时大写会报错

Unity中集成WiAd(Android)

Unity中集成WiAd并无特别之处, WiAd文档中介绍的集成方法仍然适用. 不过有一点需要注意: Unity有多个Activity可供选择, 一个是NativeActivity的子类UnityPlayerNativeActivity, 还有一个是普通的Activity: UnityPlayerActivity. 我们不能用UnityPlayerNativeActivity, 因为其事件都直接走native层, 会导致广告无法点击. 只要用UnityPlayerActivity就不会有问题.

具体的步骤, 可以参考Unity中集成WiGame一文, 如果你不需要集成WiGame, 可以跳过WiGame相关的部分. 在得到了Unity游戏的android工程后, 就可以按照WiAd文档中的方式进行集成了.

附件是一个已经集成了WiAd的Unity游戏工程可供参考

WiAd和Unity集成的示例Android工程

WiEngine 3.10.1发布

3.10.1是一个常规维护版本, 主要是bug修正和功能调整, 新功能不多.

3.10.1中最大的改动有两个:

  • 提供了对Android 4.1的支持, 不过由于目前还没有接触到x86和mips的4.1机器, 所以暂时只支持arm架构
  • 网格动作进行了增强, 不过API没有变化. 只不过以前的网格动作有一些效率和实现上的问题, 进行了修正

其它的修改不大不小, 但说不定你就需要呢.

目前WiEngine在向OpenGL ES 2.0兼3D发展, 任务比较重, 因此3.10之后的更新基本都是这样的常规性更新, 也就是说, 不会有3.11, 只会有3.10.23456789. 再往后就是4.0了, 但要较长的时间才能达到.

+++ 3.10.1 +++
[new] wyZwoptexManager增加makeButton方法
[new] wyTextBox增加set/isPassword方法
[new] wyZwoptexManager增加了getFrameRects方法
[new] wyNode增加getChildrenByTag方法, 可以获得所有具有同样tag的子节点
[new] 添加了示例WiEngineDemos/Node/RenderTexture
[rev] 对网格动作进行了重构和增强, 运行更有效率, 不再局限于全屏, 更加通用
[rev] wyPageControl滚动时将对其它节点发送点击取消事件
[rev] wyZwoptexManager的getFrames方法改名为getFrameNames, getFrame方法改名为getFrameRect
[rev] wyZwoptex的getFrames方法改名为getFrameNames
[rev] wyTextBox弹出输入对话框时自动显示软键盘
[rev] 修正RenderTexture在基础大小适配模式下的问题
[fix] 修正在Android 4.1上无法启动的问题
[fix] 修正iOS上通过资源id访问资源时查找多语言资源不对的问题
[fix] 修正一个3.10引入的timer设置成按帧调用时delta时间是0的问题
[fix] 修正wyNinePatchSprite构造方法的第二个参数被忽略的问题
[fix] 修正iOS/MacOSX上调用wyAudioManager.removeEffect的崩溃问题
[fix] 修正ShapeAnimation的一个崩溃问题
[fix] 修正CoverFlow的java版本demo的崩溃问题
[fix] iOS上WiNetwork操作失败的一个空指针问题
[fix] 修正set/getTtickFactor的名称错误, 应该是set/getTickFactor
[fix] 粒子系统在某些设定条件下出现的粒子释放节奏出错
[fix] 调用wyHttpRequest.addHeader方法后出现的崩溃问题
[fix] Windows下wyPrefs.getString返回的字符串释放会出错的问题
[fix] wyScrollableLayer中的子节点在滚动范围之外可以被点击的问题
[fix] windows版本在基础适配模式下触摸点不对的问题
[fix] wyPrefs在iOS中没有立刻同步到磁盘的问题

微云SDK下载页面

如果需要内存调试版本, 在这里下载:
Android版
iOS版
MacOSX版
Windows版

WiGame3.4版本升级说明

WiGame3.4版本已于近期发布,开发者们可以在SDK下载页面下载。新的版本增加和优化了很多功能,本文会将这些功能一一详细说明。

优化分数提示条等游戏内提示条样式:

wigame3.4版本优化了游戏内提示条的显示样式。整体更加简洁、清新,占用空间更小。对于游戏界面比较“紧凑”的游戏,强烈建议更新。

分数条

增加wi按钮:

wi按钮是wigame提供的一个界面按钮组件,开发者可以自行选择添加,可以随时在wigame开发者后台开启或关闭。开发者可以指定按钮的位置,不影响游戏自身元素。在游戏中,玩家可以随意拖动按钮的位置。

wi按钮让玩家与社区互动提供了一个很好的入口。开发者几乎可以不用自行开发wigame社区的入口,并且能够提高用户的活跃度,增加冒泡收入。

wi按钮的显示样式

大幅优化支付功能:

新版本的支付界面为全屏界面,避免了小窗口支付带来的不佳用户体验。并且全新设计了清新风格的支付界面,让用户支付流程更加便捷、专业。

新本中支付宝采用了native的支付方式,无需用户跳出游戏短信验证,大大提升了支付的转化率。如果您在使用wigame的道具支付功能,强烈建议更新到最新版本。

添加手机短信支付能力

新版本支持中国移动提供的短信支付功能。用户可以在游戏直接使用手机话费购买道具,无需跳出游戏。购买过程安全便捷,有效提升用户的支付成功率。

该功能需要您升级到wigame最新版本,通过微云的审核后开通。

wigame界面可配置:

wigame社区中的一些功能菜单(例如:游戏盒子),可以在后台由开发者控制是否显示。开发者可以根据游戏的自身性质灵活控制wigame中的界面。

一些小BUG的修复:

新版本也修复了一些小BUG,提升了wigame整体性能。

 

WiEngine修正和Android 4.1的兼容问题

今日听闻WiEngine在4.1上有点问题, 在模拟器上试了试, 确实启动不了. 经过艰苦卓绝, 柳暗花明的调查研究之后, 发现4.1底层有些改动, 因此特别更新一版,当然这是内部版, 不过离3.10.1已经较为接近.

我们新增了一个libaal_jellybean.so提供对4.1的适配, 不过由于我们缺少mips和x86平台的相关文件, 这个修正目前只对arm平台有效. 非arm平台的话, 你只能继续等了.

WiEngine android库工程(仅arm)

CHANGELOG
[new] wyZwoptexManager增加makeButton方法
[rev] wyPageControl滚动时将对其它节点发送点击取消事件
[fix] 修正在Android 4.1上无法启动的问题
[fix] 修正一个3.10引入的timer设置成按帧调用时delta时间是0的问题
[fix] 修正wyNinePatchSprite构造方法的第二个参数被忽略的问题
[fix] 修正iOS/MacOSX上调用wyAudioManager.removeEffect的崩溃问题
[fix] 修正ShapeAnimation的一个崩溃问题
[fix] 修正CoverFlow的java版本demo的崩溃问题
[fix] iOS上WiNetwork操作失败的一个空指针问题
[fix] 修正set/getTtickFactor的名称错误, 应该是set/getTickFactor
[fix] 粒子系统在某些设定条件下出现的粒子释放节奏出错