Mugen主程序报错汇总

加载初始场景报错

blob.png

报错关键字:dojo.def 或 stage0.def

原因:程序以debug模式运行且调用了debug场景

解决方法:1、在mugen.cfg文件内找到[Debug]下的StartStage =,将场景改为一个存在的场景def文件名。2、或者将一个场景的def文件名改为报错时提示的场景名


人物版本过老

blob.png

报错关键字:Character mugenversion is older than this version of M.U.G.E.N.

原因:1、人物代码中使用了win版的代码,但使用了1.0或1.1以上的主程序运行。2、代码格式错误

解决方法:1、换个高版本的主程序。2、根据图中报错的详细信息,将人物代码修正,但前提是你懂代码。


SFF文件过大

blob.png

报错关键字:Can't load xxxxx.sff

某个角色对应的sff文件无法载入

原因:角色sff文件过大。程序读取过多大容量人物会导致内存过大,从而无法运行。详细见https://qxmugen.com/article/13138.html

解决方法:1、使用该人物之前重新启动主程序。2、将sff文件中的图片替换为小尺寸的图。3、下载并运行人物占用内存过大崩溃补丁,下载地址https://qxmugen.com/tools/10027


场景载入错误

image.png

报错关键字:BG error reading

原因:该战斗场景的def文件中,指定sff的路径用的是“/”,这会导致一些电脑载入该场景时报错。

解决方法:去场景文件夹里打开该场景的def文件,将指定sff的路径中所有的“/”改为“\”


凶恶代码版本不兼容

image.png

报错关键字:Invalid format specifier in "%n"

原因:人物代码中含%n、%f的都是作者利用win版主程序的漏洞而写的凶恶向代码,使人物拥有非常规的能力,1.0和1.1主程序修复了这个漏洞,因此这类人物不能在win版以上的主程序运行。

解决方法:使用win版程序运行该人物


非法控制器

blob.png

关键语句:not a valid elem type

表示所使用的控制器名称不对——"playsn"应改为"playsnd"


招式指令过多

blob.png

关键语句:Player has too many commands. Only 128 unique commands labels allowed.

表示角色在cmd中的招式指令超过了128个,128为一个角色的上限数量


数据类型错误

blob.png

关键语句:Type mismatch detected

表示使用了该字段不支持的类型,例如给整型变量赋予浮点值


系统文件读取错误

blob.png

报错关键字:Error loading system data

图中为读取data/mugen1下的system.def文件出错,出错原因是上一行的system.sff无法读取

原因:1、system.def中指向的system.sff文件不存在。2、system.sff文件的版本太高,但当前运行的主程序是老版(通常是win版)


特殊的错误信息

WinMugen代码中1行最多256个字符,超过这个上限的字符会被忽视或导致主程序报错

RCMugen(mugen1.0和mugen1.1)中这个限制被解除。


一个StateDef读取超过了2500次

blob.png

报错关键字:State machine stuck in loop (stopped after [StateNo] for [name])
Check your states for infinite ChangeState loops.

例图:statedef 200在循环读取2500次后停住了,请检查是否有ChangeState无限循环


某个StateDef的控制器超过了512个

blob.png

报错关键字:state [StateNo] can only have max of 512 controllers

Statedef 200最多只能拥有512个控制器,即最多只能写512个 type = ×××


异常表达式

blob.png

报错关键字:Player [name] ([PlayerID]) in state [StateNo]: malformed expression

与数据类型错误类似,不同点在于是出现在:=赋值中,亦或是计算中的数据类型错误

例1——var(20):=1.2——给整型变量赋予浮点数报错

例2——gamewidth%320——gamewidth默认为浮点数,直接参与取余运算报错


Assert failure簡易一覧

エラーメッセージ原因
Assert failure in array line 100animelemtime(0) >= 0 使用
Assert failure in array line 110指定了不存在的动画号码
Assert failure in spr-lib.c line 437詳細不明
Assert failure in array.c line 437[lunaの倉庫]
Assert failure in array.c line 437[虹格な海底宝物庫]
Assert failure in array.c line 437続き[lunaの倉庫]
Assert failure in spr-lib.c line 516詳細不明
Assert failure in spr-lib.c line 560

