isa
1
您好。
关于标题所述问题,在VS编辑器中对特定状态或链接执行以下操作时,游戏会发生崩溃:
附件中提供了重现该问题的测试项目,请查收。
目前尚不清楚原因,如果有任何解决方法或相关信息,请告知。
testproject_2026-06-09.zip (1.8 MB)
■事件查看器应用程序日志
■重现步骤
① 打开附件项目中的以下对象
res://object/test/test.tscn
② 打开VS编辑器界面
③ 存在3个状态和2个链接,删除其中任意一个 → 问题发生
问题已确认,
发现了两处令人关注的错误。
ERROR: Unrecognized UID: “uid://cjf04grb4ne0t”.
ERROR: Condition “!nodes.has(p_id)” is true. Returning: Ref()
at: actg::VisualScript::get_node (modules\actg_visual_script\actg_visual_script.cpp:842)
综合来看,这意味着存在无法识别的 UID,并且尝试访问了不存在(例如已被删除)的节点。因此,推测当前处于「看似能够访问视觉脚本,但实际上无法访问」的状态。
我原本推测清除缓存应该能解决问题,但无效,因此这很可能是一个 Bug……
我打算向开发团队报告此事。请问在问题发生时,是否执行过可能引发缓存不一致的操作,例如复制视觉脚本、从其他视觉脚本复制/粘贴状态等?如有相关信息,烦请告知。
1 个赞
isa
3
感谢您的确认。
我打算向开发团队报告此事,请问在问题发生时,您是否执行过可能导致缓存不一致的操作,例如复制视觉脚本、从另一个视觉脚本中复制/粘贴状态等?
我记忆不太清晰了,但当时为了复用,确实进行过适当的复制粘贴操作,因此“从另一个视觉脚本中复制/粘贴状态”这一操作有可能确实执行过。
在发帖后我稍作调查,发现状态链接似乎引发了问题。
操作步骤如下:添加新状态节点 → 将现有状态链接直接移动到新状态节点 → 删除未连接状态链接的旧状态节点 → 成功删除。
给您添麻烦了,非常感谢。
1 个赞
久々にお待たせしました!
どうやらグループ削除時に何らかの理由でデータが残っており、消えたグループにアクセスしようとした際にクラッシュしていたようです。
本日配信のバージョン1.3.0で修正を行いました!
1 个赞
isa
5
谢谢。
我已确认可以删除之前附件中测试项目的状态链接。
不过,我在另一个开发项目(VS)中也遇到了类似的问题,但在那里仍然会出现崩溃。
由于节点数量较多,整理出具体是哪个节点导致崩溃需要一些时间。一旦整理完毕,我会附上示例项目。
在此之前,能否请您内部再次确认一下?
isa
6
关于这个问题,我在调整节点删除顺序的过程中,发现即使删除也不会再崩溃了。
虽然不清楚具体原因,但由于我也成功删除了不必要的节点,目前看来暂时没有问题了。
感谢您的处理。
1 个赞
Roy
7
抱歉借用回复您的帖子进行bug汇报,因为貌似也在版本1.3.0更新前后遇到了同样问题(更新前有两条连接导致崩溃,更新后新增了一条)。
本人的情况应该是复制粘贴连接后,如果发生了“会导致删除这条连接的操作”就会崩溃(删除相连的状态也会崩溃。但将此连接拖拽到其他状态后,仅删除之前的状态时不受影响,因此判断为连接的问题)。
这次看到1.3.0更新后第一次启动程序,且只进行过如下操作:复制已有连接→粘贴在已有两个状态之间→测试游戏→退出测试回到视觉脚本→删除刚才的连接→崩溃。
目前暂时将这些连接单独拖拽到两个空状态下,做了个bug隔离区,因此并不会受到严重影响。但以防万一还是借此汇报下这个bug貌似还并没有完全被修复。
谢谢。
1 个赞
Baz
8
我尝试了这个序列,但我的编辑器没有崩溃。你能拍一个视频并发布出来,以确保我按照正确的步骤操作吗?
Roy
9
您好,简单录制了一下视频,请您确认。
另外在本次复现过程中发现:
1,一般的连接貌似大多可以正常删除。
2,但如果复制粘贴的是群组框内的连接,删除后就会崩溃。
(以下内容为录制视频后,编辑这段文字时尝试的复现,抱歉没有逐一录制视频)
3,将连接从群组框内单独拖拽出来,复制粘贴后删除也会崩溃。
4,不复制,直接删除群组框内原本的连接不会崩溃。
5,不论是否在群组框内外,新建的连接均可以正常复制粘贴并删除,不会崩溃(难道问题仅限于旧版本创建的连接?)。
原本以为周一才会回复,没想到占用了各位周末的时间,真的辛苦了。再次感谢一直以来的技术支持。
bandicam 2026-06-21 00-34-06-027.rar (1.9 MB)