2011年5月30日月曜日

"9leap" Game Programming Camp @仙台参戦記:#3

そして、当日がやってきた。前日も、遅くまで、オンライン、オフラインの打ち合わせをしていた。

というわけで、新青森駅始発の新幹線で、仙台へ向かった。今回の大震災で、新幹線は大きなダメージを受けた。復旧したのはやっと連休前。会場には予定通り開始時間直前に到着する。

参加者は、ぼく@akokuboのほか、@shi3z、@9leap、@hidemy、@Shocurry、@ricktsukida、@oldcadie、@sivakichだ。

ブログそのままの調子の清水社長の名講義がはじまる。

ゲームとは何か。
ゲームを作る時に注意すること。
大塚英志の『物語の体操』で解説されている、ウラジミール・プロップの「昔話の形態学」。

『ネットワークゲームデザイナーズメソッド』『ゲームデザイン誇大妄想狂』を読んだときの感覚が蘇る。

講義内容は、@sivakichさんが、週アスにとても詳しい記事を書いているので、そちらを見て欲しい。

Twitterがゲームになる!? 9leap開発キャンプ@仙台レポート

そして、今日のテーマは、Twitter。今回、enchant.jsに、簡単にTwitterから情報を取ってくるAPIがついた。それを使って、プログラムを書こうというわけだ。

なんといいタイミング。ぼくはちょうど前日まで、Twitterを使った研究の提案を作っていたところだった。


それでも、プログラミング部分の講義は、はなかなかハードだ。雰囲気を簡単に紹介して、後はサンプルを読めだ。

いや、これはいい。昔のプログラミング雑誌の感覚だ。

こんなことは、参加者を信頼しないとできない。そして、参加者もその信頼に応えた。今回の参加者は、JavaScriptに慣れていない人が多かった。それでもみんな自分の力でなんとかしようとがんばっていた。

今回、ぼくが決めていたことがある。
一つは、たくさんゲームを作ろう、クソゲーでも構わない。

参加者の一人@Shocurryさんは、たくさんゲームを投稿している。操作性とか、細かいことを言いだせばいろいろ欠点もあるゲームだ。でも、たくさんゲームを作り、それが実にいい味を出している。

本当におもしろいゲームって、こういう1000本ノックの向こうにあるんじゃないかと思う。

はじめて創った作品が、究極の傑作なんてことは、たぶんまずない。いや、あるのかもしれないが、それはほとんどの人とは縁がない話だ。


というわけで、今回、ぼくは未完成のものも含めて4本のゲームを作った。

1.桃太郎if(完成/未投稿)
2.ELIZA的な何か(未完成)
3.フォロワロワイヤル(完成/投稿)
4.フォロワーさんがころんだ(未完成)


「桃太郎if」は、昔、CやC#で作ったノベルゲームエンジンのサンプルデータのアトラスXへの移植版だ。アトラスXに慣れるために作ってみた。

ノベルゲームエンジンの簡単なものは、プログラミングの初歩の練習にちょうどいい。授業の開発演習で題材にした。

しかも、ノベルゲームツールがあれば、単なるノベルゲームだけではなく、クイズでも何でも意外といろいろなゲームを作ることができるので、作った後もおもしろい。

「桃太郎if」は、2回2分岐する4つのエンディングを持ったゲーム(?)だ。これを作ったことで、アトラスXに慣れることができた。



「桃太郎if」が完成したころに、アトラスXにTwitter連携機能がついた(なんと、キャンプ中に開発されていたのだ。できたてのほやほや機能!)。


そこで、次の「ELIZA的な何か」は、Twitter連携機能を使うつもりで作りはじめた。ELIZAは、ジョセフ・ワイゼンバウムが作った、ロジャーズの来談者中心療法のセラピストっぽい反応をするプログラムだ。ユーザが入力した文章を適当に解析して、おうむ返しをしたり、時折ランダムな反応をしたりする。Emacsを使っている人はM-x doctorで、相当するプログラムを起動できる。

なんだけど、希望する通りのUIを作ろうとすると、アトラスX自体を拡張しないと無理っぽいことがわかった。清水社長のゲームプログラミングで注意すべき「ないものねだりをしない」という話を思い出して、これは今回実装しないことに決めた。いつか作ってみたい。「ELIZA的な何か」のUIについては、スタッフの方にサポートしていただいた、ありがとうございます。


「フォロワロワイヤル」は、プレイヤーにジレンマ的な状況を作りたいと思って作ってみた。要するに、フォロワーから5名選び出して、2人ずつどちらを選ぶかを決めてもらうというものだ。基本はすぐにできた。作りはじめた段階では、アトラスXには重複しないようにフォロワーを抽出する機能がなかった(なんとこの機能もキャンプ中に追加された)ので、これを実装した。
そして、清水社長から、ユーザ名をIDに変え、アイコンを表示した方がわかりやすいとのアドバイスをもらって、作り直した。
これは投稿したので、是非、遊んで欲しい。

「フォロワロワイヤル」


最後の「フォロワーさんがころんだ」は、ゲームに動きを入れたくて、いろいろ考えた結果、「だるまさんがころんだ」をやろうとして作りはじめたものだ。だいたい完成したのだが、デバッグが終わらなかった。

ぼくは、けっこう、プロトタイピング的な方法でコードを書く。取りあえず、簡単なコードを書く。ちょっと機能を付け加えて、動作チェックする。それを繰り返して作っていく。

これは、簡単なものなら、うまくいく。しかし、ある程度以上、複雑なものを作ろうとすると、どこかで設計をしなおして、「とりあえず」で作った部分を整理しないとコードがぐちゃぐちゃになる。

今回はまったのはこれだ。設計しなおす時間が足りなかった。是非、完成させたい。

続く

0 件のコメント: