songfx 发表于 2010-11-9 21:54:25

修复力盾+驱散Bug及水上战斗Bug

Yexian7再次出手,以脚本的方式解决了力盾+驱散的Bug
Bug原由:
我试过我手头所有版本的SOD及WOG,只要力盾(或火墙)遭遇驱散(或驱除障碍),100%跳出。
请大家也帮忙试试你们手里的版本。如果谁的版本不会强退,请给大家共享一下。
测试方法如下:
1. 下载附件的测试地图,解压到maps文件夹下
2. 开始游戏(单人或双人模式都可以,推荐双人模式)
3. 任意一方施放力盾或火墙,紧接着不论哪方施放驱散(或驱除障碍)
4. 试试看能不能过完三轮???

****************以下为水上战斗Bug***************************

大家经常遇到过踏水或飞行时,经过海面伏兵,直接黑屏跳出的Bug。
这是因为H3本身漏掉了一个水面战斗的场景。
因为我们不具备修改H3源码的能力,以前遇到这种情况只能是读档然后自动战斗。
不过,我们也可以通过脚本的方法来避免此Bug。
特邀Yexian7版主编写一个脚本,可以安全避开此Bug,请大家测试并反馈,谢谢
****************************************************************

力盾Bug修复补丁
http://bbs.h3wog.com/images/attachicons/rar.gif script update 11.28.rar (697 Bytes)

songfx 发表于 2010-11-9 22:00:18

感谢Yexian7同学

龙巫妖 发表于 2010-11-9 22:27:28

;exp; 是时间狗狗的杰作? :buxie:

cyhken 发表于 2010-11-10 01:24:15

Well``好東西....

灰狼王子 发表于 2010-11-10 02:27:30

恩 这个很实用 值得一试

gelu01 发表于 2010-11-10 18:52:26

非常实用的脚本,谢谢了

无心云 发表于 2010-11-10 19:57:38

感谢版主楼主以及yexian同志的辛勤劳动
我代表涛哥问候你们!:deyi:

lizhenbiao98 发表于 2010-11-11 09:20:15

好东西,赞一个

coolyxw 发表于 2010-11-13 19:52:40

新东西,这个一定要顶:nianjing:

songfx 发表于 2010-11-15 06:50:58

又一个老Bug被攻克,ERM果然是无所不能,无坚不摧呀。

灰狼王子 发表于 2010-11-15 11:56:16

力盾驱散的BUG都能被解决了 太伟大了 多少BT地图都是因此而功败垂成啊:hero:

yexian 发表于 2010-11-24 10:52:09

-



[ 本帖最后由 yexian7 于 2010-11-30 10:30 编辑 ]

songfx 发表于 2010-11-24 12:41:57

原帖由 yexian 于 2010-11-24 10:52 发表 http://bbs.h3wog.com/images/common/back.gif
a little update
已经整合到新地图里了

老虎 发表于 2010-11-28 10:19:33

使用后城战时城变得破破烂烂了。城箭塔无,城门攻城方打不开,攻城车失效,想用攻城车打碎也无法。
这样的话,攻城战术和守城战术都失效了,对大多数城,步兵也无法从城外直接攻击到城里了。
测试时用干净系统,未加载任何其它非官方erm。

yexian7 发表于 2010-11-28 10:47:05

Tiger,谢谢你的反馈,下载12L的更新。

骷髅召唤师 发表于 2011-1-16 09:14:16

不错的东西。顶

lastlrj 发表于 2011-1-16 20:50:07

真是好东西。原来困扰了好久,没想到erm可以搞定

寻梦人 发表于 2011-6-19 20:43:31

这个脚本没有人测试过吗?

我刚刚测试了一下,没有什么效果啊,一样黑屏!

songfx 发表于 2011-6-19 22:14:11

ZVSE
* Dispel Bug Fix, JHV/Yexian7, Nov., 2010

* replace Force Field-cast with cloud hole obstacles (88)
* remove obstacles if expert Dispel cast or after 2 rounds
* (must cast Remove Obstacle to remove, unfortunately)
* Note:effect of Mages and Silver Pegasi on FF spell cost is not accounted for (sorry)

* uses unclaimed variables v884=v895 & v1984-v1997 during battles
* and temporary variables v1=v7
* and unclaimed functions FU1984-FU1986

!?BA0&1000;
!!VRv1984:S0; no. of active Force Fields

!?BR&1000;
!!VRv1985:Sv997; save round # for other triggers
!!FU1984&v1984>0:P;

!?FU1984; pop FIFO list of FF's
!!VRy1:Sv1984+1985; index to earliest FF end-round
!!FU&vy1>v1985:E;
!!VRy2:Sv1984+1989; index to earliest FF start-hex
!!VRy3:Sv1984+1993; index to earliest FF end-hex
!!FU1985:Pvy2/vy3; remove earliest FF
!!VRv1984:-1;
!!FU1984&v1984>0:P;

!?FU1985; remove FF obstacles
** Attacking hero does Remove Obstacle on battlefield positions x1-x2
!!BH0:N?y2; hero
!!HEy2:I?y3/1; spell points
!!HEy2:Id30/1; add more than enough mana for RO casts
!!BH0:C64/x1/3/0;
!!VRy1:Sx1:17%2; even/odd starting row
!!VRx1:-16-y1;
!!BH0:C64/x1/3/0;
!!BH0&x1>x2:C64/x2/3/0; cast expert Remove Obstacle
!!HEy2:Iy3/1; restore Spell points
!!BH0:M0; renable casting

