Project1

标题: 关于YEA战斗系统和mother base ,mother scroll并用的概率闪退问题 [打印本页]

作者: Doolet    时间: 2026-3-11 09:37
标题: 关于YEA战斗系统和mother base ,mother scroll并用的概率闪退问题
本帖最后由 Doolet 于 2026-3-11 10:23 编辑

范例放在这里了,求大佬援助qwq
闪退bug范例.zip (1.46 MB, 下载次数: 8)

首先范例里我已经加入了存在问题的YEA战斗系统和mother base,mother scroll的战斗系统,很确定是这两组插件的问题!!
范例里我安排了进入战斗就主动击败敌人的敌群,现在可以给出的闪退原因的线索是:

1.这是个概率闪退,闪退几率大概在10%以内

2.在进入战斗的画面的一瞬间闪退,没有任何报错提示

3.闪退之前有战斗背景,敌人图,没有开始战斗和撤退的窗口,玩家状态,bgm,敌人血条,也没有进入战斗提示文本

4.第一次进入战斗没遇到过闪退情况,最少要第二次开始

5.如果不击败敌人选择撤退的话,没遇到过闪退的情况

6.YEA - 战斗系统 235行的 " ENABLE_POPUPS  = true     # 是否显示弹出式信息."中,把开关改为false后未出现过闪退情况

这个问题真的困扰了我好久好久,到处询问也没有个结果,求助贴吧的大佬QWQ


作者: srwjrevenger    时间: 2026-3-12 23:11
看了几分钟以至于怀疑你在整我,又或者我们对这个“闪退”有不同的理解?
都说了没遇过就是没遇过啊 T - T  

3.闪退之前有战斗背景,敌人图,没有开始战斗和撤退的窗口,玩家状态,bgm,敌人血条,也没有进入战斗提示文本
没有开始战斗和撤退的窗口--因为强制行动在回合0,换成回合1就好了。
bgm一直正常。
敌人血条--原本就没有相关显示脚本,大概你漏了复制,如 YEA - 敌人HP条。
状态是指buff、debuff吧? 和 没有进入战斗提示文本 一样,在 YEA - 战斗系统 306行附近设定。

另外,默认脚本有被 #~ 注释掉的战斗结算什么的,“闪退”总不会是这个吧?


作者: Doolet    时间: 2026-3-13 12:26
srwjrevenger 发表于 2026-3-12 23:11
看了几分钟以至于怀疑你在整我,又或者我们对这个“闪退”有不同的理解?
都说了没遇过就是没遇过啊 T - T  ...

是机型和内存释放的问题吗?我这里也是有些测试的玩家有,有些没有,有的动不动就会崩溃QWQ
作者: srwjrevenger    时间: 2026-3-14 13:13
Doolet 发表于 2026-3-13 12:26
是机型和内存释放的问题吗?我这里也是有些测试的玩家有,有些没有,有的动不动就会崩溃QWQ ...

以防万一问一下,
你自己这个范例工程或者源工程能复现bug吗?
如果能,尝试回答以下几个问题,不能就问问能复现bug的玩家。
  
范例工程设置与源工程完全一样吗?
有没有使用YEA - 队伍影响战斗音乐?
bgm设置没有出错或者bgm素材有放入?
战斗相关的脚本名截图一下。

闪退返回地图还是退出游戏?
bug是否同时出现还是多个bug在同一行回馈被误当一个了?
出现bug时该工程路径是否有空格/中文?尝试放到没有的路径试试。
出现bug时使用强制行动或者附加状态了?尝试不使用能出现bug吗?
脚本变动过一般要新开游戏,存档后读取或者新开游戏还能出现bug吗?游戏跟范例工程一样或者接近的话,能上传存档吗?
真的没有任何报错提示?如 RGSS3 Player 已停止工作 或者 SystemStackError 之类?
能发bug的视频或者动图吗?

###
为什么越看越多OTZ ... ...
原YEA的状态也有点问题啊,
1.回合0使用事件给双方附加状态,玩家方有行动(不含强制?)的,下次战斗时该事件不会对其附加状态,但再下次战斗生效,
2.该事件附加状态后有使用强制行动时,有时会显示附加状态但是只有强制行动者有效。
作者: Doolet    时间: 2026-3-15 17:43
srwjrevenger 发表于 2026-3-14 13:13
以防万一问一下,
你自己这个范例工程或者源工程能复现bug吗?
如果能,尝试回答以下几个问题,不能就问 ...

在我的电脑里我发的范例是会闪退的,我可以很确保是范例里的插件的问题
闪退的时候是进入战斗的渐变一结束就立刻关闭游戏,没有任何报错提示,然后此时鼠标指针会变成 鼠标+圆圈 这样的加载状态一瞬间就会关闭游戏
不需要上传存档,直接打开就是这样,也不存在其他插件的问题
我曾尝试用查询未释放精灵,内存泄漏的插件表示bitmap会在战斗中不断累加200个新定义,sprite是502个固定,我还不确定是不是这个问题qwq
作者: srwjrevenger    时间: 2026-3-17 00:52
Doolet 发表于 2026-3-15 17:43
在我的电脑里我发的范例是会闪退的,我可以很确保是范例里的插件的问题
闪退的时候是进入战斗的渐变一结 ...

我说怎么有种既视感呢,
这题我看过OTZ啊啊啊啊啊   
https://rpg.blue/thread-369217-1-1.html
不过现在我写的总有些问题啊... ...
再加上最近网络又莫名其妙的卡,
没错,我想鸽了!
你要是急的话,
可以问问原贴主或者老鹰,
在隔壁摸鱼的那只喵呜喵5也不错。

至于这个半成品,你也可以试试,看闪退的时间是否有变动?

  1. class Sprite_Battler < Sprite_Base  
  2. alias update_otz_t_t update
  3. def update

  4.    if @battler   
  5. for popup in @popups
  6.       popup.update
  7.       next unless popup.opacity <= 0
  8.       popup.bitmap.dispose
  9.       popup.dispose   
  10.       @popups.delete(popup)
  11.       popup = nil
  12.     end
  13.   end  

  14.     update_otz_t_t
  15.   end
  16. end #
复制代码




作者: Doolet    时间: 2026-3-20 00:09
srwjrevenger 发表于 2026-3-17 00:52
我说怎么有种既视感呢,
这题我看过OTZ啊啊啊啊啊   
https://rpg.blue/thread-369217-1-1.html

好的qwq谢谢




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1