发属于自己的石器时代,都需要哪一些东西?

2019-11-06 10:51:15 石器战报 网站编辑

「第一篇」


由于很多原因,所以我决定用源代码进行二次开发学习,创造属于自己的石器时代的版本和功能。


相信很多朋友也曾经想过,如果能够拥有一套完全属于自己的石器时代的版本,该是多么自由与方便。


这里说的完全属于石器时代的版本,具体应该包括哪一些?很多刚入坑的朋友并不是特别了解。


我当做回顾,简单给大家梳理一下。


- 石器时代服务器端源代码(有挂版本和无挂版本都可以共用一套服务器端代码,当然一般也是分开的)

- 石器时代客户端源代码(无挂版本需要客户端源代码)

- 石器时代DLL源代码(有挂版本只需要dll源代码,并不需要客户端源码,原因后续详说)

- 配套的石器外挂,一般常见的是stw和assa,常见是低版本和高版本(如果有外挂源码当然更好,不过一般都没有,但足够用)

- 石器时代支持32色的真彩补丁工具(用来制作分离补丁,修改图片偏移,增加补丁或删除补丁,增加图片或删除图片等,也是修改UI或制作UI必备)

- 石器时代LUA+补丁的加密解密工具(网络上老的有人放出来,目前新版本的没有人放出来,一般只有放出来加密,没有放出来解密,小白就不用找了,都是卖高价的)

- 石器时代地图编辑工具(网上很多)

- 石器时代代码或者脚本编辑工具,我个人推荐用notepad++或者sublime text,都是专业的代码编辑工具


其中,服务器端一般如果是要开服的话,必须是linux版本,也就是需要把服务器端源代码在linux下进行编译,一般推荐使用centos7 64位进行编译,因为目前很多云服务器的环境都是64位的centos了。编译的方法网上有教程,可以自己找找,只要把环境配置好,编译是最简单的三个命令。但是要修改和二次开发,那就不是一天两天就能学会的了。


客户端源码或者dll源码,一般使用vs 2013或者vs 2015都可以,只要把相关的库文件的路径配置好,一般编译起来问题不是很多。


特别需要注意的是,不管是dll还是客户端,都需要注意和服务器端的封包和key进行配对,这个决定了客户端是否匹配以及能否登录的问题。也是入坑源代码最复杂的地方,正常情况下没有高人指导的话,基本上99%的人都会在这个地方放弃的。


比较好的方法就是找人购买一套完全配套齐全的代码就最好不过了。


大概简单归纳这些供大家参考,后续有时间我再根据实际情况逐步展开进行码字。


「第二篇」

在之前还没有人开始出售石器时代客户端源码的年代,大部分的石器时代都是通过使用DLL编程,在内存中对官方石器时代客户端进行修改,从而达到了增加功能或者修改功能等作用的。


DLL源码使用vs2013或者vs2015可以进行编译,从理论上来说,如果编程能力足够强,完全可以通过dll进行各种功能拓展和修改,从而实现一个全新的石器时代客户端,但是工作量非常大,因为dll并不是直接编译成客户端,而是要找到官方客户端的各种功能函数在内存中的函数名字和地址,才能使用dll进行修改。


比如现在很多有挂版本,通过dll源代码,可以实现分离补丁,真彩32色的bmp补丁支持,多分辨率,增加按钮,修改界面UI调用,称号,光环,一些图形化的lua,一些新的界面,宠物计算,祝福,新的摆摊界面等等,都是可以通过dll源代码进行编译。


网络上有很多提供下载的dll基本上都比较久,大家在下载的时候,要注意下载配套的dll和服务器端源码配套的,才有意义,不然的话,只能用来进行移植当中的某一些小功能了。


当然,DLL也提供分离补丁加密和解密,也可以实现lua文件的加密和解密,从而实现配套自己的服务器端,实现专属的石器客户端+服务器端+专属的客户端的lua和登录列表和分离补丁,这样别人也无法使用你的客户端去配套他的服务器端了。


不过比较可惜的话,网络上并没有提供大部分新功能的dll下载,想要拥有比较新的功能和支持高彩的dll或者多分辨率,都是需要购买比较新的dll进行移植,价格还是比较高的。


「第三篇」

这篇文章主要向大家分享一点点思路,很多刚入门研究石器源代码的朋友,都搞不太清楚。

毕竟在网络上下载的很多石器的服务器端和客户端都是不配套的,既然我们要研究源代码,目标当然是拥有一套完全能够配套的代码可以进行持续开发了。

想要实现配套的客户端和服务器端,需要注意以下几个思路:

- 客户端的封包,要和服务器端封包一一对应好,比如dll源码里边的封包,一般包括登录封包,建立人物封包,删除人物,登出等,最关键想要能够登录到游戏,登录封包的加密方式,发送的封包和解密封包的内容,都要和服务器端一一配套好。

- 客户端源代码的3个key,需要和服务器端配套,dll源代码也是一样的道理

- 版本号需要对应好

- 客户端目录下一般都是用login.lua这种方式来实现登录列表,现在已经很少直接写入在dll里边了。所以主要登录列表的lua里边的密码,key,版本号,以及列表的方式,都需要一一对应。比如网络上09的服务器端和客户端就有这样的问题,很多人都在这个地方卡住了进行不下去。

思路大概是以上这样,当然如果有已经配套齐全的源代码,如果想要防止一些外挂注入之类,最好自己花一点心思,把封包修改一下,可以防止以前大部分的外挂。毕竟拥有外挂源码的人很少很少的,用这种小技巧,可以轻松防范很多外挂的可能性。


最近发表
友情链接
标签列表