|
下面讲解如何修改传世世界手游中的物品掉落,再原始的版本中,掉落的设置无法满足玩家的喜欢,我们需要自己修改,有简单的方法,也有费时的方法,先教大家基础的方法,后面教大家快捷的方法。3 R4 A" Z% }( W9 N5 [2 O2 c
, A3 E( V# c- u1 q! A: E p- ?5 {7 u首先再客户端代码里找到monster.lua文件,该文件是游戏中的所有怪物模型,示例如下:( q, p/ p; ^5 s2 C" R
- -- 尸王殿里的区域boss尸王
- {q_id = 6000,gwlx = 1,q_name = '尸王',q_featureid = 20028,sound = 'monster05',manysou = '1_1_1',q_attackType = 2,q_attackMode = 1,gwjn = 10016,gwjnjl = 100,q_type = 3,texiao = 4,q_lvl = 18,q_viewrange = 4,q_attackWait = 2000,q_maxhp = 148985,q_attack_min = 268,q_attack_max = 446,q_defense_min = 22,q_defense_max = 33,q_magic_defence_min = 22,q_magic_defence_max = 33,q_hit = 40,q_tenacity = 40,q_exp = 43,diaol = 7005,ignore_hide = 1,drop_share_rule = 1,shared_kill = 1,Speed = 60,hp_high = 0,GuangQuan = 3,},8 A- T2 E) g1 \- _: Z0 g! {
, S7 ^, ?& U( c/ X _1 k5 \
[color=rgb(51, 102, 153) !important]复制代码0 f9 ^; {* w& H8 K( j/ y
具体的字段的含义我们慢慢介绍,先找到diaol这个字段,表示的是掉落id,记住这个id,我这里是7005,那么这个7005表示什么呢?( ~1 d. Y* u; C& a. j) [
% N P/ M/ O0 n$ ]
我们往下看,到服务端代码中找到DropDB.lua 如果你找不到自己下载个NotePad++学习下使用搜索功能,很容易找到位置。示例如下:
3 m1 }/ F: ]* D g0 l- {q_id = 7005,q_item = 1301,bdlx = 0,q_count = 2,q_group = 0,q_property = 100000,droptime = 30,},
- {q_id = 7005,q_item = 1302,bdlx = 0,q_count = 1,q_group = 0,q_property = 100000,droptime = 30,},+ r+ D( Q; u- J
" Q% a1 j( K' m- d[color=rgb(51, 102, 153) !important]复制代码
6 X" q; G$ ? _1 C1 F" i1 F& `' q看到这个7005了吧,这时候我们看到每个掉落id包含多条数据,其中q_item就是道具id,q_count是每次掉落的数量,q_property是掉落概率10万分制,有了这些大家明白了吧。
9 x6 k' N& d$ l) @( V% |" }
8 e" z4 g; ^1 o8 f T1 n% m如果按照这种方式逐条去改那可能要改到眼花了。4 I7 f0 `. f2 S( t |+ C; |# w9 s9 s7 E
, d6 V, U. n- v$ {* C+ p下面写个简单的方法首先我们吧怪物进行归类,比如20级一下的怪物所有的掉落id放到一个table里:什么是table(抽空学下lua语言,比较简单3天入门)
& i$ E* j, f" ?) N- local diaolMonsterIds1 = {110,111,112,113,114,120}7 g+ h9 }# B- y7 T
5 O. B4 l# M& j4 h0 W2 B+ Y" a
[color=rgb(51, 102, 153) !important]复制代码3 q9 g% @6 a6 b' ^5 d1 D" Y8 C5 K
然后把这类型的怪的道具id也都写到table里,如:! y7 S c7 @3 ~* d& \- {" _' ?- l
- -- 普通怪掉落的道具
- local itemMonsterIds1 = {
- 4030510,4031510,4020510,4021510,4010510,4011510,5030512,5031512,5020512,5021512,5010512,5011512,
- 3030202,3030602,3030702,3030302,3030402,3030802,3020202,3020602,3020702,3020302,
- 3020402,3020802,3010202,3010602,3010702,3010302,3010402,3010802,
- 2012,2012,2013,
- }
4 Y; U0 k1 {5 A& v- v
) O- p! E ?/ T) U7 d[color=rgb(51, 102, 153) !important]复制代码
- N# c& k$ `3 n% R5 T1 b' A$ l% I0 P. z: a1 `$ P7 v, u# L: D
最后一个for循环批量设置:
, T( J6 {5 A8 ^; m! x1 B+ ]- --普通野外地图爆率
- for i=1,#diaolMonsterIds1 do
- for j=1,#itemMonsterIds1 do
- local q_property = 1000
- local item = {q_id = diaolMonsterIds1,q_item = itemMonsterIds1[j],bdlx = 0,q_count = 1,q_group = 0,q_property = q_property,droptime = 30,}
- table.insert(Items,item)
- end
- end
# C6 N6 m/ @' |; C7 f 2 S" p' ?& M9 X# Q$ M
[color=rgb(51, 102, 153) !important]复制代码
7 C" f" ~8 O [0 k& _修改完记得重启游戏服务* a& _, r9 W1 B" v+ |$ Y
|
|