M.U.G.E.N的主程序官方版本只有dos、win、1.0、1.1beta,其余版本皆为民间改造或编造

混线的原理

作者:不该有名字(四娘)


原文://tieba.baidu.com/p/1136575475



正文:


凶恶人物解析第三弹:混线

经常都有人能看到

某个凶恶人物里有XX混线,混线XX之类的字样

那么混线到底是什么?


所谓的混线嘛……

也许你见过,也许你没见过

但是在很久以前的遥控工具上,混线是一种很常见的事情

那种时候,一个遥控器,只要功率足够高,就能同时控制很多个在遥控范围内的工具

当然在mugen中的混线就不是这样的原因了


首先要知道的是

MUGEN中,除去人物之外,还有名为"helper"的东西存在

你可以称之为援护,或者辅助,或者其他你想给与的称呼

helper分为两种类型,normal型和player型

这两种类型的差别就在于,normal型不受公用状态的影响,player型的受

同时不管是什么样的helper,都会运行在非公用状态内的代码


而helper的最大数量,则是56

同时来说,在mugen中分配的编号里

0是P1,1是P2,2是P3,3是p4

其中的2和3,如果不存在则会被省略

接下来的4-59,都是helper


当你成功击中一个单位时,你就会取得这个单位的target,而target在mugen中的内部识别所用的就是根据不同的编号

而那些带有targetxxxx的代码,只会对与你取得的target的编号相同的单位有影响


so...啥木是混线?

混线就是指

通过创建多个helper,并且让其中一个helper攻击其他helper来取得target(#1)

然后让这个helper利用reversaldef(#2)来保持target,接着让其他helper自毁(#3)

(#1 别忘了编号是唯一的,取得多个target也就是取得了多个编号)

(#2 为什么用reversaldef就能保持target?也许这是一个bug,也许是其他……谁知道呢)

(#3 DestroySelf,消灭自己,只对helper有效)


接下来的话

你看,你已经取得了很多个编号,而编号又是唯一的

所以如果对手在之后放出的helper的话,那么新的helper的编号就会和你已经取得的target的编号一致

直接来说就相当于对手的helper就是你的target

然后你的那些targetstate之类的代码,自然就能对那些target产生作用了

这就是混线的原理





========================


一些问答以及回复:


Gustab·M:


虽然不知道是谁挖上来的。。。我来解释的简单点吧

1、召唤援护者A、援护者B

2、援护者A击中援护者B,获取target后通过常时reversaldef来维持永续target的bug

3、援护者B自灭,产生空位

4、敌人召唤援护者C,落入援护者B自灭后留下的空位

5、援护者A发动targetstate,将援护者C拖入指定状态中


相关配合技术

1、变数弄:在援护者C被拖入的状态中实行parentvarset,篡改对方本体的变量

相关挑战:利维坦等


2、贯通炮:利用援护者索发射的project归属于本体的bug,在援护者C被拖入的状态中发射projetile,通过p1stateno将本体带入5100、5110这些默认的倒地状态里,同时给与对方落下伤害fall.damage

相关挑战:神蛇


3、潘多拉杀手:原理同上,通过p1stateno将本体带入110和115这两个默认有hitby的状态中

相关挑战:潘多拉魔盒V0.2


4、即死返:原理依旧同上,不过是将对方拖到他的即死状态中,需要调查能力,例如记录下自己被当身时进入的敌人的状态号

相关挑战:F1


其他还有Ayuayu杀手等等。。。







你,确定要这么做吗?
正在处理中...