Rss | Tags设为首页 | 收藏本站
您所在的位置:首页 > 教程工具 > 正文
教程工具
联系我们

时光科技
 客 服QQ:250150367

教程工具

天龙八部服务修改详细教程

作者:时光科技 来源:原创 日期:2022/5/7 0:56:52 人气:138

  很多新玩家不知道天龙八部服务端版本里面的文件的具体作用,今天给大家带来一些比较常用的文件说明:

1aa.png

天龙八部服务修改历史性详细教程以下是我服务端文件打开得出的说明:

      tlbbPublicConfig及tlbbServerConfig下的txt文件

        AbilityLevelUp         这个文件夹里的文件是升级门派技能、生活技能所需的经验和所需的熟练度

        RandShop               这个文件夹里的文件是控制一些特殊商店,如野外的宝石店

        Ability                生活技能所需要的等级、工具、操作平台等,升级需求和消耗对应的文件在AbilityLevelUp内

        AbilityExpTable        矿、鱼所需的技能等级、熟练度

        ActivityNotice ↘

         这两个文件控制活动公告和刷怪,如冰妖之类

        CampaignTable   

        CharFaceGeo    ↘

        CharHairGeo    →      创建人物时或用道具更改脸型、发型、头像,控制哪些可选哪些不可选

        CharHead       ↗

        City 开头的文件是帮派城市相关

        CommonItem             所有的道具材料任务道具的代码

        DropBoxContent         掉落包的价值、包含在内的物品代码

        EquipBase              所有装备代码

        EquipExtraAttr         一些装备的有效期,如时装

        EquipSetAttr           套装隐藏属性

        GemCarve               雕琢宝石

        GemInfo                所有宝石代码

        GemMelting             熔炼宝石

        文件太多,挑重点 


        ImpactSEData_V1        状态的图标、说明,最多到1024栏,不可再多,否则不可启动服务端,需要添加就在客户端的ImpactSEData_V1里添加

        ItemCompound           装备图样、骑术

        ItemEnhance            强化

        ItemSegAffect          装备品质所对应的星数

        ItemSegValue           装备起始数值段,控制装备各种属性值

        MaxMoney             人物各等级对应的金钱上限

        Mission开头的文件是各种任务相关,奖励、经验等。不包括剧情任务

        MonsterAttrExTable     包含所有怪物的代码

        MonsterDropBoxs        怪物价值及其掉落包的代码

        PetAttrTable           所有宠物的资质成长率等 

        PetLevelUpTable        宠物升级所需的经验

        PetMedicineHCCompound  合成灵兽丹

        PetSkillBook           珍兽技能书对应的技能ID

        PetSkillLevelup               珍兽技能升级后对应的技能ID及所需的道具

        PetTitle               珍兽称号

        PetTypeAttr            宠物类型

        PlayerExpLevel         人物升级所需的经验

        ShopTable              商店,包括元宝商店

        ShopSceneLimiti        控制商店的总数,如果要在ShopTable增加一个商店,这个文件也要对应

        SkillData_V1           所有技能不包括生活技能  

        SkillTemplate_V1       升级技能后对应的技能ID,主要针对门派技能

        SpecialObjData         烟花

        StandardImpact         对应SkillData_V1里的技能参数值;

        StorytellingDuologue   NPC的自言自语内容

        XinFa_V1               心法

        ShimenLevelMoneyBonusTable   师门任务获得的金钱与经验

        ShimenRoundMultipleTable     师门任务经验金钱倍率

        MonsterAITable.ini           怪物基础AI

        tlbbPublicData9 


  11zz.png

        AIScript.dat           所有AI

        Script.dat             所有脚本编号.   

        AIScript文件夹内包含所有的AI,如要添加AI,在AIScript.dat也要对应

        Script文件夹内包含所有的脚本,如要添加新脚本,在Script.dat里必须要写好脚本的路径及编号

        tlbbPublicScene      目录下的是所有地图的相关文件

        以上文件有部分要同步客户端,是哪些文件就不一一细说了。

        用AXPPacker打开客户端data文件夹里的config.axp,看哪些文件在服务端上有同名的,就添加进去

        注意:上面说的ImpactSEData_V1.txt例外,不能把服务端里的ImpactSEData_V1.txt替换进客户端,否则某些buff会不能显示甚至出错。反过来也一样,不能把客户端里的ImpactSEData_V1.txt替换进服务端,否则服务端不能启动。

        tlbbServerConfig

        ConfigInfo.ini         服务器的一些设置,如修改经验倍数,移动速度等

        DefaultChar.ini        人物出生的一些设置

        PetConfigTable.ini     珍兽成长率控制

        SceneInfo.ini          包含所有地图ID)  

        SystemInfo.ini         控制发送公告间隔时间及数量

        添加装备

        首先用excel或其他工具打开EquipBase.txt在最后一栏加入你要添加的装备。例如:我要添加一把与众不同的神器,以四代扇子为例,把四代扇子整栏复制到最后一栏,如图:  

        把Index那一栏也复制下来,这样就好修改了,Index这一栏是不读的,删不删都无所谓。

        名称说明那些随便改。改代码,如上图的10554506,改成10557051以上,不能跟其他代码一样,也不能比原来最后一栏的代码低,否则服务端是不能启动的。

        接着你要哪种属性就把-1改成1,基础属性(基础外功基础命中那些)你要改1000就1000,2000就2000。后面的品质规则由ItemSegAffect.txt控制一般都是1就是1星9就是9星,  

        起始数值段由ItemSegValue.txt控制,就是把刚才改成1的属性变成你想要的属性值。同样以excel或其他工具打开ItemSegValue.txt如图

           

        index那一列就是起始数值段,喜欢改多少就改成多少,要注意的是,例如,我把体力改成200,那么实际的数值是300,客户端显示的是1.5倍。如果使用已有的数值段,这一步可省略。

        属性条min,属性条max,不是手工就两个都填一样吧,根据刚才改成1的数量就填多少。

        但即使你改了20个属性,一件装备最多只有16属性。那么有4个属性属性会被随机挤掉。

        最好就改16以下。改完后同步客户端,不然不能正确显示。

        添加物品1

        新手没什么必要学这个,这个主要用于添加一些特殊材料,通常用于脚本,就是兑换装备之类的,随便说下吧,相比添加装备简单点。打开CommonItem.txt,最好不要在最后一栏添加,因为代码2 3 开头的是道具和材料,而后面4开头的是任务道具,随便找个空位挤进去吧,同样要添加的物品的代码不能低于上面的代码,也不能高于下面的代码,名字随便改,资源那一列就是图标,想与众不同,换图标吧,用AXPPacker打开客户端data里的Material.axp,全部提取出来,然后找到Icons文件夹,里面就是所有的图标,如,我要把我添加的物品的图标换成999朵玫瑰的图标,那么就在Icons文件夹找到999朵玫瑰所在的图片,如图 .  

        复制图片名称Cloth4,再数一下999朵玫瑰在这图里的第几格,第五个。那么要添加的物品的图标就是Cloth4_5,改好后同步客户端。添加NPC或怪物先找到你要在要添加NPC或怪物的场景的monster.ini文件,如,我要在太湖添加NPC或怪物。都在tlbbPublicScene目录下,打开taihu_monster.ini

        第二行monstercount=18,这是怪物(包括npc)的总数,要加几个怪物就在上面加几。

        复制一段加到最下面:如

        [monster17] -------------------------怪物顺序,一定要按顺序上一个是16,下一个是18

        guid=2947192----------------------怪物组,可以不管 

        type=153-----------------------------怪物代码,对应MonsterAttrExTable.txt

        name=黑市商人-------------------怪物名称

        title=----------------------------------怪物称号

        pos_x=193.0000--------------------X坐标

        pos_z=262.0000--------------------Z坐标

        dir=22---------------------------------方向代码

        script_id=311009-------------------脚本在tlbbPublicDataScript,一般用于NPC,有些特殊怪物                          也有会脚本,不需要填-1 

        respawn_time=10000-------------刷新时间

        group_id=-1--------------------------无视

        team_id=-1---------------------------无视

        base_ai=3-----------------------------基础AI,对应MonsterAITable.ini!

        ai_file=-1------------------------------使用的AI,在tlbbPublicDataAIScript目录下,NPC不加

        patrol_id=-1--------------------------无视

        shop0=-1------------------------------无视

        shop1=-1------------------------------无视

        shop2=-1-------------------------------无视

        shop3=-1-------------------------------无视

        ReputationID=-1----------------------无视

        level=48---------------------------------等级  

        注意:怪物的总数=最后的怪物的顺序号+1,因为是从0开始算,如果最后一个怪物是17,总数就是18,别弄错了。

        物品代码为1开头的说明这个是装备,2 3 4开头的是道具、材料、任务材料,5开头的是宝石

        元宝店添加物品

        先进入游戏,打开元宝店看看你要在元宝店的哪一栏添加,记住该栏目的第一个物品的名字装备在EquipBase.txt,道具材料任务道具在CommonItem.txt,宝石在GemInfo.txt。找到第一个物品代码,打开shoptable.txt,用查找找到该代码的位置,然后在该栏的最后添加入要添加的物品。注意了,也许该物品在shoptable.txt有2个以上,那么你要进行筛选,1.看看该物品是不是为该栏的第一个物品,2.看价格与游戏里的价格是否一样,3.看看货币单位是否和游戏里一致。如果还不能筛选出来,你回到游戏看看第二个物品物品是什么,然后再对比一下应该可以筛选出来了。还有个简单的办法,从yuanbaoshop.lua可以看到元宝店的各栏目对应shoptable.txt里的哪一栏,新手我不推荐。商店添加物品. 在游戏里逛逛选择一些专卖垃圾货物的商店,然后按照上面的方法进行替换即可,但我不推荐这么做,因为破坏了游戏的完整。下面说说另起炉灶的方法:打开shoptable.txt,在下面增加一栏,同样商店代码要连着上一个,在这一栏加上你要添加的物品,货币单位那个地方改成:1代表金币,2代表善恶值,4,帮贡,3代表师德点,5元宝,6赠点,7师门贡献度,8代表交子。  

              shoptable.txt增加了1栏,那么ShopSceneLimiti.txt也要对应

    