assert failure in spr-lib.c line 560の正体[lunaの倉庫]

win版特有bug,貌似和跟暂停和helper啥的有关系

Assert failure in spr-lib.c line 601詳細不明
Assert failure in charsel.c line 3162

在mugen.cfg设置了AI.RandomColor = 1

但角色的def中没有写上Pal.Defaults

这个错误一般出现在街机模式(arcades)和生存模式(survival)


主程序死机


同时取得多个target后的重定向使用死机(TargetFacing、TargetDrop除外)

方案1:target重定向值使用特定的变量存储

方案2:trigger中写上NumTarget = 1的条件,当同时取得多个target时不运行

方案3:当同时取得多个target时使用TargetDrop丢弃其余目标,保存特定目标


helper自毁后,helper或Explod导致的死机。

原因:DestroySelf实行后,写在它之后的代码也继续实行。

方案1:尽量将DestroySelf写在一个状态组StateDef的最下面。

方案2:DestroySelf以后的代码使用PlayerIDExist(ID)或其他重定向的条件来区分运行的对象。


使用HitDef的snap参数时,Shift + F4重新载入对战时死机。

方案:不推荐使用该参数,建议使用TargetBind


[StateDef 52] [StateDef 140]等样式的2500循环的死机。

自動ステート移動(読み込み)の条件読み込み先StateDefESC
F12
ループ中の
PrevStateNo
timeが
リセット
Physics = A && Pos y >= 0 && Vel y >= 052無効52
StateNo = 140 && StateType = S,C,A &&
経過Time >= 「その時点でのAnimの総表示時間」以上
StateTypeに応じて0,11,51有効140される
StateNo = 140 && StateType=L &&
経過Time >= 「その時点でのAnimの総表示時間」以上
140無効140に来る前の
StateNo
されない

方案1:角色物理状态为空中(Physics = A)且竖直位置在地面及以下(pos y >= 0)且下落速度大于等于零(vel y >= 0)满足的时候,转入[statedef 52]

方案2:先从读取140移动时的StateType决定的,为站立S转入[statedef 0],为下蹲C转入[statedef 11],为空中A转入[statedef 51],条件中还要写上time>=当时显示的anim时间及以上

方案3:与方案2比较相似,不同点在于上一个状态号不为140


评论区部分报错解答


Library error message: Died parsing ifelse(Stagevar(Info.name)!="Boss",1,7) 

Error detected. 

Trigger not valid for mugenversion of character: Stagevar 
Error parsing PlaySnd 
Error parsing [State 5000, PlaySnd] 
Error in [Statedef 5105] 

Error in data/common1.cns:1538 

方案:将【官方】主程序data中的common1.cns文件复制粘贴进人物包中


OxO...failed. 

方案:打开mugen.cfg,改变渲染模式RenderMode,不使用OpenGL


Error detected.

Can't access [Info]
Error loading chars/ff3_0/ff3_0.def

Error loading p1

方案:勿使用FF3启动主程序

斯凯 评论于
四季的幻想乡

麻烦问一下,Error message: Can't open stage: world of shadow/World of shadow.def这个报错问题已经知道了,可是不知道该怎么解决,大佬教一下

@四季的幻想乡 World of shadow检查文件内引用路径是否正确,不行就把这个场景删了把

斯凯 评论于
柠檬西柚丷

请问主程序报错这个。。。该怎么解决啊
Error message: state 9993 can only have max of 512 controllers

@柠檬西柚丷 代码写的有问题,换个版本的主程序试试,不行就算了

斯凯 评论于
wosos

请问
Error message: Invalid varname info.name in: Stagevar
Error parsing [State 186, KOFM]
Error in [Statedef 184]
Error in KOFM\Igniz-EV.cns
Error loading chars/Igniz-EV1.75+/Igniz-EV1.75+.def
Error loading p1

Library error message: Died parsing ifelse(Stagevar(Info.name)!="Boss",62,64))

该如何解决