!?BG0&1000; check for FF and replace with obstacles
!!BG:A?v1 S?v2;
!!FU|v1<>1/v2<>12:E; FF not cast
!!BG:D?v1 Q?v2; get hex and side
!!BHv2:N?v3 M1; get hero, disable casting this round
!!FU&v3<0:E; gotta be a hero to cast, but just in case ...
!!HEv3:S17/?v4; get Earth skill level 0-3 (2,2,3,3 hexes)
!!BU:G?y7; terrain type, 1=MP, 8=RL
!!VRv4|y7=1/y7=8:S3;?br /> !!VRv8:Sv4+2:3*3-12; mana cost w/o Mages or Silver Pegasi
!!HEv3:Idv8/1;
!!VRv4: :2+2; v4=# of FF hexes
!!VRv7:Sv1:17%2; 0-even row, 1-odd row
!!VRv5:Sv4-1*-17+v1; ending hex for 3 hexes or odd starting row
!!VRv5&v4=2/v7=0:+1;
!!VRv6:Sv1985+2; end round
* make room in FIFO lists and add latest FF data
!!VRv884:Cv1986/v1987/v1988/v1989/v1990/v1991/v1992/v1993/v1994/v1995/v1996/v1997;
!!VRv1986:Cv6/v884/v885/v886/v1/v888/v889/v890/v5/v892/v893/v894;
!!VRv1984:+1;
* plot obstacle 88 in lieu of FF
!!BF:O88/v1;
!!VRv1:-16-v7;
!!BF:O88/v1;
!!BF&v1>v5:O88/v5;
!!BG:A0; cancel instead of casting FF

!?BG0&1000/v1984>0; check for Dispel (v2=35) and remove all FF obstacles if so
!!BG:A?v1 S?v2;
!!FU|v1<>1/v2<>35:E; Dispel not cast
!!BG:Q?v2; get side
!!BHv2:N?v3; get hero
!!FU&v3<0:E; gotta be a hero to cast, but just in case ...
!!HEv3:S16/?v4; get Water skill level 0-3
!!BU:G?y7; terrain type, 1=MP, 6=LP?br /> !!FU&v4<3/y7<>1/y7<>6:E; only Expert Dispel removes FF
!!DO1986/1/v1984/1:P;

!?FU1986; remove all FF obstacles, x16=# in FIFO list
!!VRy1:Sx16+1985; index to earliest FF end-round
!!VRy2:Sx16+1989; index to earliest FF start-hex
!!VRy3:Sx16+1993; index to earliest FF end-hex
!!FU1985:Pvy2/vy3; remove earliest FF
!!VRv1984:-1;

* Dispel bug fix by Yexian7, modified by JHV, Nov., 2010
* checks for Dispel or Remove Obstacle,
* puts cloud hole over FF or FW, then removes with cast of RO

!?BG0;
!!BG:A?y1 S?y2 H?y3 D?y5;
!!FU|y1<>1/y3=-1:E;
!!FU&y2<>35/y2<>64:E; 35 Dispel ?64 Remove Obstacle
!!BU:G?y7; terrain type, 1=MP, 6=LP?br /> !!HEy3:S16/?y4;
!!FU&y2=35/y4<3/y7<>1/y7<>6:E;
!!FU&y2=64/y4<2/y7<>1/y7<>6:E;
!!DO24000/1/185/1&y2=35:P100;
!!FU&y2=35:E;
!!BU:Oy5/?y6;
!!FU&y6<>17/y6<>34/y6<>35:E; 17 Firewall, 35 the main shield, 34 force shield
* note action not possible for y6=34-35 & y4=2
!!BF&y6=17:O88/y5;
!!BM0&y6=17:C64/y5/3/3/0;
!!FU&y6=17:E;
* find main shield
!!VRy8:Sy5;
!!VRy8&y6=34:Sy5+16;
!!BU:Oy8/?y9;
!!VRy8&y6=34/y9<>35:Sy5+17;
!!BU:Oy8/?y9;
!!VRy8&y6=34/y9<>35:Sy5+34;
!!BF:O88/y8;
!!BM0:C64/y8/3/3/0;
!!VRy9:Sy8-16;
!!BU:Oy9/?y10;
!!VRy9&y10<>34:Sy8-17;
!!BF:O88/y9;
!!BM0:C64/y9/3/3/0;
!!VRy9:Sy8-34;
!!BF:O88/y9;
!!BM0:C64/y9/3/3/0;

!?FU24000&x1=100;
!!BU:Ox16/?y1;
!!FU&y1<>17/y1<>34/y1<>35:E; 17 Firewall, 35 the main shield, 34 force shield

!!BF:O88/x16;
!!BM0:C64/x16/3/3/0;

寻梦人 发表于 2011-6-19 22:24:28

刚才试验了一下!

这样的的话,战斗就没有一点难度了!
所以不加了,他是用障碍物代替力盾而已!
页: [1] 2
查看完整版本: 修复力盾+驱散Bug及水上战斗Bug

捐赠