モノづくりのうえで最も大切なこと
Pi STARTER(ラズベリーパイ用BASIC言語パッケージ)版
ひとりで遊べる人狼ゲームを公開中(要ラズパイ&Pi STARTER)
http://www.ne.jp/asahi/chitose/net/download/jinrou/
「見当も付かない…これがどういう目的の質問なのか!?
だがかなりヘビーなクエスチョンだなこれは…」
モノづくりのうえで最も大切なこと。
あなたなら何と答えますか?
もしあなたが何らかのクリエイターならば、少し考えてから先を読み進めていただければ幸いです。
ある方は、それはデザイン力だと言うかもしれません。
ある方は、それはアイデアだと言うかもしれません。
ある方は、それは経験だと言うかもしれません。
ある方は、それは才能だと言うかもしれません。
ある方は、それはポン酢しょうゆのある家さと言うかもしれません。
各々の回答は、その方なりに正しいのかも知れません。
でずか私がこう問われたら、私の返す答えはたったひとつです。
「完成させること」
どれだけ壮大な構想を持っていようとも、どれだけ時間をかけてデザインしようとも、作っている人間がどれだけ著名人であろうとも、完成しなければそれは他人から見てゴミ以下の価値しかありません。
逆にそれが第三者から見てどれだけヘボくて稚拙でみっともなくとも、作った人が作りたいものを目標通りに完成させたなら、そのときはじめて作品に価値が生まれるのだと私は思います。
さて、Raspberry PiとPi STARTERという道具を手にし、作りたいものの姿形をおおむね定めた私は、とりあえずの目標を
「どんだけデタラメでもいいから、最初から最後まで動くようにする」
と定めました。
発言内容はとりあえず全部ランダムでいい。
プレイヤーの発言による影響とかも全無視でいい。
1日目過ぎても、会話のパターンは一緒でいい。
ボディーガードも予言者も霊媒師も仕事はすべて適当でいい。
各村人の投票もランダムでいい。
人狼が襲う奴もランダムでいい。
とにかく大切なことは、役職決めて1日目が始まってどっちかの陣営が勝って終わるまで、エラーを吐き出すことがないようにする。
それが目標。
不満があれば、それは目標をすべてやり終えてから直せばいい。
この目標が途中でどうしても達成できなければ、そのときは投げ出そう。
もとより無謀な挑戦なんだからしゃあない。そういうときもある。
でも、中途半端に細部にこだわって目標を遠ざけたり見失ったりすることだけは絶対にするな。
お前のやるべきことは「どんだけデタラメでもいいから、最初から最後まで動くようにする」これだけだ。他はない。分かったか。
…誰に語り掛けてんだかという感じの文章で失礼しました。
ともあれ、このように割り切ったためかスタートダッシュのエンジンのかかり方は我ながら結構なものがあり、当初の目標であった「どんだけデタラメでも最初から最後まで止まらずに動く人狼ゲーム」は、何と着手から1か月くらいで完成してしまったのです。
「何を知っていて何を知らないのか」で書いたように、私はそれまで6個くらいしかBASIC命令を知らず、これまでゲームプログラムを一度も完成させたことがありませんでした。そんな私が、会社終わって1~2時間の余暇で取り組んで1か月でとりあえずの成果物を完成させたのです。
まぁその当時の「人狼ゲーム」見てやってください。これですよ(笑)。
ゲーム中の画面はこんな感じ。
エンディングはとりあえず仮。それにしても…。
最終的にリリースしたあの「人狼ゲーム」を見ていたら、何じゃいこれはと思うかもしれません。
でもこれが不思議とそれなりに遊べちゃったのですよ。
判定が何もかもランダムだった分、むしろいまのバージョンより素直な出来だったかもしれません(笑)。
ここでもし私が作ってる最中に「この会話は不自然だからもう少しリアルに構成しなくては」とか「ちゃんと人狼が考えて襲うようにしなくては」とか考えてたら、おそらく完成する前に投げ出していたことでしょう。
自分が作れたから偉そうに言うわけではないのですが、いつまでたっても目標を達成できない人って、最初から「頭の中にある理想」を完成させることにこだわっているんじゃないのかなぁと。
自分がその分野に対して素人であるならば、最初に立てる目標はおおざっぱで構いません。とにかく手を動かして「最低限動くまで完成させること」を目指しましょう。
それがプログラムであれば、出来上がったものがどんなに稚拙でポンコツであっても、あとからいくらでも修正できるのですから。
プログラミングに限らないかも知れないけれど、何か新たにモノ作りに挑戦したいあなたへに伝えたい、最も大切なこと。