「今度は 企画とプログラムの合わせ技か」

竹田津は以下のメッセージを見て、そう思った。


NO.1639  プログラマ向け企画課題
投稿者/ 社長@アルファ
投稿日/ 2001/08/18(Sat) 11:37:17
URL/
プログラマ向けにミニゲームを制作して貰おうと考えています。
プログラマ自身が考えても良いのですが、この場を使って企画
志望の方にミニゲームの企画を作って貰おうと思います。

条件:
グラフィックは、使わない。文字表示のみ。
単純明快なルール。
今回、面白いかどうかは問いません。面白いにこしたことはないが。
企画書、仕様書のみでプログラムが組めるもの。

掲示板で何度も質問を受けるような企画仕様にしないこと。

企画仕様がいくつか出来たらその内の1つを選んで実際にプログラム
をして貰います。プログラマに選ばれるような企画を作って下さい。

「それじゃ、イ島奇譚を流用するか」

企画の連動は戦術の要諦である。そうして出来上がったのは次の企画書である。


企画「イ島奇譚(いじまきたん)ミニゲーム『瀬ツカシ板に乗れ!』」
投稿者/ taked2
投稿日/ 2001/08/20(Mon) 23:38:53
URL/ http://www.hyperdyne.co.jp/~taked2/project/ijimakitan/Program/6day/index.ht
企画書

タイトル 「イ島奇譚(いじまきたん)ミニゲーム『瀬ツカシ板に乗れ!』」


私が「楽しい自習課題」で作った「イ島奇譚(いじまきたん)」の一場面をテキストを使ったミニゲームにしてください。


「 次の日、夜明けからアブシ浦に行って3人で瀬ツカシ板に乗ってみました。
いやあ、もう失敗の連続。瀬ツカシ板ってのは言ってみればサーフボードみたいなもんで、またがるしかないんです。三郎兵衛が作ったオールで漕ぐんですが、 3人の息がうまく合わないとまっすぐ進まない。それに海は見上げるほどの高波でしょう、浜辺に何度も打ちあげられましてね。でもみんな必死ですし、やっぱ り不思議な板のおかげなのか、だんだんとコツがつかめてきました。なんとか進むようになった時には、もうお天道様が真上にきてましたけどね。」(「イ島奇 譚(いじまきたん)」6日目「ニ島へ」より)


主人公達は瀬ツカシ板に乗るために悪戦苦闘しましたが、文章で表現すれば「いやあ、もう失敗の連続」としか書かれていません。これを具体的にプログラマ志望者の手で形にしてみてください。


○ルール

1.出てくる人物は「男」「三郎兵衛」「息子」の3人です。
2.息子はボートで言うコックス(掛け声を出し、舵を取る係)で、男、三郎兵衛が漕ぎ手ですが、男からは三郎兵衛は見えません。
3.男が選択できる行動は「右側を漕ぐ」「左側を漕ぐ」の2つです。三郎兵衛も同様ですが、男は三郎兵衛が次にどちら側を漕ぐのかは予想できません。
4.「息が合う」というのは「男と三郎兵衛が逆の方向を漕ぐこと」をいいます。つまり男が右なら三郎兵衛が左、男が左なら三郎兵衛が右、と漕げば息が合ったことになります。
5.息が合えばまた次の行動ができます。10回連続で行動できたとき(中に息が合わなかった時が含まれていてもかまいません)、「なんとか進むようになった」としてハッピーエンドです。
6.ハッピーエンドの判定は「息が合ったとき」のみ行ってください。ですから場合によっては10回以上続けて行動しても終われないことがあります。
7.息が合わなかった場合、転覆の可能性(転覆率)があります。転覆するとみんなひっくり返って浜に打ちあげられてしまいます。
8.転覆率は「息が合わなかった」とき一回につき25%上がります。転覆率は95%が上限です。また「息が合った」ときは転覆率が25%下がります。下限は0%です。
9.息が合わなかった場合、転覆の判定を行います。転覆率の計算は転覆の判定前に行ってください。転覆したら「高波に巻かれて浜に打ち上げられてしまっ た」、転覆しなければ「高波がきたが大丈夫だった」となります。転覆しなかった場合、転覆率はそのままです。
10.最初、または浜に打ち上げられたら、行動回数、転覆率は0回、0%に戻ります。



----------------------------------------

仕様書


この仕様書は、課題に挑戦する皆さんに合わせていくつかコースを用意しています。自分の経験や課題に当てられる時間にあわせて選んでください。どのコースを選ぶのかは、評価の基準とはなりません。そのコースでキチンと結果がだせればOKです。


○「梅」(初心者用コース)
・対象 - 経験1年以下の人、時間があまりない人

1.企画書の「ルール」をプログラムにしてください。
2.「行動」する前に現在の状況を表示してください。表示する内容は「浜に打ち上げられた回数」「今回の行動回数」「転覆率」です。
3.「行動」は

1 - 右側を漕ぐ
2 - 左側を漕ぐ
99 - ゲームを止める

です。
4.遊ぶ人が選択できるのは男の行動だけです。
5.行動の入力は「必ず『行入力形式』(最後に[Enter]などを押して入力する形式)にしてください」。ワンキー入力やボタンを使った形は駄目です(←重要!)。
6.三郎兵衛がどちら側を漕ぐかは乱数(右側50%、左側50%)で計算します。
7.行動し、場合によっては転覆の判定を行った後、現在の状況と「男と三郎兵衛がどちら側を漕いだか」を表示してください。
8.「99 - ゲームを止める」は文字通り、ゲームを終了します。
9.強制終了キーなどを押されたら終わって結構です。でも正常に動かしていて急に止まるのはアウトです。

