Warcraftの䜜成パヌト1

はじめに翻蚳者から




私のお気に入りのゲヌムの1぀がWarcraft IIであるこずがわかりたした 。

このゲヌムがどこかで蚀及されたり、誰かがそれを芚えおいるたびに、私は通垞ずおも幞せです。 もちろん、 Warcraft IIの前は、 Warcraftだけでした。



パトリック、蚘事の著者 そしお最近、面癜いこずが起こりたした-ブリザヌドの起源に立っおいた人の䞀人であるパトリック・ワむアットず、りォヌクラフトの開発を始めた人は、圓時の䞀連の思い出を始めたした。 以䞋で読むこずをお勧めする最初の蚘事は、Warcraft開発の開始に関するものです。 アむデアの出所に぀いお。 圌らがマルチプレむダヌを倢芋おいる間に、オフィスで組織されたネットワヌクに぀いお。 EMSおよびDOSでのプログラミングの矎孊の耇雑さに぀いお。 プロゞェクトチヌムなどに぀いお。



私は悲しいかな、DOS開発の専門家ではないので、読者が技術的な詳现に関連する翻蚳の䞍正確さを指摘しおくれたら、喜んですぐに蚂正したす。



これはもちろん、その他の䞍正確さ、タむプミス、句読点および文䜓に適甚されたす。








画像 昔、PCゲヌムがDOSオペレヌティングシステムで曞かれた時代の初めに、Warcraftず呌ばれるゲヌムの開発を始めたした。





私はプロゞェクトをリヌドし始めおいたす




私は、PC甚のいく぀かのゲヌム、Mac甚のいく぀かのゲヌム、スヌパヌ任倩堂ずセガゞェネシス甚の7぀のコン゜ヌルゲヌムを開発したしたが、埌茩の開発者でした。 それ以倖の堎合、ゲヌムは䞀般的に移怍され、れロから開発されたわけではありたせん。 移怍ずは、あるプラットフォヌムから別のプラットフォヌムにゲヌムを転送するプロセスです。 たずえば、Amiga甚のゲヌムを䜜成し、コヌドを曞き盎し、デザむンを再描画し、他の必芁な詳现を倉曎するず、ゲヌムは任倩堂で実行されたす。



新しいプロゞェクトでの私の圹割には、2皮類の䜜業が関係しおいたした。 たず、プロデュヌサヌずしお開発チヌムをリヌドする-ゲヌム業界では、プロゞェクトマネヌゞャヌ、デザむナヌ、゚バンゞェリスト、シェパヌドキャットず呌ばれたす。 2番目Lead Developerのポゞションの芁求に応じお、ほずんどのゲヌムコヌドを蚘述したす。 そしお、ちなみに、珟圚のように200人以䞊ではなく、10人たたは20人の開発者がゲヌムの開発に接続した堎合はそれほど難しくありたせんでした。



りォヌクラフトのルヌツ




圓時私が働いおいた新興䌁業では、 SiliconSynapseず呌ばれおいたしたが、熱狂的な開発方法に敬意を衚しおBlizzardに名前が倉曎されたした-空き時間に、開発者は倚くの玠晎らしいゲヌムをプレむしたした。 そしお、この氞遠のゲヌムプレむのおかげで、 Warcraftが生たれたきっかけが生たれたした。



私たちは、 Westwood Studiosが開発したDune 2ず呌ばれるゲヌムによっおWarcraftを䜜成するこずに觊発されたした。 デュヌン2は、おそらく最初の最新のリアルタむム戊略RTSでした。 スクロヌルマップ、リアルタむムのナニットの䜜成およびナニットの制埡。 ナニット間の個別の戊闘で。 基本的に、このゲヌムは、特定のスケヌルずグラフィックスの品質を陀いお、 Starcraft 2などの最新のRTSずほずんど倉わりたせん。



このゲヌムの前身はDune 1でした。これも䞊蚘の芁玠を組み合わせた非垞に䟡倀のあるゲヌムですが、ク゚ストゲヌムに組み蟌たれおいたす。 Dune 2は、前のゲヌムで提案されたすべおのモヌドから1぀のモヌドに焊点を合わせたした。 プレむダヌは、リ゜ヌスの収集、基地の建蚭、リ゜ヌスの収集、軍隊の圢成、そしお最終的に敵の探玢ず埁服をリアルタむムで制埡したキャラクタヌを衚したした。



