1 पॉइंट द्वारा GN⁺ 2023-07-14 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • The Simpsons: Hit & Run का 2003 में चोरी हुआ और आंशिक रूप से व्यवस्थित source code, जिसमें PS2, Xbox, और PC के लिए video game code सार्वजनिक किया गया है
  • कंपाइल किया हुआ development/debug version गेम डाउनलोड releases टैब में उपलब्ध है
  • GitHub पर एक बार में अपलोड करने के लिए फ़ाइलें बहुत ज़्यादा हैं, इसलिए बाकी repo MEGA पर है
  • MEGA फ़ोल्डर में गेम को सीधे compile/build करने के लिए अतिरिक्त assets और scripts हैं
  • documents/ फ़ोल्डर में Radical की 2003 development team की personal information, project notes, छुट्टियों की schedule आदि हैं, इसलिए इसे repo में शामिल नहीं किया गया है

1 टिप्पणियां

 
GN⁺ 2023-07-14
Hacker News की राय
  • ऐसा लग रहा है जैसे अपनी पुरानी ज़िंदगी को देख रहा हूँ। उस दौर में मैं Relic Entertainment में काम करता था, और अगर याद सही है तो तब Relic और Radical के दफ़्तर दोनों Vancouver के Yaletown में थे। बाद में Radical Main & Terminal चला गया।
    उसी समय मैं Company of Heroes और Dawn of War पर काम कर रहा था, और यह कोड बहुत परिचित लग रहा है। C++ का वही स्टाइल है और Homeworld के कोड से भी काफ़ी मिलता-जुलता है।
    https://github.com/HomeworldSDL/HomeworldSDL
    मैं SFU में पढ़ता था, और Radical के प्रोग्रामर Neall Verheyde ने एक सेमेस्टर पढ़ाया था। दुख की बात है कि लगता है उनका कुछ साल पहले निधन हो गया।
    https://www.dignitymemorial.com/obituaries/west-vancouver-bc...

    • Company of Heroes मेरे कॉलेज दोस्तों के बीच सबसे पसंदीदा गेम था। असाइनमेंट करने के समय में हमने इसमें सैकड़ों घंटे झोंक दिए :)
      "Ready ze panzerfaust"
    • Company of Heroes सीरीज़ का बर्बाद हो जाना सच में दुखद है। नया CoH3 इतना बेजान, लालची और टूटा हुआ है कि लगता है जैसे यह लगभग अपने ही player base का मज़ाक उड़ा रहा हो।
      कुछ वैसा ही, लेकिन ज़्यादा realistic Men of War फ्रैंचाइज़ के साथ भी हो रहा है। हर जगह एनशिटिफिकेशन चल रही है, और कुछ भी बेहतर नहीं हो रहा।
    • Company of Heroes की यादें मेरे पास हमेशा अच्छी रहेंगी। मैंने इसे दोस्तों के साथ बहुत खेला, और यह डिटेल पर ध्यान और हास्य-बोध के साथ बनाया गया शानदार गेम था। अफ़सोस कि नए वर्ज़न में वह जादू गायब है।
    • Dawn of War की वजह से मैं Warhammer 40k के प्लास्टिक और पेंटिंग-आधारित निराशा वाले लंबे, अंधेरे चक्रव्यूह में उतर गया। कमाल का गेम था।
  • अगर आप इस गेम के फ़ैन हैं, तो YouTube पर Reubs[0] आधुनिक इंजन और टूल्स के साथ पूरे गेम और उसके सभी assets को फिर से बना रहा है।
    जाहिर है, दुर्भाग्य से यह आम लोगों के लिए रिलीज़ नहीं होगा, लेकिन यह देखना मज़ेदार है कि क्या संभव हो सकता था।
    [0] https://youtube.com/@reubs

    • कभी न कभी आधिकारिक remake आ सकता है: https://comicbook.com/gaming/news/the-simpsons-hit-and-run-g...
    • यह समझना मुश्किल है कि कोई किसी चीज़ को बनाने में इतना समय लगाए और फिर उसे कभी रिलीज़ ही न करे।
  • अब तक मैंने जितना भी C++ कोड पढ़ा है, उनमें यह शायद सबसे साफ़, समझने में आसान और पढ़ने लायक कोड है।
    non-game क्षेत्रों के open source C++ प्रोजेक्ट पढ़ते समय ज़्यादातर चीज़ें किसी अपठनीय syntax के ढेर जैसी लगती हैं।
    सोच रहा हूँ कि क्या इस गेम का कोड असाधारण रूप से अच्छा लिखा गया है, या फिर मैं आम तौर पर बस अजीब codebase ही देखता रहता हूँ।

    • Hit & Run के कुछ साल बाद मैं Radical Entertainment में शामिल हुआ था, और वहाँ बहुत बेहतरीन engineers और artists थे, साथ ही hiring और leadership भी मज़बूत थी। यह परफ़ेक्ट नहीं था, लेकिन नए और अनुभवी दोनों तरह के developers के लिए शानदार जगह थी।
      आख़िरकार 360/PS3 generation में जाते हुए production values और कठिनाई का बहुत बढ़ जाना कंपनी के पतन का कारण माना जा सकता है, या फिर यह भी कहा जा सकता है कि Vivendi के स्वामित्व वाली Radical, Activision merger में फँस गई—यह इस पर निर्भर है कि आप किससे पूछते हैं।
    • C++ के काफ़ी idioms a) C++98 के दौर से चले आ रहे बहुत पुराने हैं और हर version के साथ धीरे-धीरे बदले हैं, और b) बेहद conservative हैं। KISS या “no magic” जैसी बातें, जिन्हें आधुनिक भाषाओं में महत्व दिया जाता है, खासकर system और embedded development में कम दिखती हैं क्योंकि वहाँ efficiency को ज़्यादा प्राथमिकता मिलती है।
      जिन codebases की तुम बात कर रहे हो, वे मुख्यतः C++ इस्तेमाल करने वाले developers को शायद उतने गंदे या archaic नहीं लगेंगे। वे बाहर से देखने वालों को ऐसे लगते हैं, और हाँ, सच में गंदे codebases भी बहुत हैं। गेम development के अपने paradigms और idioms होते हैं, और आम तौर पर यह ज़्यादा self-contained और modular तरीके से structured होता है।
      फिर भी, C++11 के बाद के आधुनिक codebases, C++ developers न होने वाले लोगों को भी काफ़ी ज़्यादा “साफ़” लग सकते हैं।
    • गेम कोड में भी बहुत hacky और बदसूरत कोड होता है :)
      फिर भी, मैं Quake और Doom जैसे कोड पढ़ने की सलाह दूँगा। शुरुआती versions से शुरू करें तो वे काफ़ी सरल होते हैं, इसलिए पढ़ना और बदलाव करके देखना आसान रहता है।
      पढ़ने लायक codebases की सूची यहाँ है: https://github.com/albertz/wiki/blob/master/coding.md#recomm...
    • KDE भी देख सकते हैं। मुझे हमेशा लगा है कि उसके ज़्यादातर projects अच्छी तरह लिखे गए हैं।
    • comments हैरानीजनक रूप से अच्छे थे। लेकिन codebase समझने में आसान होने के बावजूद, वह इस अर्थ में आसान है कि हर line सरल है, जबकि उसकी संरचना काफ़ी नाज़ुक है।
      मैं यह नहीं कह रहा कि यह कोई बड़ी समस्या है। अगर कोड को बस कुछ ही लोग छूने वाले हों, तो नाज़ुक codebase भी ठीक है। लेकिन operating system, compiler, browser जैसी चीज़ों के लिए—जिन्हें हज़ारों लोग दशकों तक इस्तेमाल और modify करेंगे—यह कम उपयुक्त है।
      [1]
      हर जगह unchecked assumptions हैं, platform-specific code वाले #ifdef हर जगह हैं, और singletons भी हर जगह हैं। मैंने बस 5 मिनट सरसरी नज़र से देखा है, इसलिए शायद और भी उदाहरण होंगे।
  • https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/main/g...

    • https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34...
      ऐसा पहले भी हुआ है
    • अगर और highlights देखनी हों तो https://www.youtube.com/watch?v=R_b2B5tKBUM भी है
    • Joe काफ़ी मजबूत कैरेक्टर लगता था। माँगें बहुत थीं, लेकिन अपने bugs ठीक नहीं करता था: https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34...
    • Joe producer था, और ऐसा लगता है कि developers उसके बेवकूफ़ाना ideas से परेशान हो चुके थे
      स्रोत: game industry में developer के रूप में मेरा अनुभव lol
      चेक किया तो वह lead designer था। यानी producer जैसी भूमिका
  • यह 20 साल पुराना “leaked” code है, और लगता है कि यह पहले भी एक बार leak हो चुका था, बस शुरुआत में किसी ने नोटिस नहीं किया :) फिर भी, मुझे यह गेम पहले बहुत पसंद था

    • लगता है आखिरकार dial-up upload खत्म हो गया ;) premise के हिसाब से यह हैरान कर देने वाला मज़ेदार गेम था। इस गेम से पहले मैं सोचता था कि Simpsons परिवार Oregon में रहता है, Illinois में नहीं
  • https://github.com/search?q=repo%3ASvxy%2FThe-Simpsons-Hit-a...
    पूरे repository में "fuck" शब्द सिर्फ़ 50 बार आता है

    • "bool fucked = true;" पर मैं ज़ोर से हँस पड़ा
    • लगता है इस गेम को develop करते-करते सच में भाईचारा बन गया था: https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34...
    • copy-paste काफ़ी है
      buffer को "buffy" कहना अच्छा लगा। ज़माने की झलक मिलती है :)
    • https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34... ही highlight है
    • अगर आपको पूरी company के GitHub तक access है, तो यह search चलाने की सलाह दूँगा। gems मिलने की अच्छी संभावना है। मुझे तो सच में मिले थे
  • Simpsons Hit and Run रिलीज़ के समय सच में किसी तोहफ़े जैसा गेम था। Radical को The Simpsons सीरीज़ से कितना प्यार था, यह गेम के हर कोने से झलकता था। शो के छोटे-छोटे references और मज़ेदार dialogues भरे पड़े थे, और gameplay अपने आप में बहुत आनंददायक था

    • मुझे भी यह बहुत पसंद था। इसी वजह से मैंने Tapped Out भी कई साल तक बहुत खेला। उसमें Simpsons की लगभग हर चीज़ थी, और दुनिया बनाना और characters को उसमें घूमते देखना सच में मज़ेदार था
      मैं अक्सर सोचता हूँ कि assets extract करके open source clone बनाने का कोई तरीका ढूँढ़ूँ, ताकि जब EA कभी आखिरकार service बंद करके इसे दुनिया से छीन ले, तब भी कुछ बचा रहे
  • अच्छा लगता है कि code comments गेम और The Simpsons दोनों का tone बनाए रखते हैं
    “””
    // Synopsis: Blahblahblah
    “””
    मैं ऐसी जगह काम करना चाहूँगा जहाँ इस तरह की चीज़ें allow या encourage की जाती हों

    • ऐसी चीज़ें बस commit करो और अंत तक defend करो। मैंने एक बार मीटिंग यह कहकर खत्म की थी: “मैंने ऐसा इसलिए लिखा क्योंकि यह इतना obvious था कि ज़्यादा detailed comment लिखना बेकार था, और इस मीटिंग ने उसी point को invalid कर दिया। अगर फिर भी समझ नहीं आया, तो juniors में से किसी एक से समझा लो”
      लेकिन तुम्हें सही होना पड़ेगा, और इतना सही कि कोई ज़बरदस्ती की आपत्ति भी टिक न सके। वरना नया resume लिखना शुरू कर दो
    • न मेरे boss ने, न उसके boss ने, न उसके ऊपर वाले boss ने कभी मेरा code पढ़ा है। जो comments लिखने हैं, लिख दो
  • इस गेम की cult popularity को देखते हुए लगा था कि इस पर खूब हलचल होगी। GitHub के मुताबिक यह 1 जून को लीक हुआ था, तो सोच रहा हूँ कि क्या कोई इसे modern computers पर चलाने के लिए काम कर रहा है। सच में दिलचस्प है

    • Hit & Run पहले से ही modern computers पर चल जाता है। मैं इसे यहाँ 5120x2160 resolution वाले ultrawide fullscreen में खेल रहा हूँ
      बस "Lucas' Simpsons Hit & Run Mod Launcher" डाउनलोड करें और compatibility के कुछ checkbox ऑन कर दें, काम हो जाएगा
      https://modbakery.donutteam.com/release/lucas-mod-launcher
    • source code कम-से-कम 2 साल पहले ही लीक हो चुका था
      उदाहरण के लिए यह reddit पोस्ट देख सकते हैं:
      https://old.reddit.com/r/SimpsonsHitAndRun/comments/pa2ecc/s...
    • यह source code पर आधारित नहीं है, लेकिन original assets का इस्तेमाल करके 'reubs' ने Unreal Engine version बनाया है
      https://www.youtube.com/watch?v=M4QUy02cQqY&list=PL3gCaTLUSA...
    • गेम को modernize करना वाकई एक मजेदार project लगता है। बस यह सोचता हूँ कि ऐसे किसी प्रयास को Activision कितनी जल्दी DMCA से रोक देगा
  • शानदार comments और variable·method names की वजह से इसे पढ़ने में मजा आया
    ऐसे variables तो लगभग हर किसी ने कभी न कभी देखे होंगे: https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34...
    ऐसे comments भी: https://github.com/Svxy/The-Simpsons-Hit-and-Run/blob/eb4b34...

    • सच में बहुत मजेदार। कभी-कभी लगता है कि software engineering शायद जरूरत से ज़्यादा गंभीर हो जाती है