当我在房间编辑器中通过变量面板(例如将 path_to_follow 从 path_a 更改为 path_b)更改实例变量定义时,GM 有时会将新条目追加到 .yy 文件,而不是替换旧条目。结果是实例在原始 JSON 中有两个相同变量的条目:
{ "propertyId": "path_to_follow", "value": "path_a" },
{ "propertyId": "path_to_follow", "value": "path_b" }。
IDE 的变量面板只显示一个值(path_b),因此看起来是正确的,但是在运行时,错误的条目会获胜。在我的情况下,一些实例在变量面板中显示 pa_woodland_loop,但是在 .yy 文件中,它的最后条目是 pa_mon_town_chase,因此怪物在房间加载时会被 teleport 到错误的路径。看起来它只是消失了。
我只在打开 .yy 文件时才发现了这个问题。然后我检查了一些其他实例的对象并注意到有些实例也存在同样的问题。有人遇到过这个问题吗?是否存在某种工作流程会导致它(例如在房间打开时更改覆盖项)?这是 GM 的 bug 吗?我没有使用最新版本,所以如果这是一个 bug,那么它可能已经被修复了。
IDE v2024.14.2.213,Runtime v2024.14.2.256。
以下是实例的完整 JSON 信息:
{"$GMRInstance":"v4","%Name":"inst_2400DAD2","colour":4294967295,"frozen":false,"hasCreationCode":false,"ignore":false,"imageIndex":2,"imageSpeed":0.0,"inheritCode":false,"inheritedItemId":null,"inheritItemSettings":false,"isDnd":false,"name":"inst_2400DAD2","objectId":{"name":"obj_monster","path":"objects/obj_monster/obj_monster.yy",},"properties":[ {"$GMOverriddenProperty":"v1","%Name":"","name":"","objectId":{"name":"par_npc","path":"objects/par_npc/par_npc.yy",},"propertyId":{"name":"path_to_follow","path":"objects/par_npc/par_npc.yy",},"resource":{"name":"pa_mon_town_chase","path":"paths/pa_mon_town_chase/pa_mon_town_chase.yy",},"resourceType":"GMOverriddenProperty","resourceVersion":"2.0","value":"pa_mon_town_chase",}, {"$GMOverriddenProperty":"v1","%Name":"","name":"","objectId":{"name":"par_npc","path":"objects/par_npc/par_npc.yy",},"propertyId":{"name":"path_stagger_tiles","path":"objects/par_npc/par_npc.yy",},"resourceType":"GMOverriddenProperty","resourceVersion":"2.0","value":"4",}, {"$GMOverriddenProperty":"v1","%Name":"","name":"","objectId":{"name":"par_npc","path":"objects/par_npc/par_npc.yy",},"propertyId":{"name":"path_to_follow","path":"objects/par_npc/par_npc.yy",},"resourceType":"GMOverriddenProperty","resourceVersion":"2.0","value":"pa_woodland_loop",}, ],"resourceType":"GMRInstance","resourceVersion":"2.0","rotation":0.0,"scaleX":1.0,"scaleY":1.0,"x":1456.0,"y":176.0,},
评论 (0)