指挥官加强脚本
在写一个指挥官的加强脚本,附部分代码如下:!?BA0&1000
!!VRv9301:S1;
!?MF1&1000;
!!FU|v9301<1/v9301>9:E;
**设置**
!!VRx1:S0;
!!VRx2:S0;
!!VRx3:S0;
!!VRx4:S0;
!!VRx5:S0;
!!VRx6:S0;
!!VRx7:S0;
!!VRy1:S0;
!!VRy8:S0;
!!VRy28:S0;
!!VRy21:S0;
!!VRy15:S0;
!!VRy16:S0;
!!VRv9301&v9301=2:S6;
!!VRv9301&v9301=3:S7;
!!VRv9301&v9301=4:S8;
!!VRv9301&v9301=5:S9;
**读取**
!!MF:F?x1 W?x2;
!!BG: N?x3 E?x4 A?x5;
!!FU&x5<>6/x5<>7/x5<>9:E;
!!BMx3:T?y1 I?y2 N?y3 H?y4 L?y5 F?y6 G29/?y7/?y10;
!!BA:Hy2/?y8;
!!VRy6:&65536;
!!BMx4:T?y21 I?y22 N?y23 H?y24 L?y25 R?y26 G29/?y27/?y11;
!!BA:Hy22/?y28;
!!HE147:E?y12/?x6;
**判断**
!!VRy15|y1<174/y1>191/y8<>147:S1;
!!VRy16|y21<174/y21>191/y28<>147:S1;
!!FU&y15>0/y16>0:E;
!!VRv9301|y3<1/y23<1:S1;
!!FU|y3<1/y23<1:E;
!!VRv9301|x8<>x3/x9<>x4:S1;
!!VRx8&v9301=1:Sx3;
!!VRx9&v9301=1:Sx4;
**伤害**
!!VRy13&x6=<60:S60-x6;
!!VRy13&x6>60:S60;
!!VRy32:Sy3*y4-y5;
!!VRy33:Sy23*y24-y25;
!!VRy17:Sx1*2;
!!VRy18:Sx1:2;
!!VRy19:Sx1;
**第一轮**
!!MF&v9301=1/y8=147:Fy17;
!!MF&v9301=1/y28=147:Fy18;
!!VRv9301&v9301=1/x5=6/y8=147/y6<1/y7<1/y26>0:S2;
!!VRv9301&v9301=1/x5=6/y28=147/y6<1/y26>0/y27<1:S2;
!!VRv9301&v9301=1/x5=6/y28=147/y6>0/y27>0:S3;
!!VRv9301&v9301=1/x5=6/y28=147/y6<1/y26<1/y27>0:S3;
!!VRv9301&v9301=1/x5=6/y8=147/y6<1/y7>0/y26>0:S4;
!!VRv9301&v9301=1/x5=6/y28=147/y6<1/y26>0/y27>0:S5;
!!FU&v9301>1/v9301<6:E;
**第二轮**
!!MF&v9301=6/y8=147:Fy18;
!!MF&v9301=6/y28=147:Fy17;
!!VRv9301&v9301=6:S1;
!!MF&v9301=7:Fy19;
!!VRv9301&v9301=7:S1;
!!MF&v9301=8:Fy18;
!!VRv9301&v9301=8:S7;
!!MF&v9301=9:Fy19;
!!VRv9301&v9301=9:S6;
经统计,两个生物直接物理攻击时,会有1至3轮伤害--攻击、反击、火盾,所以想达到的效果是:我方进攻时,攻击加成,反击减成,火盾正常,我方防守时相反。
这会涉及到攻防双方有无不反击特技,反击次数,火盾,数量,是否存活,士气等,有些我已经考虑了,现在问题是:
1.当我方攻击时,防守方本应还击,但因士气等原因没有反击,接着又该我方行动,我方该生物再次攻击它的时候,计次会出现错误,导致整段代码执行顺序混乱,我一直想不出好的解决办法,不知哪位高手能帮我想想,谢谢!
2.设置部分不知有没有简单的写法?
这个脚本是以李多海5.19做母图,其他图没有试过。
本人刚学ERM没多久,大侠们不要见笑。
[ 本帖最后由 沧海壹粟 于 2011-11-15 10:36 编辑 ] 帮你顶一下。其实我看人家说写脚本最好写上注解。 这是我以前写的,一追物理伤害扩大10倍的脚本,包括火盾/死亡凝视,都是10倍,给你参考。
顺便赠送物理伤害数值溢出脚本。
你若是求方便,可用指挥官的所用堆栈直接代替追随者堆栈
ZVSE
!?BA0; 战斗前触发
!!VRv37:C-1/-1/-1;
!!VRv47:C-1/-1/-1;
!!VRv72:C-1/-1;
!!BA:H0/?v37; 进攻方英雄ID存入v37
!!HEv37:E?v72/?v38;进攻方英雄经验值保存到v72,等级保存到v38
!!BA:H1/?v47; 防守方英雄ID存入v47
!!HEv47&v47>-1:E?v73/?v48;防守方英雄经验值保存到v73,等级保存到v48
!!BA:O?v39/?v49; 进攻方英雄颜色存入v39,防守方英雄颜色存入v49
***动作前触发***
!?BG0; 动作前触发
!!VRv7501:C-1/-1/-1/-1/-1/-1/-1; 赋值v7501~v7507=-1 变量复位
!!VRv8501:C-1/-1/-1/-1/-1/-1/-1; 赋值v8501~v8507=-1 变量复位
!!BG:A?v7501 D?v8501 E?v8502 N?v7502 S?v7503;
;**v7501=动作类型,v8501=目的位置,v8502=目标怪物的堆栈,v7502=动作怪物堆栈,v7503=施放魔法的编号
!!VRv74:C-1/-1;
!!BG:Q?v74 H?v75;v74=当前攻击方,v75=英雄ID
!!BMv8502&v8502>-1:B?v8504 R?v8505 N?v8506 T?v8507;
;**目标怪物的堆栈号大于-1时,v8504=战斗开始时栈内怪物数量,v8505=反击数量,v8506=目标怪物当前栈里数量,v8507=目标怪物类型
!!BMv7502&v7502>-1:B?v7504 R?v7505 N?v7506 T?v7507;
;**动作怪物的堆栈号大于-1时,v7504=战斗开始时栈内怪物数量,v7505=反击数量,v7506=动作怪物当前栈内数量,v7507=动作怪物类型
!?MF1|v37=44/v47=44;
!!MF|v37=44/v47=44:N?y27 F?y28;
!!FU951&v37=44:P44/v7207/y27/y28/v38;一追伤害10倍-作为攻方
!!FU951&v47=44:P44/v7208/y27/y28/v48;一追伤害10倍-作为守方
!!MF&v37=44/v7502<21/v7502>-1/v7507=156/v7506>1/y27>20/y28=1:F2000000000;修正小白伤害数值溢出
!!MF&v47=44/v7502>20/v7502>-1/v7507=156/v7506>1/y27<21/y28=1:F2000000000;修正小白伤害数值溢出
!!MF&v37=44/v7502>20/v8502>-1/v8507=156/v8506>1/y27>20/y28=1:F2000000000;修正小白伤害数值溢出
!!MF&v47=44/v7502<21/v8502>-1/v8507=156/v8506>1/y27<21/y28=1:F2000000000;修正小白伤害数值溢出
***x1=英雄id,x2=动作堆栈,x3=伤害堆栈,x4=伤害修正,x5=英雄等级
!?FU951;
!!FU&v37=x1/x3<21:E;
!!FU&v47=x1/x3>20:E;
!!FU&v37=x1/v74=0/v7502<>x2:E;攻方-攻方动作
!!FU&v37=x1/v74=1/v8502<>x2:E;攻方-守方动作
!!FU&v47=x1/v74=1/v7502<>x2:E;守方-守方动作
!!FU&v47=x1/v74=0/v8502<>x2:E;守方-攻方动作
!!VRx6:Sx5 *2 R10;
!!VRx6&x6>=100:S100;
!!VRx7:S0 R99;
!!FU&x7>=x6:E;
!!VRx4:*10;
!!VRx4&x4=1:S2000000000;
!!MF&x7<x6:Fx4;
!!VRz861:S^..\Data\reaver\Blow.wav^;
!!SN&x7<x6:Pz861;
!!BMv8502&v37=x1/v74=0/x7<x6:V73;攻方-攻方动作
!!BMv7502&v37=x1/v74=1/x7<x6:V73;攻方-守方动作
!!BMv7502&v47=x1/v74=0/x7<x6:V73;守方-攻方动作
!!BMv8502&v47=x1/v74=1/x7<x6:V73;守方-守方动作
!!UN&v37=x1/v74=0/v7502=x2:N3/23/v7507/0;攻方-攻方动作
!!UN&v37=x1/v74=1/v8502=x2:N3/23/v8507/0;攻方-守方动作
!!UN&v47=x1/v74=0/v8502=x2:N3/23/v8507/0;守方-攻方动作
!!UN&v47=x1/v74=1/v7502=x2:N3/23/v7507/0;守方-守方动作
!!VRz266:S^{致命一击,%Z23造成 %X4 伤害}^;
!!MM:Sz266;
[ 本帖最后由 fastarrow 于 2011-11-15 10:08 编辑 ]
呵呵,我也发一个指挥官强化的ERM,结合老离的10倍伤害,那指挥官无敌了
实现功能:1、所有英雄的宠物初始都拥有全初级技能,及六个宠物宝物(AI英雄的宠物宝物的修炼次数随等级提升而提升)。
2、屏弃所有女妖宠物,但魔鬼塞尔伦的除外。
3、不同的宠物拥有给英雄相应增加一项高级技能及魔法的能力,如圣骑士就可给英雄增加高级学习术及治疗魔法。
4、最好玩的就是,用强大的指令功能代替宠物的施法功能,宠物施法前可自动触发指令选择。
ZVSE
_WARNING_#1=IMPORTANT! This file is not in a plain text format. NEVER use any editor except ERM_S for making any kind of changes!
ERMS_PoweredBy=ERM Scripter v. 2004.6.29.918
**ERMS_名称:超级指挥官v1.1(2011.11.14)
**ERMS_制作:沧海壹粟
**ERMS_变量:TM79,对话框编号79(z变量:12~25),z900,z902;v9555,v9560,v9704-9705;FU26001(x1=100~110)
!#TM79:S1/1/1/255;
!#VRv9704:C0/0;
!#UN:P3/?v1;
!#VRv9704&v1=1:S1;如果没有开启指挥官则v9704=1
!?BA0;
!!BA:H0/?v9555;
!!BA:H1/?v9560;
!!VRv9705:S0;战斗前v9705值清0
***************超级指挥官初始设置***************
!#CO-2&v9704<>1:S0/1 S1/1 S2/1 S3/1 S4/1 S5/1;指挥官全部技能为初级
!#CO-2&v9704<>1:P0/10 P1/10 P2/1000 P3/10 P4/10 P5/10 P6/35; 指挥官属性提升
***************第一天触发宠物能力***************
!?TM79&v9704<>1;
!!DO26001/0/155/1:P100;指挥官全宝物
!!DO26001/0/155/1:P101;英雄随机宠物
!!DO26001/0/155/1:P102;宠物附加属性
!?FU26001&x1=100;英雄指挥官获得全宝物
!!HEx16:O?x6;
!!OW:Ix6/?x2;
!!HEx16:Ed/?x3;
!!VRx4:Sx3*10+100; 修炼次数为英雄等级*10+100
!!VRx5&x2=0:S0; 仅限对AI英雄有效
!!VRx5&x2=1:Sx4;
!!COx16:A1/146/x5;
!!COx16:A1/148/x5;
!!COx16:A1/147/x5;
!!COx16:A1/154/x5;
!!COx16:A1/151/0; ~速度限制
!!COx16:A1/149/0;
!?FU26001&x1=101;英雄获得随机宠物
!!FU&x16=155:E; ~不屏弃塞尔伦宠物
!!COx16:T?x2;
!!VRx3:S0 T8;
!!VRx3&x3=3:S2; ~屏弃女妖宠物
!!COx16&x2=3:Tx3;
!?FU26001&x1=102;宠物相应增加英雄技能和魔法
!!COx16:T?x2;
!!HEx16&x2=0:S21/3 M37/1;
!!HEx16&x2=1:S27/3 M27/1;
!!HEx16&x2=2:S8/3 M44/1;
!!HEx16&x2=3:S4/3 M29/1;
!!HEx16&x2=4:S12/3 M39/1;
!!HEx16&x2=5:S13/3 M43/1;
!!HEx16&x2=6:S20/3 M46/1;
!!HEx16&x2=7:S22/3 M53/1;
!!HEx16&x2=8:S18/3 M58/1;
**************战斗场景鼠标点击触发**************
!?BG0&v9704<>1;强大的指挥官指令功能
!!BG:A?x1 N?x2 Q?x3;
!!HEv9555:N?y31;
!!HEy31:O?y32;
!!OW:Iy32/?y33;
!!FU&x1<>10:E;
!!FU26001&x3=0/v9555>-1/y33=0:P103/x2/x3;
!!FU26001&x3=1/v9560>-1/y33=1:P103/x2/x3;
!?FU26001&x1>=103/x1<=104;
!!BMx2:T?x6 N?x7;
!!FU|x2<0/x2>41:E;
!!FU&x3=0/x2>20:E;
!!FU&x3=1/x2<21:E;
!!FU|x6>191/x6<174:E;
!!FU&x6=177/x6=186:E;
!!CM:R0;
!!FU26001:P105/x2/x6;
!?FU26001&x1=105;
!!UN:N3/-2/x3/1;
!!BMx2:E?x4 H?x5;
!!FU&x4<1:E;
!!BG:Q?x6;
!!VRz12:S^== 《超级指挥官v1.1》强化指令模式 ==^;
!!VRz13:S^%Z-2[指令点数%X4],本回合发号的指令是:^;
!!VRz14:S^先制^;
!!VRz15:S^鼓舞^;
!!VRz16:S^复活^;
!!VRz17:S^驱逐^;
!!VRz18:S^..\Data\zvs\Lib1.res\_MP_SP.bmp^;
!!VRz19:S^..\Data\zvs\Lib1.res\E_CASTER.bmp^;
!!VRz20:S^..\Data\zvs\Lib1.res\E_KING2.bmp^;
!!VRz21:S^..\Data\zvs\Lib1.res\E_UNDEAD.bmp^;
!!VRz22:S^敌方全体行动完全颠倒,本方全体获得先制攻击能力。^;
!!VRz23:S^机率使本方部队再次行动,敌方未行动部队无法行动。^;
!!VRz24:S^可以复活本方死亡部队,效果与指挥官的属性有关。^;
!!VRz25:S^将敌方部队直接驱逐战场,效果与指挥官属性有关。^;
!!IF:D79/12//13/18/19/20/21/////14/15/16/17;
!!IF:F79/22/23/24/25/0;
!!IF:E9705/79;
!!VRz902:S^GetProtection.wav^;
!!SN:Pz902;
!!BMx2&v9705=1:V0 Ed-1;
!!BMx2&v9705=2:V29 Ed-1;
!!BMx2&v9705=3:V5 Ed-1;
!!BMx2&v9705=4:V15 Ed-1;
!!DO26001/21/41/1&v9705=1/x6=0:P106;
!!DO26001/0/20/1&v9705=1/x6=1:P106;
!!DO26001/0/20/1&v9705=2/x6=0:P107;
!!DO26001/21/41/1&v9705=2/x6=1:P107;
!!DO26001/21/41/1&v9705=2/x6=0:P108;
!!DO26001/0/20/1&v9705=2/x6=1:P108;
!!DO26001/0/20/1&v9705=3/x6=0:P109/x5;
!!DO26001/21/41/1&v9705=3/x6=1:P109/x5;
!!DO26001/21/41/1&v9705=4/x6=0:P110/x5;
!!DO26001/0/20/1&v9705=4/x6=1:P110/x5;
!!BG:A2;
!?FU26001&x1=106; 先制攻击
!!BMx16:T?y1 F?y2 F?y3 N?y4;
!!FU&y1>144/y1<150:E;
!!FU&y4<1:E;
!!UN:N3/-3/y1/1;
!!VRy2:&67108864;
!!FU&y2>0:E;
!!VRy3:|33554432;
!!BMx16:V71 Fy3;
!!VRz900:S^{指挥官使%Z-3的行动秩序完全颠倒了。}^;
!!BU:Mz900 R;
!?FU26001&x1=107; 再次行动
!!BMx16:T?y1 F?y2 F?y3 N?y4 O?y5;
!!FU&y1>144/y1<150:E;
!!FU|y4<1/y5=-1:E;
!!UN:N3/-2/y1/1;
!!VRy2:&67108864;
!!FU&y2<1:E;
!!VRy6:S0 R99;
!!FU&y6>30:E;
!!VRy3:-67108864;
!!BMx16:V20 Fy3;
!!VRz900:S^{指挥官使%Z-2获得了再次行动的机会。}^;
!!BU:Mz900 R;
!?FU26001&x1=108;无法行动
!!BMx16:T?y1 F?y2 F?y3 N?y4;
!!FU&y1>144/y1<150:E;
!!FU&y4<1:E;
!!UN:N3/-3/y1/1;
!!VRy2:&67108864;
!!FU&y2>0:E;
!!VRy6:S0 R99;
!!FU&y6>30:E;
!!VRy3:|67108864;
!!BMx16:V15 K0 Fy3;
!!VRz900:S^{指挥官使%Z-3丧失了行动的机会。}^;
!!BU:Mz900 R;
!?FU26001&x1=109;转世重生
!!BMx16:T?y1 B?y2 N?y3 O?y4 H?y5;
!!FU&y1>144/y1<150:E;
!!FU|y3<1/y4=-1:E;
!!UN:N3/-2/y1/1;
!!VRy6:Sy2-y3;
!!FU&y6<1:E;
!!VRy7:Sx2:y5;
!!FU&y7<1:E;
!!VRy8:Sy3+y7;
!!VRy8&y8>y2:Sy2;
!!VRy9:Sy8-y3;
!!BMx16:V4 L0 Ny8;
!!VRz900:S^{指挥官使%Y9个%Z-2复活重生了。}^;
!!BU:Mz900 R;
!?FU26001&x1=110;驱逐大法
!!BMx16:T?y1 N?y2 O?y3 H?y4;
!!FU&y1>144/y1<150:E;
!!FU|y2<2/y3=-1/y4>2000:E;
!!UN:N3/-3/y1/1;
!!VRy5:S0 R99;
!!FU&y5>50:E;
!!VRy6:Sy2-1;
!!VRy7:Sx2:y4;
!!FU&y7<1:E;
!!VRy7&y7>y6:Sy6;
!!VRy8:Sy2-y7;
!!BMx16:V82 K0 Ny8;
!!VRz900:S^{指挥官使%Y7个%Z-3被驱逐出战场。}^;
!!BU:Mz900 R;
*********************结 束*********************
[ 本帖最后由 沧海壹粟 于 2011-11-15 10:31 编辑 ] 感谢两位;oweojs;
回复 4# 的帖子
沧海兄你这指挥官也太彪悍了。:deyi:不过话说死亡凝视也10倍,也很BT,自己汗一个。;bf;
回复 6# 的帖子
呵呵,其实只不过好玩而已,不过实践中AI指挥官好像更厉害啊,那指数。。。请教一下先制是神马意思?
是不是加速?;yowe;回复 8# 的帖子
所谓“先制”,就是本方所有未行动的部队可优先于对方行动(也就是说指令发出后,你的一个农民也比对方的圣龙快),而附加的功能就是对方的行动秩序完全颠倒(对方的一个农民也比对方部队中的圣龙先行动),与速度完全无关,由于是100%触发,实战中价值还是非常不菲的。回复 10# 的帖子
那这个确实是比较好玩,回家后一定要收藏;orz; 离弦箭大大和沧海大大的脚本都灰常强大啊,仰慕无限中;exp; 谁能讲讲触发器 !?PI;什么情况下用?文盲,说明看不懂。谢谢!回复 13# 的帖子
!?PI;就是游戏开始前触发的!
只运行一次! 写脚本的一个建议:
一般用临时变量多时,最好搞个函数,一个函数控制一个功能!
很容易理解,也很容易分析原因!
还不会变量冲突! 原帖由 沧海壹粟 于 2011-11-15 10:57 发表 http://www.wogcn.net/images/common/back.gif
所谓“先制”,就是本方所有未行动的部队可优先于对方行动(也就是说指令发出后,你的一个农民也比对方的圣龙快),而附加的功能就是对方的行动秩序完全颠倒(对方的一个农民也比对方部队中的圣龙先行动),与速度完 ...
喜欢 原帖由 沧海壹粟 于 2011-11-15 10:57 发表 http://www.wogcn.net/images/common/back.gif
所谓“先制”,就是本方所有未行动的部队可优先于对方行动(也就是说指令发出后,你的一个农民也比对方的圣龙快),而附加的功能就是对方的行动秩序完全颠倒(对方的一个农民也比对方部队中的圣龙先行动),与速度完 ...
我前几天玩的一个SOD图,WOG化后,经常发现生物的速度乱变,男爵的速度一会变成7,一会变成56,而且行动顺序也不完全按速度来,搞得我很郁闷。 沧海和老离弄的太邪恶了,太邪恶了
强烈要求,指挥官不准使用这些技能,只批准狮鹫王使用;aoleof; 原帖由 songfx 于 2011-11-15 18:35 发表 http://www.wogcn.net/images/common/back.gif
我前几天玩的一个SOD图,WOG化后,经常发现生物的速度乱变,男爵的速度一会变成7,一会变成56,而且行动顺序也不完全按速度来,搞得我很郁闷。
“先制”不会造成速度的任何变化,只会造成生物行动秩序上的变化。也就是说圣龙的速度还是19,但先制后1速的农民比19速的圣龙还优先行动,但移动范围还是为1,呵呵。 请问战场上如何获得各堆栈所在位置的网格编号?
页:
[1]
2