|
下面讲解如何修改传世世界手游中的物品掉落,再原始的版本中,掉落的设置无法满足玩家的喜欢,我们需要自己修改,有简单的方法,也有费时的方法,先教大家基础的方法,后面教大家快捷的方法。" P1 M# }, ?7 ~, k2 @
8 u( e* z3 v0 v) X. D3 ?' Y
首先再客户端代码里找到monster.lua文件,该文件是游戏中的所有怪物模型,示例如下:
/ y( e" [# X4 C$ w' Q* W. l' D# k8 s- -- 尸王殿里的区域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,},
4 z! G# r: q/ x' ~0 z8 _
% Q! k9 t# [4 A& I3 H[color=rgb(51, 102, 153) !important]复制代码, `0 r# A& t" ^& ]7 [% ~
具体的字段的含义我们慢慢介绍,先找到diaol这个字段,表示的是掉落id,记住这个id,我这里是7005,那么这个7005表示什么呢?' }# u; g0 C/ R$ Z, ?" W
, q/ W. k- [7 e# j5 C( r( F我们往下看,到服务端代码中找到DropDB.lua 如果你找不到自己下载个NotePad++学习下使用搜索功能,很容易找到位置。示例如下:
" O2 K% b: V) r! f- {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,},( Q/ k+ m$ u3 m( y- O# Y
/ H( m9 S7 A: B; o; W K[color=rgb(51, 102, 153) !important]复制代码
) X( B& O. F6 D, c1 R& F- u4 i看到这个7005了吧,这时候我们看到每个掉落id包含多条数据,其中q_item就是道具id,q_count是每次掉落的数量,q_property是掉落概率10万分制,有了这些大家明白了吧。/ { H4 e3 m/ p
7 S l" r- G2 w" m- t. z
如果按照这种方式逐条去改那可能要改到眼花了。
7 R2 ?1 g4 z. ^% E3 O; m! F, u5 |0 T
下面写个简单的方法首先我们吧怪物进行归类,比如20级一下的怪物所有的掉落id放到一个table里:什么是table(抽空学下lua语言,比较简单3天入门)
* l% E/ s# }: m; f$ h% v: n- local diaolMonsterIds1 = {110,111,112,113,114,120}! ?: {1 _8 v! B7 n) Z8 n
; k8 j: g5 w' t3 j5 \0 J) L+ P
[color=rgb(51, 102, 153) !important]复制代码- Q2 d1 \6 _! T3 `5 R0 s
然后把这类型的怪的道具id也都写到table里,如:
$ z5 [5 }' Z5 ?# t9 t4 }1 v4 y- -- 普通怪掉落的道具
- 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,
- }
, @+ ?! y9 {- Z1 x3 f1 F9 ]
' g6 \# A8 v* U0 }3 V7 o( n8 U% M. i[color=rgb(51, 102, 153) !important]复制代码
: O) z; a z& q3 O) ?' f6 k' _; S& C! j3 V# o
最后一个for循环批量设置:( o3 F& v; A- @; h4 x: r! \
- --普通野外地图爆率
- 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/ l& ?" b5 @0 `) _: ?
. Y: N: v2 G& G m! \. Y' l8 K[color=rgb(51, 102, 153) !important]复制代码0 v1 N0 Q4 g! q0 \" B' _3 R
修改完记得重启游戏服务' {2 r4 x' g# x6 w* r1 K
|
|