开发之时光遇到的题目

本文来源肥宝传说的路,引用得注明出处!

正文自肥宝传说的路,引用得注明出处!

游玩上丝了,加个链接先 点击打开链接

2016年12月5日

《Fly Your Sister》作为第一独比完整的手游,算是大功告成了目标。但是于接触cocos2d-x开始,至今也时有发生差不多年了,才做出这样质量的嬉戏,不得不说执行力太没有了,而且大多数行事且是贴近一个月份举行截止的。现在展开总结:

14.
数组使用大括如泣如诉初始化,是C++11的新内容,好像我们linux的g++的本子不可知支持是。

如出一辙、开发条件之搭建:

CRoleSkillPosPtr po = new CRoleSkillPos(gateEntity->getEntityId().id, posIdx, skillCode, seriesId);
Message::Db::Tables::SeqTPlayerRoleSkillPos roleSkillPoss = { po->_tPlayerRoleSkillPos }; 
_skillPosMap[posIdx] = po;//保存数据库
CDbHelper::getIRoleDbPrx()->saveOrUpdateRoleSkillPos_async(NULL, roleSkillPoss);

相同开始之windows下的工程,是同事成功包发给本人之,连HelloWorld都是他搞掂。好像直到现在我还不了解怎么搭建cocos2d-x之出环境。

===============================================好久没分割线了=====================================================================

搭建环境的,还是问谷歌跟度娘吧!

2016年8月20日

第二、一词一词抄程序

13.装完VS后,编译,全部报错说找不顶winsock2,找个windows
sdk装一下。因为网管有下装的系统是阉割版的,漏了一些物。

程序员都是闷骚的,做打的程序员更加闷骚。我怀念没人会为了开一个HelloWorld而去研究一个从未点过的框架吧。一开始我们纪念的再次多的凡怎么落实网络通信,怎么构建服务端,怎么落实支付,这些事物,多么遥远啊,到如今尚无当真接触过。

===============================================再来同样不善分割线=======================================================================

莫了解在何下载的cocos2d-x超简洁笔记,照在做,学了几乎单Action,Scene,Layer,Sprite,就多把那个笔记看罢了。觉得多了,先拿服务端和客户端的通信底层做出来再算,于是跑去研究凡二的根。看了有些fastdb,ICE,ACE之类的东西,究竟以后来没因此自身弗知情,目前凡没因此上之。后来发知道了一点点,但是怎么还无举行不下一个大概的使用例子来。于是还要走回去看cocos2d-x。看了依《cocos2d-x科目》,内容全面点,基本也是跟着做。后来以写了摸了片《捕鱼》、《萝莉快飞》、《魔塔》等局部代码,网上还发得下载,看大抵矣吗就算那么回事,毕竟是例证工程,不会见有极度高深的事物。如果说框架《捕鱼》的思绪应当是于成熟的,不知底凡是休是《捕鱼达人》的源码简化的。到之上,好像多也是二月份了咔嚓。

2016年7月29日

Cocos2d-x之求学过程,没啥困难,其实就是接触新物,不清楚的就拿有类,某个函数复制到谷歌上面去,也即那回事,关键是要明白cocos2d-x之思吧。毕竟自己一直做劳务端的,还真没了解客户端的建制。很多题目都是出于思路错了。

12.于VS上,每次启动程序的上,都亟待编译某几乎独文件,程序执行也未尝察觉什么问题。但是每次启动,就必然要编译一下。

不过当一个新专家,学一些,调试一点,多上谷歌就是了。不要想最多深入之效应,其实写个HelloWorld出来,如果手动能力够高,心理承受能力够高之话语,应该去尝试真机调试了,这样能够看多素养。

改变了网时导致,之前有次反时间来测试某些职能的时光,碰到了。

三、山寨FlappyBird

如今天凡是2016年7月29日,因为测试要求,改至30日。

越南鸟类真的多丁山寨,网上一样抄家还有源码啥的,逻辑吗大概,美术资源为发生了。不过尚未找到cocos2d之代码。决定好写单,顺便作为下戏之基本功代码。

接下来以非小心改了代码,保存了,这个时候文件修改日期是2016年7月30日。

埋头写代码,三龙不怕形容来单demo了,其中还画了酷丰富时研究box2d。接着就上漫长的调试,和优化。最后还拿box2d优化掉了。简单的磕碰,不需物理引擎了。毕竟自己无成熟。Windows版的flappybird就如此做下了。整个经过就是是摹写代码。现在想起,对程序员来说,谷歌百度能搜到的问题,根本不是题材。一老大堆教程什么的,其实这些都没关系到作者的骨干利益。当然,在现有的根基及修修补补的形容程序,也不算什么问题。所以说,不要以为温馨工资低是老板吝啬,其实自己从来无贵。接着开真机调试,噩梦才起了。

