PipeMapping

アプリ開発

[PipesMapping]問題作成ツールを作った

パイプマッピングはひたすら問題を解くパズルゲームなので、コンテンツ(問題)が命。
解けない問題は絶対に作ってはいけない。
問題数も増やさないといけない。
骨のある問題も作らないといけない。
ということで、ある程度自動で問題を生成するツールを作ってみました。

どんなツールか

もともとWindows+.NETプログラマなので、Windowsアプリとして作っています。
マス目の数とスタート地点とゴール地点を指定し、スタート地点とゴール地点を結ぶ経路を全パターン探します。
移動距離を元に、パズルとして使えそうなものを選択して、画面に表示します。
これがいわゆる正解ルート(の一つ)。

経路を一つ選んで画面に表示

次に、このルートを壊さないように代替のパイプに置き換えます。
たとえばL字のパイプであれば、十字やT字のパイプに置き換えて向きを変えたりします。
その後で正解ルート以外にパイプを置いていきます。
このあたりは画面クリックでパイプを設置、変更できるように作りました。
ただ、だんだん面倒になって(プログラマ気質)、パイプの互換性を維持しつつランダムにパイプをチョイスする機能もつけました。

正解ルートを壊さないようパイプを配置

最後に、ソースを生成して、ペタッとエディタに張れば完成です。

所感

パズルゲームを作ろうと思ったときからこの構想はあったけれど、意外にプログラムに起こすのは難しい内容だった。
問題をこの先も作り続けなければいけないので、思い立って作ってみました。
即興で作った割にはよくできていて、休日を一日使っただけのことはありました。

ここまでできるのであれば、パズルを作る機能自体をアプリに搭載してもいいんじゃないかと思い始めた。

-アプリ開発
-,