% J$ y9 F( J+ l* j9 k: G2 y关于修改铸造命令的,虽然在字符上能加一些暗码等相关的东西,但是只要存在封包就不保险,因为此命令是直接作用在m2上的,m2接到此指令后就运行对应的程序,所以修改成什么样只要被人抓到了封包就可以直接发送此指令,一样可以在任何NPC处升级和取武器;不过我换了一个思路,将命令去掉,而是由脚本内的#act来执行这一命令,这样封包虽然能发送段首标记,但是却不能发送#ACT执行段的命令,这些命令也是在m2内部进行处理,跟外部信息没有关联(除调用该段有关联),也就是说外挂也好,封包过滤也好,能发送的是@XXX的指令,而不能使m2执行#ACT段下的指令.基于这点,我修改了一下m2将原来的两个指令修改成act执行指令:
G @5 f( A& v9 x# A9 v2 g4 G! gF:C645FB00E9EC090000
E:E93040000090909090
. C1 \( n# W, p9 U( I* D5 f
F:BA201B4A008B45F0E85D73F6FF85C0750D8B55F88B45FCE82EEFFFFFEB4ABA341B4A008B45F0E83F73F6FF85C0750D8B55F88B45FCE8A8F2FFFFEB2C
E:EB3A8B45AC8B480485C974238B098B45088B50FC8B40F080F9317507E829EFFFFFEB4580F9327507E8B5F2FFFFEB39C645FB00E98AC9FFFF90909090
Q' B" R, }; ?7 y! s* e# c3 U& }8 k
修改后铸武器和取武器的语句变更为:
break 1
break 2
此修改利用了break语句,当参数不是1或2的时候就执行原来的break的功能,参数1代表铸武器,参数2代表取武器
" A' y8 J0 @7 J& B, q
强调一点,以上修改并不破坏原来的break的功能,使用break命令跟以前一样,只是在break后面有参数1或2的时候才代表升级或取回武器,在执行升级或取回指令的时候break原来的功能并不执行
% S2 ]4 v$ T: l7 l4 k# r7 ?
我的脚本范例:
; t" W, i! D0 i8 V% F% G
%100
+5
+6
[@main]
没有一个人来光顾,顾客,请进我的自尊使我不允许对这个物品的价格再要求打折\\ <开始武器升级/@upgrade>\\
<返回武器升级/@getbackupgnow>\\
<离 开/@exit>
3 t7 p; M5 v9 W$ _+ _[@upgrade]
你像是想要升级你的武器给我看你的武器,升级价格是<$UPGRADEWEAPONFEE>金币修炼这个武器需要原料<黑铁矿石/@Biron>,<饰品/@Etc>,<武器/@Weapon>\\
和 <金币/@Gold>.你确定要它吗?别的原料你可以使用你包内的物品你想委托你的武器进入修炼系统吗?\\ <确认修炼/@confirmupgrade>\\
<取消/@main>\\
& i# f) [, L& N1 Y# R, ?0 O' ~[@Biron]
你可以在矿山里采到黑铁矿石。如果你想修炼过程得到一个好得结果你最好拿给我更高纯度的黑铁矿石。顺便请记得,在修炼期间如果没有足够数量的黑色铁矿,那怕你的矿石纯度再高修练的结果也可能不好.\\ <返 回/@upgrade>
: c* u& U9 I# X8 J[@Etc]
装饰品,项链,手镯当你的特殊技能融入了这种装饰物的时候,能够加强你的武器如果你给我好原料我能给你好结果如果你给我糟糕的装饰品那可能会失败,除非你有很好的运气\\ <返 回/@upgrade>
5 _" N( K {' x% C& h5 W- m[@Weapon]
只能对武器进行炼制如果你想要升级武器请给我你携带的武器 ...\\ <返 回/@upgrade>
3 c+ E! H" G. ~6 d y[@Gold]
修练武器的金子太少...你真的认为我的技术的价值就这么点数量的程度?这个价格我不能做这个工作。 ..\\<返 回/@upgrade>
( w, P0 H' F3 \0 g( |% h( W
[@confirmupgrade]
给我看你给我的原料修炼你的<$USERWEAPON>,我的视力不好我想从你的包里取得更多的饰品和黑铁矿石。如果你有重要的物品,在你寄存在仓库后请回来\\<请求修炼/@upgradenow>\\
<在安排好以后再回来/@exit>\\
[@upgradenow]
#act
break 1
! Q1 @/ I0 X9 _9 j6 v
[@getbackupgnow]
#act
break 2
; Y' w3 Q9 ?! C( S6 ?[~@upgradenow_ok]
我会把它弄得像新的一样,所以请半个小时后再回来 <返 回/@main>\\
1 X' k n; d% k3 [* m
[~@upgradenow_ing]
我们工作的规则是一个人只能进行一个项目 请下次再来 ...\\ <返 回/@main>
# _6 k( D* `6 S9 I[~@upgradenow_fail]
材料不够。请你下次来的时候, 准备好所有的矿石,武器和饰品。 当然,我的工作才是最基本的...\\ <返 回/@main>\\
) H7 j/ E' M# e. S l) \1 I[~@getbackupgnow_ok]
就这样了,我尽我最大努力精炼了你的武器,
结果是否<成功/@Success>\\
只有在你使用过一次后才知道,出去试试吧。\\ <退出/@exit>\\
" K/ p2 N9 W. I
[@Success]
通过使用它,你可以体会到它精炼的好处。无论你的战斗对象是其他玩家还是怪物...你都会发现这个成果...\\ <退出/@exit>\\
S/ K: c7 N5 h, R. H; a[~@getbackupgnow_ing]
这个工作正忙着呢,请稍等片刻...\\ <返 回/@main>\\
: I: Z, o2 y& t( h4 |* m! A x9 d
[~@getbackupgnow_fail]
以前你是不是寄存了很多东西?如果你找我是为了取回你很久前寄存在这里的物品,那你还是回去吧,我可记不起来了,这也过去太长时间了……\\ <返 回/@main>\\