[特別寄稿]『すぐわかる! ぷよぷよプログラミング SEGA公式ガイドブック』レビューを終えて

※プロのゲーム開発者の観点は、初学者の方々にとっても役立つと考え、『すぐわかる! ぷよぷよプログラミング SEGA公式ガイドブック』のレビュー当時の文章を元に加筆・修正して以下に掲載します。

本書のレビューに協力しました。サンプルもすべて動かしソースコードも見ましたが、素晴らしい完成度でした。本書を読んで、私はまず二つのことに感動しました。

一つは、題材であるセガの「ぷよぷよ」を、限られた紙面で、できる限りおもしろいゲームにしようとする熱意です。

ぷよぷよのクローンゲームを手っ取り早く、しかも少ないコード量で作るにはぷよをなめらかに動くようにしないことを通常は考えます。これは実際、1980年代主流だったMSX版(8ビット)のようなふるいコンピュータでは製品版(旧ぷよ)でもそのようになっています。しかし、本書では、ぷよの自由落下だけでなく、プレイヤーの移動操作や回転操作についてもすべてをなめらかにしています。ぷよをなめらかに操作するのは、プレイヤースキルをより精密に反映できる、ゲームを楽しめる重要な要素ですし、このゲームがぷよぷよに見える重要な動きです。ただし、これによって、プログラムの量は大幅おおはばに増えます。もし、なめらかに動かさなければ、本書のプログラムの長さは半分以下にできたことでしょう。

さらに、本書では、全消しや、狭いところでの回転の特例など、新しいバージョンのぷよぷよで追加された、さらにゲームを楽しめる要素も盛り込んでいて、ぷよぷよ風のゲームがなんとなく動いているレベルではなく、本当に楽しめるものを絶対に作るという強い意志を感じます。ぷよぷよというゲームを楽しめるようにするための動きの良さについての徹底的てっていてきなこだわりは、一般的いっぱんてきな初学者向けのゲームプログラミング紹介しょうかいで見られる(別の目的を優先した結果かもしれませんが)なんとなく動いてるミニゲームやシューティングゲームといったサンプルとはまったく次元が異なるものです。それから、もっと良くするためのヒントも随所にあり、ゲーム開発は単に要件を満たしたら終わりの開発ではない、そのことが自ずと感じとれる解説でした。

もう一つは、ぷよぷよをプログラミングする作業をできる限り楽しい体験にしようとする工夫です。その工夫が最も現れているのがSTAGEの順序です。最初読み進めていくときに、ぷよぷよを操作するところから作るのかなと私は想像していました。しかし、本書はそうではなく、ぷよが落ちて消えるところへ最短コースで真っ先に進みます。

それで、サンプルを実行してぷよが落ちて、消えたときに、なるほど、ぷよぷよは、ぷよが消えるのが楽しいゲームなんだということを、思い出しました。

もし、操作から作っていたら、ぷよが消えるのは本書の最後のほうに位置していたことでしょう。しかし、本書ではまずぷよを消す。

しかも、そのあとに全消しで、ますます楽しい。その後にはじめてプレイヤーの操作が登場します。ゲームの一番楽しい部分を最初にもってくる。これは素晴らしいデザインだと言えます。本書のSTAGEの順序はプログラミング作業を楽しいものにするために考え抜かれていると思います。

最後にもう一つ、強調したいこの本のポイントがあります。ここまでぷよぷよの濃いプレイができるゲームを実装しておきながら、JavaScript のコードがわずか1000行ちょっとであること。しかもその多くはコメント行が占めています。これには驚きました。

なめらかに動くぷよ、ネクストぷよ、スコアなどを実装しておいて、これほど少ないコード量になるというのは、本書著者紀平さんの特殊能力とくしゅのうりょくがあってこそというほかありません。もし中級以上の開発者であっても普通に書いたら2000行、3000行になるかもしれません。

なぜ、コードが1000行しかないのか。なぜ、この内容が200ページ程度に収まっているのか。語弊をおそれずに言えば、本書は、世界中のほかの誰も書くことができない、奇跡的な本と言えるでしょう。誰も二度と書けない本、そんな本を一つのきっかけに、読者のみなさんにはプログラミングの世界へ、ゲーム開発の世界へ、本気で飛び込んできてほしいと思っています。

本書レビュー協力 中嶋 謙互

monoAI technology CTO
MMOG開発者・ゲームエンジン開発者
CEDEC AWARDS 2011 著述賞
『オンラインゲームを支える技術』⁠技術評論社)

中嶋謙互(なかじまけんご)

小学生の時からゲームプログラミングを始め,大学入学後ゲーム制作を開始。1996年,世界初のJavaアプレットを用いたMMORPGを制作し,1998年にはその続編『Lifestorm』シリーズをWindowsで発売し,ヒット。2001年にはオンラインゲーム用ミドルウェアVCEを開発し,独自に開発した「gumonji」を含めて約50社で利用される。現在は2児の父として仕事と子育てに明け暮れる日々を送る。