gdb 回溯
Thread 1 "OpenApoc" received signal SIGSEGV, Segmentation fault.
OpenApoc::GameState::updateEndOfSecond (this=0x18250e0) at /home/atrosha/OpenApoc/game/state/gamestate.cpp:1063
1063 for (auto &e : v->equipment)
(gdb) bt
#0 OpenApoc::GameState::updateEndOfSecond (this=0x18250e0)
at /home/atrosha/OpenApoc/game/state/gamestate.cpp:1063
#1 0x000000000080ebf8 in OpenApoc::GameState::update (this=0x18250e0, ticks=6)
at /home/atrosha/OpenApoc/game/state/gamestate.cpp:1029
#2 0x000000000080ec5f in OpenApoc::GameState::update (this=<optimized out>,
ticks=ticks@entry=6) at /home/atrosha/OpenApoc/game/state/gamestate.cpp:987
#3 0x00000000005ac31f in OpenApoc::CityView::update (this=0x281b300)
at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#4 0x000000000049655e in OpenApoc::Framework::run (this=this@entry=0xca2270,
initialStage=std::shared_ptr<OpenApoc::Stage> (use count 1, weak count 1) = {...}) at /usr/include/c++/10/bits/shared_ptr_base.h:1324
#5 0x0000000000469f03 in main (argc=-9440, argv=0x7fffffffde58)
at /usr/include/c++/10/bits/shared_ptr_base.h:759
这是战术任务结束时的一个,同样的交易。
完整的 gdb 日志
Thx @99Scienctist for report =] 日志文件也不错
您好,我收到了与 Beorn 似乎相同的错误消息。
我试图通过在城市景观中保存和加载一个新文件来复制错误,但我做不到(我几乎没有花时间去做,所以我不知道它是否算作尝试)。
我发送的保存是我收到错误的保存,通过时间应该允许您触发错误。
拯救是一个新的活动,我卖掉了我的车辆的引擎,买了但从未部署过它们(在超级动力将它们送到我的基地之前也出现了错误),雇佣了更多的代理人,建造了一个宿舍设施,开始了一些研究,卖掉了起始地面车辆及其装备,除了 APC 的货运模块,购买了 4 辆气垫车和一辆凤凰气垫车,出售了气垫车的 40 毫米加农炮和弹药,并购买了一些爆弹激光器来替换它们,并购买了更多的特工装甲和各种特工武器。
我对 github 完全陌生,所以如果你需要另一个文件告诉我。
另请参阅问题 #940
这个问题肯定和首发车辆的销售有关
析构函数没有被正确触发,游戏认为它们仍然存在
这也可能与我们看到的被解雇的特工/科学家也没有被正确删除的问题有关(尽管在这些情况下,还有其他关于劳动力和返回雇佣/防火屏幕的事情需要考虑)
售出的车辆应该为经济体中的制造商库存增加 +1(允许它们在本周晚些时候被回购,如果没有其他组织首先这样做),否则将从游戏中删除
这个问题肯定和首发车辆的销售有关
析构函数没有被正确触发,游戏认为它们仍然存在
这也可能与我们看到的被解雇的特工/科学家也没有被正确删除的问题有关(尽管在这些情况下,还有其他关于劳动力和返回雇佣/防火屏幕的事情需要考虑)
售出的车辆应该为经济体中的制造商库存增加 +1(允许它们在本周晚些时候被回购,如果没有其他组织首先这样做),否则将从游戏中删除
不确定它是否仅适用于启动车辆。
有一个游戏,我卖掉了我的车辆,一切正常,所以我保存了。 在那之后工作也很好。
直到我买了一些东西后才存了钱。
当我再次进入游戏时,我得到了错误。
所以认为它甚至可能在应该删除传输时发生。
我在哪里可以找到保存并登录我的comp? 在游戏文件夹和我的文档中进行了搜索,但找不到
如果需要,我可以附上这些
编辑:经过更多测试后,我相信它仅适用于您自己的车辆。 虽然不一定是你的首发。
唯一有点奇怪的是,有时它会在您出售后立即发生,而有时会在您保存并再次加载后发生。
在我卖掉了我的车辆并稍后在新的保存时再次保存后,进行了保存并运行了游戏。 当我加载两个保存时出现错误。
喜欢apoc,所以很乐意提供帮助。 保持良好的工作
我可以确认原始错误中的保存游戏确实包含一个损坏的状态:基础(“BUILDING_WAREHOUSE_TEN”)引用了一个不存在的车辆(“VEHICLE_19”),它很可能是一个起始的 Stormdog(我总是得到名为 VEHICLE_19 的 Stormdog当我开始使用 Superhuman 地图时。但是经过多次尝试重现该问题(使用相同的地图、基地和各种场景来出售/移动/转移/摧毁车辆并阅读代码,我找不到允许游戏的场景到达他的损坏状态。可能它已经被修复了,或者我们最近有这个错误的案例吗?
理论上,我可以通过自动修复游戏状态来添加一些检查并避免崩溃,但是如果原始问题仍然存在,即使我添加了一些警告,它也有可能掩盖原始问题。 WDYT?
最有用的评论
gdb 回溯