ど~もeagle0wlです(再)

140文字では収まらないネタを記録するブログ

『ドラゴンクエストXを支える技術 ── 大規模オンラインRPGの舞台裏』を読んだ


縁があって青山プロデューサーより発売前に紙の本をいただきました(Kindle版も入手したがこちらは自費)。本をいただいた以上感想を書くのは礼儀だと思っているのでつらつらとネタバレ回避を意識しながら書いてみます。

とても読みやすい本だと思います。MMORPGとしてのドラゴンクエストXが持つ、数多くある複雑な技術要素を平易に記そうという努力が伝わります。何よりも「MMORPGの開発/運営/運用ノウハウを記した書籍」がまっっっったくと言っていいほど存在しないはずの現状に対して、国内最大手MMORPGである『ドラゴンクエストX』を題材にした解説書が出たという点が希少価値なんです。

ただし、具体的な実装方法には踏み込んでいないので、これ1冊で何か作れるようになるというものではないです。解説項目が多岐に渡っているし、個々のトピックスを下手に掘り下げると収拾がつかなくなるから、このぐらいのバランスで良いと思います。エンジニアの末席にいる私としては少し物足りないと感じる箇所はありましたが、読む人によって重視したい点もバラバラだろうから仕方ないですね…。

「ゲームの作り方」みたいな本はいくらでもあるんですよ。これが「オンラインゲームの作り方」になると本当に数えるほどしか存在しないんですよ。なぜか? ゲームを一つ作るだけでも様々な専門技術が必要なのに、オンラインゲーム、特にMMORPGともなると、本書の章立ての多さからわかるように「面白いゲームを作る」だけではダメで、さらなる専門技術を動員する必要がある。その専門技術もだいたいはゲームの面白さとは直接関係しない(大量の同時接続を捌けるサーバーを構築できたとしても、ユーザーからしてみれば「動いて当然」となる)。それゆえに、相当の予算と覚悟も必要となる(そういう意味では、ひたすらオンラインのFPSMMORPGを送り出し続けている韓国はすごいと思う)。当然ながら、開発会社も膨大なリソースを投入して獲得したノウハウを大盤振る舞いで開示したりするようなことはしない。

概要には「著者のこだわりによりプログラミングやドラゴンクエストXの事前知識がなくても読み進められるよう丁寧に解説しています」とあり、対象読者に「ドラゴンクエストX冒険者のみなさま」(=プレイヤー)が含まれていることから、「メモリ」「CPU」みたいな超基本的な技術用語や、「プロデューサー」と「ディレクター」の役割といったゲーム業界用語の解説から行われているので、前半はなんとか読み解けると思います。後半ではサーバーサイドの話が出てくるので、非エンジニアの「ゲーム好き」だと読み解くのは少し大変かもしれない(何度か読み返せば理解できるはず)。

本書では、開発環境や運営体制などが一通り書かれていますが、時折見せる具体的な数字(「ドラゴンクエストXC++ソースコードは1,000万行以上あり」「ドラゴンクエストXのサーバログは1日に約100億行です」「結果として0.00002秒の通信遅延がときどき発生していました」)からフリーザ様のような絶望感を覚えるわけです。いちプレイヤーとしてみれば、それだけの大プロジェクトであるという認識でいいと思うんです。ただ、いちエンジニアとしては、これは本当に娯楽を提供するための設備なのか? 金融とか信販系のレベルではないのか? とも思うのです(基本オンプレミスだし、一部のバックエンドは銀行レベルのスペックのものを使っていることが記されている)。

当然ながら、大勢のプレイヤーが好き勝手に動くMMORPGにおいて、いきなり決定版を世に送り出せるかというとそうはいかず、様々な不具合や高負荷、障害に直面するたびに「こうやって工夫して乗り切った」ことがいろいろと書かれています。文章上では、比較的淡々と書かれているように読めましたが、徹夜で対処を行い体得したものが血となり肉となっているはずだから、注意深く読んでみると味わい深いものがある…はず。

最終章である「第12章 不正行為との闘い」は開発者側から語られることがほぼないトピックスであり、一番気になるところではないだろうか。自分も気になったが、読んだ感想としては「そら安易に手の内を明かす訳にもいかないよなあ」といったところであり、これはどうにもならない。RMT対策について、業者特有の行動のクセに言及していたのは面白かった。チートに関しては、本書の表現では「明確に問題視された」1件について触れている(これは刑事事件化している)。この辺は無闇に情報を開示するわけにもいかないので仕方ないことだろう。

ということで、本書が持つ様々なキーワードに気になるものがあったら、読んで損はないと思います。これ1冊読んだだけではゲームを作れるようにはなりませんが、ドラクエXを実現するために必要なたくさんの要素をインデックスとして頭の中に持つことは、ゲームの中身が気になるという人にとっては絶対にプラスになるはずです。デザイナーやプランナーも読んだほうが良いと思いますよ。あと、オンラインゲームもある種の「異世界モノ」と言えるので、そういう小説を書きたい人はディテールを深めるためにも良いかもしれない。最後にひとつ。「あとがき」にある、「最高の技術力」の定義が素敵だと思いました。これは各自で確認してほしいです。

f:id:eagle0wl:20181115012044j:plain
カバーをはずすと「たけやりへい」が…(Kindle未収録)

Kindle版について

レイアウトは紙の本そのままではなく、電子書籍用にある程度組み直されている。巻末の索引は単語の羅列だけになっているが、Kindleの検索機能を使えばいいので特に問題はない。

枝葉にも程がある誤字指摘:紙の本ではp187
誤 シングルポイントには最新の注意を払う必要があります。
正 シングルポイントには細心の注意を払う必要があります。