私は、他のBlizzardの埓業員ず同様に、圓時Dune 2のゲヌムに完党に座っおいたした。 昌䌑みや仕事の埌、それを挔奏したした。 3぀のレヌスのそれぞれでプレむし、それぞれの長所ず短所を特定し、その埌、ゲヌムスタむル、戊略、戊術に぀いお議論したした。



しかし、プレむが非垞にクヌルだったずいう事実にもかかわらず、私は修正するこずを瀺唆する倚くの明らかな欠陥に苊しみたしたいいえ、圌らはそれを芁求しさえしたした。 最も明らかな間違いの1぀は、友​​人ず私がDuneをコンピュヌタヌずしか察戊できないずいう考えでした。 このゲヌムスタむルがマルチプレむダヌに理想的であるこずは明らかでした。 各プレむダヌが他のすべおのプレむダヌが移動するたで埅たなければならないタヌンベヌスのゲヌムずは異なり、リアルタむムゲヌムでは、すべおのプレむダヌが同時に行動できるため、時間のかかる戊略的な決定ではなく、スピヌドず決定的な戊術的な動きに集䞭できたす蚈画䞭。



そしお、この考えから、ゲヌムの開発が始たりたした。 ゲヌムの蚭蚈を真剣に詊みるこずなく、技術芁件を評䟡するこずもなく、スケゞュヌルず蚈画もなく、埓業員の予算を蚈画するこずもありたせん。 圌らはナプキンさえも描きたせんでした。 私たちは冗談でそれを「ビゞネスプランデュゞュヌル」 フランス語で「1日」ず呌びたした。これはその埌Blizzardの暙準プロセスでした。



開発開始




プロゞェクトの唯䞀の開発者ずしお、蚭蚈チヌムが䞍圚で、この段階でDune 2のアヌトワヌクのスクリヌンショットを撮り、このゲヌムのスラむスを䜿甚しお、少なくずも1人のデザむナヌをプロゞェクトに接続できるようになるたで開発を進めたした。 その埌、デザむナヌは他の倚くのプロゞェクトに取り組み、締め切りを迫り、気を散らす時間はありたせんでした。それから、気を散らすこずは䞀般に困難でした。



ゲヌム゚ンゞンを開発する初期の取り組みは、タむルに基づいおスクロヌル可胜なマップのレンダリングを䜜成するこずに焊点を合わせおいたした。 ナニットおよびその他のビットマップをレンダリングするスプラむトレンダラヌ。 ナニットをアニメヌション化できるスプラむトシヌケンサヌ゚ンゞン。 マりスずキヌボヌドのむベントマネヌゞャヌがクリックをキャッチし、最終的にナヌザヌむンタヌフェむスのコヌドの匷固な基盀を構築しお、これらすべおを実際に詊すこずができるようにしたした。 このキットにより、初期のプロトタむプを組み立おるこずができ、シングルプレむダヌモヌドで「プレむ」できるようになりたしたが、新しいナニットを䜜成する機胜がないため、これを埌で実装したした。 このバヌゞョンでは、キヌボヌドからコマンドを入力するだけで、ナニットがマップに衚瀺されたした。



毎日、私ぱンゞンに新しいレベルを自発的に構築したした。 蚈画されたマむルストヌンやプロゞェクトの倖郚芁件がないため、次にねじ蟌む機胜を遞択できるうらやたしい立堎にあり、本圓にやる気になりたした。 それでも、私はゲヌムの開発を楜しんでおり、圓時私が目の前に開いおいた未耕䜜の開発分野には麻薬効果がありたした。 今でも、私はゲヌム業界で22幎間働いおいたすが、開発に関連する創造的な瞬間が今でも倧奜きです。



最初のナニヌクな機胜マルチナニット遞択




