1 पॉइंट द्वारा GN⁺ 2024-01-14 | 1 टिप्पणियां | WhatsApp पर शेयर करें

Valve की 10 साल पुरानी Steam समस्या, क्या सभी लोग Valve से ज़्यादा तेज़ हैं?

  • Valve कभी-कभी कम्युनिटी फीडबैक और bug reports पर प्रतिक्रिया नहीं देता हुआ दिखता है.
  • 10 साल पुराने bug की कहानी.

tl;dr

  • 10 साल से अधिक समय से जारी Counter-Strike के No user logon मुद्दे को ठीक करने के लिए कुछ लोकप्रिय समाधान वास्तव में मूल कारण को हल नहीं करते.
  • अगर आपको यह लेख Google के ज़रिए मिला है, तो निम्नलिखित समाधान न आज़माएँ:
    • गेम दोबारा इंस्टॉल करना
    • गेम फ़ाइलों का verification
    • Steam रीस्टार्ट करना
    • कंप्यूटर रीस्टार्ट करना
    • WiFi बंद करना

Introduction

  • Counter-Strike, Valve द्वारा विकसित एक प्रसिद्ध गेम है.
  • हाल ही में Counter-Strike 2 (CS2) रिलीज़ हुआ, जिसने Counter-Strike: Global Offensive (CS:GO) की जगह ली.
  • CS2 में कई bugs हैं, जिनकी वजह से गेम का अनुभव अच्छा नहीं रहता.
  • Valve ने CS2 को HackerOne bug bounty program में शामिल नहीं किया है, इसलिए CS2 से जुड़े bug reports पर इनाम नहीं दिया जाता.

No user logon

  • कम्युनिटी ने जिन bugs की वर्षों से रिपोर्ट की है, वे अब भी ठीक नहीं हुए हैं और CS2 में भी मौजूद हैं.
  • No user logon error गेम के दौरान रैंडम तरीके से होता है.
  • इस समस्या की कई बार कई forums और Valve के official support forum में रिपोर्ट की गई है.
  • सुझाए गए समाधान वास्तव में समस्या को हल नहीं करते.

Esportal specific

  • Esportal में भी यह समस्या कई सालों से रही है, और वास्तव में इसे ठीक नहीं किया जा सका, केवल इसकी आवृत्ति कम की जा सकी.
  • CS2 में शुरुआत में लगा कि समस्या ठीक हो गई है, लेकिन जनवरी 2024 के पहले हफ्ते में इस समस्या की रिपोर्ट फिर बढ़ गई.

The symptoms

  • No user logon error खिलाड़ी के गेम से जुड़ने के 2-3 मिनट बाद होता है.
  • यह उस स्थिति से जुड़ा हो सकता है जिसमें skins गेम शुरू होने के कुछ मिनट बाद ही दिखाई देते हैं.

Validation of the hypothesis

  • यह Steam authentication से जुड़ी समस्या होने की संभावना अधिक है.
  • STEAM USERID validated के सफलतापूर्वक पूरा होने में लगने वाला समय 3 जनवरी से पहले 2-3 सेकंड था, लेकिन उसके बाद यह बढ़कर लगभग 1 मिनट 20 सेकंड हो गया.

NETWORK_DISCONNECT_STEAM_LOGON

  • यह Steam authentication से जुड़ा bug लगता है.
  • STEAMAUTH: Client Bob received failure code 8 नाम का log मिला.

Steam3 validation

  • Steam3 server उपयोगकर्ता authentication के लिए ज़िम्मेदार है.
  • गेम server, Steam3 server से Steam ID की वैधता जाँचने का अनुरोध करता है.
  • Steam3 server जब तक वैधता जाँचता रहता है, खिलाड़ी गेम जारी रख सकता है, लेकिन skins assign नहीं होते.

Making it trustable

  • CS2.exe के trusted होने की पुष्टि करने की प्रक्रिया आवश्यक है.
  • Steam.exe को वर्तमान में लॉग-इन account की जानकारी होती है, और वह जाँचता है कि क्या यह CS2.exe से भेजी गई Steam ID से मेल खाता है.

NETWORK_DISCONNECT_LOOPSHUTDOWN

  • NETWORK_DISCONNECT_LOOPSHUTDOWN नाम का एक और disconnect reason है.
  • इसका मतलब है कि गेम खुद ही अपने द्वारा automatic reconnect attempt कर रहा है.

Loops in the Source engine

  • Source engine में ऐसे loops होते हैं जो किसी विशेष लक्ष्य के पूरा होने तक चलते हैं.
  • CS2.exe कई loops चलाता है, और अंत में game loop चलता है.

The disconnection

  • जब loop बंद हो जाता है, तो NETWORK_DISCONNECT_LOOPSHUTDOWN की वजह से disconnect हो सकता है.

CS2 startup procedure

  • CS2.exe शुरू होते समय कई loops चलाता है, और levelload loop, game loop में बदलने से पहले Steam ID validation शुरू करता है.

GN⁺ की राय:

  1. यह लेख Valve के गेम Counter-Strike series में लंबे समय से अनसुलझे No user logon bug का गहन विश्लेषण देता है. इससे गेम development और maintenance की कठिनाइयों को समझने में मदद मिलती है.
  2. Valve का कम्युनिटी फीडबैक और bug reports पर उचित प्रतिक्रिया न देना, गेम developers और users के बीच संचार के महत्व को रेखांकित करता है.
  3. यह लेख software engineering की जटिलता और bug tracking व resolution process की चुनौतियों को अच्छी तरह दिखाता है. यह bugs को हल करने के लिए व्यवस्थित approach की आवश्यकता पर ज़ोर देता है.

1 टिप्पणियां

 
GN⁺ 2024-01-14
Hacker News टिप्पणियाँ
  • पहली टिप्पणी Steam के session ticket system की व्याख्या करती है, जिसमें कहा गया है कि game client Steam server से session ticket का अनुरोध करता है और उसे game server को देकर Steam ID साबित करता है। game server को इस ticket को Steam के web API के ज़रिए verify करना चाहिए, और यह बताया गया है कि CS2 client session ticket पाने में delay होने पर उसे सही तरह handle नहीं कर पाता।

    "Steam के session ticket system की व्याख्या और CS2 client की delay handling समस्या की ओर इशारा"

  • दूसरी टिप्पणी कहती है कि लेख का निष्कर्ष स्पष्ट नहीं है, और Counter-Strike के startup तरीके की समस्या तथा Washington में maintenance work के कारण दुनिया भर के players के लिए समस्या पैदा होने की संभावना का ज़िक्र करती है। साथ ही, यह समझाती है कि Steam ID verification game loop शुरू होने से पहले आख़िरी चरण में होता है, इसलिए maintenance के दौरान server धीमा होने पर game start रुक सकता है।

    "Counter-Strike के startup तरीके और maintenance work के समस्या पर प्रभाव का विश्लेषण"

  • तीसरी टिप्पणी इस bug की ओर इशारा करती है कि multiplayer game शुरू करने से पहले authentication पूरा होना अनिवार्य नहीं है।

    "multiplayer game शुरू होने से पहले authentication पूरा होने की अनिवार्यता की कमी की ओर इशारा"

  • चौथी टिप्पणी पूछती है कि क्या game client के अप्रत्याशित crash होने के कारण की भी इसी तरह जाँच की जा सकती है, और GTA V के loading time कम करने पर किए गए research का ज़िक्र करती है।

    "game client crash के कारण की जाँच और GTA V loading time reduction research का उल्लेख"

  • पाँचवीं टिप्पणी कहती है कि लेखन शैली बहुत बढ़ा-चढ़ाकर लिखी गई है और सुझाव देती है कि मुख्य बिंदु पर जल्दी पहुँचना चाहिए।

    "लेखन शैली के अतिशयोक्ति भरे होने और मुख्य बिंदु को महत्व देने पर ज़ोर"

  • छठी टिप्पणी सुझाव देती है कि लेख की शुरुआत में problem solving के लिए एक छोटा summary जोड़ा जाए।

    "problem solving के लिए संक्षिप्त summary जोड़ने का सुझाव"

  • सातवीं टिप्पणी पूछती है कि क्या levelloadloop सिर्फ़ game start होने पर चलता है, या server से connect करते समय और map load करते समय भी चलता है।

    "levelloadloop के चलने के समय पर प्रश्न"

  • आठवीं टिप्पणी macOS पर Steam app की performance बेहतर होने की उम्मीद जताती है।

    "macOS पर Steam app performance improvement की मांग"

  • नौवीं टिप्पणी Valve की security problems की ओर इशारा करती है और यह बताती है कि CS:GO को नई report के लिए scope से बाहर रखा गया था।

    "Valve की security problems और CS:GO के scope exclusion का उल्लेख"

  • आख़िरी टिप्पणी अतीत में server list और active players के scores दिखाने वाला tool बनाने का अनुभव साझा करती है, और यह संभावना उठाती है कि पुराने bug अब भी मौजूद हो सकते हैं।

    "server list display tool development के पिछले अनुभव और पुराने bug के बने रहने की संभावना का उल्लेख"