佳丽云

英雄无敌3-WoG中文站

 找回密码
 英雄注册|Register
查看: 3651|回复: 7

关于论坛2追和我修正2追的比较

[复制链接]
  • TA的每日心情
    开心
    昨天 11:00
  • 签到天数: 214 天

    连续签到: 22 天

    [LV.7]血污怪

    244

    回帖

    1万

    金币

    3

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    4984

    退役版主

    发表于 2013-8-30 14:32:41 | 显示全部楼层 |阅读模式
    说在最前:我是ERM新手,可能很多问题考虑不到位,欢迎大家指正。
    我用老版2追修改的原因,只是因为我没有下载新版2追的权限,而且当时我也不知道有新版2追,所以并没有否定007修改的二追意思。
    直到昨天下午,我才收到了别人给我发来的新版二追(作者应该是007吧?以下简称007版)(直到现在我还没权限下载论坛的,只能别人给我传),用了几个小时的时间对此脚本进行了解读,下面就我个人看法,谈谈与我修改的2追区别。
    一、关于版权声明
    007的2追开始就有版权声明,这个我真没考虑到,只是在论坛发我改的脚本的帖子里稍有所提及。这一方面应该向007学习。

    二、关于变量声明
    007的2追在开始就把脚本中的变量罗列出来,并注明意义,方便大家进行变量规划和解读。而我却只是把我解读出来的变量注解在角本区域,同样不如007版本。

    三、关于定制按键
    这部分是007新加的特色,我是新手,这个我就不会加了。
    PS:按钮范围有点小啊,点习惯了头像的我确实有点不适应,呵呵。。当然,这是个人问题,新用该脚本的应该更喜欢这个图标按键。

    四、关于交换二追方面的BUG修复
    在此问题修复上,我们两个版本大同小异,都是插入了对不存在二追时的判定及相关操作,不同的方面有以下几点。
    (一)判定标准
    007采用的是“w162-2是否死亡/同化生物”这一变量,而我采用的是“w160-2追是否存在/战旗设置”这一变量。
    从本脚本来看,采用这两个判定效果是一样的,但是我认为,还是严谨一下较好,严谨的话,以后脚本扩充不容易出错。
    (二)弹出语句
    1.007版加入了一个无2追图(红X枪兵);而我的弹出提示是把**的二追给**,只用一个图标。。功能一样。。全看大家喜好。
    另外就是我在对交换2追的描述中加入了二追经验和同化生物,方便大家在二追原型一样时,不换错二追。
    2.007版在双方无2追时加入了一条弹出;我做我的版本时感觉没必要,没加。。。功能一样。。全看大家喜好。
    3.原作说明中交换二追是右键点击英雄头像,而实际上因为条件语句设置不正确,多出了右键点击“非共同区域的所有空白处”,这个范围有点大了,而且容易在点击其它位置稍有偏离时触发。
    所以我首先改回了只右键点击头像触发,后来考虑到原系统右键头像是有操作的,于是最终改到了原来无操作的右键点击左英雄日志(右英雄日志也是可以加进来的,不过我感觉一个操作就用了2个触发点,会给其它ERM的操作减少触发资源)。
    而这些改动,007版没有。
    (三)中介变量的赋值
    原作中,作者定义了2组中介变量用于暂时存储英雄数据。。。PS:原作中导致游戏出错退出的本质不在于少定义了无英雄操作,而是对此变量的“怪物名称”引用一项。
    关于对这2级变量的赋值,007版采用了统一操作,即无论是否有2追,都赋值为2追变量。
    我一开始也是这样做的,直到某次测试,我发现在只有一方无2追情况下,有时会发生无2追英雄出现2追模版怪物ID,同化生物为枪兵的情况。分析了语句也没发现问题,怀疑是在某种情况下,2追部分数据没有初始化造成的。于是我在判定某英雄无2追后,加入了一条赋值为初始状态(-1,0,-1,0,0,0),以保证不发生这一问题,再有就是使下面的交换语句的变量引用不至于为空(虽然为空也可以处理,但我还是认为严谨一点好)。

    (四)关于升级阙值定义及其发生改变时等级回跳、自然同化失败的一系列BUG的修复
    007版本和我的版本,都对升级阙值进行了调整,总体情况是007调大了(升级难),而我调小了(升级容易)。。。这个不是重点。。。只是个人偏好而已。。。
    由于原作算法的漏洞,其实应该说是算法错误,导致升级阙值发生改变时,2追等级会回跳。比如默认模式下,2追等级超过40级,会跳回13级。
    1.007的修复方法:在原算法不变的情况下,在2追形态改变时强制只能升一级的语句后,加入了升级阙值改变时,强制只能升一级,然后将经验提升到按下一阙值算法进行计算时的最低经验,并且按此方法修正了形态轮换和自然同化时的经验判定。我称之为“补漏法”,其本质是采用强行增加经验的方法,使下一阙值的相关计算不发生错误。
    对于这个方法,说真的我是相当佩服的,我是完全没有想到的。这个方法最大的好处是采用“曲线救国”思路,弥补算发中的漏洞,具有很强的可操作性。只要有一点点基础的人,都能够根据此方法定义出正确的阙值及相对应的判定条件,适应于大众。
    2.我的修复方法:这也是我比较得意的地方。我采用连续的梯级函数(是数学函数不是程序中的函数),完全替换掉原作的算法。并推导出两条判定公式,只有有一定数学基础的人(其实不需要很高,关键是肯花时间看懂我的数学变量说明,代入对应值就行了),就能够根据此公式定义出正确的阙值及相对应的判定条件,适应于有一定数学能力的人。
    3.两种方法的比较:
    007的方法确实简单,但是,“曲线救国”毕竟还是“曲线救国”,只是补充了原作算法部分漏洞,但其最重要的本质“不连续性”没有得到纠正,就会引起一系列问题。就目前的脚本应用来说,最明显的问题有2个:
    一是2追总经验的显示不正确。当然不正确啊,因为加了很多的说。。。对于本脚本来说,其实影响不大,因为和总经验有关的操作都被用“补漏法”定义了。而目前的经验显示错误,也可以用“显示再减回差值后的变量”来实现。
    二是由于“阙值改变时,强制只能升一级,并提升经验到下一阙值下限”这一操作,表面上是增加了经验,但是,其实增加的这部分经验都被用于“补漏”了,事实上,你升级时超过升级经验的部分,被华丽的吃掉了。当然这也是小问题,毕竟阙值调整也就几次。
    我的方法确实比007的复杂,但是复杂的公式推导我已经完成了,需要做的只有数值代入,所以也不是很复杂,我的算法有着无与伦比的优势,就是1就是1,2就是2的确定性,在定义好了所有阙值和判定点后,其它地方都不需要考虑特殊情况,因为是确定的说。对将来的脚本扩充有很大好处。

    (五)关于300血生物可以同化任何生物的BUG修复
    首先说明一下,很多人认为这不是个BUG,是原作都留下的特殊情况,但我认为不是这样,确实是个BUG,原因有以下几点:
    1.原作的注释,这是最重要的,根据原作代码旁边的多处注释,很明显的看出作者没有留300生命这一特殊值的想法,只是在实际判定时,少写了2个等于号。。。
    2.游戏中的意义,游戏是为了娱乐,平衡是娱乐的前提。标准情况下,生命为300的生物就有3种,黑龙,泰坦和比蒙巨兽,只要找到一头这个怪物,就可以使用任何2追,在任何等级及其它情况下,同化任何生物,最强的就是同化圣龙。你要是说圣龙也不好抓,那听我继续说下去。为平衡白魂和吸血鬼作为2追的情况,这两种生物只能同化25和50以下生命的生物,使用的判定语句和其它生物是同一条。狮鹫,狗,气元素,金人和牛头好找吧?如果这个判定语句不加“=”不是个BUG,那么你告诉我,在这个判定条件下,使用白魂同化前三种生物后可以同化圣龙(当然,你也可以同化普通生命高的生物),游戏还有意思么?你又要说用白魂算作弊,那么用吸血鬼在本版本中定义不算作弊的,同上所述,你用吸血鬼同化过后两种生物后,也没有了同化限制。而这些情况,只需要加个等号就可以解决。现在你告诉我,你还认为这不是个BUG吗?你要是再坚持,那我也没话说了,反正我认为这是个BUG。
    基于我肯定这是个BUG的前提下,我对这部分判定语句进行了修改。
    第一次修改是加入了=300的判定。。。
    后发现还有白魂和吸血鬼情况,与是将=300改为等于同化能力。
    第三次我对脚本进行检查时,发现多个判定语句有很大的重复区域,通过数学计算,在保持原功能不变的情况下,优化判定语句为2条。。。由于判定语句少了,查看这部分代码意义也就方便了,不容易出现判定漏洞。。汗,原作者的写脚本能力我佩服,但数学能力确实有点那个。。。
    对于这一BUG,007版本没有修正。可能他认为这不是个BUG吧。。。

    (六)界面汉化
    原作者应该是使用英语国家的人,或者原作创作时游戏不支持英语,反正原作中有很多英语的界面。
    007和我都对界面都进行了汉化,我们对英语部分的翻译可能不同,但意思大家应该都能明白。
    007汉化不全,有部分界面还是英雄。。。我的应该是比较全的吧,毕竟我是使用搜索“^”符号来翻译的。。。也许有粗心没汉化到的地方,大家不要喷我。。呵呵。。。

    (七)关于同化能力的设定
    在我最后一个修正版本里,我加入了同化能力的设定。。。。
    目的是通过同化能力的成长,2追能同化到的生物范围不断改变,目前想到的成长条件有“献祭生物、宝物、特殊物品、完成任务、资源购买,打败一定数量的某种怪物等,为全部实现这些功能,我觉得有必要增加一个W变量,如果不增加该变量,只能完成设想中的部分功能。
    (八)二追的转职(设想中)
    这里的转职是二追原型生物的转职,考虑到一开始就能无条件选择所有生物做2追原型,所以这部分应该没有必要。
    但是,又考虑到二追原型获得太过简单,很没有道理啊,可以增加不同二追原型获得难度,这样的话转职就有意义了。
    设想中不同的二追原型除基础技能的不同外,基础同化能力也不同。

    综上所述,我认为除多了一个按键图标外,总体上我的二追是优于论坛官方二追的。。。大家不要喷我,说我自大,其实自大是真有的,我自己先承认了,呵呵。。。当然,论坛二追也是很强大的ERM。。
    以上是我对论坛官方二追及我改的二追的看法,只代表个人看法。。。不到之处,请大家指正。。。
    我的愿望是让这个经典的游戏更加经典,毕竟一个游戏玩了十几年的只有这个和仙剑了。。。
    其实我是有私心的,希望大家承认我的工作,希望大家采用我的版本,希望自己做的比别人强。。。虽然我只是新心。。。
    最后再说一句。。。也就是我反复说的。。。严谨的编程态度不会给自己增加多少工作,但给自己和别人的将来减少很多麻烦。。。
    谢谢大家捧场。。。谢谢各位大大。。。请发红包好吗?。。。我好想下载最新的ERA啊。。。

    附:我改的二追地址
    http://bbs.h3wog.com/forum.php?mod=viewthread&tid=41677&fromuid=111130

    评分

    4

    查看全部评分

  • TA的每日心情
    郁闷
    2015-6-6 16:12
  • 签到天数: 52 天

    连续签到: 1 天

    [LV.5]女巫

    4949

    回帖

    3万

    金币

    35

    精华

    超级版主

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    34677

    论坛守望者论坛元老杰出贡献

    发表于 2013-8-30 15:16:05 | 显示全部楼层
    其实,我主要是把 二追 弄成MOD版了.
    至于修正,我只是修正了英雄交换界面中,交换二追时可能的错误.

    然后,其它所有脚本语句都是原来的(也许有前辈修正过一些语句),但不是我修正的.

    楼主的修正版无疑是更深入的修改版,希望继续努力.
  • TA的每日心情
    开心
    4 天前
  • 签到天数: 1034 天

    连续签到: 1 天

    [LV.10]圣龙

    321

    回帖

    1万

    金币

    0

    精华

    6级 Legendary Hero

    Rank: 6Rank: 6

    积分
    13002
    发表于 2013-8-30 17:08:48 | 显示全部楼层
    不错不错,专业人士是论坛需要的
  • TA的每日心情
    奋斗
    2015-1-22 08:29
  • 签到天数: 3 天

    连续签到: 1 天

    [LV.2]野猪

    919

    回帖

    1万

    金币

    1

    精华

    论坛嘉宾

    掘坑者的铁锹

    Rank: 9Rank: 9Rank: 9

    积分
    1522

    退役版主

    发表于 2013-8-30 17:23:14 | 显示全部楼层
    本帖最后由 eva2000as 于 2013-8-30 17:26 编辑

    原始的二追版本,作者是论坛元老也是WOG的ERM研究先去woodmelon(木瓜,地道的天朝兔子)编写的。最终版本是4.01。另外,圣龙那个的确是作为彩蛋留下来的。
    二追原本是作为一个地图中的附件ERM(屠龙者还是哪个来着?),后来被移植为通用ERM。话说在那个几乎没可能达到30MB限制的年代,二追已经算是大型ERM了。9in1、典当行、元老院和怪物强化III还都是后来的呢。
    原帖:
    http://bbs.h3wog.com/thread-3931-1-1.html

    06年我们就开始折腾这样的怪物级别的ERM了,也难怪我总是感觉鬼佬那里出了基础研究资源比我们丰富,其他的其实也不过尔尔。想想沧海二追和转职这两个几乎颠覆游戏性的ERM,想想我们自己的竞技用MODTE还有最近贤知那个充满潜力的远程强化ERM。其实天朝兔子们完全不输给鬼佬嘛。
    某真祖的酒馆留言簿:据说在诅咒之地上作战时,怪物强化III无法完全生效。
    某真祖的酒馆留言簿:魔镜大法能使一些生物施法无效但不能反射。
  • TA的每日心情
    开心
    昨天 11:00
  • 签到天数: 214 天

    连续签到: 22 天

    [LV.7]血污怪

    244

    回帖

    1万

    金币

    3

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    4984

    退役版主

     楼主| 发表于 2013-8-30 20:24:39 | 显示全部楼层
    从版主的回复中发现
    莫非版主就是传说中的007大大。。
    佩服佩服。。
  • TA的每日心情
    奋斗
    2023-7-4 16:13
  • 签到天数: 78 天

    连续签到: 1 天

    [LV.6]地狱战马

    282

    回帖

    555

    金币

    0

    精华

    5级 Honorable Hero

    Rank: 5Rank: 5

    积分
    3223
    发表于 2013-8-31 11:08:53 | 显示全部楼层
    楼主研究精神值得佩服。。。希望多出新作品(PS,希望楼主有空把9IN1 完善下,最喜欢的ERM,不过再ERA下有些小的BUG
    贤知有你=007,记得他原来叫hunter007?》

    该用户从未签到

    138

    回帖

    14万

    金币

    1

    精华

    4级 Famous Hero

    Rank: 4

    积分
    1319

    杰出贡献TE联赛殿军

    发表于 2013-9-5 22:49:17 | 显示全部楼层
    Miser1 发表于 2013-8-30 20:24
    从版主的回复中发现
    莫非版主就是传说中的007大大。。
    佩服佩服。。

    叫小7就行了,原来007也有粉丝啊。
  • TA的每日心情
    开心
    2019-1-31 14:25
  • 签到天数: 130 天

    连续签到: 1 天

    [LV.7]血污怪

    2778

    回帖

    2万

    金币

    14

    精华

    论坛嘉宾

    Rank: 9Rank: 9Rank: 9

    积分
    14801

    退役版主社区QQ达人魅力之星

    发表于 2013-9-14 22:59:51 | 显示全部楼层
    看来楼主和007都是高手啊,不愧是专业人士。我乃普通钓丝,不会什么编程,Erm都是靠自己,不断地试验,使用摸索出来的。走的弯路可想而知。看到你研究的如此深入,我表示佩服佩服。
    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 英雄注册|Register

    本版积分规则

    捐赠
    关注我们,英3Mod一网打尽!

    WoG中文站 ( 辽B2-20210485-10 )|辽公网安备 21128202000228 号

    GMT+8, 2024-11-25 13:27 , Processed in 0.325434 second(s), 14 queries , Gzip On, File On.

    Powered by Discuz! X3.4

    Copyright © 2004-2022, Beijing Second Sight Technology Co., LTD.

    快速回复 返回顶部 返回列表