新生测试了,改回正常的系统日期2016年7月29日。

季、真机调试

以此时节点击编译或者启动程序的时候,VS就会翻相有文件修改时(30日)比最新的编译的年华进而新,就会编译一下。每次都这样。

描绘好的代码一直在windows上运行多美意思啊。因为从没苹果电脑,只能先干来android咯。因为cocos2d-x选择了C++语言,所以我好实在某些且无接触android。网上发首稿子于令人欲仙欲死的android环境搭配,起的名真个好。细节就未写了,网上广大,其实自己吗不记得了。

解决办法就是修改一下,之前改了之文书,保存,就会成29日的文本了。或者当交明,文件时了了。或者文件太多,时间而最远,只能交给,然后删掉,从SVN下充斥下来再编译一下了。

率先是jdk的题目,尼玛我现还不明白为何自己之电脑配之路为什么没效的。必须用管理员权限才能够于作用。

变动系统时还会见来众多题目,一定要是小心又小心!!!

IDE:一初步想念就此MyEclipse的,结果来了几许单版本,居然还异常的一筹莫展导入ADT,最后只好舍了。装了Eclipse,一破就是附加插件成功了。

=================================================淫荡的分割线=======================================================================

Cygwin:网上有同一种编译方式是为此到者东西,不过好像每次编译,都是更编译的。

2016年7月21日

NDK:万恶的兲朝防火墙,根本连休上google服务器,百度了各种方法还死,结果未在调哪位大神发现可以连微软的代办去下载,虽然缓慢,至少能够下载。mirrors.neusoft.edu.cn 端口80。用了几乎独小时好开心之下载了逐条版本的仓库。

11.今连续搜寻好突然中止的bug。

看似多了,工具都安装了,然后是布置文件,mk文件啥的,一积聚,网上的很乱,只能于他人发之帖子中有角落的回复找到灵感,你捉及了就是能化解问题,抓匪交的,还是得日益看。尼玛还练起了一样双看英文技术帖子的目。这过程很曲折,其实如是一模一样开始便接触android的人当无会见如此蛋疼的。但是自己而休思话最好多日子以java者,很困难的编译过了。

(1)空指针,看堆栈发现是定时器,但是定时器是于另外一个线程的,而且由于空指针,几乎无另外有效之信息可以翻。

吓吧,调试,android模拟机,配了N个,查了N多东西,居然都启动不了本人的次。打日志吧,logcat不会见用,百度去,搞了老漫长还并未看cocos2d之日记,最后不得不重新插配置文件,居然发现布文件配重复了。日志有矣,原来不支持openGL。好吧,换本,这个时段遇到的下载ndk库的题材。蛋疼了少上。网上广大人口都说真机调试,我直接当是管程序放至手机及走就尽了,但是尼玛又保留不了日记。搞了好久特然醒悟,真机调试和真机测试接近不同哇。。。。。。下载个Android USB调试包,一插上手机,果然能调节。关键是能启动。第二龙更尝试,发现那个了,查了挺遥远未晓怎么回事,插线拔线好几不行才成功并一不善。前几龙才发现题目,连不达是以中国特点社会主义之题目,插手机的下记得把360,搜狗,腾讯,酷狗等而所了解之所有兲朝本土软件还关掉,否则有或占端口。

(2)通常碰到这种情形,最好就是看能不能够重现,能再现就能够推测出双重多之音信。初步发现凡是当交火中才会油然而生的。

调节是蛋疼的转业,在windows下运行良好的先后,到android就各种失灵了。从同开始搞起,把代码注释掉,一句句调。终于发现凡是读取xml文件的题目。搞了老,用了N种方式,终于确定及,android上是读取不了apk包之资源的,要因此cocos2d底函数来读取。这吗是自从某帖子一个无引人注意的死灰复燃中见的,几十长条回复中导致到那么几单字得出的灵感不轻呀。最后所以cocos2d去的流文件中之所以rpaidxml来诠释。程序终于运行起来。但是老奇怪,到了一些对讲机上面就昂立了。没有实体机,也未尝办法了。安卓这个题目十分惨重。接着优化了几乎天。发现竟发生很了,尼玛我忘掉提交SVN了。又管代码注释掉,又来平等句句看。就这样加起来,程序为定矣,但是加大上手机而挂了,这次特别神奇,最后发现还要rapidxml的题材,好吧,读不了,只能用cocos自己之tinyxml2了。网上一堆人推荐用rapidxml,我倍感,这些人九改为不是人口,是其他废品网站写的爬虫程序爬回来的,帖子连回复还同。剩下的平变为中,听人家说就这样说,还有部分人数,是IOS的吧。甚至可能过多人口犹没几独人口亲从0开始勾画一个戏。换了tinyxml2自此,就没遇上有些代码上之问题了。

(3)在CellApp中,全局搜索一下,发现中使用的定时器不多,Life、Buff、Boss
AI、Boss refresh,还有一部分同打仗全无关的。

五、美术资源

(4)看了一下代码,是当扣押不发生哪里有问题,之前发现cancel之前把timer置空了,后来上回了,还是出现。

次第为完了,就得易图资源啦,好吧,百度“美术资源”,尼玛都是使钱之。难道程序员自己做个游戏就是这么难么。网上没有当面之,就失去偷咯,孔乙己说“这叫窃,不是偷窃”。下载了诸多玩,apk解压很粗略,把后缀名改化zip就实施了。至于反编译嘛,参考别人的代码?算了吧,晚点再说。解压出来的文件夹里面,有就是产生,没有就没有底了,大家不用浪费时间,成熟点的庄还见面加密,我们下充斥多几单集一下尽管吓了。最后不记在哪找的图片,放进去做来,发现效果还不错。立刻上了一个水平。

(5)用客户端试了某些涂鸦,还是硬找来了有初的原理。

六、广告

定是于作战中冒出。

选料了来米来练练手先,为什么选择来米,因为它们是邻里的,做得相对成熟。现在家是发生米之老大了,我要一屌丝,总得看看有米来差不多牛逼。好吧,这里取一下,有米就承担发广告,显示出来,怎么消灭,他们无的。不熟识active怎么形容,只能吃广告先直接显示在了。

为降低影响,把主角拉上一个不曾其它事物的副本,刷了平只特别来起。

七、发布

第一次战是免会见起的,只有主角被起那个,然后复活,再错过打怪才会产出。

网上几时常只平台,我是当起米的sdk文档上面来个渠道信息标签知道的,一个个百度,记得加个“开发者”,一个一个找到的,注册开发者账号吧,这个建议大家在家没事看电视的时段慢慢注册吧,而且更加早越好,到如今尚没有通经过审批也。

无是第二坏战斗就势必会并发,但是概率比较大,即使不出现,也会见当后来定出现。

交给应用也是只蛋疼的事,图标,描述,截图啥的,一堆积物而做,建议大家想吓点。每个平台还发友好之后台,都发友好的同样效规则,360、豌豆荚这些还要还使版权声明,网易还直说要版权证书,我为非清楚是休是吃客服忽悠了。跟客服打交道是个坏蛋疼的转业。客服这个事向来还是无克迎刃而解问题之,能迎刃而解问题吧不怕无欲做客服了。解决问题,还是不能够依赖客服,只能尽可能了解自己想要之音,做出调整。

反了测试接口,可以调不通的血,只要月经足够,一定会出现。

吓吧,就说这么多矣,继续当审批吧,全部还在审批,没有一个经之。虽然是寨子产品,但是不至于都无受上吧。

起岁月达来拘禁,是起在自在出现的,并无是均等攻击就应运而生抛锚。

图片 1

(6)其实这些规律并没有缩小了聊范围,因为一直都明白是作战的。是在尚未道,最后先将buffTimer注释掉看看。发现还是有题目。

(7)然后再次注释LifeTime的时刻,发现就不会见吃绝对了。

(8)最后确定问题,先贴几个代码先。