举例说明吧,我要在苏州增加一个NPC来出售我刚才添加的物品。首先写一个脚本来连接上图的270号商店,   

随便复制一个商店NPC的脚本打开,如上图

改成270,00158是脚本号也要改,先打开Script.dat找一个不存在的脚本号,我在最下面添加

MyNew是路径,并非一定要放在MyNew,然后保存。把上面那个脚本内的所有000158改成895108,记住是所有,然后保存,文件名改成shangdian1.lua与上图一致。搜索suzhou_monster.ini打开,添加一个NPC,然后给这个NPC加上脚本号895108,monster总数+1,保存。最后把shangdian1.lua这个文件添加入服务端的MyNew文件夹下,suzhou_monster.ini、Script.dat和shoptable.txe也要上传到服务端。重启服务端后找到这个NPC,呵呵,成了!注意,道具、装备、宝石价格在CommonItem.txt、EquipBase.txt、GemInfo.txt里改。  

脚本

这个很重要,种类繁多,只要肯花点时间去仔细看看,你就会发现道理很简单,幸好写脚本的人都以文字进行了简单的说明。脚本的用处非常广泛,就连传送点也需要脚本来支持。

副本脚本:要求进入副本的最少人数等级之类的,有些是在开头一目了然,有的是在后面通过检测来判断。还能修改怪的坐标,出怪的时间,每天进入的次数等,这些仔细看就会发现,不细说了。最好就是使用一个没有改动过的脚本和我端里的脚本做比对,相信你会有所收获。

