4 पॉइंट द्वारा GN⁺ 2025-01-19 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • StarCraft: Brood War में उच्च-स्तरीय रणनीति पर चर्चा लंबे समय से कोरियाई वीडियो और streams में केंद्रित रही है, जिससे गैर-कोरियाई भाषी community के लिए रणनीतिक ज्ञान के साथ बने रहना मुश्किल रहा
  • मौजूदा अनुवादों के लिए कोरियाई जानने वालों के manual काम या Google Translate पर निर्भर रहना पड़ता था, और build orders व community slang का शाब्दिक अनुवाद होने से context अक्सर टूट जाता था
  • नया workflow yt-dlp, Whisper, Google Colab, LLM और TeamLiquid terminology dictionary को जोड़कर कोरियाई audio को transcribe करता है और उसे ऐसे English subtitles में बदलता है जिन्हें Brood War players समझ सकें
  • Subtitle distribution को YouTube owner permissions से बाधित न होने देने के लिए TamperMonkey UserScript, Pastebin, Google Sheets और Apps Script को जोड़ने वाले BWKT Client से संभाला गया
  • करीब 2 हफ्तों में बना यह एक hacky project है, लेकिन लगभग $30 USD और free tools के combination से ही रोज़ लगभग 7 videos का अनुवाद किया जा सका, और multilingual support जैसे expansion की गुंजाइश भी बची है

कोरियाई Brood War ज्ञान तक पहुंचना मुश्किल क्यों है

  • StarCraft: Brood War 1998 में रिलीज़ हुआ competitive RTS है, और आज भी इसकी active community है
  • High-level Brood War ecosystem असल में कोरिया-केंद्रित है
    • ज़्यादातर pro players, teams और tournaments कोरिया में based हैं
    • उत्साही दर्शकों और community का बड़ा हिस्सा भी कोरिया में है
    • गैर-कोरियाई community members खुद को “foreigners” कहते हैं
  • Chess की तरह Brood War में भी लंबे समय से जमा match records और strategy research महत्वपूर्ण हैं
    • ऊंचे स्तर पर game खेलने जितना ही पढ़ना/अध्ययन करना भी महत्वपूर्ण है
    • आधुनिक discussion का बड़ा हिस्सा pro Brood War players के videos और live streams में होता है
  • Chess के “Sicilian defense”, “Najdorf variation” की तरह Brood War में भी community द्वारा बनाई गई domain-specific भाषा है
    • ये terms rulebook की भाषा नहीं हैं, बल्कि लंबे समय के research और analysis को संक्षेप में पहुंचाने वाली भाषा हैं

Foreigner Knowledge समस्या

  • गैर-कोरियाई भाषी community में कोरियाई fluently जानने वाले लोग बहुत दुर्लभ हैं
    • अगर कोई कोरियाई fluently जानता है, तो उसके पास अधिक सीमित और कम-quality गैर-कोरियाई resources तक सीमित रहने की कम वजह होती है
  • Community कोरियाई जानने वालों को पैसे इकट्ठा करके YouTube subtitle translation का काम देती रही है
    • Translation का काम कठिन और धीमा है
    • भुगतान भी objectively अच्छा नहीं है
    • फिर भी इस तरीके से साल में कुछ दर्जन videos अनुवादित हो जाते हैं
  • Google Translate जैसी machine translation रोज़मर्रा के वाक्यों के लिए उपयोगी है, लेकिन Brood War की specialized terminology के लिए ठीक से काम नहीं करती
    • ऐसे बहुत सारे slang और build terms हैं जिन्हें tool ने नहीं देखा होता
    • शाब्दिक अनुवाद उल्टा context बिगाड़ देता है

