uka.apple のすべての投稿

ねこマタ入門 第1回 ロジックボードの表示

アプリ「ねこマタ」は、ニャンコ型のオートマタをロジックで制御するプログラミング風のロジカルパズルゲームです。

来るべきAI時代の到来に備え、将来AIに負けて職を失わないよう、むしろAIを制御できるような立場となるための訓練として、本アプリをお勧めします。

そんなお勧めのアプリですが、販売以来、ヘルプやチュートリアルが壊滅的に不親切と評判を呼んでおります。

そこで、今回から1024回の多岐に渡って、基礎から分かり易く遊び方を解説したいと思います。

第1回として、ねこマタを制御する「ロジックボード」を表示させるところまで進めようと思います。

以下、アプリを持っている方はアプリを操作しながら読んでください。持っていない方でも、詳しく解説しますので順番に読めばわかるようになっていますのでご覧ください。

アプリの初回起動時は、以下のような画面になります。

迷わず「New Game」を選択して下さい。その後、ニックネームの入力となります。ニックネームは、後々対人戦の際に使用することになります。5文字から15文字以内で、英数字で入力して下さい。

入力したら、次のような画面になります。「Single Play」を選択しましょう。

続けて、ステージ1をタップします

「TRY!」をタップします。

はい、以下の画面になりましたでしょうか?今画面下半分に見えているのが「ねこマタ」の「ロジックボード」です。今は何もセットアップしていないのでほとんど空っぽです。

試しに、画面上の羊をタップしてみましょう。すると、ロジックボードの表示が切り替わると思います。

これは、羊を制御しているロジックボードの内容です。この世界では、すべての敵も、ねこマタ同様にロジックで動作しています。何やら赤いパネルがいくつかセットされ、それぞれが矢印で接続されていますが、今は意味がわからなくても大丈夫です。順番に説明していきます。

このロジックボードは敵のもののため、変更は出来ません。見るだけです。ステージが進むと、一部の敵のロジックは見ることすらできないものもあるようです。

では、ねこマタのロジックボードのセットアップに戻るために、画面上のねこマタをタップしてみて下さい。

はい、表示が切り替わりましたね。画面上のキャラをタップすることで、いつでもロジックボードの切り替えが可能です。

次回から、このロジックボードをセットアップするための方法を基礎から分かり易く行いたいと思います。

第2回へ続く。

ねこマタ 新ステージ追加(ステージ32)

今日も「ねこマタ」のステージを追加作成していました。(暫くしたらバージョンアップしてこのステージもリリースします)

昨日のステージ31と同じく、このステージをクリアしても、今までに無い新しい「ジャッジパネル」を獲得出来ます。

このステージで獲得出来るジャッジパネルは、アクションパネルの「RandTurn」(ランダムに向きを変える)と同じく、ランダム要素を持つパネルです。

うまく使えば、半分のユニットは攻撃に、もう半分のユニットは防御に、など、同一のユニットでもその役割を変えることが出来ます。

尚、ステージ30以降は難易度を急激に上げているので、無理にクリアしようとしないでください。対人戦をやりまくって、経験値やロジックパネルを取りまくった後で丁度良い難易度かと思います。

ねこマタ 新ステージ追加(ステージ31)

今日は「ねこマタ」のステージを追加作成していました。(暫くしたらバージョンアップしてこのステージをリリースします)

このステージをクリアすると、今までに無い新しい「ジャッジパネル」を獲得出来ます。ジャッジパネルは条件判断をするパネルですが、この新しいパネルが何を元に判断するかは、敵の動きを見ると分かるようになっています。

敵をタップすると敵の「ロジックボード」(パネルが配置されている)を確認出来ます。
このステージに限らず、敵の動きがパネルの使い方の大きなヒントになっています。

新プログラミング学習アプリ「Swift Playgrounds」がアプリ「ねこマタ」のパクリな件について

・・・ごめんなさいウソです。

アップルの「Swift Playgrounds」の方が完成度が高いです。まずとっつき易い!初心者に優しい!段階を踏んで一つ一つちゃんと分かるようになっています!実際のプログラミングを学べるという点も大きな違いです。

ただ、似ていると思います。プログラミング的な考え方を求められるところが。ループの命令もあるし、うまく”ロジックパネル”を配置すれば、定型処理を行う関数を何回も呼ぶみたいなことも出来ます。

「ねこマタ」の方が頭使うし、ロジックを組んで対人戦も出来るし、こっちの方が面白いと思うんだけどなぁ・・・

個人的に。

「Swift Playgrounds」が物足りなければ、ぜひ「ねこマタ」をどうぞ。

パクリアプリ開発日記 85〜88日目 生命を模したユニット

浮遊大陸に住まわせる生命を模したユニットについて考えます。

・ユニットのエネルギー源

