一、龙之谷架设篇
首先,想要修改,起码你要能打开服务端,并且成功登陆,否则你连测试都做不到。
所以,先要下载服务端,客户端使用国服的就可以了。用单机登录器覆盖即可。
物理端地址:http:\pan.baidu.coms18VFLs 密码uabr
DN工具 2015:http://pan.baidu.com/s/1pJA8NBd 密码:0vd2
因为架设有相关教程了。我这里就不详细说了
我们主要是利用物理端修改,所以只贴了物理端地址,虚拟端自行在群公告寻找
下载后把服务端解压在D盘,因为服务端默认设置都是在D盘的,如果你不会改,是不能正常启动的。客户端可以放在任何位置。
然后下载SQL sever 2008R2 恢复数据库,登陆密码设置为windows与SQL混合登陆模式,登陆账号设置为sa 密码为123456。数据库安全-登录名-创建数据库账号:DragonNest密码设置为:FD9D60B133f498b
不会的话参考群内的数据库教程。然后随便点个exe注册下,注册时间尽量长一点。注册机教程在群共享有的下。
注册后的开启顺序为:
1、NetLauncherD.exe
2、Gateway_Auth.exe
3、Gateway_Phone.exe
4、ServiceManagerExD.exe
开启ServiceManagerExD.exe后将所有选项都右键start。然后等待所有选项灯亮。
这个游戏开启过程有点慢,尤其是village和game两个选项。请耐心等待。
开启配置最低8G内存就可以了。但是最好有固态硬盘。CPU不是很好的话,内存需要适量增加。
等待全部亮起之后点击客户端的bat登陆,账号可以使用SQL命令注册,也可以使用GM工具建立。另外,本端因为UI的缺陷,所以萌骑士只能使用GM工具DN工具2015创建。但是DN工具2015需要改系统时间为2015年6月。然后就可以使用了。
注册命令:use dnmembership
exec __NX__CreateAccount ‘帐号’,’密码’
点劵命令:USE [DNMembership]
GO
[dbo].[P_ModCashBalance] N’账号’,9999999
至此,如果没有乱动什么。就可以正常登陆游戏了。如果出现请拨打xxxx电话,只需要耐心等待就可以。时间长短视硬盘性能而定。其他问题我没有遇到过。可以在群里询问其他人。
二、工具介绍篇
工欲善其事必先利其器,想要更容易的修改,当然需要几种给力的工具了。
我们这里主要讲解DNT和PAK工具。模型工具,3DMAX,PS之类的东西我们这里先不说,以后有必要的话,我会单独讲解。
这里先要感谢工具的制作人。周流,叮小铛,以及补丁工坊,TT打包解包的制作人。
首先介绍一下DNT工具。因为我们的大部分修改都是DNT修改。只有很少一部分是其他文件类型的修改。【至于什么DNT,后续的基础知识篇会详细介绍。】
我个人比较偏向周流的工具,因为不用花钱。而且功能更强,就这么简单。
周流DNT工具的使用方法:
首先设置,DNT文件目录。如果你按照教程做了。那么你的文件目录就是
D:ServerGameResresourceext
然后在D:ServerGameResresourceuistring文件夹把uistring.xml文件复制到周流DNT工具的根目录下。【所谓根目录,就是与软件同一个文件夹】
然后选择设置,数据库管理。制作uistring数据库,然后选择xml到数据库。
然后很简单,只需要点击文件,打开DNT文件列表就可以了。
现在我们就可以选择想要修改的DNT进行修改了。也可以直接把DNT文件拖进DNT工具窗口来进行修改。有类似nameID的列名,还可以用翻译功能,翻译出这一列的对应中文,这就是我们刚才配置uistring数据库的作用了。
叮当DNT工具的使用方法:
很简单粗暴,打开,拖进去就可以了。但是基本所有有用的功能都需要付费。不能进行新建,只能更改。
然后我们介绍一下解包工具打包工具。因为如果不能打包。我们修改了也没有用。我们解包的是PAK文件【什么是PAK文件在后续基础知识篇进行讲解】
TT打包解包工具:
这玩意我真的很喜欢。因为使用方法实在太方便了。但是缺点是解包的丢包率令人及其纠结。
打包方法和解包方法都是直接拖到窗口就可以了。解包的话会生成一个和PAK同样名字的文件夹。打包的话。需要新建一个文件夹resource就可以正常打包了。界面如下
补丁工坊:
我只能说,这东西本来是多玩作者写给模型党的。结果被咱们拿来用了。补丁工坊分为便捷模式和高级模式,便捷模式对我们来说并没什么用,我们主要是使用高级模式。
他会问你是否载入某路径的龙之谷文件,它的原理是注册表路径,我们无视它,直接选否,因为我们要解包的PAK不一定是在那个路径,打开后添加就可以了。
因为这个工具直接去多玩就可以找到详细的使用教程,我就不啰嗦了。
多玩地址:
http://bbs.duowan.com/forum.php?mod=viewthread&tid=26712380&page=1&randtag=1420839660#pid248251622
直接去多玩看教程就可以了。
三、基础知识篇
pak文件就是游戏的一种资源打包模式。我们所需要的资源基本都是PAK提取而来。
DNT是简易数据库,具体修改方法,参考我的单独教程。
PAK打包格式:
struct INDEX
{
char Name[0x38]; //文件名
unsigned long offset; //文件数据偏移量
unsigned long size; //文件大小
}
struct pak
{
char MagicNumber[4]; //pak文件头标记“PACK”
unsigned long offsetIndex; //目录索引表的绝对地址
unsigned long SizeIndex; //目录索引表中有多少索引项
}
<data……> //文件数据
struct INDEX index[SizeIndex] //目录索引表
DN中的PAK文件属于EYE自定义的格式,其文件结构为:
[头部]
总计1024字节
头部结构:
char szID[256];//文件ID, 占256字节
DWORD dwVer;//版本或识别码, 占4字节
DWORD dwRecordNum;//包内文件总数, 占4字节
DWORD dwRecordOffset;//第一个尾部文件信息块的偏移, 占4字节
BYTE dbReserved[756];//保留, 占756字节
[中段]
压缩数据,以78 01开始,属于典型的zlib普通压缩(一种开源的算法)
[尾部]
每个文件信息占316字节,故总字节数=316×文件总数
文件信息块结构:
char szFilename[256];//文件相对路径, 占256字节,ASCII文本,CodePage=949
DWORD dwPackedSize;//压缩后大小, 占4字节
DWORD dwTrueSize;//实际大小, 占4字节
DWORD dwOccupationSize;//在包文件内占据的大小, 占4字节
DWORD dwOffset;//在包文件内偏移, 占4字节
DWORD dwFlag;//标记, 占4字节
BYTE dbReserved[40];//保留, 占40字节
PAK文件解压方法简介:
1.打开文件,读取文件头,获得文件总数和一个尾部文件信息块的偏移
2.定位文件指针到尾部文件信息块,分配内存,从文件读取全部的文件信息块
3.对文件信息块按[在包文件内偏移]进行排序(可选,目的是为了加快解压速度)
4.循环处理所有的文件信息块
4.1 定位文件指针到[在包文件内偏移]
4.2 分配内存,字节数为[压缩后大小],从文件读取压缩数据块
4.3 分配内存,字节数为[实际大小],调用zlib解压缩函数进行解压
4.4 从[文件相对路径]中获取目录名,递归创建完整的目录
4.5 根据[文件相对路径]创建新文件,将解压数据保存到改文件
PAK文件创建方法简介:
1.遍历选定路径下所有的文件,提取文件相对路径和文件实际大小
2.创建PAK文件,写入头部块,包内文件总数和第一个尾部文件信息块的偏移暂时不填
3.读取每一个待压缩文件,调用zlib压缩函数进行压缩(采用普通压缩)
4.将压缩后的数据保存到PAK文件,同时跟新文件信息块的内容
5.压缩数据完成后,把文件总数和当前位置更新到头部块,然后将所有的文件信息块保存到PAK文件
7.定位PAK文件指针到头部,再次写入头部块,保存并关闭
基本资源路径:
背景音乐——mapdataresourcesoundbgm(背景音乐是OGG格式的 替换时要注意)
loading — —resourceuiloading(龙之谷中的背景图 一般都是.jpg格式的)
界面——resourceui(看文件名字就是到了ui的东西)
各职业服装。脸型。发型——resourcecharplayer(各个职业的ani 动作文件也在这里)
怪物——resourcecharmonster
NPC——resourcecharnpc
坐骑——resourcecharvehicle(全都可以通过文件名字很容易找到的 有木有)
饰品——resourceitemcash_item(翅膀 耳环 什么的全在这里)
技能——resourceparticle(除了魔导的镜子外 其他的技能SKN MSH DDS PTC都在这)
武器——resourceweapon 除了武器文件夹里有ACT外
resourcestateeffect里也有(职业技能的效果ACT也在这里)
字体——resourcefonts
声音——resourcesound(各职业技能声音 NPC 过场等 全在这里 还有技能效果音)
EXT表——resourceext
天气——mapdataresourceenvi
地图——mapdatagrid
纹身——resourcecharplayerdecal
宠物——resourcecharpet
DNT文件,又名【Dragon Nest Table file】,由原EXT文件改进而来,是一种较为简单的二维数据表,在DN中,所有的DNT文件构成了一个简易的数据库,供客户端使用。
DNT文件属于EYE自定义的格式,其文件结构为:
【头部】
总计10字节
DWORD dwNull;//空字节,占4字节
WORD wFieldNum;//字段个数(列数),占2字节
DWORD dwRecordNum;//数据个数(行数),占4字节
【字段描述块】
变长,每个字段描述块结构如下:
WORD wTextLen;//字段名称的长度,占2字节
char szText[wTextLen];//字段名称,占wTextLen字节
BYTE dbFieldType;//字段类型,占1字节,其含义如下:
1:字段类型为普通变长文本
2:字段类型为布尔型(以32位整型存放)
3:字段类型为32位整型
4:字段类型百分比(该字段为单精度浮点型,但要除以100)
5:字段类型单精度浮点型
【数据块】
变长,前置PKID,后面按照字段描述块定义的字段顺序排列
每一行数据结构如下:
DWORD dwPKID;//主键(32位整型)
以下根据字段描述块定义的类型分为以下3种:
★如字段类型为1,该数据为普通变长文本,结构如下:
WORD wLen;//文本的长度,占2字节
char szText[wLen];//文本,占wLen字节
★如字段类型为2,该数据为32位整型,占4字节,但其值只有0(假)和1(真)两种。
★如字段类型为3,该数据为32位整型,占4字节。
★如字段类型为4,该数据为单精度浮点型,占4字节,但结果要除以100。
★如字段类型为5,该数据为单精度浮点型,占4字节。
DNT文件处理方法简介:
1.打开文件,读取头部,获得字段个数和数据个数
2.根据字段个数,分配内存,读取每一个字段的描述信息,获得字段名和字段类型
3.根据数据个数,分配内存,先读取主键,然后根据字段描述信息中的字段类型,依次读取数据
PAK文件与DNT文件的关系
龙之谷资源相关资源格式。
后缀名 | 文件头标识 | 文件格式 |
.act | Eternity Action File | 动画索引 |
.ani | Eternity Engine Ani File | 骨骼动画 |
.cam | Eternity Engine Camera File | 摄像头配置(猜测) |
.dds | DDS | 贴图格式 |
.dmv | DN_CutSceneData | 过场动画(猜测) |
.eff | Eternity Engine Effect File | 特效(猜测) |
.env | 无 | 环境配置(猜测) |
.ext | 无 | 游戏配置 |
.fontset | 无 | 字体配置 |
四、外网架设篇
本章我不做任何解释,不回答任何问题。
另外:端口:14300 14400 14500 15100
①:
第一,路由器必须用DMZ映射你的主机;
第二,建立一个虚拟网卡,自己百度;
第三,改虚拟网卡的IP为你外网的IP;
第四,开启游戏跟你的小伙伴们撸起来。
②:
Hamachi龙之谷教程,最高支持5人,方法如下
安装Hamachi,注册账号后,会显示一个ip
将IP改到你龙之谷的所有IP(其实只要改一个):
将服务端的config.ini里的IP改成你的hamachi IP 即可
然后控制面板-网络和共享中心-更改适配器设置-高级-高级设置
将蛤蟆吃放在第一位,就可以了。
把好友拉入房间,就可以一起玩了
主机只要开RZDragonNest就可以登陆
其他要联机的小伙伴,打开下载的登陆器.bat
右键编辑bat将ip后面的地址改为:你加入的hamachi主机地址,保存双击,即可登陆
5个人是免费的,6人以上需要自行购买
还有其他方法,自己群共享找。
五、外挂技术篇
本章依然不会做任何解释,只提供技术以及源码。
本章只讲基本的人物基址,以及坐标基址的查找方法
①人物基址
龙之谷进入游戏的时候是保持在非战斗状态的,也就是0,而战斗状态是1、
我们通过用CE来查找0,然后切换战斗状态,来回反复。知道剩下几个。拉下来,锁定0,看人物能不能正常切换状态,如果不可以,那么这就是了。接下来就是用CE追查地址了【自行寻找CE使用教程,不详细介绍】
②坐标基址
去两个新手地图都可以。面向门,首先搜索未知的浮点数,然后向门走搜减少,后退搜增加。
直到几个,然后锁定,如果人物不能动了,就是找到了。可以开始追查了。
找到之后,基址的排序是xzy不是xyz。
附录下载地址:
源码:链接:http://pan.baidu.com/s/1ntwzKST 密码:j3td
by:并没有什么节操的榴莲