शाब्दिक अनुवाद कहां fail होता है

  • कोरियाई tutorials में 12 앞마당, 11 스포닝풀, 10가스, 투해처리, 3해처리, 안 3해처리 जैसे Brood War build terms आते हैं
  • Google Translate इन्हें 12 courtyard, two-processing, 3-point processing जैसे expressions में बदल देता है जो game context से मेल नहीं खाते
    • Brood War में “courtyard” नहीं होता
    • “starting off the most affluently” “economic opener/build” का अटपटा और बहुत लंबा translation है
    • “3-point processing” का Brood War players के लिए भी कोई मतलब नहीं है
  • कुछ शब्द पहचाने जा सकते हैं
    • Toss, build, fast gas, moderately fast tech-tree, Terran वगैरह बच जाते हैं
    • लेकिन ज़्यादातर हिस्सा शाब्दिक translation noise होता है, इसलिए पहचाने जाने वाले शब्दों का context भी धुंधला हो जाता है
  • Low-quality automatic subtitles और शाब्दिक translated technical terms के overlap से, माना जाता है कि गैर-कोरियाई community को कोरियाई community से कई दशकों पीछे कर देने वाला परिणाम बना

नया translation process

  • नया process वही subtitles 12 Natural, economic opener, Protoss, two-Hatchery build, 11 Spawning Pool, 10 Gas, third Hatchery जैसे expressions में अनुवाद करता है जिन्हें Brood War players समझ सकें
  • Translation perfect नहीं है, लेकिन video का topic तुरंत स्पष्ट हो जाए इतना signal-to-noise ratio काफी बेहतर हो जाता है
  • पहले साल में कुछ दर्जन videos translate करना ही सीमा थी, लेकिन नए तरीके से एक व्यक्ति अपने खाली समय में रोज़ लगभग 7 videos translate करता है

Subtitle production pipeline

  • yt-dlp और Whisper

    • शुरुआत में yt-dlp से YouTube के automatic Korean subtitles download करके translate करने की कोशिश की गई, लेकिन automatic subtitles की quality उपयोगी नहीं थी
    • इसके बजाय yt-dlp से video का audio track download किया गया और Whisper से सीधे transcribe किया गया
    • YouTube subtitles से ज्यादा साफ और complete result मिला, और ऐसा लगता है कि यह in-game sounds और mouse clicks जैसे noise को भी बेहतर ignore करता है
    • शुरुआत में Whisper को local machine पर चलाया गया और इसने करीब 10GB VRAM इस्तेमाल किया
    • Windows पर Python, venv, CUDA, git वगैरह install करने पड़ते थे, इसलिए दूसरे collaborators के लिए इसका इस्तेमाल सीमित था
  • Google Colab

    • Whisper को Python pip से install किया जा सकता है, और Google Colab free Jupyter notebook service व free GPU देता है
    • Colab GPU में Whisper चलाने के लिए पर्याप्त VRAM है
    • Parameterized read-only notebook share करना distribution model के रूप में सही था
    • Non-technical users भी hardware की परवाह किए बिना इसे चला सकते हैं, और सिर्फ notebook update से latest features पा सकते हैं
    • git clone या बार-बार downloads की जरूरत नहीं है
    • Notebook एक YouTube URL input के रूप में लेता है, Korean SRT file generate करता है और download करवाता है
  • LLM और Korean slang dictionary

    • TeamLiquid एक पुरानी गैर-कोरियाई Brood War community है
    • करीब 15 साल पहले TeamLiquid member konadora ने “Brood War commentators द्वारा इस्तेमाल Korean terminology” dictionary forum post बनाया था
    • इस post को KoreanSlang.txt नाम की Markdown file में copy करके LLM को दिया गया
    • Prompt में शर्त रखी गई कि Korean subtitles को English में translate करे, लेकिन KoreanSlang.txt और StarCraft: Brood War context का reference ले
    • शाब्दिक translation की बजाय clarity को प्राथमिकता देने और timestamps व file format बनाए रखने को कहा गया
    • Duplicate subtitles या स्पष्ट errors सुधार सकता है, और जरूरत हो तो subtitles में छोटा translator note डाल सकता है
    • जो हिस्सा समझ न आए उसे (unintelligible) से replace करने और आसानी से copy करने के लिए code block में output देने को कहा गया
    • Pro account वाले ChatGPT में Whisper से बने Korean subtitles डालकर translation request करने के तरीके से इस्तेमाल किया गया