他ユニットを捕食して得る事とします。ただし、食物連鎖の考えを取り入れて、植物ユニットだけは日光からエネルギーを生成する事とします。

植物ユニットが育つ→植物ユニットを食べて草食動物ユニットが育つ→草食ユニットを食べて肉食動物ユニットが育つ

という形にします。

・ユニットの目的

特にありません。実際の生命と同じくたまたま生き残った個体が次の世代に引き継がれて、それを繰り返します。

・ユニットの動作原理

アプリ「ねこマタ」のロジックボードとロジックパネルをベースとします。3D空間を移動することや、食物連鎖、淘汰などの仕組みを考慮してロジックパネルの内容は調整します。また、生命を模したユニットを進化させるため、「Copy」コマンドは低確率でロジックの一部コピーに失敗するようにします。たまたまその生命を模したユニットにとって有利に働くようにロジックが改変されれば進化するし、不利に働けばその生命を模したユニットは死ぬことになります。

とりあえずこのくらいの考えをベースにして、あとは実際にプログラムを組んでみて、どうなるかシミュレーションしつつ、調整していきます。

環境としての浮遊大陸は、当初は10x10x10くらいのブロック内で構成してみます。

★☆★ 次回の作業 ★☆★

今回の考えを元に、プロトタイプを作成する。

パクリアプリ開発日記 84日目 システムの骨格

アプリのシステムを見直すにあたって、まずは骨格部分を決めようと思います。骨格が決まったら、少しずつ肉付けを行おうと思います。まずはふんわり決めて、アプリの方向は随時調整していきます。

★☆★ 今回の作業 ★☆★

システムの骨格を箇条書きにします。

・プレーヤーは、自然豊かな浮遊大陸を所有している。浮遊大陸は四角いブロックで構成されている。あ、これマイクラのパクリっぽい。

・浮遊大陸には、自立型の動作ロジックを持つ、生命を模したユニットを住まわせることが出来る。

・ユニットを浮遊大陸内に住まわせると、自然淘汰の仕組みにより動作ロジックがより効率的なものに勝手に変化していく。

・より効率的な動作ロジックを持つユニットを作って、他プレーヤーの浮遊大陸に攻め込み、資源などを略奪することが出来る。あ、これクラクラのパクリっぽい。

★☆★ 次回の作業 ★☆★

浮遊大陸や、そこに住むユニットの詳細を考える。

パクリアプリ開発日記 80〜83日目 パクらない

アプリの構想は全て決まっていました。マイクラとクラクラの良いとこ取りで、システム詳細までほぼほぼ頭の中で決定済みで、あとは作るだけでした。デザインなどの問題はあるとしても、残りの作業はあまり悩まずに、手を動かし続けていくだけでした。

ですが、あまりやる気が出ません。

終わりの見える作業はつまらないのだと思います。

自分には、プロトタイプ的にアプリを作りながら、随時軌道修正していく方がやる気が出るようです。

というわけで既存のアプリをパクるのはやめて、独自システムをこの4日間考えていました。日記のタイトルになっているパクリアプリの制作ではなくなってしまいますが、題名は変えずにこの日記は続けたいと思います。

★☆★ 次回の作業 ★☆★

アプリのシステムをまとめる。概要としては、浮遊大陸内で進化する生命的なものを育てて、同じく他のプレーヤーの浮遊大陸内で育った生命と戦う感じにします。アプリ「Catama」での自己複製するロジックの個体が、浮遊大陸内で随時動き回り、自然淘汰によりロジックが進化する(詳細は今後決定)ようなシステムを構想しています。

パクリアプリ開発日記 79日目 著作権

今日はマイクラとクラクラとゼルダをパクったUIを考えていましたが、著作権が心配になったので調べてみました。

この世には似たようなゲームがたくさんあります。さすがに絵や音楽の素材をそのまま使うのはダメかと思いますが、ゲームシステムが似たようなものは無数にあるため、著作権上どうなっているのか調べてみました。

結果、何とアイデアの盗用は問題ないそうです。

http://nlab.itmedia.co.jp/nl/spv/1203/08/news056.html
http://puzzle-tokyo.blogspot.jp/2013/11/blog-post.html?m=1

良心が多少痛みますが、堂々とパクリまくろうと思います。

UIは何となく似ているレベルならOKだと思います。多分。

★☆★ 次回の作業 ★☆★

UIデザイン完成

パクリアプリ開発日記 78日目 複雑なシステムのデメリットに対する対策

昨日挙げたデメリットに対する対策を検討します。

デメリット1.やる気をなくす

既存で普及しているゲームのUIを真似ることで、極力新しく覚える項目が無いようにします。

デメリット2.目的がぼやける

目的は、戦闘に強い空中都市を作ることで、ここはぶれないようにします。

デメリット3.どんなゲームか伝わり難い

キャッチコピーを作ります。

★☆★ 次回の作業 ★☆★

改めてUIを作る。