今日作ったドット絵はこれです。
ふたつ交互に表示するとちゃんと歩くかな?
この間作成したキャラは魔界塔士○agaのパクリでしたが、今回は完全オリジナルです。
多少、F◯3の◯イトをパク・・・オマージュしていますが。
・・・改めて見ると良く似てるな。F◯3の◯イトに。もうちょっと改良した方が良いかな・・・
日記を始めてからドット絵ばかり作ってきましたが、いつのまにか結構数が増えて楽しくなってきました。しばらく続けようかなあ。
10年間継続していたパクリアプリ開発日記ですが、本日を以って終了することとなりました。
有名ゲーム/アプリのアイデアを盗んで似たものを作る事になんの意味があるのか?社会全体にとって何が新しいことを提示するわけではないし、生産性がなく、全く無意味ではないのか?との思いから開発に力が入らず、本日の終了となりました。
明日からは心を入れ替えて”独創アプリ開発日記”を始めたいと思います。
とりあえず魔界塔士sagaをパクろうと思います。あのモノクロドット絵の雰囲気が好きです。
引き続きゲームのアイデア出しです。
・”生命の種”は、研究所で生産出来る。研究所はクラクラと同じような仕組みで建設やレベルアップが出来る。
・研究所などの建物は”ルピー”で建設出来る。ルピーは採掘場で採れる。採掘場もクラクラと同じような仕組みで以下略
・生命の種やルピーは貯蔵庫で蓄えることが出来る。採掘場もクラクラと同じような仕組みで以下略
★☆★ 次回の作業 ★☆★
プロトタイプの作成
ゲームの骨格部分がまだ決まっていません。
煮詰まってきたため、アイデアを箇条書きにして、出し切ったらその中から何が良いか選びたいと思います。
・シミュレーションゲームである(SimCityなどに近い)
・マイクラのようなブロックで構成された世界である。ただし、マイクラのようなただっぴろい世界ではなく、特定の大きさを持つ浮遊大陸である。
・植物、昆虫、草食動物、肉食動物などが生息する。これらを個体と呼称する。
・個体は”生命の種”で強化することができる。
・各個体はHPを持っており、植物は光合成で、昆虫や草食動物は植物を食べて、肉食動物は草食動物を食べてHPが増える。
・特定HPを超えると、複製して個体数が増える。
・各個体は、それぞれ動作ロジックを持っている。複製時、まれに一部ロジックが変化する。
・ロジックの変化により、より環境に適応するロジックならばその個体は増え、適さないロジックならばその個体は死滅する。
・自分のお気に入りの個体はストックすることができる。
・ストックした個体を、他人の浮遊大陸に放つことができる。
・他人の浮遊大陸で個体を一定数以上にすると、”生命の種”を奪える。
★☆★ 次回の作業 ★☆★
プロトタイプの作成
前々回、植物ユニットと動物ユニットの違いについて、システム的にユニットの違いをプログラミングで固定して区別してしまうと、システムに奥行きが出ないという話をしました。かといって、あまりに自由度を高めると、ゲームとして成り立たない気もすると考えて悩んでいました。
1週間くらい悩んでいたのですが、ようやく答えらしきものを見つけました。
仮に
A.光合成と、他の生命を捕食する方法の2つの手段でエネルギーを得る生命
B.他の生命を捕食する方法だけでエネルギーを得る生命
の2種類が存在した場合、生存競争の結果、Aは淘汰されてしまう可能性が高いと考えました。
なぜなら、光合成の仕組みと捕食の仕組みの両方を自分の中に維持し続けるのはとても効率が悪く、捕食のみをエネルギー源とする生命の方が、全体としてシンプルでエネルギー効率に優れ、結果としてAの生命は駆逐されてしまうと思うからです。
特殊な環境などで、Aの方が良い場合があるかもしれません。ただ、現状の地球の環境ではAはいないわけで、よっぽど特殊な環境でなくてはAは生き延びられないと考えます。
結論として、光合成と捕食の仕組みを同時に所持するコストが高ければ、どのユニットは植物、どのユニットは動物と、特に区別しなくても、環境内の自然淘汰の結果として、光合成が得意なユニットと、他の生命を捕食するのが得意なユニットと、勝手に分かれていくと考えます。ゲームとしてシンプルなルールの上で動作し、問題はないと考えました。
★☆★ 次回の作業 ★☆★
プロトタイプの作成
先日AlphaGoが人類最強の棋士を破りましたね。
AlphaGoを作ったDeepMind社のデミス・ハサビス氏は超天才プログラマーだそうです。彼が何と言おうが、彼は棋士の価値を貶めました。彼が近い将来に人間の知性を無価値なものにするのではないかと考えている人がいるかもしれません。でも安心してください。彼の作ったものは特定分野で人間に勝っただけで、一般的な人間の知性はまだ作ることが出来ていないのです。ですから彼は超天才とはいえ人間の知性に比べたら劣っていて、まだ人類はコンピュータに負けていないのです!(どういう理屈だ?)
そんなわけで、この3日間くらいは、ディープラーニングについて色々と勉強したり考えていました。今はインターネットで様々な情報にアクセス出来るため、インターネット上の大量データを活かし、ディープラーニングのような比較的単純な仕組みで自動学習させることで、高度な「何か」をアプリとして作れないか考えていました。
もう日記つけ始めて100日経つので、アプリの方針をいい加減に決めたいです。
★☆★ 次回の作業 ★☆★
なんとか新作アプリのプロトタイプを作成したい。
浮遊大陸に住まわせる生命を模したユニットについて、かなり悩んで考えています。
例えば植物ユニットと動物ユニットの違いについて、システム的にはこのユニットは植物ユニットだから光合成できる、このユニットは動物ユニットだから光合成できないなどとプログラミングするのは簡単です。
しかし、ユニットの違いをプログラミングで固定して区別してしまうと、なんというか、システムに奥行きが出ません。例えば光合成のできる動物が発生する可能性を排除したくないのです。
でもあまりに自由度を高めると、ゲームとして成り立たない気もします。
そのようなことを考えていたら何時の間にか1週間経っていました。どうしてくれるんですか?
★☆★ 次回の作業 ★☆★
なんとか自由度を高めつつゲームになるようにプロトタイプを作成したい。
浮遊大陸に住まわせる生命を模したユニットについて考えます。
・ユニットのエネルギー源
他ユニットを捕食して得る事とします。ただし、食物連鎖の考えを取り入れて、植物ユニットだけは日光からエネルギーを生成する事とします。
植物ユニットが育つ→植物ユニットを食べて草食動物ユニットが育つ→草食ユニットを食べて肉食動物ユニットが育つ
という形にします。
・ユニットの目的
特にありません。実際の生命と同じくたまたま生き残った個体が次の世代に引き継がれて、それを繰り返します。
・ユニットの動作原理
アプリ「ねこマタ」のロジックボードとロジックパネルをベースとします。3D空間を移動することや、食物連鎖、淘汰などの仕組みを考慮してロジックパネルの内容は調整します。また、生命を模したユニットを進化させるため、「Copy」コマンドは低確率でロジックの一部コピーに失敗するようにします。たまたまその生命を模したユニットにとって有利に働くようにロジックが改変されれば進化するし、不利に働けばその生命を模したユニットは死ぬことになります。
とりあえずこのくらいの考えをベースにして、あとは実際にプログラムを組んでみて、どうなるかシミュレーションしつつ、調整していきます。
環境としての浮遊大陸は、当初は10x10x10くらいのブロック内で構成してみます。
★☆★ 次回の作業 ★☆★
今回の考えを元に、プロトタイプを作成する。
アプリのシステムを見直すにあたって、まずは骨格部分を決めようと思います。骨格が決まったら、少しずつ肉付けを行おうと思います。まずはふんわり決めて、アプリの方向は随時調整していきます。
★☆★ 今回の作業 ★☆★
システムの骨格を箇条書きにします。
・プレーヤーは、自然豊かな浮遊大陸を所有している。浮遊大陸は四角いブロックで構成されている。あ、これマイクラのパクリっぽい。
・浮遊大陸には、自立型の動作ロジックを持つ、生命を模したユニットを住まわせることが出来る。
・ユニットを浮遊大陸内に住まわせると、自然淘汰の仕組みにより動作ロジックがより効率的なものに勝手に変化していく。
・より効率的な動作ロジックを持つユニットを作って、他プレーヤーの浮遊大陸に攻め込み、資源などを略奪することが出来る。あ、これクラクラのパクリっぽい。
★☆★ 次回の作業 ★☆★
浮遊大陸や、そこに住むユニットの詳細を考える。
アプリの構想は全て決まっていました。マイクラとクラクラの良いとこ取りで、システム詳細までほぼほぼ頭の中で決定済みで、あとは作るだけでした。デザインなどの問題はあるとしても、残りの作業はあまり悩まずに、手を動かし続けていくだけでした。
ですが、あまりやる気が出ません。
終わりの見える作業はつまらないのだと思います。
自分には、プロトタイプ的にアプリを作りながら、随時軌道修正していく方がやる気が出るようです。
というわけで既存のアプリをパクるのはやめて、独自システムをこの4日間考えていました。日記のタイトルになっているパクリアプリの制作ではなくなってしまいますが、題名は変えずにこの日記は続けたいと思います。
★☆★ 次回の作業 ★☆★
アプリのシステムをまとめる。概要としては、浮遊大陸内で進化する生命的なものを育てて、同じく他のプレーヤーの浮遊大陸内で育った生命と戦う感じにします。アプリ「Catama」での自己複製するロジックの個体が、浮遊大陸内で随時動き回り、自然淘汰によりロジックが進化する(詳細は今後決定)ようなシステムを構想しています。