Subtitle consumption pipeline

  • YouTube subtitle restrictions और BWKT Client

    • YouTube का अपना subtitle feature सिर्फ video owner को subtitles set या update करने देता है
    • Video download करके फिर upload करने और subtitles set करने वाले workflow से बचने के लिए अलग client बनाया गया
    • UserScript YouTube video में button जोड़ता है, और matching translated subtitles हों तो उन्हें download करता है
    • SRT और VTT files parse करके YouTube player के नीचे छोटे container में subtitles दिखाता है
    • इस client का नाम BWKT Client है
  • Pastebin, Google Sheets, Apps Script

    • Subtitles text files हैं, इसलिए उन्हें तेजी से share करने के storage के तौर पर Pastebin इस्तेमाल किया गया
    • यह सरल है, पहले से premium account मौजूद है, और traffic समस्या बनेगा ऐसा अनुमान नहीं था
    • Mapping data में सिर्फ दो columns चाहिए: YouTube URL और Subtitle URL
    • भविष्य में Language column जोड़ा जा सकता है
    • Google Sheets को database की तरह इस्तेमाल करने से manual inspection और updates आसान होते हैं, और दूसरों के साथ share करना भी सरल है
    • Apps Script Google Workspace तक access वाला JavaScript runtime है, और built-in web server भी देता है
    • function doGet(req) { /* ... */ } के रूप में YouTube video ID लेकर corresponding Pastebin URL return करता है
    • Public read-only database Google Sites page के रूप में दिया गया है

सुधार की गुंजाइश और testing

  • Project लगभग 2 हफ्तों में बना hacky setup है, और budget करीब $30 USD था
    • ChatGPT और Colab के extra GPU time पर पैसा खर्च हुआ
    • दोनों strictly जरूरी नहीं थे, लेकिन होने पर सुविधा हुई
  • Expansion candidate के रूप में multilingual support है
    • गैर-कोरियाई community में सिर्फ US players नहीं, बल्कि Mexico, Poland, Romania, China और Taiwan के players भी हैं
    • दर्जनों भाषाओं में translate किया जा सकता है, और workload भी बहुत बड़ा नहीं माना गया
  • Technical improvements भी बाकी हैं
    • अभी BWKT Client उन YouTube videos पर भी button दिखाता है जिनके subtitles नहीं हैं
    • Apps Script web server में translated videos index return करने वाला endpoint जोड़ने से button दिखाना है या नहीं, इसे control किया जा सकता है
  • कुछ Brood War users के साथ 13-minute video देखते हुए subtitles test किए गए
    • करीब 5 मिनट बाद वे subtitle quality evaluate करना भूलकर video देखते हुए discussion कर रहे थे, short clips rewind कर रहे थे, pause करके बात कर रहे थे
    • Subtitles ने test pass कर लिया

Project का स्वभाव

  • Performance, scalability और latency इस project की core problems नहीं थीं
  • ज़्यादातर काम पहले से मौजूद tools को जोड़ने वाला glue code था
  • User script और Colab notebook का Python code छोटा और maintain करने में आसान है
  • Web server एक simple production CRUD system जैसा है, इसलिए उसके जटिल होने की बड़ी वजह नहीं है
  • बनाने वाला इस project को अपने deploy किए गए projects में सबसे janky मानता है, फिर भी उसे यह पसंद है

