Openapoc: Tidak ada kendaraan yang cocok dengan ID "VEHICLE_794" CTD

Dibuat pada 23 Nov 2017  ·  33Komentar  ·  Sumber: OpenApoc/OpenApoc

Dari Log setelah CTD...

W 52740355833 bool __cdecl OpenApoc::Vehicle::popFinishedMissions (kelas OpenApoc::GameState &): Tidak ada misi kendaraan berikutnya, akan menganggur
E 52741482678 kelas std::shared_ptr__cdecl OpenApoc::Vehicle::get(const class OpenApoc::GameState &,const class OpenApoc::UString &): Tidak ada ID kendaraan yang cocok "VEHICLE_794"
0x00000001402F9D30 PHYSFS_writeSLE16+0x15f400
0x000000014020208A PHYSFS_writeSLE16+0x6775a
0x00000001401FFD3A PHYSFS_writeSLE16+0x6540a
0x00000001400A784C PHYSFS_swapULE64+0x6600c
0x000000013FFA3D32 PHYSFS_swapULE64+0xffffffffff624f2
0x000000013FF7F210 PHYSFS_swapULE64+0xfffffffffff3d9d0
0x000000014017E015 PHYSFS_swapULE64+0x13c7d5
0x0000000077A159CD BaseThreadInitThunk+0xd
0x0000000077C4A561 RtlUserThreadStart+0x21

image

image

Komentar yang paling membantu

Kesalahan ini akan tetap ada dalam penyimpanan - jadi jika penyebab asli dari StateRef . yang buruktelah terjadi, dan Anda menyimpan, itu akan menyematkan "keburukan" itu dalam penyimpanan, jadi mungkin tidak mengherankan bahwa memuat ulang penyimpanan yang "rusak" akan menyebabkan kesalahan yang sama.

Pesan kesalahan di atas ditampilkan saat game mencoba menggunakan objek "rusak" itu dan menyadari ada sesuatu yang salah, bukan kesalahan itu sendiri. Kegagalan mungkin telah terjadi beberapa waktu yang lalu, hanya benda yang rusak belum digunakan.

Jadi, jika Anda menguji ini dengan penyimpanan yang sama dan belum membuat game baru karena perbaikannya kemungkinan tidak banyak memberi tahu kami.

Semua 33 komentar

Hanya kepala up
CTD ini sekarang telah menyadap dua game.
Keduanya di "Peta Mudah"
Keduanya dengan ID kendaraan 794~
Mengklik "Limp Along" akan membawa Anda langsung kembali ke desktop.

Backtrace itu terlihat salah, seperti tidak dapat menemukan simbol debug (jadi hanya menggunakan simbol terdekat yang dapat ditemukan, yang kebetulan adalah physfs).

Jika Anda menggunakan build appveyor - dapatkah Anda mengekstrak paket 'debug' di atasnya? Jadi file .pdb berada di direktori yang sama dengan .exe?

Dan "coba pincang bersama" tidak akan berfungsi untuk beberapa kesalahan (seperti ini), karena kesalahannya secara efektif mengatakan "Kami baru saja akan mogok, dan inilah alasannya:", jadi mencoba untuk melanjutkan hanya macet :)

Sebagai tujuan jangka panjang, dimungkinkan untuk membuang status 'simpan' saat ini karena kesalahan, itu mungkin memberi kami info berguna tentang apa yang salah ... Tapi itu mungkin jatuh ke masalah yang persis sama (jika data internal tidak dapat dipercaya, kami mungkin hanya crash mencoba menulis save)

@JonnyH Tidak masalah, akan bertujuan untuk melakukan pengujian dengan paket debug di atas ketika saya kembali dari pekerjaan pada hari Senin ...

Saat ini sampai ke mata saya di pesenam muda :D

seberapa muda? ) semoga legal XD

@makus82 sayangnya, akhir pekan ini dan terakhir semua kecuali beberapa yang terakhir terlalu muda. Tapi acara uni ketika saya melakukannya selalu menyenangkan - wanita seksi, semuanya legal

Untuk CTD, silakan temukan log, simpan, dll. terlampir. Hanya mulai waktu dan permainan akan crash ...

Saya telah melakukan seperti yang dikatakan @JonnyH dan meletakkan instalasi debug di atas hal-hal sebelum menghasilkan ini ...

openapoc_log.txt

simpan_Mudah 1.zip

Dan variasi yang berbeda pada file simpan yang sama...

image

openapoc_log.txt

Lagi di 0.1-117
Bahkan melakukan instalasi bersih (hapus semua data apoc yang ada kecuali simpan, ekstrak dari zip lagi)