私が特に誇りに思ったチップの1぀は、ナニットの遞択です。 Dune 2では、ナヌザヌは䞀床に1぀のナニットしか遞択できたせんでした。これにより、戊闘の戊術的線成䞭にマりスが熱狂的にクリックされたした。 ナヌザヌが耇数のナニットを䞀床に遞択しお、ゲヌムオヌダヌの発行プロセスを高速化し、戊闘を劇的に行えるこずは明らかであるように芋えたした。



ゲヌム業界で仕事を始める前、しばらくの間、 MacDrawやMacDraftなどの倚くのコンピュヌタヌ支揎蚭蚈CADアプリケヌションを䜿甚しおいたした 。 それらの䞭で、私は父のビゞネスのためにワむンセラヌのデザむンをデザむンしたした。 したがっお、耇数のナニットを䞀床に遞択する方法に぀いお考え始めたずき、長方圢の「クリックドラッグ」遞択のメタファヌを自動的に思い出したした。



Warcraftは、このUIのメタファヌを䜿甚した最初のゲヌムだず思いたす。 このアむデアをゲヌムに導入したばかりのずき、倚数のナニットを同時に割り圓おお管理するこずができたした。 同時に遞択されるゲヌムキャラクタヌの数に制限はありたせんでした。



䞀床に100ナニットを遞択しおマップ䞊のあるポむントに送信するず、パス怜玢アルゎリズムの䞍完党性にすぐに気付きたした。このアルゎリズムが登堎した瞬間から、ナニットを遞択しお送信するのに䜕時間も費やしたした。コヌドを曞く代わりに地図をハむキングしたす。 圓時、それは私がプログラムした最もクヌルな機胜でした



その埌、開発プロセス䞭に、チヌムのメンバヌ間でゲヌムの蚭蚈に぀いお倚くの議論を行った埌、ナヌザヌが䞀床に遞択できるナニットは4぀だけにするこずを決定したした。 これは、ナヌザヌに戊闘戊術に぀いおもっず考えさせ、矀衆を集めおすぐに戊闘に送り蟌たせたくないずいう事実によっお説明されたした。



埌に、 Warcraft IIでは、䞀床に9ナニットを遞択できるようにしたした。 ちなみに、 デュヌン2の粟神的埌継者であるCommand and Conquerには遞択肢の䞊限はありたせんでしたが、これらのデザむンアむデアに関する議論は、確かに別の蚘事に倀したす。



耇数のナニットを同時に制埡する胜力を陀けば、この段階では、 WarcraftはDune 2の簡易バヌゞョンにすぎたせんでした。 類䌌性は非垞に䞋品だったので、 りォヌクラフトが デュヌン2 に觊発されたずいう事実にもかかわらず、それはただ完党に異なるゲヌムです。画面の巊䞊隅にミニマップがあり、右䞋にありたす。



同胞団の蚭立




1994幎の初めに、私はプロゞェクトにより倚くの人を぀なげるのに十分な進歩をすでに遂げたした。 Ron Millar、Sam Didier、Stu Rose、Bob Fitch、Jesse McReynolds、Mike Morheim、Mickey Nielsenなどが参加したした。 1994幎2月に圓瀟がDavidsonAssociatesに買収された埌、圌らの倚くがゲヌムの開発を始めたした。



䞈倫で長い髪のブロンドのロンミラヌは、バむキング自身の子孫のようでした。 圌は圓初アヌティストずしお雇われ、 Virgin Gamesの Gameboyプラットフォヌムの倚くのアヌトワヌクの著者でしたが、圌の印象的な創造性ずデザむンの才胜は、倚くのBlizzardプロゞェクトのデザむンで非垞に重芁な圹割を果たし、間違いなくこの圹割を果たしたしたWarcraftの開発。



熊に䌌た䞈倫で背が高く、しゃがむキャラクタヌであるサム・ディディ゚は、圌の英雄的なキャラクタヌを描くずいう壮倧なスタむルで、ブリザヌドグラフィックスのスタむルを定矩したす。 圌は16ビットコン゜ヌルタむルの描画䞭にも描画スキルを磚きたしたが、すべおの䌚議䞭や他の自由な瞬間にファンタゞヌスケッチを描きたいずいう願望は、プロゞェクトのアヌトディレクタヌずしお玠晎らしい仕事をするこずを瀺唆したした。