任务脚本:有人说我端里的任务是仿甚至复制逍遥端,说这些话之前为何不去比对一下脚本的不同之处?存在争议的无非就是乔峰任务和石林护送任务吧。乔峰的任务我想到以建立乔峰NPC然后添加脚本,在研究这个任务时我发现

1.根本就不需要护送乔峰

2.乔峰不等玩家就开始自行移动,开始我是以为他以护送路线移动,后来知道错了,乔峰自行移动不是因为这个护送任务,而是回到老地图的洛阳城门坐标。, 

3.由脚本创建的乔峰是有脚本的,于是我就直接在洛阳添加乔峰NPC,并给他戴上原有的脚本。假如逍遥端是将任务改成送信,而我则是通过新建NPC并套上原来的脚本来解决。 内容来自dedecms 

我想说的是:凡事不能只看表面,即使结果可能一样,但过程绝非唯一。下面讲讲重点:

关于石林任务和找布告牌任务,原理跟我端里的浴血神兵任务道理一样,就是将失败未完成因素转为成功的条件。如:

--检测是否可以提交

function x510224_CheckSubmit( sceneId, selfId )

local bRet = CallScriptFunction( SCENE_SCRIPT_ID, "CheckSubmit", sceneId, selfId, x510224_g_MissionId )

        if bRet ~= 0 then