image

Saya dapat memberikan beberapa detail.
Langkah-langkah untuk mereproduksi:

  1. mulai game dengan tingkat kesulitan sedang (mungkin ada)
  2. jual kendaraan darat (mungkin ada)
  3. Simpan permainan
  4. memuat permainan
  5. hentikan permainan

@OverDrone

Ah, ya, di semua game tempat saya mendapatkan CTD ini, saya menjual wolfhound APC dan Stormdog saya untuk mendapatkan beberapa ribu ekstra tunai untuk kendaraan yang tidak pernah saya gunakan.

Saya akan melakukan tes pada game ketika saya TIDAK menjual kendaraan apa pun dan melihat apakah kesalahan ini terjadi.
Saat ini game apa pun saya menjual kendaraan apa pun yang mogok ...

Hmmmm, baru saja mendapatkan crash ini di game di mana saya tidak menjual unit ground... Kelihatannya sangat mirip...

image
image
image

Masalah yang sama di sini .... saya tidak bisa menjual opsi veicle dan debug membawa saya ke desktop ...
ada ide x penyelesaian?

Kode layar transaksi terlihat berantakan. Sulit untuk memperbaiki masalah ini tanpa refactoring.

Masih ada di 0.1-167 ( OpenApoc-x64-v0.1-167-gf31d8b8b ) yang sedikit mengganggu... Bug kendaraan mati dilaporkan diurutkan. Bertanya-tanya mengapa bug ini menolak untuk dihancurkan?

image
image
image

Apakah Anda memuat permainan atau memulai yang baru?
Cobalah untuk menguji pada game baru.

Baru saja memulai permainan baru pada instalasi baru untuk diperiksa. Akan mengkonfirmasi jika masih masalah.

Oke, game mogok tampaknya karena masalah # 255 sebelum saya dapat mengonfirmasi bahwa masalah ini telah diperbaiki.

