ここが変だよインディーゲームクリエイター CF2.5

購入しておおよそ3週間経ちました。起動時間見たら93時間でした。基本起動しっぱなしで放置したりするので、実際の作業時間は半分から1/3くらいかな?

今回はインディーゲームクリエイターの良いところとそれ以上に感じる理不尽な仕様についてお話しましょう…地獄の一丁目にようこそ…

前提として注記

  • インディーゲームクリエイター(CF2.5)は簡単ではない
  • プログラミング言語に関する知識は必要ない。けれどもやっていることは間違いなくプログラミングなので、そこを理解していないと辛いかもしれない…
  • さっぱり分からないならば、実際にプログラミングをやってみると良いかもしれません。例えばPythonとか…

IT系の専門学生はPythonを学ぶべき!!3つの理由

[amazonjs asin=”487311778X” locale=”JP” tmpl=”Small” title=”退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング”]

良いところ

インディーゲームクリエイター(CF2.5)はノンプログラマの方でもある程度慣れればそこそこのゲームを作ることが出来ます。それこそ簡単なゲームなら1日で作れるかもしれません。
例えばアクションゲームの作成に必要なキャラクタの表示、移動、ジャンプとはしごの動作、衝突処理などはデフォルトで用意されていて簡単にインポートすることが出来るのです。

コードを書かなくて良い

宣伝文句通り、全部クリックで完結出来ます。それが良いのかどうかはまた別のお話です。

チュートリアルがめちゃめちゃ分かりやすい

プログラミング経験者は勿論ですが、ノンプログラマーの方でも十分理解出来る内容です。私はこの手のチュートリアルを余り真面目にしないのですが、何も考えずにチュートリアルをこなしたら40分くらいでブロック崩しが出来ました。

日本語対応

私はG2Aで購入しました。Steamで有効化してとりあえず起動したら英語だったので絶望していたのですが、簡単に日本語に出来ます。

日本語化については以前記事にしたので、そちらを御覧下さい。

(CF2.5)インディーゲームクリエイターを購入しました!

悪いところ

最初はなんて手軽で素晴らしいツールなのだろう…と思うでしょう。ん…おかしいぞ…と思い始めたら入門者卒業ですw

内部フラグに名前が付けられない

最初驚いたのですが、なんとオブジェクトに利用できるフラグの数は32個までであり、さらに不可解なことにフラグの名前は変更出来ません。

  • 内部フラグ0
  • 内部フラグ1
  • 内部フラグ2
  • 内部フラグ31

ゲームの作成にフラグは不可欠な機能なので多用しますが、コードが増えるにつれ訳が分からなくなるのはご想像の通りです。

プログラミング経験者の人はこの時点で頭を抱えることでしょうw必然的に以下のような感じになり、カオスになります。

注意

以下、説明を分かりやすくするため、Pythonの文法を利用してアルゴリズムを解説しますがインディーゲームクリエイター(CF2.5)ではスクリプトを直接記述することは出来ません



##### フラグリスト
# 移動中
内部フラグ0 = False
# 攻撃中
内部フラグ1 = False
# 攻撃がヒットしたか
内部フラグ2 = False
# 拘束されているか
内部フラグ3 = False
# 移動キーが押されている
内部フラグ4 = False

if 内部フラグ4:
    # 移動している間内部フラグを偽にし続ける...
    内部フラグ0 = True

if not 内部フラグ0 and 内部フラグ1:
    # 攻撃がヒットした際の処理を行い、内部フラグ1を真にする...
    内部フラグ1 = True

if 内部フラグ1:
    # 敵HP減算処理を実行して、内部フラグ1を偽にする...
    内部フラグ1 = False

だいたいこんな感じの処理があると考えて下さい。寒気がするコードですね。この様に、開発する時は常にフラグ番号が何の処理を指しているのかをコメントにメモとして残して、それとにらめっこすることになります。

解決法

wikiに情報が纏まっています。

