Do Log após um CTD ...
W 52740355833 bool __cdecl OpenApoc :: Vehicle :: popFinishedMissions (class OpenApoc :: GameState &): Nenhuma próxima missão do veículo, inativo
E 52741482678 classe std :: shared_ptr
0x00000001402F9D30 PHYSFS_writeSLE16 + 0x15f400
0x000000014020208A PHYSFS_writeSLE16 + 0x6775a
0x00000001401FFD3A PHYSFS_writeSLE16 + 0x6540a
0x00000001400A784C PHYSFS_swapULE64 + 0x6600c
0x000000013FFA3D32 PHYSFS_swapULE64 + 0xfffffffffff624f2
0x000000013FF7F210 PHYSFS_swapULE64 + 0xfffffffffff3d9d0
0x000000014017E015 PHYSFS_swapULE64 + 0x13c7d5
0x0000000077A159CD BaseThreadInitThunk + 0xd
0x0000000077C4A561 RtlUserThreadStart + 0x21
Apenas um aviso
Este CTD agora tem dois jogos bugados.
Ambos no "Mapa Fácil"
Ambos com veículo ID 794 ~
Clicar em "Limp Along" leva você de volta ao desktop.
Esse backtrace parece incorreto, como se ele não pudesse encontrar os símbolos de depuração (então ele está apenas usando o símbolo mais próximo que pode encontrar, que por acaso é physfs).
Se você estiver usando as compilações do appveyor - você pode extrair o pacote 'debug' por cima? Portanto, os arquivos .pdb estão no mesmo diretório que o .exe?
E "tentar mancar" simplesmente não funcionará para alguns erros (como este), pois o erro está efetivamente dizendo "Estamos prestes a travar, e aqui está o porquê:", então tentar continuar travando :)
Como um objetivo de longo prazo, pode ser possível descartar o estado atual de 'salvar' em caso de erro, pode nos dar informações úteis sobre o que está errado ... Mas isso pode cair exatamente no mesmo problema (se os dados internos não seja confiável, podemos apenas travar ao tentar gravar o salvamento)
@JonnyH Não tem problema, vou tentar começar os testes com o pacote de depuração quando eu voltar do trabalho na segunda-feira ...
Atualmente, até meus olhos em jovens Ginastas: D
quão jovem? ) espero que seja legal XD
@ makus82 infelizmente, neste fim de semana e no último, mas os últimos eram muito jovens. Mas os eventos universitários quando os faço são sempre divertidos - mulheres gostosas, tudo legal 💃
Quanto ao CTD, encontre o registro, salve, etc. em anexo. Apenas comece a hora e o jogo irá travar ...
Fiz como @JonnyH disse e coloquei a instalação de depuração sobre as coisas antes de gerá-las ...
E uma variação diferente no mesmo arquivo salvo ...
Novamente em 0.1-117
Mesmo fazendo uma instalação limpa (limpe todos os dados apoc existentes, exceto os salvos, extraia do zip novamente)
Posso fornecer alguns detalhes.
Passos para reproduzir:
@OverDrone
Ah, sim, em todos os jogos em que recebo este CTD, vendo meu wolfhound APC e Stormdog para obter alguns milhares extras em dinheiro por veículos que nunca uso.
Farei um teste em um jogo quando NÃO vender nenhum veículo e verei se esse erro ocorre.
Atualmente qualquer jogo ive vendeu qualquer veículo que bate ...
Hmmmm, acabei de ter este acidente em um jogo onde ive vendeu NENHUMA unidade terrestre ... Parece muito semelhante ...
O mesmo problema aqui ... não consigo vender o veículo e a opção de depuração indo para o desktop ...
alguma ideia x resolvendo?
O código da tela de transação parece uma bagunça. É difícil corrigir esse problema sem refatorar.
Ainda presente no 0.1-167 (OpenApoc-x64-v0.1-167-gf31d8b8b) o que é um pouco chato ... O bug da morte do veículo foi relatado como resolvido. Quer saber por que esse bug se recusa a ser esmagado?
Você carregou um jogo ou iniciou um novo?
Tente testar em um novo jogo.
Acabei de começar um novo jogo em uma nova instalação para verificar. Irá confirmar se ainda for um problema.
OK, o jogo travou aparentemente devido ao problema # 255 antes que eu possa confirmar que esse problema foi corrigido.
Dito isso, eu consegui vender Stormdog e Wolfhound APC e nenhum 794 CTD ainda, mas também não cheguei ao final do primeiro dia sem quebrar o jogo :(
Por favor, veja o comentário mais recente em # 255 para o registro e as telas da falha que encerrou meu novo jogo
@redv O acidente do veículo parece corrigido, no entanto, o problema parece ter se estendido aos Agentes também, esse bug ainda ocorre ...
É um crash ao sair do jogo?
Acontece ao sair do jogo OU entrar na tela Base (o caso acima foi encerrar)
@redv Infelizmente,
A versão do jogo é a última compilação (0.1-172 no momento da escrita)
Clicar em "Limp Along" produz esta variante ...
Quando o aplicativo destrói a classe GameState, primeiro destrói a lista de agentes, depois as bases, instalações, laboratórios, etc. A classe Lab contém a própria lista de agentes (cientistas), mas as classes de agentes já foram destruídas. Assim, o bug acontece.
O PR # 337 corrigiu esse bug.
Como solução alternativa, é possível remover cientistas do laboratório antes de encerrar o jogo.
@redv
Infelizmente, ainda estou recebendo uma variante desse problema na versão
Desta vez, estou movendo agentes (a pé pelos tubos de pessoas) para um incidente estranho na favela. Também estou me preparando para invadir um templo CoS, o erro ocorre com o prédio e os agentes selecionados.
Anexe o último salvamento antes de CTD.
@redv aqui está. Para repetir o erro, envie a Valquíria ao templo CoS logo a NE da base e envie os dois agentes andróides para o incidente na favela que aparece após um ou dois minutos A PÉ.
O erro ocorre quando a Valquíria chega ao templo de CoS e você seleciona os agentes para invadir o prédio.
Savegame foi um novo criado hoje em uma instalação limpa do OpenApoc. O jogo está nos primeiros minutos de jogo ...
O bug acontece quando o jogo tenta carregar recursos para o mapa de batalha. O mapa contém vários blocos que selecionam aleatoriamente de um conjunto. Parece que um deles leva a um bug durante o carregamento de recursos.
Ou seja, se você repetir as mesmas ações várias vezes, mais cedo ou mais tarde o mapa de batalha CoS será carregado com sucesso. Este mapa estará sem o bloco ruim.
O AGENT_35 é o fisista quântico Peter Jones.
Quando o bug do carregamento do mapa acontece, o jogo durante a falha chama os destruidores. Os destruidores de agentes correm antes de destruidores de laboratórios. O destruidor de laboratório tenta libertar agentes, mas os agentes já desapareceram da memória. Assim, o segundo bug ocorre na classe StateRef que contém o agente da classe Lab.
Obrigado redv; avise-me quando tiver uma ideia de qual solução pode funcionar
Quanto aos mapas, isso poderia estar relacionado ao problema nº 284? Percebo um grande número de mapas CoS e alguns outros parecem gerar erros quando itens são derrubados por unidades mortas / atordoadas / em pânico.
Outro travamento em 0.1-200, desta vez ao abrir a tela do agente ... Já tendo vendido o Stormdog.
Selecionar "Limp Along" faz isso
Equipamento desta vez :(
Crie, por favor, um novo problema. Porque este está muito fundo na fila de problemas.
Confirmar que isso ainda é um problema, vender qualquer veículo faz com que isso apareça quando qualquer coisa associada a ele for chamada.
I 417929443733 void __cdecl
anonymous-namespace ':: SDLRawBackend :: setTrack (class std :: shared_ptr
I 422315537514 void __cdecl anonymous-namespace'::SDLRawBackend::playSample(class std::shared_ptr<class OpenApoc::Sample>,float): Placed sound 0,000,019,BFD,B86,6B0 on queue
I 422432359150 void __cdecl OpenApoc::VEquipScreen::setSelectedVehicle(class std::shared_ptr<class OpenApoc::Vehicle>): Selecting vehicle "Valkyrie Interceptor 90"
I 422432639858 void __cdecl OpenApoc::VEquipScreen::setSelectedVehicle(class std::shared_ptr<class OpenApoc::Vehicle>): Selecting vehicle "Valkyrie Interceptor 90"
I 424865493463 void __cdecl
anonymous-namespace ':: SDLRawBackend :: playSample (class std :: shared_ptr
I 427732686087 classe std :: shared_ptr
I 430232009610 void __cdecl anonymous-namespace'::SDLRawBackend::playSample(class std::shared_ptr<class OpenApoc::Sample>,float): Placed sound 0,000,019,BFD,B86,6B0 on queue
I 432298883338 void __cdecl
anonymous-namespace ':: SDLRawBackend :: playSample (class std :: shared_ptr
W 432416803536 void __cdecl OpenApoc :: StateRef
E 432419555645 classe std :: shared_ptr
0x00007FF712CA8C70 PHYSFS_writeSLE16 + 0x917d0
0x00007FF712AF1F6C PHYSFS_swapULE64 + 0xef91c
0x00007FF712B5D944 PHYSFS_swapULE64 + 0x15b2f4
0x00007FF712B5FA0A PHYSFS_swapULE64 + 0x15d3ba
0x00007FF712B63967 PHYSFS_swapULE64 + 0x161317
0x00007FF712B61F0E PHYSFS_swapULE64 + 0x15f8be
0x00007FF712B56B98 PHYSFS_swapULE64 + 0x154548
0x00007FF712A79F49 PHYSFS_swapULE64 + 0x778f9
0x00007FF712A233D8 PHYSFS_swapULE64 + 0x20d88
0x00007FF7129FF6A0 PHYSFS_swapULE64 + 0xffffffffffffd050
0x00007FF712BFAE25 PHYSFS_swapULE64 + 0x1f87d5
0x00007FFF402C3034 BaseThreadInitThunk + 0x14
0x00007FFF41181431 `RtlUserThreadStart + 0x21``
Vários dias de extensos testes de jogo, e não vi esse bug desde
Problema de fechamento.
Muito obrigado Jarskih, RedV e JonnyH
Bug ainda ativo em julho de 2019. Restaure o jogo salvo e continue. Erro imediato. Feche a janela de erro e ela se repete.
save_Shot down UFO.zip
Este erro irá persistir em salvamentos - então, se a causa original de um StateRef ruim
A mensagem de erro acima é mostrada quando o jogo tenta usar aquele objeto "quebrado" e percebe que algo está errado, não um erro em si mesmo. A falha pode ter acontecido há algum tempo, apenas o objeto quebrado ainda não utilizado.
Portanto, se você está testando isso com o mesmo save e não criou um novo jogo desde a correção, provavelmente não nos diz muito.
Sim, os 3 salvamentos anteriores também falharam. Posso voltar aos salvamentos anteriores se isso ajudar.
Comentários muito úteis
Este erro irá persistir em salvamentos - então, se a causa original de um StateRef ruimjá aconteceu, e você salva, ele irá incorporar aquela "maldade" no salvamento, então pode não ser surpreendente que recarregar um salvamento "quebrado" irá causar o mesmo erro.
A mensagem de erro acima é mostrada quando o jogo tenta usar aquele objeto "quebrado" e percebe que algo está errado, não um erro em si mesmo. A falha pode ter acontecido há algum tempo, apenas o objeto quebrado ainda não utilizado.
Portanto, se você está testando isso com o mesmo save e não criou um novo jogo desde a correção, provavelmente não nos diz muito.