『倉子ちゃん』制作ノート

 プログラムばかり作っていて最近ブログを書いてないので、最近作ったプログラムについて記してみる。

昨日一般公開した『早押し百人一首 十連‼』についてはおいておいて、1月末に公開した『倉子ちゃん』について記しておく。


倉子ちゃんはプログラムの練習用に作ったシンプルなパズルゲーム。

昨年から行っているプログラムの再学習を今年も引き続き行うという方針の元に作成している。

ゲームの内容はずばり往年の名作『倉庫番』を元にしたもので、非公開の初期版では『倉庫番』との相違点は殆どなかった。

ゲームのルールに著作権は存在しないとはいえ一般公開するにあたって『倉庫番』との差別化は必要だろうと思った。

そこで、いくつかの案を考えたのだが、基本的なゲームシステムが変わると手間がかかるので、荷物そっくりのダミー荷物を作り、ダミー荷物は触ると消えるというシステムを採用した。

これが最も手間がかからないアイデアだったし、ダミーを見極めて消してしまった後は普通の『倉庫番』と同じ感覚で遊べる。

この『倉子ちゃん』に限らないが、公開しているウェブアプリは全て素のJavascript(Vanilla JS)で作成している。

昨年の初め、ゲームを作ろうとして初めに選んだのはUnityというゲーム開発環境だった。
実に簡単にゲームを作れることがわかったが、肝心のモバイル向けウェブアプリに対応していなかったので、早々に使用をやめた。

その後は、Webアプリに特化したPlaycanvasの練習を行っていたのだが、各種チュートリアルや解説記事がPlaycanvasのバージョンによって動いたり動かなかったりして、Playcanvasのルールに振り回されるのが嫌になった。

そうして、結局Javascriptを基礎からやり直すことにして開発環境やライブラリの類は一切使わない方針へと転換した。

その後は毎週なんらかのプログラムを作り、公開する価値があるかもと思ったものは公開してきた。

『倉子ちゃん』もそうした多少は公開する価値のあるプログラムの一つで、必要以上に手間を掛けていない。

例えば右に動かした時に右向きに、左に動かした時に左向きになるとか、歩くアニメーションを実装するとか、そういう事はしていない。

そういうのはゲーム開発環境なら簡単に実装できるのだろうけど、一つずつ自分でプログラムを組むと結構時間のかかる作業になる。

現状はプログラムの練習が主目的なので見栄えを良くして少しでもたくさんの人に使ってもらうという段階にはない。

ただ、『倉子ちゃん』はいままで公開してきた他のプログラムとは異なる面もある。

それはステージ制の実装である。

『倉子ちゃん』のゲーム性からして、様々なステージを実装したほうが面白いのは明白だし、マップは2次元配列で管理していたのでマップを切り替えるのはプログラム的にはなんら難しくない。

そして、マップを作るという作業は実に面白い作業なので苦ではなかった。

一般公開にあたって8ステージを実装して公開した。(これ以前に公開したペアカードやスライド式15パズルはステージ制を考えたものの結局実装せずに公開している)

ただ、結果的に作業時間は結構かかってしまったので、どうせなら色んな人に遊んでもらいたいという気持ちになり、『フリーゲーム夢幻』というサイトに掲載してもらった。

やはりこの様なゲームを遊びたい人が見に来るサイトに掲載すると遊んでくれる人が増えるということはよくわかった。

『倉子ちゃん』を作ってゲームを作るって本当に面白いなぁと実感した。

もっともっと面白いゲームを作りたい。そのためにはプログラムの再学習を進めて出来ることを増やしていく必要がある。

つまり現在の方針を継続して進めるしかない。


コメント

このブログの人気の投稿

Googleスプレッドシートの正規表現置換で改行文字

Googleスプレッドシートのimportxml関数をhtmlに使う

『ベトナム語』多言語対応学習アプリDropsを一年以上続けてみた