[blogcard url=”https://goo.gl/ouqW1u”]

なぜわざわざこんなことをしないと名前が付けられないのか理解に苦しみますが、とりあえずこれでなんとかなります。くれぐれもデフォルトのフラグ名で開発をしないで下さい。訳分からなくなりますよ。

条件が成立しなかった場合の処理は別に書く必要がある

例えば以下のような処理を書きたいとします。


# 移動中であるか?
内部フラグ0 = False
if 内部フラグ0:
    # 移動処理
    内部フラグ0 = True
else:
    # 停止アニメーションを表示する処理
    

みたいな感じ。シンプルです。これをインディーゲームクリエイターで行おうとすると以下のように書かなくてはなりません。


# 移動中であるか?
内部フラグ0 = False

if 内部フラグ0:
    # 移動処理
if not 内部フラグ0:
    # 停止
    # 停止アニメーションを開始

上記のようにインディーゲームクリエイターでは全ての条件式が真の場合のみ処理を行います。偽の場合の処理、すなわちelse句が使えません。偽の場合の処理は別途記述する必要があります。このため場合によっては条件式が非常に冗長となり、可読性がとっても下がります。これもマイナスポイントです。

現時点での評価

まあまあOK!!!

色々残念な点を挙げましたが、ゲーム開発ソフトの中では、とっつきやすさという点で群を抜いています。スクリプトを直接書き込めないのは少し残念だし、フラグに名前が付けられないのは意味不明だし、else句が存在しないのはもっと悲しいですがそれを補う手軽さが有ります。

ビルドもワンクリックで出来ます。通常版ではexeファイルだけですが、エクステンションを購入すると様々な形式に変換できます。

以下はG2Aへのリンクです。AmazonやSteamと比べると非常に安価で購入出来ます。購入の際はPayPalを通すと面倒事が減るかもしれません。PayPalで支払う場合、シールドを付ける必要はありません。PayPalがシールドですw

その他TIPS

AND(a AND b)はどうやるの?あとor(フィルタ)とor(論理)の違いは?

(CF2.5)敵キャラがプレイヤーを追跡するような条件式を考えた

上記の記事で解説していますので、良かったら御覧下さい。
2つの条件式を連続で記述すると、それらは暗黙の内にAND演算として解釈されますので、特に意識する必要はありません。
OR演算を行いたい場合、明示する必要があります。OR(フィルタ)は使用しないで下さい。

繰り返し処理について

明記されていないので分かりにくいのですが、インディーゲームクリエイターには3つのループが用意されています。

  • 常に実行(whileループ)
  • 高速ループ(forループ)
  • オブジェクトの数だけループ(foreach)

常に実行

その名の通り、指定した条件を満たす限り常に実行されます。例えばプレイヤーに追従するHPバーの位置は常に動的に変更しますが、その座標計算は常に実行で変更します。

高速ループ

指定した数だけループします。他のループは1フレームに1回実行されますが、高速ループは1フレームで全ての処理を行います。

オブジェクトの数だけループ(foreach)

言語によってはforeach文なんて呼ばれたりします。指定したオブジェクトの数だけループを行います。

予めオブジェクトに通し番号を割り振っておいて、foreach文でグルグル回して現在のindex番号(0から始まる)と比較して、特定のindex番号のオブジェクトに対してだけ処理を行う…みたいなことが出来ます。

終わり

夏休みといえばゲーム開発だ!!!皆さんもゲーム開発はインディーゲームクリエイターで初めましょう。このサイトでよろしければ、今後も解説や愚痴wを書いていきますので、ブックマークでもfeedlyでも登録しておいて下さい。

[ajax_load_more container_type=”ul” post_type=”post” category=”2%e3%81%a1%e3%82%83%e3%82%93%e3%81%ad%e3%82%8b%e2%98%86%e3%81%99%e3%81%8f%e3%82%8c%e3%81%84%e3%81%b1%e3%83%bc,python3,%e3%82%a4%e3%83%b3%e3%83%87%e3%82%a3%e3%83%bc%e3%82%b2%e3%83%bc%e3%83%a0%e3%82%af%e3%83%aa%e3%82%a8%e3%82%a4%e3%82%bf%e3%83%bccf2-5,%e3%82%b2%e3%83%bc%e3%83%a0,%e3%83%96%e3%83%ad%e3%82%b0,%e3%83%97%e3%83%ad%e3%82%b0%e3%83%a9%e3%83%9f%e3%83%b3%e3%82%b0,%e9%9b%91%e8%a8%98″ pause=”true” progress_bar=”true” progress_bar_color=”ed7070″ images_loaded=”true”]

4 件のコメント

  • CF2.5の使い方を検索してたらここに辿り付きました。

    CF2.5はツールとしては中々ですけど
    ツクールと比べて素材とか作って公開してくれる人が少ないのが難点ですね…。
    CF2.5のWIKI見ても住人も少ないみたいですし…

    • コメントありがとうございます!
      まさにその通りで、殆ど情報が無いんですよね…wikiも更新が止まっていたりしていますし。

      私が1番愕然としたのが、敵のAIは全て自分で作らなくてはいけないと知ったときですw
      その辺はコミコミで楽出来そうだから買ったのに…という悲しみを背負いました。事前に調べようにも情報が少ないので困りますよね。

      wikiもwikiで、手とり足取り載ってるのかと思いきや初心者向けのコンテンツが意外と少なかったりで結構大変ですよね。

      今後はその辺も記事にしていければなぁと思っております。

      • 自分は今年このソフトを安く手に入れたので
        ゲーム作成に手を付けようと思ったのですが、中々難しく放置しております…
        定期的に思い立って作ろうと色々調べたりするのですが中々難しく…
        結構素材さえそろえばいいソフトなんですけどね、皆ツクールばっかり使うから…

        もうすでに知っているかもしれませんが、自分が調べた中で使えそうなサイトを貼っておきます。
        何か参考にでもなれば。

        MMF2&CF2.5 のページに基本アクションのサンプルプロジェクトがあります。
        ttp://www.peposoft.com/
        こちらはニコニコ動画の講座です。
        ttp://www.nicovideo.jp/mylist/28297928

  • ゲーム制作に関わらずものづくりの質は序盤の出来如何で90%決まるって聞いたことがあります。

    CF2.5みたいに日本語の情報が少ないツールだと、どうしても細かい部分でしょっちゅう躓くので、それが原因なのかもしれませんね~。個人的には日本語訳が秀逸なので気に入っているのですが。

    情報量の差が凄いですからね。日本人はRPGスキーが多いですし…何より国産っていうのもありますね。
    わざわざインディーゲームクリエイターなんてよく分からないツールを使おうとは思わないのかもしれませんw

    私はRPGツクールの絵と音楽、メニュー画面を見聞きすると非常に萎えるので代替ソフトを探していてこれに行き着きましたw

    情報ありがとうございます!!peposoft凄いですね!!めぐみんのドットいいなぁw

    nicoの方もチェックしておきます!ありがとうございます~!

  • コメントを残す

    メールアドレスが公開されることはありません。