其他相关技术
1.增加图形称号
具体方法:
1.官方客户端的element文件夹内找到gfx.pck、surface.pck2个文件分别提取gfx\策划联入\称号特效 和 surfaces\title文件
2.找到自己客户端内的moldes文件提取人物形象中的躯干文件(男和女.ecm)
3.用ue打开躯干文件,把id:6下面的密文复制到base64解码器就会看机明文(93是密文行数)
4.在解码后的躯干明文内加入你需要添加的特效称号路径,
列如:
self.equip_id_table[56218] = {}
self.equip_id_table[56218][1] = { hook = "HH_title", gfx_path = "策划联入\\称号特效\\摸金校尉_1.gfx", gfx_ver = 1, pos = {x = 0.0000, y = 3.1000, z = 0.0000}, rot = {x = 3.1000, y =3.0000, z = 3.0000} }
这里56218是一个非阴、阳位的法宝,你可以自己改这个代码,POS/rot{XYZ}是特效的坐标,这是我自己测试的一个,具体坐标你们可以自己尝试。完成后把明文转换密文覆盖到原来躯干文件,注意密文行数。每行1500个字符
5.特效的修改,ue打开对应gfx特效比如上面的“摸金校尉_1.gfx”,找到图案\摸金校尉.DDS。下面的就是图案的效果等等,你可以看见图案的高和宽参数,按自己喜欢修改,我这里是3.000和0.6050
6.特效效果这里比较麻烦,每个特效对应了好几个粒子效果,但也有简单的方法,直接将游戏贴图精度设成最高就OK
7.把修改好的特效gfx文件打把回你客户端下gfx\策划联入\称号特效路径,修改的躯干文件也打包回moldes,title打包回自己客户端的surfaces\内,就完成了
设置下对应的el法宝代码就有显示了
2.武器光效添加
开头部分
MOXTVersion:特效版本
SkinModelPath:模型的SMD路径
AutoUpdata:自动更新(这项可有可无)
OrgColor:模型颜色,更改其数值可改变模型颜色,(ffffffff为白色)
SrcBlend:模型颜色覆盖程度,可改变其数值达到武器模型本身效果变化(默认5) 如果改为3或7。。不论+到20都是一样没变化的。。如果想要变化就要改为5
DestBlend: 为模型的透明度,可改变数值使模型透明化从而变化出不同的效果。
OuterNum: 8(还不明白是做什么的)
NewScale: 0
BoneNum: 0将这2行代码换成
NewScale: 0
BoneNum: 1
BoneIndex: 0
BoneSclType: 1
BoneScale: 1.500000, 1.500000, 1.500000(可控制模型整体大小)
CoGfxNum:特效种类数量,每增加几种特效需要相应改变N值
特效部分
(1)FxFilePath:此行为特效路径。可将GFX.PCK解包,在解包后的文件夹进行选择。
(2)HookName:此行控制整体特效在模型上的位置,HH_tip为武器的前端,HH_base为武器主体部分, CC_weapon为武器整体。坐骑会有所差别。
(3)HookOffset:此行的三个参数分别控制特效在X,Y,Z轴的位置,代表了模型上的前后,左右,上下。但并不是每个都是这样的,具体还要自己测试。
(4)HookYaw:
(5)HookPitch:
(6)HookRot: (4)(5)(6)三行共同控制特效的360度旋转。可根据模型的需要对特效进行旋转找到最佳位置。
(7)BindParent:
(8)FadeOut: 1
(9)UseModelAlpha: (7)(8)(9)三段参照武器原设置即可。对特效无影响。
(10)GfxScale: 此行控制特效大小。可根据感觉自行调整。允许小数。默认大小为1.000000
(11)GfxSpeed: 此段控制特效动画速度变化快慢。数值越大动画速度越快。默认速度为1.000000
(12)GfxParamCount:
(13)EventType:
(14)StartTime:
(15)TimeSpan:
(16)Once:
(12)(13)(14)(15)(16)段参照原文件设置,无需更改。
基本上看明白这些代码的含义之后,改起特效也得心应手了
比如,将武器的特效改动一个地方,将武器脱下再戴上,即可查看特效变化。
再根据,自己的喜好,对特效的形状,大小,位置进行调整。
个别朋友解僵加特效后,坐骑或飞机还不能动,这时要记得删掉每段特效中的GfxRelToECM: 0哦
因为,改特效真没什么技术含量,所以,大家都摸索下就可以了
3.添加翅膀教程
工具:人物躯干ecm加密解密工具,角度换弧度工具,pck解压工具,翅膀模型
据我所知,武林和诛仙、完美都不一样,翅膀必须添加到躯干上才能显示。
首先要知道躯干的路径:Models\players\形象\男\躯干\男.ecm
【对了,这里要提一下,翅膀不是我做的,是不知名的大触根据完美的翅膀写的。
我只在翅膀上添加了特效。这里我放出模型,教大家添加翅膀和刚研究出的添加特效的方法。】
翅膀的添加:
pck工具解压models.pck,找的人物躯干ecm文件,记事本打开,拉到底,找到
id:6
ScriptLines:
下面的代码(图2、图3)
没看到图!
复 制,打开加密解密工具,粘贴到ecm密文位置,解码,这时候可以看到明文出现躯干已添加的特效信息。下拉到底,参照我改好的,看到 图4
接下来我解释下这段文字意思。
方括号内为物品id,即在el里显示的id,HH_ 后跟的是位置,可中文可英文可拼音,这里的Spine是脊、背的意思,依次类推。
gfx_path,顾名思义,特 效的路径,用pck解包工具解压客户端的gfx.pck,填的路径要对应到gfx文件夹里的gfx文件。注意双斜线。
gfx_ver = 我猜应该是使用与不使用,1使用,0不使用。
后面的pos和rot是位置,添加好特 效后,通过更改这里,可以定位特 效。【翅膀位置一般规律.txt里是我多次尝试后得出的位置规律】
如果只添加翅膀的话,只要添加一行文字就好,即HH_Spine那行,下面的特效是我自己加的(改位置超级累。。)
然后把改好后的内容编码(ECM密文每行字符填124),复制密文,替换原ecm里的密文,记得改在 id=6 下面的密文行数(重要)。
然后把翅膀 模型用登陆器当补丁打进去【登陆器mc上一大堆,我就不发了】,要注意的是,不是把补丁导入models.pck,而是gfx.pck
特效的添加:
特效文件也是在解压出来的gfx里找,需要注意的是,一些gfx文件是由另一些gfx组成,我称之为大特效,
组成部分为子特效。所以还是要记事本打开gfx,
找到里面的相关路径,修不修改随意,但是路径一定要对。
【比如,用pck编辑器查看gfx\人物\冰凌翅_流 光,可以看到 GfxPath: 人物\冰凌翅_流 光子.gfx ,
而打开流光子,又可以看到 TexFile: 纹理\波纹流动蓝色_td.dds】
找到最基本素材特效,即里面不关联任何gfx的素材,打开,下拉会看到一些贴图路径,一般在gfx\textures里。
确认你的客户端的gfx.pck里或者即将要打的补丁里有这些dds文件,否则特效不显示。
简单来说,就是大特效←基本特效←贴图。确认他们路径关联无误,打入客户端,再在躯干里添加,即可正常显示。
模型不显示,一般都是路径问题。
补丁说明:
补丁里要包括:躯干ecm,翅膀主体特效,翅膀特效,特效贴图。
pck\models\players\形象\男\躯干\男.ecm
pck\人物\冰凌翅.gfx ——加翅膀
pck\gfx\textures\纹理\火纹通道.dds等等 ——加特 效 使用:
在el里添加一个【时装翅膀】,id填躯干里添加的,男女模型id处填0,同步。
进游、戏就可以获得一个自制的特效翅膀啦!
这一段仅限复制!还没实操!!!
4.合区教程
自动合区方法
首先,是合并账号。
这个大家都会的。账号存在于MSSQL里面数据库的user表。
有2种可能。
第1种。在你开SF的时候,你已经想到了将来要合区。所以。这里的账号有一个字段ID
存在游戏数据库里的人物ID 是依据 账号ID来的。
第2种。在你开SF的时候,你没有想到要合区。2个区内有不同的账号,但是ID完全相同。
考虑到2种情况的发生。所以。从B区 合并到A区操作的时候。
统一把B区的账号附加到A区的账号下面。
比如 A区账号列表有
ID name passwd ...
16 one ...
32 two ...
48 three ....
....
B区账号列表有
ID name passwd ...
16 abc ....
32 bcd ....
48 ddd .....
统一到A区后,以附加的形式增加。为了账号不重复。将B区账号后面带上 _b形式 合并后
的A区数据库是
ID name passwd ...
16 one ...
32 two ...
48 three ....
54 abc_b ....
70 bcd_b ....
86 ddd_b .....
第二步,将B区人物数据,合并到A区。
当第一步账号合并完毕后。让B区用户,使用新的 A区账号(abc_b) 登陆A区游戏。建立新人物。
这样一来,B区玩家有了A区中的新人物,和B区中的老人物。
将B区数据库(账号) 和B区游戏数据库(以单击虚拟机形式)启动。
现在你启动了 一个数据库服务器 (其中有2个数据库 1.A区数据库 【有A账号和新的B账号】 2.B区数据库)
写个小程序。服务端内自带hessianphp让玩家登陆网站。当然只允许使用A区账号。
登陆后。选择人物。(当然是A区人物)如果还没建立,人物列表为空。将不允许合并。
选择A区人物后。根据A区的 name_b 提取name 来访问B区人物数据提取B区XML,附加到A区。合区结束。
这一切都是自动的.
5.简单的换端方法
最简单的换端方法 好多人容易忽略 clsconfig文件
我以前换端总是光换gamed文件夹 这样好多端新手人物东西不全 没发完 用这个方法 全解决了 O(∩_∩)O哈哈~
效果和重新建服一样的
1.把 新端 root\pwsever\gamed\文件夹中config 全考进要换的旧端相应文件夹中 覆盖
2.把 新端 root\pwsever\gamebd文件夹中 clsconfig文件 考进旧端相应文件夹中 覆盖
3.修改服务端版本号
glinkd/gamesys.conf
root\pwsever\glinkd/
version = 10306 改为对应的 就行了
6.据说可以更换玩家自己头像
charhead.xml 修改人物头像 可以放玩家真实照片
<DIALOG Name="Win_CharHead" Width="250" Height="93">
<IMAGEPICTURE Name="Img_HeadBack" x="15" y="15" Width="68" Height="68">
<Resource>
<FrameImage FileName="New\人物头像\底.tga"/>
</Resource>
</IMAGEPICTURE>
<IMAGEPICTURE Name="ic_Head" x="14" y="15" Width="68" Height="68"/>
<IMAGEPICTURE Name="Img_CharHead" y="5" Width="246" Height="86">
<Resource>
<FrameImage FileName="New\人物头像\人物头像框.tga"/>
</Resource>
</IMAGEPICTURE>
<STILLIMAGEBUTTON Name="Btn_Close" x="1" Width="39" Height="39" Command="close">
<Resource>
<FrameUpImage FileName="New\人物头像\人物头像框-关闭按钮-普通.tga" FrameMode="1"/>
<FrameDownImage FileName="New\人物头像\人物头像框-关闭按钮-普通.tga" FrameMode="1"/>
<FrameOnHoverImage FileName="New\人物头像\人物头像框-关闭按钮-高亮.tga" FrameMode="1"/>
</Resource>
</STILLIMAGEBUTTON>
<ROGRESS Name="rgs_HP" x="93" y="25" Width="149" Height="16">
<Resource>
<FillImage FileName="New\人物头像\人物头像框-血条.tga"/>
</Resource>
</PROGRESS>
<ROGRESS Name="rgs_MP" x="96" y="43" Width="140" Height="12">
<Resource>
<FillImage FileName="New\人物头像\人物头像框-魔法条.tga"/>
</Resource>
</PROGRESS>
<LABEL Name="Txt_Name" x="168" y="7" Align="1">
<Text String="角色名称" FontName="方正细黑一简体" FontSize="10" Shadow="255" OutlineColor="0,0,0,0" TextUpperColor="0,0,0,0" TextLowerColor="0,0,0,0"/>
</LABEL>
<LABEL Name="Txt_Prof" x="114" y="71" Align="1">
<Text String="秘法师" FontName="方正细黑一简体" FontSize="9" Shadow="255" OutlineColor="0,0,0,0" TextUpperColor="0,0,0,0" TextLowerColor="0,0,0,0"/>
</LABEL>
<LABEL Name="Txt_LV" x="90" y="9" Align="1">
<Text String="150" FontName="方正细黑一简体" FontSize="10" Shadow="255" OutlineColor="0,0,0,0" TextUpperColor="0,0,0,0" TextLowerColor="0,0,0,0"/>
</LABEL>
<STILLIMAGEBUTTON Name="Btn_HeadHP" x="80" y="27" Width="13" Height="13" Command="headhp">
<Resource>
<FrameUpImage FileName="New\人物头像\人物头像框-血条数值开关按钮-普通.tga"/>
<FrameDownImage FileName="New\人物头像\人物头像框-血条数值开关按钮-按下.tga"/>
</Resource>
</STILLIMAGEBUTTON>
<STILLIMAGEBUTTON Name="Btn_HeadMP" x="84" y="43" Width="13" Height="13" Command="headmp">
<Resource>
<FrameUpImage FileName="New\人物头像\人物头像框-魔法条数值开关按钮-普通.tga"/>
<FrameDownImage FileName="New\人物头像\人物头像框-魔法条数值开关按钮-按下.tga"/>
</Resource>
</STILLIMAGEBUTTON>
<STILLIMAGEBUTTON Name="Btn_HeadEXP" Width="8" Height="8" Command="headexp"/>
<STILLIMAGEBUTTON Name="Btn_Lock" x="186" y="72" Width="12" Height="15" Command="lock">
<Hint String="安全锁"/>
<Resource>
<FrameUpImage FileName="New\人物头像\安全锁图标.tga"/>
<FrameDownImage FileName="New\人物头像\安全锁图标.tga"/>
</Resource>
</STILLIMAGEBUTTON>
<LABEL Name="Txt_HP" x="168" y="27" Align="1">
<Text String="HP" FontName="方正细黑一简体" FontSize="8" Shadow="255"/>
</LABEL>
<LABEL Name="Txt_MP" x="168" y="44" Align="1">
<Text String="MP" FontName="方正细黑一简体" FontSize="8" Shadow="255"/>
</LABEL>
<IMAGEPICTURE Name="Img_HeadCover" x="16" y="16" Width="64" Height="64"/>
<LABEL Name="Txt_FP" x="168" y="58" Align="1">
<Text String="FP" FontName="方正细黑一简体" FontSize="8" Shadow="255"/>
</LABEL>
<ROGRESS Name="rgs_FP" x="98" y="60" Width="129" Height="7">
<Resource>
<FillImage FileName="New\人物头像\飞行精力条.tga"/>
</Resource>
</PROGRESS>
<IMAGEPICTURE Name="Control_144545288" x="94" y="26" Width="148" Height="8">
<Resource>
<FrameImage FileName="New\人物头像\人物头像框-血条框高亮边.tga" Frames="0"/>
</Resource>
</IMAGEPICTURE>
<STILLIMAGEBUTTON Name="Btn_Wulinwiki" x="201" y="70" Width="21" Height="19">
<Hint String="武林万事通"/>
<Resource>
<FrameUpImage FileName="New\万事通特殊界面\武林万事通.tga"/>
<FrameDownImage FileName="New\万事通特殊界面\武林万事通.tga"/>
</Resource>
</STILLIMAGEBUTTON>
</DIALOG>
7.修改技能点
首先,在网上下载一个EL编辑器。
第一步:
运行EL编辑器。如图所示,打开elements文件。
第二步:
搜索“天赋点数表”(这个就是天书技能的点数)。如图所示。
第三步:
选择“天赋点数表”。方法如图所示。
第四步:
翻页到第3页。方法如图所示。 修改数据为“999点”。 方法如图所示。
修改完成之后,用winSCP,上传到服务端,并且覆盖客户端的同名文件就好了。 这样,你进游戏之后,你就会发现, 你发生仙魔佛任一个势力,满级之后,你的技能点和天书点都是999
足够加满所有技能了吧。 ./gamedbd conf-file
importclsconfig 导入clsconfig
exportclsconfig 导出clsconfig
clearclsconfig 清理clsconfig
listrole 角色列表
listrolebrief 角色列表简表
listuserbrief 用户列表简表
listfaction 查看帮派列表
listfactionuser 查看帮派用户
listcity 查看城市列表
updateroles 更新角色
convertdb 转换DB
repairdb 修复DB
tablestat 表查看
tablestatraw 表查看
towdb DB牵引
tobdb
compressdb 压缩DB
decompressdb 解压DB
gennameidx 性别
listid tablename 表名ID列表
rewritetable fromname toname 从name1 到name2 重写到表
rewritetable roleidfile fromname toname 从name1 到name2 重写到表 角色ID
read tablename roleid 读表名角色ID
query roleid 角色健康状况(以ID查询)
merge dbdatapath 合并DB(DB路径)
listshoplog 商店购买记录列表
findmaxsize dumpfilename 查找尺寸最大的垃圾文件
例子
cd /server/gamedbd
./gamedbd gamesys.conf listfaction
常用到
listrole 角色列表
listrolebrief 角色列表简表
listfaction 查看帮派列表
listcity 查看城市列表
merge dbdatapath 合并DB(DB路径)
listshoplog 商店购买记录列表
8.认为最有价值的几句话
(1)注意看平台输出,如果GS启动报./gs:undefined symbol:_Z17LoadTasksFromPackP14elementdatamanPKcS2_S2_,
那么把\root\wulin\gamed下面的libskill.so和libtask.so复制并覆盖/lib和/usr/lib中同名的两个文件,
GS就不会报错可以进入了,该方法我亲自测试过可行。
(2)如果是用./qd启动后没有出错,但还是有“没有可用的线”,注意看qd文件里的最后两行,
好像也是gs....bf.conf sleep 8这种语句,我是把它屏蔽了之后才可以进游戏的,
因为是gs启动了两次,线冲突了,两句话的区别和解决办法还在研究中。
9.修改EL
诛仙ELEMENTS.DATA文件结构
现在诛仙改模型已经很普遍了,改的方法无外乎两种:1、改pck文件包,2、改elements.data pck的修改方法各大网站都有,今天我就说说elements.data(以下简称el)的文件架构和修改方法 首先需要先大致介绍一下el: el里面存储了游戏的各种属性,比如装备、法宝、宠物……文件被分成了很多个大段,每个大段里又有很多个小段,每个小段就是一个物品或属性的数据,不同的大段,小段的结构也不一样 文件大致结构是: 图1:elements.data的大致结构
以最新版的诛仙(版本号866)为例: 1、用16进制编辑器打开elements.data,我用的是WinHex,你也可以用Ultraedit 2、打开后如下图: 图2:用16进制编辑器查看el
图中就是elements.data的基本结构,根据这个规律,可以查看所有完美游戏的el。需要注意,el里所有的汉字都是Unicode编码。 根据图1,首先要明确,应该先确定el的大段,而确定大段也是有规律的,从开头看起,除了前8字节的文件头,后面开始就是第一大段,看②,换算成十进制是88,③换算成十进制是4192,88*4192就能算出第一大段的长度,从而找出第二大段的起点,依此类推,就能找出所有大段。 两个大段之间并不是紧连在一起的,中间会有N个字节的空余,N的值不定,但可以从文件中看出来。 3、找到了大段,下面找小段,以第一大段为例: 如图2,从01 00 00 00开始到02 00 00 00前,就是第一个小段,01 00 00 00就是这一段的ID。 每小段的格式不定,但同一大段中的各小段格式是相同的,如第一大段是“属性”段,相对比较简单的,小段中7个数据,分别为:ID(4字节)、属性名(64字节)、数据3(4字节)、属性数量(4字节)、属性值1(4字节)、属性值2(4字节)、属性值3(4字节),加起来看看是不是等于②中的88? 小段数据的分割需要“试”,一般来说,前4字节就是ID,文字段的长度一般为64字节,也有小部分为32字节,数字段的长度就是4字节,但需要自己确定是整数还是小数 4、明白了el的结构,就可以按这个结构自己修改了,但由于每段数据长度的限制,所以也不能随意改,要在允许的范围内改。 由于诛仙的文件检查,修改el后直接进游戏就会提示错误,这时需要破解诛仙elementclient.exe,
10.修改场景及建筑
客户端里的
dynamicobjects.data
是动态场景设置
11.添加地图简介
自行添加地图的方法.打开服务端的gs.conf 如图添加一个gs启动项标题
再在gs.conf里面添加一个你添加地图的启动项内容
然后拆开客户端的configs.pck 在instance.txt里找到你要修改的原始地图 把ID替换成你自己添加的地图ID就好了 如图
现在就可以进入你自行添加的地图了,也不会出现进去就掉线的问题
12.彩票使用方法
function LotteryType7764Cashing(cur_list)
if (cur_list[1]..cur_list[2]..cur_list[3]=="123") then
return 1,0,2524,15,0,0;
end
if cur_list[1] == cur_list[2] and cur_list[2] == cur_list[3] then
return 2,0,2524,5,0,0;
end
return 3,0,2524,1,0,0;
end
本帖隐藏的内容 return 1,0,2524,15,0,0;
- return=返回 1=奖品级别 0=未知 2524=奖品 15=数量
复制代码
|
要修改的是位于服务端的(wulin是我的端文件夹名,内的可能是rain或者其他神马的名字- -)
usr/wulin/gamed/lottery.lua
usr/wulin/gamed/config/lottery.lua
ps:千万记得随时备份- -
用文本打开lottery.lua开始添加了
这里用春节礼券做案例根据传统,随手加了隐藏...)
试着添加彩票前,我在试用18178彩霜礼券时是可以正常使用的,所以就试着在lottery.lua中搜索了18178
首先出现的是
[mw_shl_code=css,true]function LotteryType18178SelectNumber(list, max_count)
local qujian={0,180,240,250,251,351,411,412,432,612,613,614,680,730,780,960,1000}
local m,i
m=math.random(1,1000);
for i=1,16 do
if m > qujian and m <= qujian[i+1] then
return i
end
end
end[/mw_shl_code]
此处应该是设定几率的...还要再调试观察观察...(- -弄了之后都不用购买熊大之前教怎么添加新彩票的教程了...还不够钱呢正好)
m是1到1000的随机数,i其实就是礼品的位置啦...把LotteryType18178修改成自己要的就好
中奖几率可以等之后几步再做调整
接着继续往下,我找到了这部分代码:
gsalias_fs01 帮派大乱斗(跨服战)
gsalias_fs02 皇城争霸
gsalias_gs31 大乱斗线
gsaliasb01-gsaliasb03 城战线
|