- 打卡等级:暂无等级
- 打卡总天数:317
- 打卡月天数:27
- 打卡总奖励:255
- 最近打卡:2026-04-27 01:47:51
|
下面讲解如何修改传世世界手游中的物品掉落,再原始的版本中,掉落的设置无法满足玩家的喜欢,我们需要自己修改,有简单的方法,也有费时的方法,先教大家基础的方法,后面教大家快捷的方法。
& v6 X& h/ i: L( k& E9 S5 r9 b1 m* O! Z& j; V% H0 |$ t# ~# |+ F- ?! e
首先再客户端代码里找到monster.lua文件,该文件是游戏中的所有怪物模型,示例如下:
5 h9 H0 s9 i* n: Q9 i4 ^- -- 尸王殿里的区域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,},; v c, m6 w& v" ^7 @$ R3 A
1 N M' x$ t$ g, ?- w! P' O$ @
[color=rgb(51, 102, 153) !important]复制代码* g( b1 v# j# m- w* t
具体的字段的含义我们慢慢介绍,先找到diaol这个字段,表示的是掉落id,记住这个id,我这里是7005,那么这个7005表示什么呢?
4 I* o8 j# k5 `% c3 [8 G1 u! v; j# r3 w) }" M' r
我们往下看,到服务端代码中找到DropDB.lua 如果你找不到自己下载个NotePad++学习下使用搜索功能,很容易找到位置。示例如下:! \9 f* i/ m3 a- l& K
- {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,},1 o3 }0 e: v7 Z, F) t7 |/ h; w
7 M& v$ Z5 Y+ j5 x+ P* v[color=rgb(51, 102, 153) !important]复制代码
, j3 O) L9 J# |+ Q% {, P# s# ?看到这个7005了吧,这时候我们看到每个掉落id包含多条数据,其中q_item就是道具id,q_count是每次掉落的数量,q_property是掉落概率10万分制,有了这些大家明白了吧。& M% b8 Z. ?7 v/ X
$ M# B0 Q2 N0 T9 r7 x如果按照这种方式逐条去改那可能要改到眼花了。
& i9 ?& B) [/ ~; \; \1 p) X8 ]
2 @6 W* ~' K$ D下面写个简单的方法首先我们吧怪物进行归类,比如20级一下的怪物所有的掉落id放到一个table里:什么是table(抽空学下lua语言,比较简单3天入门)7 a% I/ H% ~% z# P& e( d% }# k u
- local diaolMonsterIds1 = {110,111,112,113,114,120}0 l9 _* c% Z' v0 K
- Q0 l' e G( v l0 m I, v. ~" I[color=rgb(51, 102, 153) !important]复制代码
6 ~+ o: W1 _: l5 t0 g然后把这类型的怪的道具id也都写到table里,如: k) G9 g" I4 c8 Q# h
- -- 普通怪掉落的道具
- 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,
- }
7 R1 }( v% h7 L+ t% c
, i* F4 `- g5 |. y6 m[color=rgb(51, 102, 153) !important]复制代码
2 N- Z5 ]; ^# ~. `4 U6 ~- y6 z" U/ W* b2 z' D4 Y
最后一个for循环批量设置:
' r' O2 q9 y3 ~! n1 t8 D3 i: ?' e- --普通野外地图爆率
- 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% X8 E! V7 E0 i% l: T& i% E
# [) S- ~0 ]; j$ i4 r- `- ?$ N& Z9 b O
[color=rgb(51, 102, 153) !important]复制代码4 L' R% N+ R+ N/ }- c
修改完记得重启游戏服务6 ?5 s# f! H6 c5 C( p
|
|