return 0- Y0 L

        end

以上段的意思是如果检测为失败则返回0,这里的if bRet ~= 0 指任务完成度,

而return 0 则是返回0项,当然根据脚本的不同也会有不同的数字,可能是1.2或以上,这些都是变量,具体到脚本里看。以上面的为例,把return 0改成return 1,那么意思就是如果检测为失败则返回1,而这里我举例的脚本里的1就是完成任务的变量。以上数字仅为举例说明,不是所有都一样,根据脚本的不同,数字也有所不同,只要明白道理,什么数字都是浮云,主要改return后面的数字,当然有时候if **** ~= 0之类的也有必要改动。  

这个很有用,运用也很广泛,并非只能运用在任务,理论上所有涉及到检测的脚本都可以用得上,当然不排除会有特殊的。

还有那些兑换物品,重洗物品什么的脚本都可以“一本通用”,就如我端内的,你提取出来,仔细看看,你就会明白,只要你不是猪头。

脚本里面有“--”两个减号的,就是说该行为不读,小修改不需要重启服务端,如,在游戏里单人进不了副本,你把该副本的脚本提出来,改好,以二进制放回原位,再回到游戏里,就可以了。又如,我想要把神兵,但又不想重启服务端,你找到该兑换的脚本,打开看看,以我的脚本为例,要兑换神兵需要女娲石和神兵符,那么我就把女娲石和神兵符的代码换成一些唾手可得的物品代码,保存放回原位,就行了。这些小修改可以在不需要重启的前提下进行,如果你改完后点NPC没反应,说明你改的时候把脚本里面的格式破坏了,导致不能读取,这时你不但要重新做出修改还要重启服务端。)

由于脚本太多,就不一一举例说明了,一句话:若得箇中意,纵横处处通。

为装备添加buff' 

例如,我要给青铜刀绑定一个几率打出增加15%攻击和狂暴的buff,打开StandardImpact.txt在最后增加两栏  

  

  

32707        神兵之圣        88        STD_IMPACT_017        1        1881        -1        1881        200        1        1        0        0        0        0        0        0        0        0        0        -1        0        0        0        0        0        0        伤害目标时的激发几率        20        0        会心一击时的激发几率        0        0        受到伤害时的激发几率        0        0        影响或生效的技能集合ID        70        0        伤害修正率,填100相当于将伤害放大到2倍        0        0        给自己的子效果1        32709        0        给自己的子效果2        10175        0        给目标或攻击者的子效果1        32710        0        给目标或攻击者的子效果2        10363        08 32709        提升15%攻击        12        STD_IMPACT_012        1        616        -1        215        20        1        1        1        1        0        0        0        0        0        0        0        60000        0        0        0        0        0        0        物理攻击修正率        15        0        物理防御修正率        0        0        魔法攻击修正率        15        0        魔法防御修正率        0        0        冰系攻击修正率        0        0        冰系抗性修正率        0        0        火系攻击修正率        0        0        火系抗性修正率        0        0        电系攻击修正率        0        0        电系抗性修正率        0        0        毒系攻击修正率        0        0        毒系抗性修正率        0        0        MAX_HP修正率        0        0        MAX_MP修正率        0        0        MAX_RAGE修正率        0        0        MAX_STRIKE_POINT修正率        0        0         