Yang mengatakan, saya bisa menjual Stormdog dan Wolfhound APC dan tidak ada 794 CTD tetapi juga belum melewati akhir hari pertama tanpa game breaking :(

Silakan lihat komentar terbaru di #255 untuk log dan layar kerusakan yang mengakhiri permainan baru saya

@redv Kecelakaan kendaraan tampaknya telah diperbaiki, namun, masalahnya tampaknya telah meluas ke Agen juga, bug ini masih terjadi ...

image
image

Apakah crash saat keluar dari game?

Itu terjadi ketika keluar dari game ATAU memasuki layar Base (kasus di atas berhenti)

@redv Sayangnya saya baru saja mengalami kesalahan Agen 45 lagi pada instalasi baru, bersih, dan permainan baru OpenApoc. Terjadi saat keluar dari permainan sebagai berikut...

Versi game adalah build terbaru (0,1-172 pada saat penulisan)

image
image
image

Mengklik "Limp Along" menghasilkan varian ini...
image
image

Ketika aplikasi menghancurkan kelas GameState, pertama-tama menghancurkan daftar agen, kedua pangkalan, fasilitas, lab dll. Kelas Lab berisi daftar agen sendiri (ilmuwan), tetapi kelas agen sudah dihancurkan. Dengan demikian bug terjadi.
PR #337 memperbaiki bug ini.
Sebagai solusi yang mungkin untuk menghapus ilmuwan dari lab sebelum keluar dari permainan.

@redv
Sayangnya masih mendapatkan varian dari masalah ini dalam versi OpenApoc-debug-x64-v0.1-169-g921de2a3

Kali ini saya memindahkan agen (berjalan kaki melalui tabung orang) ke insiden alien di daerah kumuh. Saya juga bersiap untuk menyerang kuil CoS, kesalahan terjadi dengan bangunan dan agen yang dipilih.

image
image
image

Lampirkan simpanan terakhir sebelum CTD.

@redv ini dia. Untuk mengulangi kesalahan, kirim Valkyrie ke kuil CoS hanya NE dari pangkalan dan kirim dua agen android ke insiden kumuh yang muncul setelah satu atau dua menit ON FOOT.

Kesalahan terjadi ketika Valkyrie tiba di kuil CoS dan Anda memilih agen di dalamnya untuk menyerbu gedung.

save_Medium Test 1.zip

Savegame adalah yang baru dibuat hari ini pada instalasi OpenApoc yang bersih. Permainan ini dalam beberapa menit pertama bermain ...

Bug terjadi ketika game mencoba memuat sumber daya untuk peta pertempuran. Peta berisi beberapa blok yang memilih secara acak dari satu set. Sepertinya salah satunya mengarah ke bug selama pemuatan sumber daya.
Yaitu jika Anda mengulangi tindakan yang sama beberapa kali, cepat atau lambat peta pertempuran CoS akan berhasil dimuat. Peta ini akan tanpa blok buruk.

  1. Serangga. Perlu mencari tahu mengapa game tidak dapat memuat beberapa blok peta.

AGENT_35 adalah ahli fisika kuantum Peter Jones.
Ketika bug pemuatan peta terjadi, game saat crash memanggil destruktor. Destructros agen berjalan sebelum destruktor lab. Penghancur lab mencoba membebaskan agen, tetapi agen sudah menghilang dari ingatan. Jadi bug kedua terjadi di kelas StateRef yang berisi agen di kelas Lab.

  1. Serangga. Saya pikir kelas StateRef adalah kesalahan arsitektur yang besar. Lebih baik menggunakan C-pointer biasa. Saya pikir pola "pengamat" dapat menyelesaikan sebagian besar masalah. Setidaknya saya akan mencoba mencari solusi yang baik.

Terima kasih redv; beri tahu saya ketika Anda memiliki gagasan tentang solusi apa yang mungkin berhasil

Mengenai peta, mungkinkah ini terkait dengan masalah #284 ? Saya melihat cukup banyak peta CoS dan beberapa lainnya tampaknya menghasilkan kesalahan ketika item dijatuhkan oleh unit yang terbunuh/tertegun/panik.

Kecelakaan lain pada 0.1-200 , kali ini ketika membuka layar agen... Setelah menjual Stormdog.
image
image
image

Memilih "Limp Along" melakukan ini

image
image

Perlengkapan kali ini :(
Buat, tolong, masalah baru. Karena yang satu ini terlalu dalam dalam antrian masalah.

Mengonfirmasi ini masih menjadi masalah, menjual kendaraan apa pun menyebabkan ini muncul ketika sesuatu yang terkait dengannya dipanggil.

I 417929443733 void __cdecl anonymous-namespace'::SDLRawBackend::setTrack(class std::shared_ptr): Menyetel trek ke 0,000,019,B87,324,D20
Saya 422315537514 membatalkan __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,float): Menempatkan suara 0,000,019,BFD,B86,6B0 pada antrian
Saya 427732686087 kelas std::shared_ptr__cdecl OpenApoc::Vehicle::addEquipment(kelas OpenApoc::GameState &,struct glm::tvec2,kelas OpenApoc::StateRef): Dilengkapi "Valkyrie Interceptor 90" dengan peralatan umum "Modul Penumpang"
Saya 430232009610 membatalkan __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,float): Menempatkan suara 0,000,019,BFD,B86,6B0 pada antrian
W 432416803536 batal __cdecl OpenApoc::StateRef::resolve(void) const: objek AEquipmentType memiliki awalan yang tidak valid - diharapkan "AEQUIPMENTTYPE_" ID "VEHICLE_794"
E 432419555645 kelas std::shared_ptr__cdecl OpenApoc::AEquipmentType::get(const class OpenApoc::GameState &,const class OpenApoc::UString &): Tidak ada ID yang cocok dengan jenis peralatan "VEHICLE_794"
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``

Beberapa hari pengujian permainan yang ekstensif, dan saya belum pernah melihat bug ini sejak
Penutupan masalah.

Terima kasih banyak Jarskih, RedV dan JonnyH

Bug masih aktif Juli 2019. Pulihkan game yang disimpan lalu lanjutkan. Kesalahan langsung. Tutup jendela kesalahan dan itu berulang.
Image1
save_Tembak jatuh UFO.zip

Kesalahan ini akan tetap ada dalam penyimpanan - jadi jika penyebab asli dari StateRef . yang buruktelah terjadi, dan Anda menyimpan, itu akan menyematkan "keburukan" itu dalam penyimpanan, jadi mungkin tidak mengherankan bahwa memuat ulang penyimpanan yang "rusak" akan menyebabkan kesalahan yang sama.

Pesan kesalahan di atas ditampilkan saat game mencoba menggunakan objek "rusak" itu dan menyadari ada sesuatu yang salah, bukan kesalahan itu sendiri. Kegagalan mungkin telah terjadi beberapa waktu yang lalu, hanya benda yang rusak belum digunakan.

Jadi, jika Anda menguji ini dengan penyimpanan yang sama dan belum membuat game baru karena perbaikannya kemungkinan tidak banyak memberi tahu kami.

Ya, 3 penyimpanan sebelumnya juga keluar. Saya dapat kembali ke penyimpanan sebelumnya jika itu akan membantu.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat