心 · 体会

G妹上死3舅舅全攻略

时间:2018-09-13作者:沙木来源:FourWoods

标题只为博君一笑,请勿过度解读和想象。合理YY强国,过度YY伤身~~

词解:

  • G妹——指一款游戏引擎gamemei(简称Gmei),官网叫游戏魅,这是一款HTML5标准的云引擎,适合制作H5小游戏。(引擎地址:http://zuoyouxi.gamemei.com/qiyun/gamemei_sln_new/gamemei/)

  •  死3舅舅——4399小游戏平台。(平台地址:www.4399.com)

本文主要介绍用Gmei引擎制作的游戏如何顺利的上架4399平台。首先,假设你已经用Gmei制作好了一款游戏,准备发布上架自己的作品到4399。

 一、添加4399的基础API和激励广告API

1、 添加基础API到游戏工程文件中。(详见 三)

2、 添加激励广告API。4399的H5激励广告可以选择添加,也可以不添加,根据自己的游戏情况而定(强烈建议添加,让游戏产生一点小小的收入)。一般,如果你的游戏中有“充值点”,就可以考虑将这个激励广告添加在这个“充值点”上,玩家在渴望解锁某个功能或某个特殊服务的时候,为玩家提供一个支持游戏开发者的渠道——看几秒广告获得RMB玩家才可能有的福利!

(如果你不打算添加这个API,以下内容可以跳过)

为你的“充值点”设计一个按钮,比如“看广告复活”或“看广告解锁”等按钮。然后在按钮上加入“鼠标松开”事件。

在“鼠标松开”事件中,触发4399广告API代码,方法是找到“执行代码”动作添加入事件,然后将4399的广告API代码复制粘贴进去:

window.h5api.playAd(callback);
function callback(obj){
    console.log('代码:' + obj.code + ',消息:' + obj.message);
    if(obj.code === 10000){
        console.log('开始播放');
    //这里可以写入你期望的动作
    } else if(obj.code === 10001){
        console.log('播放结束');
    //这里可以写入你期望的动作
    } else {
        console.log('广告异常');
    //这里可以写入你期望的动作
    }
 }

如果你是JS高手,知道如何在代码中实现引擎里的一些动作效果,那么就可以在如上代码中的对应反馈的大括号中直接写代码来完成你的广告触发之后的游戏动作。但是,如果你像我一样对代码并不是很熟悉,则可以通过变通的方式来处理广告反馈值之后的游戏应做的反馈动作。如下:

window.h5api.playAd(callback);
function callback(obj){
    console.log('代码:' + obj.code + ',消息:' + obj.message);
    if(obj.code === 10000){
        console.log('开始播放');
    //这里可以写入你期望的动作
    } else if(obj.code === 10001){
        console.log('播放结束');
    //这里可以写入你期望的动作
        game.ADover=1;
    } else {
        console.log('广告异常');
    //这里可以写入你期望的动作
        game.ADover=2;
    }
}

所以,这是借助了一个我们自己申明的变量ADover的值来判断4399的广告是否从后台传来了播放结束的指令,以便我们将看广告之后的福利及时的交给玩家。

有了自定义的变量,那就需要在游戏中不断的判断这个变量ADover此时是否等于1了,方法是在玩家点击这个按钮的时候同时触发一个“执行闹钟”的动作。

闹钟事件可以在其内添加一个执行自身的动作,以实现一个不断帧听的功能。当满足某个条件的时候不执行那句执行闹钟自身的动作,则闹钟就停下来了。按照这个逻辑,在该闹钟事件中,你需要写入判断ADover的值是否为1的动作(我们在点击广告之前利用“设置变量”动作将ADover的值设为0),当ADover=1的时候则执行玩家看完广告之后,执行你希望给予玩家什么东西的各项动作并结束该闹钟;当ADover等于2的时候,说明广告异常了,则在这里可以执行你反馈给玩家的提示及结束该闹钟。

逻辑既是这样,具体写法各有各的情况,就不举例了。

接下来就,发布吧!

 二、发布H5工程包到本地

1、在引擎编辑界面的顶部菜单中点“发布”;

2、在发布页面点预览窗口下方的“网页(html5)”按钮,便可将游戏的H5 zip包下载到本地硬盘中;

3、在本地硬盘找到下载的ZIP包,解压,需要编辑其中的index.html文件和newgmx.js文件(如何修改见下文),否则无法通过4399平台审核。建议使用Notepad进行编辑。

三、处理工程文件包

1、将4399的基础API代码

<script src="http://h.api.4399.com/h5mini-2.0/h5api-interface.php"></script>

放入index.html文件的<body></body>中,如图

2、特别注意,4399平台审核不允许代码里带有任何的外链、其它域名等信息,而Gmei的H5发布包中的index.html文件中,会有一句

<script type="text/javascript">window.qyProjUrl="http://zuoyouxi.gamemei.com/你的游戏魅用户名/该工程的文件名";</script>

,这是Gmei引擎用来处理联网数据表等服务器端功能的代码,需要删掉!如果带有,则无法通过4399的审核。所以,这里提醒小伙伴们,如果用Gmei制作游戏想上4399,那么你就得放弃使用引擎的联网数据表功能了,要考虑做一款纯单机的游戏。但,引擎的非联网数据表及配置表还是可以继续使用的,删掉引擎的服务端调用句子后不会影响这些功能的正常运行。

3、打开newgmx.js进行编辑,查找“window.open”关键字,然后删掉它们。一共有两处需要删掉,这两处不删掉也无法通过4399审核。删掉如图两句:

4、 删掉包中无用的两个文件,proj.config和qyurl.png。之后就可以将所有文件选中打包成.zip文件了。4399平台上传H5游戏文件只接收.zip压缩包。

 四、需要特别注意的坑:(如果你的游戏并不牵涉到键盘控制,则可以跳过不看。)

如果你的游戏是通过电脑键盘(特别是方向键)控制的话,就会遇到页面“焦点问题”。既游戏在4399页面上打开后,按方向键的时候无法控制到游戏场景里的精灵(即便你用鼠标在游戏场景中点一下之后也无法获取到焦点);或者能控制到,但同时浏览器整个页面也跟着滚动。最要命的是,这两个问题都会造成你的游戏无法通过4399平台的审核。

前一个问题笔者认为可能与4399的悬浮按钮层有关,后一个问题与游戏键盘响应事件之后是否有阻止键盘事件向浏览器传递有关。接下来就一一介绍如何解决这两个问题。

1、解决游戏场景无法得到焦点的问题。利用Gmei引擎里的输入框UI对象,将一个输入框拖入到你游戏的封面场景中,将其设置为1像素高,并勾选中“初始时获得焦点”特性,这样一来,就可以解决键盘控制的焦点问题。但这样只能解决刚进入游戏时的焦点问题,当玩家点看了广告之后,由于4399的广告浮层于游戏场景之上,焦点又会丢失。所以,你还得在放有输入框UI的场景上写一个闹钟事件,让这个闹钟一直不停的执行将焦点交给输入框的代码,如图所示:

事件:

闹钟动作: 

执行代码就两句话:

qyengine.guardId('inpu_1').focus();
document.body.focus();

 

Gmei引擎的输入框UI对象貌似有它自己的想法,你无法将它设置透明度隐藏;也无法将它放置于某图形下层进行隐藏,因为它始终会处于场景的最上层;还无法将它放置于场景尺寸之外隐藏,因为它的级别很高,如果你放到场景尺寸外,那整个游戏的场景会被撑到能够显示它的尺寸上去。所以要隐藏它,你只能仔细再看看上面的描述,照着做吧。

2、解决按键事件传递到浏览器页面的问题。在你的每一个键盘按键事件中,加入一段代码来执行即可:

return false;
event.preventDefault();
event.returnValue = false;

只要有键盘事件的地方,在动作末尾都加一个这个吧。它可以有效防止你在控制你的游戏的时候浏览器页面也跟着上下左右的滚动。 

此后,就是在4399平台上的操作了,从4399首页进入到“原创平台”并提交你的游戏ZIP压缩包,等待审核反馈。 

成功案例:

    《我要变长》是一款用Gmei引擎制作的互攻式塔防+贪吃蛇玩法的H5小游戏,已经成功上架4399,并在游戏中加入了一个激励机制对接4399的广告API。

游戏地址:http://www.4399.com/flash/200081.htm

五、足够的耐心

游戏上架任何平台都会遇到审核不通过平台提出整改意见的情况,首先开发者要意识到平台并不是故意为难你不给游戏上架的机会(除非你的游戏做的真的很烂)。平台审核反馈的一些问题很有可能是自己都未能发现的BUG和体验逻辑上的问题,这些反馈意见就像软件测试一样的珍贵,它们能够使你的游戏更加完善和受市场欢迎。所以,积极配合平台的审核反馈进行修改更有助于提升游戏的稳定性和体验。

《我要变长》这款游戏经过了13次的审核退回修改、修改退回,历时2周的时间才成功上架(第一次上传没有经验,以后就会快很多了)。没有足够的耐心,恐怕早就放弃了!

现在4399平台对原创的HTML5游戏具有较大的支持力度,一般都会上首页推荐。《我要变长》这款游戏上首页推荐之后点击量还是不错的,如此小游戏两天产生的广告营收达到了两位数。快来试试吧!

希望此文能帮助使用Gmei引擎制作游戏的小伙伴成功上传自己的作品到4399平台。如有不清楚的地方,可加QQ253019704交流。


如何定制? 注册登录——进入用户中心——点击我要定制