这次接着上篇,上篇谈到目标,以及解决的方案。上次的程序模块的结构图像是由erlang自带的,appmon:start().便可以看到那个结构图像。
这次来谈下通讯的协议,数据封包的格式,关于数据封包的重要性,可以参考很早之前的外挂方面的教程,简单来说,封包协议就是客户端和服务器端通讯的语言,语言不对,将无法交流。
这个网游的协议,对于发送方和接受方,都只接受下面的封包格式:
【封包长度:4字节】【命令:4字节】【数据:不定长字节】
其实,封包长度和命令没必要使用4个字节,但我还是喜欢4个字节,看着习惯,比较好数。
对于数据中的字符串,按照下面的排列格式:
【字符串长度:4字节】【字符串:不定长字节】
对于数据的发送,分下面的情况:
1、如果客户端发送一个命令,服务器没有返回,则认为该命令发送成功,否则,服务器将会发送错误命令或者强制部分重置的命令及数据。
2、如果客户端发送一个命令,服务器返回相同的命令,认为是成功。比如发送一个登陆命令,服务器将返回登陆命令,及玩家的详细信息。
在任何时刻,程序都需要监视错误的命令。
以上约定,贯穿于整个项目。
月度归档: 2010年3月
一起做网游吧【1】
很早之前写过网络游戏的外挂教程,现在,将网络游戏的服务器教程提供出来。每个游戏商制作网游使用的技术都是不一样的,但我似乎已经习惯了孤独的写程序了,或者我的程序已经习惯了孤独了,看上去都没什么人采用这些技术(据我所知),因此,我希望我的这个游戏的整个代码(服务器和客户端)可以一个人的能力独立的完成,从目前的角度来说,是这样的。
如果某个人告诉你一个人独立完成网络游戏的服务器端和客户端,是一件遥不可及的事情,那么,现在,可以忘记这一切了。我的目标是写一个一个人可以完成的网络游戏,从目前角度和进步来说,这是一件可以完成的事情,如果你非常熟悉的话,完成一个中型的也不成问题。
关于这个教程中提供的游戏的历史:
1.这个代码从很早之前,我刚开始接触erlang的时候已经有此计划了,大约在两年前(2007年10月份)
2.这个项目中的代码(包含这个项目的教程)遵从GPL版权,不管是客户端还是服务器端,均遵从最新的GPL版权。
3.这个项目中的代码,经过很多次的变更,有些时候,随着我的兴趣不同而变更,我希望目前的游戏可以持续下去,目前来看,也比较可能最终完成。
4.项目持续的时间很长,并不是因为代码量的关系,而是因为很多时间,我都比较忙,无时间铺代码,或者心情不好等等,最长的中断时间大约至少达半年之久。
5.项目服务器端使用erlang与C++描写,如果你对erlang不感兴趣,以后的也不用关注了。
6.目前贡献的代码,是目前进度的代码根据回忆,进行整理的,因为我也觉得有必要整理了,里面很多的缺少注释的地方也应该补全了。这样,我也可以稍作休息,因为贴代码的速度比写代码的速度要快。而且,开始长时间中断的概率较少。
下面是正文的开始:
继续阅读一起做网游吧【1】
五毛流浪记
一)不好不坏的故事
接连几天,五毛都来找我,问我帮他写的书怎么样了,帮他写的史记是否已经完成了,可惜本身汗颜,无凤姐的聪明才智,芙蓉姐的铜墙铁壁,只好悻悻的回他:“就好,就好”。
五毛,年龄不详,身份不详,长的什么样,也不详,因为每次都是不同的人,自称自己是那个找我写书的五毛,却竟然每次都能连成一片,所以,我也不知道哪一个才是真的五毛。下面是我认识的一个五毛:
五毛,本名其实不叫五毛,在出生后的小屁孩的年龄,小名叫“mu-mao”(地方方言:头发稀少的意思),因为出生下来都上没有几根毛,且其老父亲刚好捡到五毛钱,够给他娘买包“浮玉牌”方便面来补营养,在那个饭少人多的年代,五毛钱可是一笔大钱,据说他妈十月怀胎都没舍得吃一个鸡蛋,所以是一个好运气,于是,就起名“五毛”,外人一听,“无毛”啊,原来取名自头发啊,挺形象,所以就“mu-mao”,“mu-mao”的叫开了。
转眼间,五毛上学了,学校老师一看他名字,再一看他头发,嘿,乐了,问:“三毛是不是你爷爷?你老爹是不是四毛?还真有三毛这个人啊”。后来有一次,五毛在地上捡到一五毛,看到老师在一旁,就交予老师,老师直夸:“看五毛这孩子,多诚实,多老实,以后长大肯定成才”,并在全校进行表扬。表扬的时候,五毛紧张的结巴:“感谢老师,感谢父母栽培”,刚说两句话,校长一紧张,把话筒掐了,并故意碰倒在地上,到底是老师见闻识广,赶紧对五毛说:“先感谢国家,再感谢党,最后感谢父母”,五毛遂明白,但却也落得个不识时务的败名。校长勒令老师要抓紧学生的道德教育。后来,我问他关于捡钱的前因后果,他说,要不是老师盯着,傻子才把钱给老师,就是一毛钱也不给,何况一块呢。我诧异:“不是五毛么?”,他没有正面回答,把话岔开了,这件事情就这么完了,以后再也没有提起。
小学考试和中学考试,由于老师们的大力保荐,说他是三毛的后代,三毛,你们知道么,就是那个和反革命分子进行顽强抵抗的三毛,革命的后代,根正苗红,怎能不大力推荐,怎能比别的孩子笨,比别的孩子傻,学习成绩平平那叫涉猎广泛。于是,五毛也觉得自己是三毛的后代了,根正苗红,走到哪里都理直气壮,抬头挺胸,兴奋得脸上“横肉块块饱绽”。也于是乎,五毛在几乎无忧无虑之中进入了大学。
老师对其评价:“这孩子贼老实,前途无量”。
PS:很早之前就想写一个非常非常酸的杂文系列,一方面自己的文采有限,这么多年对技术的研究荒废了文学,另一方面一直没找到合理的贯穿的办法,最近才开始尝试慢慢的写,好与坏,随别人去说,将自己的想法记录下来,那才是关键。这个系列,我想分成三类故事,一类就是上面的这种,不好不坏,对主人公没有太好的方面,也没有太差的方面;另外一类就是好的故事,主人公必然会获得某些正面的内容;剩下的就是坏的故事,主人公必然会损失某些正面的内容。并且,好的故事和坏的故事必须是连着的,相同类型的故事必须是间隔着的,不好不坏的故事则随机出现。–text follows this line–
2010年3月23,google退出中国
2010年1月13,google透漏出要退出中国,自己曾经小表感慨下,2个月之后,自己的博客在国内被封锁,google退出中国,却没有了那份感慨,只余下悲伤。国人接触外面世界的一扇重要的大门被强大的共产党政府关上了,中国从一定程度上来说,几乎要进入闭关锁国的地步了。
虽然觉得非常夸张,但考虑一下,在信息化的时代,一个个有价值的网站被一个个的拒之门外,在原来或许还能透过搜索来找到蛛丝马迹,现在,这点蛛丝马迹的方法也被关上了。在清朝,是经济上的闭关锁国,现在,是信息上的闭关锁国,但只要墙存在,总有一天是会被推倒的。秦始皇的长城未能抵挡住外族的入侵;清政府的闭关锁国被洋人用洋枪洋炮轰开了;下一个,新中国的GFW,将会被哪一个推翻?墙,是一个象征,是一种害怕和保护自己的象征;墙的出现和存在,是被包围的人害怕的一种具体表现。在现实生活中,因为害怕被偷或者被别人发现自己的隐私,所以有了院子。我们周围存在着形形色色的墙,但当一个统治阶级来主动建造一堵墙保护自己的时候,往往是该统治阶级要垮台的具体表现。就像现实生活中,做的越漂亮,越高的墙,往往越容易引起小偷们的注意。秦始皇大修长城,死了多少人我不知道,我历史不好,但肯定动摇了其统治基础;清朝的闭关锁国,也锁住了新的科学技术,使中国从一个堂堂大国堕落至今;科学技术是第一生产力,初中的政治中开始提到,我们现在要用科学技术去屏蔽掉科学技术,这何尝不是一种讽刺。
今日在新浪新闻上看了下评论,虽然不看已经知道评论的内容,但还是想知道一下关于五毛党的地盘和人数比例,仅仅第一页上的评论就全是五毛党,看来五毛确实比较好挣的。即使在技术上的博客,诸如瘾科技或者linxtoy上,也不时可以发现五毛的存在,以至于我都想学着写作,写上一本名叫《五毛流浪记》的杂记,如果出版的话,想必销量不错的。当google退守到HK,五毛们叫嚣着:“HK也是中国,google滚出中国”,“google也言不守信”;我想提醒的是,不要把HK和中国大陆混为一谈,在许多老外眼里,HK和中国是两码事,这是事实存在,就像有些老外认为台湾是一个国家;HK的政府在一定程度上和中国大陆是非常有区别的,一个很简单的事实,HK的政府在世界清廉是榜上有名的,中国大陆在世界贪污腐败也同样是榜上有名的。而google也很清楚中国大陆“政策即王法”的美德,因此在声明中提到:“做出停止 Google.cn 搜索服务审查的决定是艰难的,我们希望世界上包括在中国大陆人民在内的更多人可以使用我们的服务。但是中国政府在与我们的谈判中非常明确的表示,自我审查是没有任何回旋余地的法律要求。所以我们相信通过 Google.com.hk 来提供无审查的搜索是一个符合情理的选择——完全符合法律,并且可以使中国人民获得更多的信息。我们衷心希望中国政府能尊重我们的决定,尽管我们知道通过这个方式提供的服务有可能随时被阻断。为此,我们建立了一个每天规律更新的页面来监控中国大陆访问各个 Google 服务的情况,这样所有人都可以随时看到哪个 Google 服务在中国可以访问。”同时,我们知道,这一做法完全符合法律,中国大陆政府一向支持“一国两制,港人治港”的政策,但如果这一通道真的被封闭的话(这不是不可能的事情),如果仅仅屏蔽,则大陆和HK则存在歧视,如果从HK赶出google,则无疑自己打自己嘴巴。
秦始皇修长城,坚持了15年;清朝闭关锁国,坚持了268年;现在的中国,可以坚持多少年?历史的朝代,大致上是家族式的,就是说皇帝的家族倒了,这个朝代也就倒了,历史上的社会,大都是政权形式的,比如奴隶社会和封建社会;说实在的,我不知道中国现在的政权形式,是哪一种,但给我的感觉,和封建社会差不多,不同的是,从过去的皇家变成了现在党姓,在本质上,没有太大的区别,权力,并没有回落到人民的手中,比之资本主义还不如。
不过,从某种意义上来说,这也算是一种进步,就像墙建的越高,安全防护越到位,小偷的本领也就越高,翻墙者的本领也就越高,正所谓:“你有砌墙术,我有纵云梯”,若干年后,中国翻墙的技术想必比之国外,那是有过之而无不及。到那时,想必“窃书不算偷”了。
当我写这篇文章的时候,如果有五毛的人,或者党姓的人看到,必然加以反驳,批判,或许更甚至,那些麻痹的人,乞求的狗,看热闹的围观者,想必会津津乐道;而我,却对他们感到悲哀和怜悯。
翻墙写博客却发现了百度的亮点
由于某种不和谐的声音,博客被封了,如果你看到了这个,说明你做了违法的事情—翻墙,因此,请不要说我违法,大家彼此彼此。
前两天我还抱着一丝的希望,今天突然想用百度进行百度一下,结果发现两个域名rix3.8.je和zeze0556.tk连搜索都搜索不到了,百度直接给我非常详细的错误日志:
以及
百度返回的错误信息竟然有google.com【这个应该已经查明了,可能是firefox缓存的问题,至于为何会这样,我也不清楚】,这也是我始料未及的事情