できる!ゲーム制作 ~Perl入学式 卒業制作~
Perl入学式 Advent Calendar 2016 5日目の記事です。
まずは軽く自己紹介。
2011年に大阪で始まったPerl入学式。当時、受講生としてとして参加してプログラミングを教えてもらい、そして翌年よりin大阪サポーターとして参加しているTomchaです。現在は、なにわPerlというもくもく会の主催もしています。職業はエンジニアではない、ただのコンピューター好きおじさんです。
序章
さて、皆さんがプログラミングを始めたきっかけは何だったでしょう? 僕の場合、それは遠い遠い昔任天堂から発売されたコイツが世間で大ブームだった時代、
たしかクリスマスプレゼントかお誕生日プレゼントだかで本体を買ってもらいました。 しかし当時は小学生。そうそうゲームソフトの新作なんて買ってもらえず、でも色んなゲームがしたい!でも買えない!
これを使えば自分でケームが作れる!マリオもドンキーコングも自分で作れる!作りまくれば色んなゲームがタダで遊び放題!! だけど現実はそんなに甘いものではなく、ファミリーベーシックのスペックは自作プログラム保存メモリ1,982バイト、ベーシック言語、しかも当時小学6年生。あっけなくゲーム作成の野望は砕け散りました...
そして月日はウン十年流れ、、、
Perl入学式でプログラミングを体系的に教わり、趣味でコードをぼちぼちと書いていたある日、書店で横井軍平さんの本を見つけました。
おお、懐かしのゲームウォッチ!そういえば初めてデジタルなゲームをしたのはゲーム&ウォッチの「マンホール」だった。 もしかして、遠い昔に挫折したゲームのプログラミング、大人になった今これぐらい簡単なものならなんとかなるかもしれない?!
https://www.nintendo.co.jp/ds/arjj/gamewatch/
そして懐かしさのモチベーションだけでなんとか完成までこぎつけたのがコチラのプログラムです。
もちろん、Perlで書いています。
中身はむずかしくなくPerl入学式の第1回から第4回までの講義内容+モジュールの使い方くらいでできてしまうプログラムです。
リアルタイムのアクションゲームなので、Term::Screenというモジュールを使ってみました。
モジュールの使い方は、ひさいち先生のブログ記事を参考にさせていただきました。
ゲームを作るにあたって考えたことや工夫したこと
- ゲームウォッチのゲームって、ほとんどがモチーフは違えど中身のゲーム性は同じと気づいたこと。
- 迫ってくる何かをキャッチする又は避ける、それが時間差で2ライン、3ライン、4ラインあるなぁと気づいた。
- 迫ってくる何かは、配列を使って位置を1つずつずらしていけば(shift+push、unshift+pop)表現できるなぁ。
といったところでしょうか。あとはn秒毎に配列の中身を画面に描画すればゲームのステージは出来上がりました。
そうです、Perl入学式で学んだ技術でアクションゲームが作れてしまうんですね〜。
みなさんPerl入学式で一緒に学んでいきましょう!
そして古き良き時代のおっさんたちへ、、、
昔懐かしいノスタルジックな記事にピンときたあなたも、そうでないあなたも、
12月10日開催の北海道に続き、大阪で・・・詳細は続報を待たれよ!
さて、明日のPerl入学式 Adventcalenderは、in大阪サポーターのsago35さんの記事ですね。 何が発表されるか楽しみですね!
横井軍平ゲーム館: 「世界の任天堂」を築いた発想力 (ちくま文庫)
- 作者: 横井軍平,牧野武文
- 出版社/メーカー: 筑摩書房
- 発売日: 2015/08/06
- メディア: 文庫
- この商品を含むブログ (5件) を見る
- 作者: 牧野武文
- 出版社/メーカー: KADOKAWA / 角川書店
- 発売日: 2015/06/10
- メディア: Kindle版
- この商品を含むブログを見る
- 出版社/メーカー: 任天堂
- 発売日: 2016/11/10
- メディア: Video Game
- この商品を含むブログ (11件) を見る