上班的第四百七十天——开始游戏生涯了

今天正式进军游戏行业了,感觉是很累,但是真心觉得有好多东西学,挺开心的,终于可以向中级程序员迈进了。

先按照昨天的计划,把VS2010常用的快捷键记录下来,然后能够较为轻松地浏览代码后,就叫锋哥——服务器主程,分配了一些简单的任务给我,让我由一个点发散开来熟悉代码。

锋哥给了我两个bug,一个是消耗物品后短时间内提升角色的各种属性值,其中有个属性值没有达到预期那样,我的任务就是将它改过来。

说实话,真心觉得这个任务简单得不能再简单了。贪心的我就直接在VS里面搜”苹果“(该消耗品叫”苹果“),以为搜到之后就能够直接修改一处地方就可以了。谁知道根本就没有搜到”苹果“!

那就只能跟数据流了,以下是我的思路:

苹果是消耗品,跟红药和蓝药那样,那肯定有个使用消耗品的消息->搜索该消息ID,找到调用处->进入消息处理函数,找到具体分类,是红药、蓝药还是苹果,肯定有个switch->进入苹果分支,将出错的bug修复一下->完事

其实,这个思路我觉得是对的,但是特么的,我跟踪到消息处理函数的时候,发现居然是调用lua脚本进行处理!我不会lua啊!但是可以进去看一看,只是改一个数字,用不着兴师动众。找到那个lua脚本之后,我就醉了,特么的又调回了C++封装的接口,而且这次我不知道怎么跟踪了,因为不会lua…

好吧,折腾了半天,最后还是得要先把lua搞掂才能无碍地进行数据流的跟踪,就用这两天时间把lua搞掂,传说中的高性能脚本,我来了!

时间: 2024-10-15 02:25:04

上班的第四百七十天——开始游戏生涯了的相关文章

上班的第四百七十六天

放假比上班还累,本来还幻想着一副放假的时候能够拿一本<effective C++>在图书馆装逼的情景的,谁知道第一天就睡过去了.第二天和第三天帮我姐搬家,第四天各种饭局,屁都没多放一个,真心累. 昨天晚上,也就是放假的最后一天,我去找惜惜了,给她带点柠檬.看到她晒得黑黑的就知道她最近玩得挺开心的,她开心就好,我就怕她不开心.虽然我知道她还是喜欢我,我也是,但是我不敢再牵她手了,因为不想再次陷入纠结了,就这样好好生活下去也挺好的. 今天上班,继续解决那个"幸运值"的问题,我问

上班的第四百七十五天

今天有点偷懒,因为我纠结了,究竟是继续研究数据库呢,还是解那个无解的bug呢?最后两样都没有完成,搞得心慌慌的,果然一心真的不能二用. 还好,还是能够学到点东西的,就是服务器的第3个模块,子系统模块.加上之前弄清楚了资源管理器.通信模块,基本上服务器的逻辑框架我就掌握了.用了6天,理清了服务器框架,lua入门了,MySql也入门了,学会了使用VS2010开发软件以及用Sqlyog访问数据库,有基础学东西就是容易上手. 接下来要进一步规划学习内容了. 首先,我的任务肯定会多起来,而且肯定是逻辑业务

上班的第四百七十四天——无解的bug

今天认真找了一天的bug,其实就是定位错误,然后仔细看那个地方的代码.我看了,仔细地,但是没有发现任何逻辑上的漏洞,但是考虑到服务器是有几条线程在跑,而且由于服务器的主业务逻辑是通过一条while循环实现的,就相当于单线程,那么所有逻辑代码基本上是没有加锁的.有可能是多线程引起的问题,但多线程的东西是很难跟踪的,外加这个只有1个玩家会出现,其他都没有出现.无法重现现象,如何解决bug? 就像<金田一杀人事件>那样,如果凶手不再杀多一个人,是很难找到凶手的,案件基本是无解了. 当然,还存在另外一

上班的第四百七十二天

