diablo_iv_loader.dllBlizzard का अपना क्रैश हैंडलर फिर Summary: BREAKPOINT एरर के साथ प्रक्रिया को समाप्त कर देता है । यह एरर यूज़र को Error Code 127 के रूप में दिखाई देता है, जो क्रैश डायलॉग में Kernel32.dll का संदर्भ देता है ।
महत्वपूर्ण विवरण: क्रैश किसी भी ग्राफिक्स लेयर के इनिशियलाइज़ होने से पहले होता है - कोई D3D12, VKD3D, या Vulkan डिवाइस क्रिएशन नहीं होता । यह निर्णायक रूप से GPU ड्राइवर या DXVK मुद्दों की संभावना को खारिज करता है।
Patch 3.1.0 ने diablo_iv_loader.dll पर लागू पैकर और एंटी-टैम्पर एन्क्रिप्शन को अपडेट किया । नए पैकर में ऐसा ऑबफस्केशन है जो एक जानबूझकर एंटी-डिबग और एंटी-रिवर्स-इंजीनियरिंग उपाय के रूप में INT3 ब्रेकपॉइंट डालता है। Windows पर, एक्सेप्शन डिस्पैचर इसे पारदर्शी रूप से हैंडल करता है। Wine/Proton के तहत, यह विफल हो जाता है ।
PROTON_HIDE_NVIDIA_GPU=1, DRI_PRIME=1, या DXVK कॉन्फिग ट्वीक्स का कोई प्रभाव नहीं है, क्योंकि GPU कोड चलने से पहले ही क्रैश हो जाता है ।dstorage.dll को हटाना या उसका नाम बदलना, जो पिछले पैच में अलग-अलग स्टार्टअप क्रैश के लिए काम करता था, इस समस्या का समाधान नहीं करता ।एकमात्र समाधान हैं: (a) Blizzard द्वारा लोडर को बिना INT3 ब्रेकपॉइंट के इस तरह से रिपैक करना जो Wine के एक्सेप्शन हैंडलिंग के साथ संगत हो, या (b) Wine/Proton-स्तर का एक पैच जो उस विशिष्ट ब्रेकपॉइंट को इंटरसेप्ट और हैंडल करे। चूंकि लोडर ऑबफस्केटेड और एंटी-टैम्पर प्रोटेक्टेड है, ऐसा पैच बनाना मुश्किल और नाजुक है।
diablo_iv_loader.dll ब्रेकपॉइंट को संबोधित करने के लिए एक अलग आपातकालीन पैच पर काम कर रहे हैं । 2 जुलाई तक, फिक्स जारी नहीं हुआ था, बग रिपोर्ट थ्रेड 655 उत्तरों तक पहुंच गया था और फ़ोरम पर ट्रैफ़िक लगातार बढ़ रहा था ।यह घटना PC गेमिंग में एक आवर्ती समस्या को उजागर करती है: डेवलपर्स नियमित रूप से बिना Wine/Proton जैसी कंपैटिबिलिटी लेयर्स के खिलाफ परीक्षण किए एंटी-टैम्पर और पैकर सिस्टम को अपडेट करते हैं। एंटी-टैम्पर सॉफ्टवेयर को गैर-मानक वातावरणों में अलग व्यवहार करने के लिए डिज़ाइन किया गया है, और छोटे बदलाव - एक नया पैकर वर्जन या एक अतिरिक्त INT3 चेक - चुपचाप Proton संगतता को तोड़ सकते हैं, भले ही गेम में कोई कोड परिवर्तन न हुआ हो ।
यही पैटर्न Denuvo एक्टिवेशन के साथ भी हो चुका है, जो बहुत अधिक Proton वर्जन स्विच करने के बाद Linux उपयोगकर्ताओं को लॉक कर देता है । हर बार, समाधान या तो Valve द्वारा प्रतिक्रियात्मक रूप से Proton को पैच करने या गेम डेवलपर द्वारा बाइनरी अपडेट भेजने पर निर्भर करता है - और खिलाड़ियों द्वारा खोजे जाने और रिपोर्ट करने तक दोनों में से कुछ नहीं होता। Diablo IV का मामला विशेष रूप से स्पष्ट है क्योंकि इसने Steam Deck को प्रभावित किया, जो एक व्यावसायिक रूप से समर्थित प्लेटफ़ॉर्म है जो 3.1.0 से पहले गेम के साथ पूरी तरह से संगत था ।