以上を満たしていれば、あとの追加機能(例えば「息子の掛け声の表現」など)はプログラマの自由です。ただし「テキストをつかったミニゲーム」という条件を忘れないこと。


○「竹」(中級者用コース)
・対象 - 経験1年以上の人、時間が少しはある人

1.「初心者用コース」の条件をすべてクリアしてください。
2.次の機能を追加してください。
・バッドエンド
・「時刻」の表示
・「不思議な板」の効果
3.「浜に打ち上げられた回数」が9回になると、彼らは疲れてその日の練習を止めてしまいます。バッドエンドです。
4.状況表示で「時刻」を表示してください。彼らは朝の5:00に練習を始めます。海に入るのに10分、1回行動するごとに1分、浜に打ち上げられるたびに20分(疲れて小休止)かかります。
5.浜に打ち上げられた回数が5回以上になると「不思議な板のおかげ」で息が合わなかった時の転覆率の上昇が20%、息が合ったときの下降が30%になります。ただし転覆率の上限、下限は変わりません。

余裕があれば「ゲームのロード/セーブ」機能を追加してください。仕様の詳細は皆さんにまかせます(これは中級者用コースの条件には含まれません。ファイルにアクセスできない環境もありますし。もちろん「復活の呪文」形式でやるなら止めません)。


○「松」(上級者用コース)
・対象 - 熟練プログラマ、時間がわりとある人

1.「中級者用コース」の条件をすべてクリアしてください。
2.今回のプログラムを「詳細仕様書」「テスト要領書」「テスト結果報告書」にまとめてください(プログラマの仕事の半分はドキュメント書きです)。形式、内容は皆さんにまかせます。


○「特上」(超上級者用コース)
・対象 - 時間がかなりある人、「ここまでのコースなんておちゃのこさいさいダゼ」というスーパープログラマ、あとできれは某社のプログラマ

1.「上級者用コース」の条件をすべてクリアしてください。
2.今回の企画書、仕様書はゲームバランスをまったく考えていません(机上で簡単な確率計算はしていますが)。その調整を実施してください。
3.史実(?)では「なんとか進むようになった時には、もうお天道様が真上にきてましたけどね」ということですから、ハッピーエンドが11:00~13:00に収まるようにしてください。
4.簡単すぎたり、あまり単純なことをやっていると遊ぶ人が飽きます。今回のゲームで「飽きないように遊ばせる」ために、条件やパラメータをどのように調整したらいいか提案してください。
5.調整方法はあてずっぽうで言われても困るので、第三者が納得できるようなレポート「ゲームバランス調整提案書」を提出してください。形式、内容は皆さんにまかせます。

----------------------------------------


今回の企画書、仕様書に質問があればこのスレッドに自由に書き込んでください。

「イ島奇譚(いじまきたん)」については、このBBSのNo.1404「イ島奇譚(いじまきたん)製作用ノート」

http://www.alfasystem.net/kyoiku/Child_Tree/cbbs.cgi?mode=one&namber=1404

を参照してください。


P.S. 8.29~8.31間はこの掲示板を見れません。それではまずいのであれば企画候補から外してください。


以上

そして「プレゼンテーション」と称して、以下のメッセージを書き込んだ。


NO.1720  プレゼンテーション
投稿者/ taked2
投稿日/ 2001/08/23(Thu) 14:38:10
URL/
 企画のコンペであれば、プレゼンテーションは許されているでしょう。そこでこの企画のプレゼンを行います。

今回の企画は、ゲームのプログラミング難易度としてはあまり高くありません。またゲームとしての面白さも少し欠けます。
それは今回の企画意図が「プログラマ志望者の具体的な技能レベルを知る」ことにあるからです。
もう少し具体的にいえば、各コースで次のような能力を要求しています。

1.「梅」初心者コース
基本的なプログラム能力。変数、カウンタ、判定、乱数の使い方。人間が入力したデータの取り扱い。また仕様書を読む能力。

2.「竹」中級者コース
プログラムの機能追加、改造能力。「時間」型データの扱い方。またオプションでファイルアクセスの方法。本当は他の人が作った「梅」を改造する方がより効果的なのですが、今回の企画条件を考えて外しました。

3.「松」上級者コース
ドキュメント能力、デバッグ能力。大体ここらあたりまでが業種は違っても一般的なプロのプログラマに要求される能力です。

4.「特上」超上級者コース
ゲームバランス調整能力(最低でもその材料を抽出する能力)、それを表現する提案能力。ゲーム業界とは仕事をしたことがないのでこれは勝手な想像なのです が、一般のプログラマとゲームプログラマとの大きな違いはここにあるのではないかと予想しています。

今回のプレゼンは以上です。なお付け足しになりますが、今回の結果を見て、自習課外プロジェクト「イ島奇譚(いじまきたん)・テキストアドベンチャー(仮 称)」を立ち上げる計画でいます(別に今回の企画の成否には関係なく)。この企画は「それの手始め」ということです。

竹田津はWeb上で動く簡単なサンプルプログラムも書いた。

しかし参加者は0。普通は派手な企画が通りやすいだろう。

「まあ、こんなところか」

竹田津はつぶやいた。

 

(*注意* 登場する人物、団体等は、全て架空のものです)