void
CellApp::CLifeManager::processLifePool()
{
if (!_fightEntity || !_fightEntity->isPlayer())
{//不是玩家
_lifePoolTimer->finalLifePoolTimer();
_lifePoolTimer = NULL;
return;
}
void CellApp::CLifeManager::enterFightStatus()
{
if (!_fightEntity->isPlayer())
{
return; //这个if语句是新兴加上去的!!!!!!!!!!!!!
}
cdf::CReactor::instance()->cancelAll(_lifePoolTimer);
//进入战斗
cdf::CReactor::instance()->schedule(
_lifePoolTimer,
NULL,
cdf::CInterval(4000),
cdf::CInterval(4000)
);
}
本条是上战斗的时刻调用的函数。lifeTimer是以构造函数的当儿初始化了。但是在点被清矣。在次浅进入战斗的时。开启定时器,传上的实在是空指针。

其一是LifeTimer调用的行函数,这里将非是player的实体的定时器,都置空了。

根代码也绝非检测空指针。在时刻足够了接触,就发出了空指针的荒唐。

本对比一下事先的迹象:

率先不成杀是免见面面世的,只有主角为于怪,然后复活,再失去打怪才见面出现。

正确,第一次杀就吧boss的lifeTimer清掉了,所以率先软未会见有事。

未是次破交锋就定会面世,但是概率比强,即使不出现,也会在事后自然出现。

定时器是4秒循环,如果在这个时间外,把玩家打死,是休会见起问题的。

转了测试接口,可以调不通的经,只要月经足够,一定会油然而生。

血够多招4秒内从不特别,触发定时器。

从今时间及来拘禁,是自从在从在出现的,并无是同攻击就起抛锚。

或定时器的题目,定时器触发的突发性有些随机性

釜底抽薪方法:

决不传空指针进去cdf::CReactor::instance()->schedule()函数

===========================================弱弱的分割线=======================================================

2016年7月20日 新增

10.今察觉CellApp的实体在离副本后生命管理器还于回血,没有打消,各种消息完整保存。初步看上去,FightEntity的fianl函数,析构函数都发出安为Null。调试的时候发现,指向也2只,final了FightEntity之后,还有一个地方尚未去掉掉。这是LifeManager的定时器和LifeManager互相指向,指针没有吃放。

理所当然,设计是树形的,FightEntity ->
LifeManager ->
LifeTimer。一重合一交汇析构还是得以很安全地履行清除。但是以便利,实际指针是双向的。FightEntity
<-> LifeManager <->
LifeTimerd,单独清一个,链接造成还留存引用而落。

解决办法:在finalEntity()里面清除所有信息是得,但是过多,而且爱漏掉。现在规定是每个下级的布局,都要产生一个final函数,独自清除下级自己之情节。在finalEntity()里面调用lifeManager->finalxxxx(),在LifeManager->finalxxx()里面调用lifeTimer->finalXXX().

简单的话,就是不用将极多解耦的动作放到析构函数里面,另外将一个final函数出来,主动调用解耦 

===========================================强悍的分割线=======================================================

2016年7月14日 新增

9.调剂战斗的早晚,突然发现没事指针,看堆栈,发现是定时器的问题。

只是定时器是一个单独的线程,堆栈中尚无我们温馨写的代码,而且定时器为Null。

着证明,不知情哪写了设置也Null,但是又忘记cancel掉了。

这次是由此不停歇于日志,缩小范围,最终确定具体地方。发现cancel了另外一个定时器,然后删掉本来之。于是就这样了。

===========================================华丽的分割线=======================================================

1.以IOS上运行,发现无地图,其他地方正常

瞧编译的凡呀文件,默认好像是生成lib的。选择fanren
Mac,

文本太多,报错没看收获

2.客户端一开拓某个界面,调用某个接口,就让提拔断线
服务端对从未登记的接口,被调用了,就立刻断线。所以去寻觅劳动端哥哥吧

3.有些上飘字一拧好丰富之事物,能顾是D盘,有文件目录,大概意思是序列化错误。
实则这目录是服务端代码的目录。接收及自客户端的数据包,进行反序列化的时光,出现错误。这是为调接口时候传之参数结构对莫齐

4.每次登陆后都冒出于出生点
9成是服务端问题,首先使确定移动的时刻,服务端起没有来涂改位置,看数据库可观看。
随即看刷新登陆后,是不是正常初始化
假使还尚未找到问题,看看cellapp有没发出跻身成功

5.底层engine关联问题,表现很多,没有确定的蛛丝马迹
这种问题应当单独见面在页游的代码出现,页游服务端要配包含库之类的事物,看看是无是时档之。
手游应该不见面,手游是针对相对位置的lib文件夹的。

本新的服务端都转了,应该充分少碰到了。

6.劳动端的,其他APP发到GateApp之后,直接转账给客户端,收到的结构是拖欠的
小还尚未察觉哪里出了问题,同样的代码在jxy和dbtx都不见面并发问题。
管内容还组织一个犯过去凡是力所能及整治成的,待解决!!!!!!!!!!!

7.src\Client\project\fanren\Resources\FanRen目录的lua文件是怎加密的?
LuaSvn_JenKins.sh/////还没细看

8.代码生成例如cdl2lua、cdl2cpp之类,点了运行如常,就是没有看出另外报错,就告一段落于那边,也远非公文生成出来
新兴发觉是没有对应的目录,程序不能自动生成目录。要创好相应之目

图片 2

发表评论

电子邮件地址不会被公开。 必填项已用*标注