Stu Rose - Blizzardロゎのデザむンに぀ながったのは圌の実䟋的な背景でしたが、今でも䜿甚しおいたす。 圌はマップの背景タむルを描くこずから始め、その埌、 Warcraftの党䜓的なデザむンコンセプトで重芁な圹割を果たしたした。 Stuは人間のPeonの声ず同じくらいあなたに銎染みがありたす。 そしお、私は蚀わなければならない、抑圧された勀勉な劎働者がどのように話すべきかに぀いおの圌のアむデアは、圌の喜劇の才胜を明らかにした。



ボブ・フィッチは、私がWarcraftを始めたその瞬間に、別のプロゞェクトの開発者および技術リヌダヌずしお私たちず䞀緒に働き始めたした。 Blizzardの瀟長であるAllen Edhamは、クロスワヌド、孊者、ボヌグルなどのゲヌムを含む「 ゲヌムピヌプルプレむ 」ずいう単語ゲヌムを曞くタスクをボブに䞎えたした。 ボブは非垞に熱意に欠けおいたため、プロゞェクトは䜕ヶ月もほずんど進行したせんでした。 Warcraftが䞊り坂になったずき、ボブは私に倢䞭になり、圌の熱意は私たちのゲヌムが飛躍的に前進するのを助けたした。



カリフォルニア工科倧孊を卒業したゞェシヌは、ロヌカルネットワヌクLANでゲヌムをプレむできるように、IPXプロトコル甚のネットワヌクドラむバヌの䜜成に取り組み始めたした。 Blizzardの 2人の共同蚭立者の1人であるMike Morheimは、埌に難しいタスクの解決に貢献したした。「ミックスモヌド」で動䜜するモデムのドラむバヌを䜜成したした。 結局のずころ、 Warcraftは保護モヌドで動䜜するDOSゲヌムであり、モデムドラむバは、DOSず80386チップのアヌキテクチャの䞡方に関連するトリックでのみ保護モヌドずリアルモヌドから同時に呌び出すこずができたした。システムは機胜したした。 マむクはオフィスに座っおモニタヌを芋぀め、同期デヌタに察凊するために蚺断デヌタを殺到させたした。 最終的に、モデム郚分のコヌドは装甲貫通になりたした。これは、以前䜿甚した基本的な方法を考えるず、圓時の重芁な成果でした。



アヌトオブりォヌクラフト




アラン・゚ダムは、ブランド認知を通じお販売を拡倧しようずするりォヌハンマヌ宇宙のラむセンスを取埗したいず考えおいたした。 Warhammerは、 Warcraftデザむナヌの匷力なむンスピレヌションでした。 しかし、いく぀かの理由で、このベンチャヌを攟棄したした。 ビゞネスレベルで有利な条件に同意するこずは難しく、チヌムの仕事に干枉しないように、私たち自身で宇宙の創造を制埡したいずいう熱望があたりにも熱心でしたもちろん私ももちろん。 さらに、ラむセンスの䞋での䜜業はすでにかなり悪い経隓がありたした.DCコミックスず「デス・アンド・リタヌン・オブ・スヌパヌマン」および「 ゞャスティス・リヌグ・タスク・フォヌス 」を行いたした。この経隓を新しいゲヌムで繰り返したいずは蚀えたせん。



今では想像するのはかなり奇劙ですが、 BlizzardがWarcraftナニバヌスの知的財産所有者ではなかった可胜性がありたした。 そうすれば、今日のゲヌム業界でこのような自信のある立堎にいるず想像するのはさらに難しくなりたす。



Warcraftを開始しおから数幎埌、父がアゞア旅行から戻っおきお、戊車に乗ったスケルトンの䞀団であるWarhammerミニチュアのセットを枡しお、次のように蚀いたした。「私は旅行䞭に、匁護士に䌝えお、メヌカヌに連絡させおください。そうでなければ、圌らはあなたからアむデアを匕き出しおいるように芋えたす。



ゲヌム開発者ぞの障壁




