Saat startup, loader mengeksekusi BREAKPOINT (instruksi INT3). Ini adalah interupsi CPU yang biasanya digunakan untuk debugger. Di Windows asli, sistem penanganan pengecualian (structured exception handler) sistem operasi akan memproses ini secara diam-diam dan melanjutkan proses. Namun, di bawah Wine/Proton, propagasi pengecualian berperilaku berbeda, dan loader menganggap breakpoint ini sebagai kesalahan fatal yang tidak bisa dipulihkan .
Crash handler milik Blizzard sendiri kemudian menghentikan proses dengan laporan Summary: BREAKPOINT. Bagi pengguna, kesalahan ini muncul sebagai Error Code 127, dengan referensi ke
Kernel32.dll di dialog crash .
Detail krusialnya: crash terjadi sebelum inisialisasi grafis apa pun — tidak ada pembuatan perangkat D3D12, VKD3D, atau Vulkan yang terjadi . Ini secara meyakinkan menyingkirkan kemungkinan masalah driver GPU atau DXVK.
Patch 3.1.0 memperbarui packer dan enkripsi anti-tamper yang diterapkan pada diablo_iv_loader.dll . Packer baru ini menggunakan teknik obfuscation yang menyisipkan INT3 breakpoint sebagai tindakan anti-debug dan anti-reverse-engineering. Di Windows, dispatcher pengecualian menanganinya dengan mulus. Di bawah Wine/Proton, gagal
.
PROTON_HIDE_NVIDIA_GPU=1, DRI_PRIME=1, atau tweak konfigurasi DXVK tidak berpengaruh karena crash terjadi sebelum kode GPU manapun dijalankan dstorage.dll, yang berhasil mengatasi crash startup yang berbeda di patch sebelumnya, tidak menyelesaikan masalah ini Satu-satunya solusi adalah: (a) Blizzard mengemas ulang loader tanpa INT3 breakpoint dengan cara yang kompatibel dengan penanganan pengecualian Wine, atau (b) patch di level Wine/Proton yang bisa mencegat dan menangani breakpoint spesifik itu. Karena loader dilindungi oleh anti-tamper, membuat patch seperti itu sangat sulit dan rapuh.
diablo_iv_loader.dll di bawah Wine/Proton Insiden ini menyoroti masalah yang berulang di dunia PC gaming: pengembang secara rutin memperbarui sistem anti-tamper tanpa mengujinya terhadap lapisan kompatibilitas seperti Wine/Proton. Perangkat lunak anti-tamper dirancang untuk berperilaku berbeda di lingkungan yang tidak standar, dan perubahan kecil — seperti versi packer baru atau pemeriksaan INT3 tambahan — dapat secara diam-diam merusak kompatibilitas Proton .
Pola yang sama terjadi pada aktivasi Denuvo yang mengunci pengguna Linux setelah terlalu sering mengganti versi Proton . Setiap kali, perbaikannya bergantung pada Valve yang secara reaktif menambal Proton atau pengembang game yang merilis pembaruan biner — dan keduanya tidak terjadi sampai pengguna menemukan dan melaporkan kerusakannya. Kasus Diablo IV sangat mencolok karena dampaknya langsung terasa pada Steam Deck, sebuah platform komersial yang sebelumnya sudah sepenuhnya kompatibel dengan game ini
.