1 टिप्पणियां

 
GN⁺ 2025-01-19
Hacker News की टिप्पणियां
  • एक कोरियाई Brood War प्लेयर और speech recognition researcher के तौर पर यह पढ़ना दिलचस्प लगा
    मूल Korean transcription में भी काफी गलतियां हैं, और बाद में बड़े language model ने उन्हें काफी प्रभावशाली तरीके से ठीक किया लगता है। उदाहरण के लिए 12 안마당 빌드 असल में शायद 12 앞마당 빌드 था, और Brood War खिलाड़ियों के लिए यह कहीं ज्यादा समझने योग्य होता। इसी तरह 투에처리 빌드 का कोई मतलब नहीं बनता, इसे 투해처리 빌드, यानी 2-hatchery build के रूप में transcribe किया जाना चाहिए था
    इसलिए slang dictionary को सीधे Whisper inference प्रक्रिया में डालने वाली contextual biasing भी मददगार हो सकती है। तरीके कई हैं, लेकिन सबसे सरल रूप में Whisper की final prediction layer में dictionary में मौजूद slang tokens की probability को एक constant factor से बढ़ाया जा सकता है। HuggingFace library से इसे लागू करना भी अपेक्षाकृत आसान है: https://huggingface.co/docs/transformers/en/internal/generat...

    • मैं StarCraft fan हूं, लेकिन courtyard या frontyard से क्या मतलब है, यह बिल्कुल नहीं समझता। हालांकि English-speaking समुदाय में buildings, units, technologies और strategy names को बहुत ज्यादा संक्षिप्त करके बोलना आम है। Korean में भी ऐसा हो सकता है
      12 barracks build को आमतौर पर 12 rax, 2-hatchery mutalisk build को 2 hatch muta, और 3-hatchery hydralisk timing attack/all-in को 3 hatch hydra bust कहा जाता है
    • एक विदेशी Brood War player और speech processing researcher के तौर पर, shallow contextual biasing निश्चित रूप से मददगार लगती है। implementation खुद मुश्किल नहीं है, लेकिन आम तौर पर इस्तेमाल होने वाले automatic speech recognition solutions इस feature को आसानी से इस्तेमाल करने के लिए expose नहीं करते
      ctranslate2 में यही feature implement करने वाला एक PR है, जिससे यह faster-whisper में भी expose हो सकता है: https://github.com/OpenNMT/CTranslate2/pull/1789
    • Protoss के लिए क्या सच में Korean में ऐसा शब्द इस्तेमाल करते हैं जिसका मतलब कुछ फेंकना होता है? अगर हां, तो यह काफी मजेदार cross-linguistic pun है
    • गेम खेले बहुत समय हो गया, लेकिन translation देखते ही हर बार उलझन हुई कि कोई 12 spawning pools क्यों बनाना चाहेगा
      मेरी याद के मुताबिक वह building hatchery से zerglings और दूसरे units बनाने की सुविधा देती थी और upgrades research करने देती थी। एक ही बना देने पर सभी hatcheries में वह unit unlock हो जाता था, और वह खुद units produce नहीं करती थी, इसलिए कई बनाने से unit production भी नहीं बढ़ता
      सैद्धांतिक रूप से upgrades parallel में research करने के लिए कई बनाए जा सकते हैं, लेकिन उपलब्ध upgrades भी करीब 3 ही हैं, इसलिए 12 बनाने की कोई वजह नहीं दिखती। अगर दुश्मन कुछ तोड़ दे तो zergling production जारी रखने के लिए backup के तौर पर हो, तब भी 12 बहुत ज्यादा हैं
      इसलिए उत्सुक हूं कि असल motivation क्या था। बहुत पहले की बात है, इसलिए हो सकता है मैं बकवास कर रहा हूं
  • शीर्षक से धोखा नहीं खाना चाहिए। यह लेख StarCraft commentary को translate करने और अधिक accessible बनाने के काम के लिए एक बेहद thorough और creative approach के बारे में है
    लेखक ने सही पकड़ा है कि 27 वर्षों में game commentary Korean या English नहीं, बल्कि एक domain-specific language बन चुकी है। automatic scripts और artificial intelligence का इस्तेमाल करके मोटे तौर पर बात समझना और फिर उसे consistent sentences में बदलना वाकई शानदार है

  • जिसकी native language English नहीं है, उसके नजरिए से यह लेख कई क्षेत्रों में translation, खासकर computer writing और software development translation में आने वाली समस्याओं जैसा ही लगा
    बहुत सारे terms हैं जिनका translation मुश्किल है। sharding या hash जैसे शब्द ऐसे ही हैं, और एकमात्र व्यावहारिक समाधान यही है कि समय के साथ उन्हें हर language के हिसाब से किसी हद तक उधार लेकर अपना लिया जाए। लेकिन इसके लिए ऐसी community चाहिए जो दोनों languages के बीच की दूरी कुछ हद तक पार कर सके, और इस मामले में English सीखना भी शामिल है
    मेरी native language Spanish है, और जब Spanish में software development की बात करते हैं तो English से आए terms लगातार आते रहते हैं। इसे अच्छी तरह handle करने का कोई पक्का तरीका नहीं दिखता, और automatic translation इसे कैसे संभालता है यह दिलचस्प है। आखिर में socially दोनों languages के mix होने की प्रक्रिया से गुजरना होगा, और देखना होगा कि उस process में कौन से terms टिकते हैं
    लेख में बताए criteria के हिसाब से, Korean धाराप्रवाह न सही, पर कुछ हद तक जानने वाला व्यक्ति और जाहिर है खुद game को जानने वाला व्यक्ति चाहिए

    • Spanish में दुनिया भर की linguistic tradition differences की जटिलता और जुड़ जाती है। उदाहरण के लिए Mexico में मैंने debug के लिए काफी उपयुक्त मौजूदा Spanish शब्द depurar सीखा था, लेकिन कई Spanish speakers English को सीधे उधार लेकर debuguear कहते हैं
      computer या software की performance की बात करते समय Mexico में मैंने desempeño सीखा था, लेकिन Argentina में इसी अर्थ में el performance कहते सुना है। मौजूदा Spanish शब्द खोजने के बजाय English loanwords को ज्यों का त्यों इस्तेमाल करना सबसे आम लगता है
    • एक मायने में ऐसे terms को adapt करना बहुत आसान है। German में sharding को बस वैसे ही sharding कहा जा सकता है
      वास्तव में लगभग impossible to translate चीजें everyday language की होती हैं। German Brot के meanings और connotations उन भयानक चीजों से काफी अलग हैं जिन्हें British लोग bread कहते हैं, लेकिन कोई बेहतर शब्द भी नहीं है, और इसे सीधे उधार लेना ज्यादातर contexts में काफी अजीब लगेगा। technical context में sharding उधार लेने से कहीं ज्यादा अजीब
      समय के साथ language में ढलकर उधार लिए जाने का अच्छा उदाहरण German के railway terms में देखा जा सकता है। शुरुआत में technology Britain से आई थी इसलिए सब English था, लेकिन समय के साथ ज्यादातर शब्द German जैसे दिखने वाले शब्दों में बदल गए। Lokomotive जैसे कुछ शब्द English की तरह Greek/Latin borrowings से दोबारा बने, लेकिन station अब Bahnhof है, और train Zug हो गया है
    • sharding या hash physical context में visualize करने में आसान metaphors का इस्तेमाल करते हैं, इसलिए समझ नहीं आता कि इन्हें translate करना मुश्किल क्यों माना जा रहा है
  • अनुवाद पर लिखे लेख में लेखक ने signal-to-noise ratio को पूरी तरह उल्टा इस्तेमाल किया, यह थोड़ा मज़ेदार था। signal-to-noise ratio का ऊँचा होना, जैसे 9000 से ऊपर होना, बहुत अच्छी बात है
    इसका मतलब है signal ज़्यादा और noise बहुत कम, इसलिए signal-to-noise ratio कम होना यानी noise ज़्यादा होना

    • लगता है लेखक ने जहाँ jargon कहना चाहिए था, वहाँ domain-specific language भी लिखा
    • उस हिस्से पर मैं भी थोड़ी देर के लिए कन्फ्यूज़ हो गया। लेख अपने-आप में बहुत खराब नहीं हुआ, लेकिन मतलब समझने में थोड़ा समय लगा
    • उस हिस्से को समझने के लिए मुझे कई बार फिर से पढ़ना पड़ा। Google Translate वाला टेक्स्ट पढ़ने जैसा लगा
  • Google Translate वाला version भी मैं ठीक से समझ पाया, लेकिन यह इसलिए संभव हुआ क्योंकि मुझे Brood War और Zerg 12 Hatchery opening की डिटेल्स बहुत अच्छी तरह पता थीं
    ChatGPT और Claude ने Korean टेक्स्ट का हैरान कर देने जितना अच्छा अनुवाद किया:
    Today I'll teach you about the 12 Hatchery build. I'll explain the types of 12 Hatchery builds, their advantages and disadvantages, and the build orders in a simple but detailed way. Against Protoss, this is the build you use when you want to start with the most economic advantage. Against Terran, there are several builds you can do with 12 Hatchery, so I'll explain some of the most commonly used builds. The first is the two-hatchery build that starts with 12 Hatchery: 12 Hatchery 11 Spawning Pool 10 Gas This build uses early gas, and it's often used when you want to quickly transition into a three-hatchery build with three gas bases. The second build is: 12 Hatchery 12 Pool 12 Gas This build allows for moderately fast tech tree and moderately fast three-hatchery expansion. This build is commonly known as the "safe three-hatchery" build, and you can think of it as a build that enables both quick Mutalisks and quick third base.

  • अगर लेखक यह देख रहे हों: yt-dlp से bandwidth बचाने के लिए कम quality वाला video डाउनलोड किया जा सकता है
    yt-dlp -f "bv[height<=720]"
    यहाँ URL या video ID डालने पर maximum 720p quality में डाउनलोड होगा

    • लेखक ने कहा था कि वे बस audio track ही डाउनलोड करते हैं। उसमें किसी भी video quality की तुलना में बहुत कम data लगता है
  • यह किसी ऐसे व्यक्ति का बेवकूफ़ी भरा सवाल है जिसने बचपन में सिर्फ़ money maps खेले हैं: building के आगे का number क्या मतलब रखता है?
    12 Hatcheries कहें तो 12 hatchery बनाना theoretically संभव तो है, लेकिन अव्यावहारिक लगता है। 12 spawning pool तो obviously बेकार हैं। इसलिए मुझे लगा कि शायद build order list में उसकी position होगी
    लेकिन 12 Hatch, 12 Pool, 12 Gas जैसे build भी दिखते हैं, तो उस interpretation से बात ज़्यादा समझ नहीं आती। यह सिर्फ़ simple list नहीं लगता; शायद tree है और 12 उस building की depth है, ऐसा सोचा, लेकिन gas से पहले 11 buildings बनाना कल्पना करना मुश्किल है और बहुत late लगता है। क्या इसमें units भी शामिल हैं, या सिर्फ़ drones/overlords गिने जाते हैं?

    • अगर मेरी याद सही है तो यह usage 4-pooling से शुरू हुआ था। Zerg में जब सिर्फ़ 4 workers हों तब spawning pool बनाना, फिर चौथा worker दोबारा बनाना और फिर zerglings बनाकर शुरुआती attack, यानी rush करना
      तब opponent तरह-तरह की गंदी गालियाँ देता है और sexual orientation तक पर शक करने लगता है
    • इसका मतलब है supply count जो building शुरू करते समय आपके पास होना चाहिए। इस stage में supply पूरी तरह workers से आती है, इसलिए यह भी बताता है कि कितने workers तक बनाने हैं
    • 12 spawning pool तो obviously बेकार हैं वाली बात के संदर्भ में, Husky के किसी video में सचमुच 9 spawning pool बनाकर 9 pool करने की धुंधली याद है
    • क्या इसका मतलब उस building को बनाते समय मौजूद workers की संख्या नहीं है?
    • game में आप buildings और units बनाते हैं, और units सीमित supply लेते हैं। game की शुरुआत में, जब तक scout करके यह न दिखे कि opponent बहुत early attack की तैयारी कर रहा है, आप ज़्यादातर resources mine करने और buildings बनाने वाले workers ही बनाते हैं
      number उस structure को बनाते समय पहुँचने वाले supply count को बताता है। इसलिए 12 hatch 12 pool 12 gas का मतलब है 12 workers तक जाना, फिर resources मिलते ही उन तीन buildings को क्रम से बनाना
      Zerg में worker सचमुच building में बदल जाता है, इसलिए flow शायद ऐसा होगा: 12 तक पहुँचकर hatchery बनाना, फिर एक worker और बनाना और spawning pool बनाना, फिर एक worker और बनाकर gas refinery बनाना
  • Google Translate काफ़ी बेहतर हो चुका था तब भी Go से जुड़े Chinese/Japanese texts को effectively translate करना मुश्किल था। इस लेख में बताई गई समस्या जैसी ही दिक्कत थी
    Chinese और Japanese के कई शब्द Go context में बहुत specific अर्थ रखते हैं, लेकिन general context में उनके ordinary meanings भी होते हैं। उदाहरण के लिए ko Go में एक specific rule situation है, लेकिन आम तौर पर इसका मतलब robbery जैसा होता है, इसलिए Google Translate ने उसे general तरीके से translate कर दिया और पूरा टेक्स्ट समझ से बाहर हो गया
    अब नए large language models में पहले से ऐसा instruction जोड़ा जा सकता है: मैं Chinese Go diagram explanations का अनुवाद करूँगा। translation natural होनी चाहिए और Go terminology इस्तेमाल करने से बचना नहीं चाहिए। उदाहरण के लिए 拆 = extension, 夹 = pincer, 刺 और 觑 = peep, और result शानदार आता है। practically, जितना material चाहिए लगभग सब पढ़ा जा सकता है। लगता है training data में Go material पर्याप्त था, इसलिए कोई और special काम करने की ज़रूरत नहीं पड़ी—यह luck था
    chess के बारे में, अगर लेखक देख रहे हों तो कुछ corrections हैं। chess की शुरुआती चालों को English में openers नहीं, openings कहा जाता है। white-only और black-only openings अलग से नहीं होते, हालांकि individual player किसी एक side के perspective से कोई specific opening पढ़ सकता है। opening study को highest level तक जाते-जाते उल्टा और भी fundamental माना जाता है। और वह Sicilian variation Najdork नहीं, Najdorf है

    • अब मेरे दिमाग़ में canon तो Najdork ही है
  • यह लेख अच्छा लगा। पहले मैंने World Cyber Games के अमेरिकी क्षेत्रीय qualifiers के कुछ मैच खेलने की कोशिश की थी, और हमेशा हैरान होता था कि बाकी लोग कितने तेज़ हैं
    बाद में जब मैंने Korea से live broadcast देखा, तो खेलने की speed देखकर पूरी तरह अभिभूत हो गया। strategy के लिहाज़ से, जब किसी blog ने यह math समझाया कि Protoss zealot Zergling को 3 hits की बजाय 2 hits में कैसे मारता है, तब मुझे एहसास हुआ कि game की एक बहुत बुनियादी चीज़ मैं miss कर रहा था। उसी समय समझ आया कि यह chess जैसा game है, और मैं इसमें डूब गया

  • मुझे पता है कि यह गलत translation है, लेकिन natural expansion को courtyard के रूप में अनुवाद करना मुझे काफ़ी पसंद आया

    • front yard भी पसंद आया। SC2 के कुछ recent maps में backyard base होते हैं, इसलिए यह बात समझ आती है
      ऐसी backyard bases team maps में भी अक्सर दिखती हैं, और यह तय करना strategy बन जाता है कि कौन-सा player आगे वाला base लेगा। Protoss और Terran shield battery और bunker साथ में बना सकते हैं, लेकिन Zerg creep पर buff पाता है और उसे बहुत तेज़ी से आगे फैला सकता है