開発の初期段階の興味深い点の1぀は、私たちが座っおゲヌムを開発しおいる間に、ネットワヌクたたはモデム接続を介しおプレむするこずはおそらく玠晎らしいこずでした。 同時に、オフィスにはロヌカル゚リアネットワヌクがありたせんでした。 結局のずころ、フロッピヌディスクに簡単に収たるコン゜ヌルゲヌムを䞻に開発する前は、ネットワヌクは必芁なものではないように芋えたしたが、バックアップを䜜成するプロセスを簡玠化するこずもありたした。



そのため、私が他のアヌティストや開発者ず積極的に仕事を始めたずき、私たちは通垞「歩行者ロカルカ」を䜿甚したした。぀たり、実際には、コヌドたたは蚭蚈で実装する必芁のあるオフィスからオフィスぞの盞互倉曎を含むフロッピヌディスクです。



ボブ・フィッチはプロゞェクトの2番目の開発者であり、私たちは垞にファむルずコヌドの倉曎を盞互にコピヌしたした。 時々、統合䞭にミスを犯し、すでに修正しおいたバグは再開されたした。 私たちはそれらを再び捕らえ、ファむルをコピヌしお倉曎を加えたずきに、成功したバグ修正の䞊に䜕かを䞊曞きしたこずを発芋したした。



開発が加速しおおり、「どこで䜕を線集したかを蚘憶する」方法以倖にバヌゞョン管理のための他のプロセスがなかったため、この状況はたすたす頻繁に繰り返されたした。 私のコンピュヌタヌはコヌドの「マスタヌ」ブランチを保持しおいお、パッチを远加したため、ある皋床幞運だったので、コヌドの倉曎はあたり頻繁に倱われたせんでした。 今日、私たちはこれにバヌゞョン管理システムを䜿甚しおいたすが、そのような人生の喜びさえ想像できたせんでした



倚くの開発者、デザむナヌ、アヌティストがプロゞェクトに参加し、プロゞェクトに取り組んでいるず、もちろん簡単になりたしたが、基本的には別の倧きな障害が芋぀かりたした。 このゲヌムはもずもずDOSで「リアルモヌド」で開発されたため、メモリは640Kしかなく、オペレヌティングシステム甚に120K前埌しかありたせん。 その時の地獄のような状況を想像できたすか



デザむナヌがキャラクタヌ、背景、ナヌザヌむンタヌフェむスを描き始めるずすぐに、私たちはすべおの蚘憶を食っおいるずいう事実にすぐに盎面したした。 そしお、私たちは代替案を探し始めたした。 最初のアむデアは、EMSペヌゞメモリ経由のマッピングを䜿甚し、640Kメモリバリアの「䞊」にゲヌムデザむンを保存するこずでした。



プログラマヌがEMSの蚘憶に぀いお語る物語は、雪の䞭で登り、裞足で孊校に行ったずきの老人の物語に䌌おいたす。 EMSの話だけがはるかに悪く、これらすべおは実際に真実です。



いずれにせよ、幞いなこずに、EMSのアむデアはうたくいきたせんでした。 しかし、より良い解決策がありたした。 Watcomずいう䌚瀟がCコンパむラをリリヌスしたした。これには、DOSモヌドの「゚クステンダヌ」が含たれおおり、「保護モヌド」で蚘述されたプログラムが32ビットメモリのリニアアドレス、぀たりプログラマヌにアクセスできたす。 32ビットたたは64ビットアプリケヌションを曞き蟌んでも問題はありたせん。 ゜ヌスコヌドを修正しおこのモゞュヌルをビルドするのに数日かかりたした。その埌、再び䜜業を開始し、より倚くのメモリにアクセスできるようにしたした。



結論ではない




シリヌズの次の蚘事では、Stu Roseず蚭蚈革呜に぀いお説明したす。 最初のマルチプレむダヌWarcraftバトルずマルチプレむダヌをほが殺したバグ。 ビル・ロヌパヌがフロッピヌディスクにWarcraftを眮くこずでWarcraftを驚かせた方法。 私たちのゲヌムに察するWestwood Studioの反応や、ゲヌムに隠されおいるその他の詳现に぀いおは、私ずチヌムの他のメンバヌが18幎前に開発したした。



続きを読む、第2郹→



All Articles