今天开始感到疲惫了,才第三天,我隔壁那个可是连续上了14天了,要上到29号,也就是连续上17天班,真心觉得这不是人过的日子.昨天看了一篇文章,内容就是反对加班,里面有一句话我觉得是蛮有道理的:生活应该是8小时工作,8小时业余,8小时睡觉.我十分赞同的,虽然有点死板,但是这样的生活才是一种理想的状态. 所以我得要好好给自己做做思想工作,上班8小时,然后业余的8小时我是没什么事情做的,回家也是学习,所以留在公司边学习边实践效果更好,剩下8小时睡觉.这样想之后,生活似乎变得容易了. 今天看了<大型多人

上班的第四百六十五天

今天早上任性不上班了,反正就剩下两天,调休假也算不了几个钱,用都用不完. 早上的时候想想,觉得自己还是不想搞医疗设备,而且都几天了,还没有复试通知,还是一心想着搞ios好了.刚刚决定完,迈瑞就叫我过去复试了,这不是折腾我吗?难得下了决定了,哎,那就去看看吧,也不一定进对不对,当吸收点经验好了. 下午就去上班了,看到龟龟没有上班,晓琪坐在前台那里,心里莫名地失落感. 这段时间,多亏她陪着我,才能让我心情好点.虽然当我把注意力集中在学习上面时,什么事情都能够忘记,但是难免会想到惜惜,龟龟在就能够找她

上班的第四百八十天

昨天主程给我布置了个任务,利用"机器人"来自动化测试服务器在"法宝系统"这一块的承受压力.说白了就是虚拟很多客户端往服务器发消息,然后测试服务器在这一模块做出反应,看多少个人同时申请服务的时候服务器会有问题,是否有地方存在内存泄露等等. 虽然我是个游戏开发新手,但特么的在客户端添加消息往服务器发送,再根据服务器发送过来的消息进行处理,这样我觉得是很简单的.但是有个地方不懂,就是JSON包的解析,如何解析服务器发过的JSON包呢?其实这些应该都是有现成的,而且应该就在

上班的第四百五十五天

今天李娇回来了,神一般的测试人员,啪啦啪啦啪啦地一堆bug就出来了,处女座真心恐怖啊. 看着那堆bug,说实话,我好想把它们都解决了,或许这就是程序员的强迫症,不知道把这一点写在简历上会不会加点分呢?话说,昨晚写简历的时候,发现有点动不了笔的感觉,因为我想找的是ios的工作,可是我一个可以拿出的ios实例都没有,还找个毛线?看来赶紧把APP写出来是迫在眉毛的事情了.今天还买了个土豪金,1.5k,水货,明天就来了.第一次在58同城网买东西,如果被骗了就悲剧了,一定要检查清楚才行. 今晚还和君爷去体

上班的第四百七十八天

今天跟着数据流把小部分UML图画出来了,也趁这个机会,进一步熟悉服务器的框架.但是心里还是很多疑问,这些疑问大多是因为我看不懂那些实现代码,到处都是模板类,看得我直晕.这个时候,我就应该去看看设计模式的,就像看宇智波一族的地下室墙上的文字,写轮眼的瞳力达到某个境界才能看到更多的东西. 为何有这个感悟呢,就是今天看到一个类是这样的: class A { public:     A();     ~A(); protected:     bool init(void)     {         .

上班的第四百七十三天

今天有点累,可能是最近超负荷加班学习,也有可能是昨晚右手又调皮了,所以今天的效率有点低. 不过我搞清楚了服务器业务逻辑的三个大类中的两个,分别是资源管理器和通信模块. 通信模块在服务器启动的时候就初始化,并且将每个通信模块(NPC模块.消耗物品模块等等)对应于客户端的请求的消息处理方法注册到一个全局数组上去.那么以后客户端有消息过来的时候,就根据moduleID和funcID的乘积去调全局数组里面的处理方法.服务器主循环里面会在一定时间后去读消息队列,依次处理那些请求. 而资源管理器也是在服务器