@wosos Igniz-EV这个人物可能存在版本不兼容或者代码写错了,换个主程序试试

铺仁堂 评论于

请问这是怎么了,翻译过的。错误消息:无法锁定选项组。查找字符时出错

四季的幻想乡 评论于

麻烦问一下,Error message: Can't open stage: world of shadow/World of shadow.def这个报错问题已经知道了,可是不知道该怎么解决,大佬教一下

柠檬西柚丷 评论于

请问主程序报错这个。。。该怎么解决啊
Error message: state 9993 can only have max of 512 controllers

wosos 评论于

请问
Error message: Invalid varname info.name in: Stagevar
Error parsing [State 186, KOFM]
Error in [Statedef 184]
Error in KOFM\Igniz-EV.cns
Error loading chars/Igniz-EV1.75+/Igniz-EV1.75+.def
Error loading p1

Library error message: Died parsing ifelse(Stagevar(Info.name)!="Boss",62,64))

该如何解决

斯凯 评论于
黑白抹消者

Error message: 
Could not open file: cns\Orochi-98-UM-N.cns
Error loading chars/Element-Orochi/Element-Orochi.def
Error loading p1
这是为什么报错,解决方法是什么?

@黑白抹消者 cns\Orochi-98-UM-N.cns这个路径下的这个文件打不开,需要检查一下def文件内文件引用情况和实际文件夹里是否存在,以及def里有没有乱码之类的

黑白抹消者 评论于

Error message: 
Could not open file: cns\Orochi-98-UM-N.cns
Error loading chars/Element-Orochi/Element-Orochi.def
Error loading p1
这是为什么报错,解决方法是什么?

斯凯 评论于
黑白抹消者

Error message: Trigger not valid for mugenversion of character: Stagevar
Error parsing PlaySnd
这是什么原因报错?

@黑白抹消者 问题一样

黑白抹消者 评论于

Error message: Trigger not valid for mugenversion of character: Stagevar
Error parsing PlaySnd
这是什么原因报错?

斯凯 评论于
黑白抹消者

Error message: Not a valid elem type: zoom
这是什么原因报错?

@黑白抹消者 有个代码无效,要么是高版本的,要么就是写错了

黑白抹消者 评论于

Error message: Not a valid elem type: zoom
这是什么原因报错?

斯凯 评论于
德州折刀

我想问一下win主程序无报错闪退怎么解决。。。
我的电脑在win版运行论外或者带有凶恶技术的人物(黑卷的人物或者雅阁那种的)就会闪退,而且还不会报错,就很头疼。。
大佬们有解决办法吗?如果有的话请务必告诉我,谢谢了

@德州折刀 没啥办法,因为win的稳定性本来就很差

德州折刀 评论于

我想问一下win主程序无报错闪退怎么解决。。。
我的电脑在win版运行论外或者带有凶恶技术的人物(黑卷的人物或者雅阁那种的)就会闪退,而且还不会报错,就很头疼。。
大佬们有解决办法吗?如果有的话请务必告诉我,谢谢了

KKIM 评论于

那snd文件无法加载怎么办呢

斯凯 评论于
lijun

error message:can’t open config file data/mugen.cfg. error reading data/mugen.cfg
以上错误码通过翻译已经知道了,只求解决方法
拜托了!

@lijun 重下个主程序吧

lijun 评论于

error message:can’t open config file data/mugen.cfg. error reading data/mugen.cfg
以上错误码通过翻译已经知道了,只求解决方法
拜托了!

斯凯 评论于
无知者

@无知者 对了,下载官方原版运行没问题 1.1汉化版也没问题 会不会是主程序包中的1.1有问题

@无知者 是的,有问题,近日修复

无知者 评论于
无知者

下的主程序包中mugen1.1出现了Lua fatal error:Vector not a valid table的报错
而mugen1.0却可以正常运行

@无知者 对了,下载官方原版运行没问题 1.1汉化版也没问题 会不会是主程序包中的1.1有问题

根据相关规定,发布评论前必须绑定手机前往绑定
你,确定要这么做吗?
正在处理中...