给自己的子效果和给目标或攻击者的子效果可以自行添加,其中        32709就是增加15%攻击的,而10175是狂暴,这些代码都可以在StandardImpact.txt内找得到,其中上图标记的代码是buff的代码,把客户端的ImpactSEData_V1.txt提取出来,是客户端,不是服务端。

  

如果你使用老友的祝福特效,就把老友的祝福那一栏复制到最后,ID改成1881,改一下后面的说明子。然后回到EquipBase.txt,在技能ID处填入32707,不是填32709,因为32707里包含了32709等技能。然后同步客户端,记住ImpactSEData_V1.txt不能放入服务端,这个文件和服务端里的是不一样的,放进去会启动出错。这个有点复杂,我的表达能力不是很强,总而言之,EquipBase.txt下的装备技能对应StandardImpact.txt,而StandardImpact.txt里的瞬发效果ID/驻留效果ID的值对应客户端的ImpactSEData_V1.txt。 dedecms.com 

更改元宝店的货币单位

从客户端把StrDictionary.txt提取出来,假如我要把元宝改为赠点或其他货币单位,打开搜索“元宝:”改掉即可,元宝店内的栏目名称也一样。修复任务栏内的坐标等都可以在里面改,不细说了,自己看看吧。

添加副本

创建一个NPC,然后随便找个副本脚本,把里面的怪物代码改成一些没有怪物的代码,这样原副本就不会创建怪物了。如果你要把珍珑棋局的副本改成凤凰陵墓副本,先打开SceneInfo.ini,找到凤凰陵墓:

[scene539]

threadindex=513 

clientres=281

name=凤凰陵墓

active=1

file=PhoenixMaze.scn

serverid=0

type=15

PvpRuler=0

其中active和PvpRuler必须为1和0,这是副本地图的条件,返回刚才的脚本,用替换把zhenlong换成PhoenixMaze,

x401000_g_Fuben_X=64                                --进入副本的位置X,  

x401000_g_Fuben_Z=64                                --进入副本的位置Z

x401000_g_Back_X=234                                --源场景位置X, k) 

x401000_g_Back_Z=69                                        --源场景位置Z

这些也改一下,源场景就是你进入副本前的场景,然后就是添加怪物了,有三种方法

找到zhenlong_monster.ini,在里面添加入你想要的怪物,并设置刷新时间。我端里的圣兽山捉宠副本就是用这种方法。

如果将脚本里棋子的代码改成你要加入的怪物的代码,很有可能会变成刷不出怪,因为还有控制文件在作怪,这时候你就把MonsterAttrExTable.txt里的棋子代码和你要加入的怪物的代码对调,就行了。我端里的凤凰陵墓副本就是用这种方法创建的。但这个方法会将棋局副本也会变成凤凰陵墓副本。  

3.完美创建副本的方法我是最近才发现的,先做保留,看情况再公布。

如果你不是追求完美,上面2种方法够用的了。

掉落珍兽

如我创建了一个太古龙魂的怪物,我想设置成杀死它后掉落宝宝。那么先在petdropper.lua里面设置: 

PetDropList[13281] = {

dropOdds = 225,  --225

petList = { 3290, 3299, 3291, 3292, 3293, 3294, 3295, 3296},

oddsList = { 100000,10000,2500 }, 

把13281改成太古龙魂的代码,petList = { 3290, 3299, 3291, 3292, 3293, 3294, 3295, 3296}把这些改成变异太古龙魂的代码,oddsList = { 100000,10000,2500 }这个是几率,按各自需要更改。重要:把你创建的太古龙魂怪物带上一个脚本501000,不然即使你将它千刀万剐,它也不会掉落珍兽。又例如,我将李秋水改为爆变异太古龙魂,道理一样。还有如果你想只掉落6 7 8变的宝宝,那么petList后面只填6 7 8变的代码即可!


    标签:天龙八部服务端
    网站首页 | 开服流程 | 在线留言 | 网站地图