【CF2.5】Clickteam Fusion/Multimedia Fusion 18
■ このスレッドは過去ログ倉庫に格納されています
汎用ゲームエディター『Multimedia Fusion 2』及び、『Clickteam Fusion 2.5』シリーズに
関する情報、技術、雑談、質問などに使いましょう。
■前スレ
Clickteam Fusion/Multimedia Fusion 17
http://mevius.2ch.net/test/read.cgi/gamedev/1497516518/
■参考リンク
・Clickteam本家
http://www.clickteam.com/
・Multimedia Fusion 2シリーズ日本語版公式サイト
http://www.clickteam.jp/
・Multimedia Fusion 2 wiki
http://wikiwiki.jp/mmf2/
・mfaアップローダ
ttp://ux.getuploader.com/mmf/
・『Multimedia Fusion2』避難所
http://jbbs.livedoor.jp/computer/43067/
・チャット
http://mmf2.chatx2.whocares.jp/s/ 👀
Rock54: Caution(BBR-MD5:360ef48a43ef0695cb8030eccea04863) 高速ループ、配列、イベントグループ、オブジェグループ、iniと強力な機能あるからCFの勝ち アクツクMVで作る楽しさを知ってその後物足りなくなったらcf2.5に来ればええ RPGツクールMVと同じくアクションツクールMVはJavaSprictが使えるみたいだから
盛り上がってプラグインが充実すればいい感じになりそうだけどね
cf2.5をすでに使ってる人が移る理由は現状あまりなさそうかな 現状cf2.5で思い通りに作れているんでアクションツクールMVに移行する予定は無いけど
フロー形式はちょっと良いなっては思った
ツクールは自由度犠牲にする変わりデータベース管理楽だからメリットもあるね
初代アクツクでも床壁判定やアニメーション毎に攻撃判定、当たり判定設定出来たし
触ってみないと何とも言え無いがある程度ひな形出来てる分楽かな
cf2.5でデータベース管理しきれないで作れない人なら候補に上がるか?
ただツクールでRPG以外はバグが…放置しやがるからな… >>713
お!いい感じじゃないの! 嬉しいねぇ 先は長いのかもしれんけど頑張ってね >>725
フローチャートみたいに組めるって奴
例えばあるオブジェクトがAの時Bの行動出来てBの時はC、Cの時はBってなると
A→B→←C
上は文字だがこんな感じで図形表示だから視覚で管理しやすくなるが
俺はノートに手書きフローチャート書く派だから正直逆にやりにくい
そもそもツールに斬新さは求めてない、目的の制作できれば使い慣れた方が良い
CF2.5から脱線しすぎたので俺はこれ以上この話題には触れない(´・ω・`) >>726
ありがとうございます!
敵の出現と、近接攻撃と遠距離攻撃も実装してみました。
CF2.5は始めたばかりですが、確かに先は長そうですw
でも、このスモールステップの積み重ねがすごく楽しいです!
https://ux.getuploader.com/mmf/download/1062 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) >>729
( ^ω^)b グッジョブ!!
次は15行目〜20行目の判定処理だけどグループ化を使えば1行にまとめられるぞ
オブジェクト→プロバディ→オブジェクトグループ
まだ実感わかないかもしれないけどイベントリストからコメント挿入も意識すると良いよ
基礎知識身につけるまでが大変だけど乗りきっちゃえば後は応用で何とかなるよ
悩みながら積み重ねるの楽しめるなら大丈夫、ぶっちゃけこの部分は経験積んでも無くならない 確かに、大分使いこなせるようになってソコソコのものならすぐに作れるけどそれでも悩む時間はかなりあるなぁ >>729さんのにコメント振ってみた
色付きは大分類で白がそのグループ
動作自体はあえて一切いじってませんが視認性は増したと思います
少しづつで良いので慣れてきたらイベントは細かく分けた方が良いですよ
メンテナンス性を高める→自分で作った処理を忘れにくくなる
ttps://ux.getuploader.com/mmf/download/1063
・初めて作る動作は逆に効率ガン無視でとにかく動かす←(超重要、この時点で効率なんていらぬ捨てちゃえ)
・目的の動作が出来たらコメントを付けて行ってみる
・直せる部分がないか見直してみる(この時点で効率化出来ないか検討もしてみる)
・バックアップとって3日位他の作業をする
・3日後もう一度同じ動作を1から組んでみる→成功したらおめでとう!
上のやり方は一見手間暇かけてる無駄な作業に思えるかもしれないが
脳内で動作する理屈を整理するのに役立つ方法です
俺は昔、自分の脳内整理用に解説サイト作りました
自分で解説しといて改めて仕組み整理されるから「おお〜」とか一人で言ってた 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) 3年くらい使ってるけどコメントに色付けれるの初めて知ったわ
めっちゃ見やすいね( ^ω^)b 細かい仕様って気づかないとずっと気づかないままだよな
そんなことできたんかーい!ってのがいまだにある グローバルイベントでオブジェクトグループ使う方法とかね
そんなことできたんかーい!ってなった 気が付かなかった仕様に気が付いた時もだけど
悩みに悩みまくってた動作が突然の閃きで一気に解決した時
ぷよぷよで全消ししたようなめっちゃ爽快感あるよね
…逆に販売開始から1ヵ月位訪れる人海戦術のバグ発掘祭り怖い
ユーザーさんと絵師さん楽しそうに交流してる中俺は泡吹いてる 販売じゃないけどフリーゲーム公開してバグ指摘されたことあるよ
原因究明次第すぐに対処します!!と返したけども、
結局バグの原因特定できなかったので放置してる >>730
敵と、プレイヤー攻撃判定をそれぞれオブジェクトグループに設定してコンパクトにまとめられました!
ありがとうございます! >>732
これはすごい…
すでにイベントが増えてどれがどの動作か探すのに手間取っていたところでしたw
この先、イベントやオブジェクトがどんどん増えていったらどうなるんだろうかと漠然とした不安あがありましたけど
コメントとオブジェクトグループでコンパクトにすることで把握しやすくなりますね。
今はあれこれ試行錯誤しながら動かしている段階ですので、これからコメントをつける段階に移ってみます。
見直しや1から組むのも試してみます!
作業効率が飛躍的に向上しそうです!ありがとうございます! >>783
おめでとう!
後、覚えておくと便利テクニックとして
オブジェクトの使い方は大まかに2種類あるって覚えると良いよ
1つはキャラクター用、2つ目は各種判定に使うセンサー用
1つ目のキャラクター用はその名の通りプレイヤーが実際に見る事になる自機や敵だね
2つ目のセンサー用ってのは簡単に言えば色々な当たり判定に使えるって事だよ
例えばオブジェクトABCDがあったとするよね
Aはキャラクターとして使い、BCDはAの位置情報に合わせる
BCが通常ダメージでDの位置を弱点部位にしたり色々出来る
他にもオブジェクトAに触れたらオブジェクトBが反応したりすれば視界を作る事も出来るんだ
これを障害物に当たったら消滅する弾みたいにとばしてやると「障害物に隠れれば見つからない」って動作の出来上がり
他にも色々あるけど一気に説明してもSAN値チェックはいりそうなんで今回はこの辺で オブジェクトグループってバグ多いから怖くて使えないわ
どんなのだったか忘れたけど復帰不能なバグだったのでそれ以来
使ってない ごめん多分めちゃくちゃ初歩的なことでどこかで手順見たことあるんだが
ド忘れしてしまったので教えてください…
画面のスクロールに合わせずにずっと同じ位置に表示されるオブジェクト(一時停止ボタンとか)ってどうするんだったっけ… アクティブオブジェクト→プロパティ→ランタイムオプション→動作領域に固定 >>740
ありがとうございます!
操作キャラや敵キャラオブジェクトとは別に、当たり判定用のオブジェクトを設定するんですね
これは、一定時間でどんどん生成される敵の場合は当たり判定もそのつど生成すればそれぞれの当たり判定は個別に判別されるんでしょうか
というか、聞く前にとりあえず試してみますw
>>730さんと>>732さんのアドバイスのもと、オブジェクトグループとコメント挿入を導入して、フィールド拡大、スクロールにボスキャラ配置もしてみました(オブジェクトグループはまだ扱いきれていませんが…)
ゲームクリアとゲームオーバーの概念も取り入れてみたので、いちおうゲームとしての最低限の形は作れたとおもいます
https://ux.getuploader.com/mmf/download/1064
次に壁などの障害物を導入したいんですが、このプレイヤー操作で壁をすり抜けない方法を試行錯誤中です
壁に接触→「動作」→「停止」だと操作不能になるので難しい… 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) >>745
簡単にすますなら障害物に衝突→バウンス
長所:1行で済むお手軽さ 短所:反動がついて完全停止にはならない
多少手間でも完全停止させたいならバウンスでは無く>>740で説明したセンサーの出番になる
自機の他に細い長方形オブジェクト4つ作成して□の様に配置する
ポイントとしては1ドット外側に出してやってお互いが被らない様に注意
上のオブジェクトが障害物に触れたら高速ループ発動、1ドット分下に移動
障害物に触れなくなったら高速ループ終了
下左右も同じように反対側に強制移動させれば完成
長所:障害物がどの方面からぶつかったか探知出来る 短所:めんどくさい、微調整必須、〇形の判定には向かない
ちなみに2番目のやり方を応用すると壁にぶつかったら反転するキャラや
ジャンプACTなら穴を回避する判定にも使えるよ >>746
まずは自機に上下左右の衝突を判定するコリジョンを実装し、障害物も用意しました!
かなりゲームっぽくなってきて嬉しいです!
ありがとうございます!
https://ux.getuploader.com/mmf/download/1066
今後は、これをベースに敵にも当たり判定を用意したり、グラフィックも即興のものではなくちゃんとしたものを描いて実装していきたいですね。
あと、つまづき中のマルチタッチによるプレイヤーの攻撃も実装したいです。
最終的には、HTML5でコンバートしてPCブラウザとスマホブラウザ両対応のゲームに仕上げたいです。
グラフィックなら割とポンポン描けるので、基礎のエンジンさえ完成したらそこからはどんどん進捗できそうです!。 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) ディアブロみたいに、敵を攻撃したときに与えたダメージ値を
こう……ポップさせようとするときって、どういう処理をしてます? 俺はやったこと無いけどアクティブオブジェクト使って0〜10の数字を
アニメーションシーケンスかアニメーション方向に振り分けて処理を全部自作するか
カウンターを複数使用して固定値使ってポップアップ動作を組んだオブジェクトと
位置同期させるかの2択じゃないかな
どちらにしても値を一桁ずつ読み込んで反映させなきゃならないから面倒な処理だよ オブジェクトの変数に名前つけても
グローバルイベントで呼び出すとき変数A、B、Cとデフォルトのに戻るのはどうしようもないのかな >>748
スマホとかHTML5は解らないからPC版だけ
1.カウンター→番号→イメージで0〜9までオリ画像使える
2.最終ダメージを一時的に変数に入れて作成したカウンターに代入&ダメージ処理
3.カウンター動作は好みで動かす
4A.カウンターにパス動作を持たせる、終点に到着で破壊
4B.エクステンション Value-Add Objectを使って無理やりカウンターに変数を持たせる、規定値過ぎたら破壊
これの欠点はオブジェクトよりもカウンターは処理負荷が重いって事
雑魚をいっぱい出したいならダメージ事にポップさせるんじゃなく
トータルダメージまでカウンター上昇するような演出にする必要が出るかもしれない >>749-751
コメントありがとうございます
確かに、カウンターのまま大量に出したら超重くなりそうだ
でもアクティブオブジェクトで出すの面倒そうだなー……悩む HTML5で書き出す時に画像や音声を暗号化ってできる? DEV版持ってる方よければ教えてください
データグリッドオブジェというのは使い勝手はいいですか?
たとえば文字列オブジェのパラグラフ入力みたいに簡単にデータ入力できるようなカンジですか?
使いやすそうならDEV版購入しようと思っています よろしくお願いします そんなグラフィカルなものじゃない
A-1 にXX代入
B-5 にXXX代入
とか命令で代入して同じように命令で呼び出す感じ
どこに何を入れるかは・・エクセルで別表作って管理しないと把握は無理かな
当然記録してないと、後でどこに何が入ってるかは把握不可能なので注意 どう言葉で説明していいか分からないレベルですがちょっと相談。
RTS風の画面で、ユニットをクリックしてから移動先を指定すると
単純に(移動先X座標-移動元X座標)*速度みたいな感じで
目的地に向かって少しずつ移動する仕様にしたんだけど、
重なったユニットをクリックすると両方同時に選択しちゃうんよね
複数同時に選択しないようにする、もしくは重ならないようにするには
どういう風に作ればいいでしょうか。分かりにくい文章で申し訳ない。 >>756
セレクトオブジェクトの出番かな
セレクトオブジェクトはあまり詳しくないんでwiki等で自分で調べてみて >>756
ランダムに一つ選択ってのが使える可能性
ランダムでいいのか不明だが >>757-758
ありがとう、セレクトオブジェクトちょっと調べてみる!
ランダムだとちょっとゲーム性的に合わないかも知れないが
一回試してみます >>755
プロパティから表を表示できてそこに直接データ入力していけるみたいなのかと思ってましたがどうやらちがうみたいですね
命令で入力、呼び出しってことは配列オブジェの使い方と似たような感じでしょうか? >>760
ごめん配列オブジェクトと間違えてた
データグリッドオブジェクトは値からエクセルの表を表示する奴だ
リストビューオブジェクトも同じような機能
入力は出来なかったと思うのであくまで表示するだけだったかな? なるほど
表示させれる機能があるだけってことですか うーん・・・
自分で配列入力用のプログラム作ろうかな(;'∀')
情報ありがとうございます! ツイートボタンがついてるcf2.5製のゲーム見つけたんだけどどうやるのん? 敵の破壊処理で
・変数「敵の体力」=0
敵のアニメーションシーケンスを死亡に変更
・敵のアニメーションシーケンスを死亡が終了
敵:破壊
という具合に組んでも死亡アニメが終った後に消えず、
そのまま敵の残骸が最後のコマの状態で残ってしまいます。
この残骸に主人公が触れると残骸は消えるんですが、
まともに動かないのは何が原因だと思いますか?
最後のコマはループにはなっていません。 原因ははっきりと分らないけどシンプルに
変数「敵の体力」<=0のとき破壊
だけでいけるような気もするんだけどどうだろう >>765
ある特定の条件で生成されたOBJは
「アニメーションが終了したら破壊」では破壊されずに最後のフレームのまま画面に残る
これバグなんで、対象アニメーションの最後に透明のフレームを差し込んだ上で
↓こんな感じ。何で最後透明フレームを入れるかと言うと、入れないと最後のフレームが表示されないから
●●●●〇
「現在のアニメーションフレームを比較」でxxフレーム以上時破壊の処理をする
この場合4フレーム目 >>766 >>767
アドバイスありがとうございます。
最後に透明フレームを入れる方法で無事解決できました。
2年近く弄ってますが、このバグは初めてでしたね。
似たバグで、攻撃モーションが終ったら弾を発射という動作も上手く行かず、
困った事がありました。
これは重ねてあった別のオブジェのアニメを1コマ少なくしてそちらが
終了したら発射させてましたが、こちらの処理も透明フレームで解決できそうですね。 アニメのフレームで条件を設定するのは
信用ならないので、
常時カウント用の変数作ってアニメさせてる。 >>769
色々信用ならないから最終的には大体自分で実装するスタイルになってくるよねw 条件制限の「イベント連続時にアクションを1回のみ実行」も信用できん。
組み方によっては途中から実行されない事が多い。 その代わりツールに支配されずに自分で思ったように組めるのはありがたい そういやバグになれた作り方になってて今まで忘れてたわ
強烈なバグっていったらタイマーベースでやってるとフレームスキップがおきたとき
補足されないから色々と不具合でる
なのでフレーム単位で動作にしないといけないのに初期設定はタイマーベースという 雷の演出で一番奥の背景(空)をピカッと光らせたい場合ってみなさんどうします?
背景と同じ大きさの白いオブジェを用意して、一瞬だけ表示みたいな方法しか
ないのだろうか? >>776
RGB係数0にして反転エフェクトで白くならない?
戻すときはエフェクト切ってRGB係数を最大にすれば戻ると思う 自分もアクティブオブジェでやるかな
画面サイズの1/10サイズのアクティブオブジェ用意して10倍に拡大 778のやり方+アルファブレンド係数を常に変数から取るように組んで光った後に
ゆっくりと変数を増加させて変数が256以上になったら非表示にして変数を0にすると
かなり自然に見えるかも あ・・・待った 稲光だからゆっくり過ぎると逆に不自然かもしれない 『Looki’s Shader Pack』の『Simple mask』を適用して
エフェクトパラメータを設定すれば、色変更は解決できた。 アドバイスありがとうございます。
>>777
RGB係数はわかりましたが反転エフェクトがよくわかりませんでした。
>>778 >>779
今の所、このやり方が一番簡単ですね。
アルファブレンド係数を使うやり方は知りませんでした。
たしかに稲光とはちょっと違ってしまいますが、他の演出で使わせてもらいます。
>>781
キャラクターの色変更もやってみたいのですが、まだ手付かずです。 見下ろし型のカーレースのようなゲームで、順位を取得するにはどうすればいいでしょう?
プレイヤーと敵オブジェクトのY軸の数値を「〜より下」「〜より上」で条件を設定し、「〜より上」で判定用オブジェクトを作成し、「〜より下」で破壊とし
判定用オブジェクトの数で順位を判定していましたが、「〜より下」になっても判定用オブジェクトを破壊せずに安定しません
よいアイデアがありましたらご教授くださいませ オブジェクトのy座標の数値で順位をつけるってことだったら
高速ループを画面yサイズぶんくらい回して
ループインデックスとオブジェのy座標が同じのやつ見つけたら順番に番号ふっていくとか >>784
ありがとうございます
高速ループを画面のYサイズくらい実行するまではわかるのですが、ループインデックスとY座標を同じオブジェクトに番号を振る方法がわかりません
例えば条件に「二つの一般値を比較」だと「LoopIndex(>ループ名<)」は構文エラーがでます
あと、ゴール時の順位だけ取得するのではなく、リアルタイムで常に順位を変動させて表示したいのですが、この方法でいけるでしょうか?
質問が続いてもうしわけありません 口頭で説明するのは限界があるので
サンプルを上げると優しい人が添削してくれます >>785
サンプル
ttps://ux.getuploader.com/mmf/download/1068
常に実行でループ回すからリアルタイムで順位取得できてるはず 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) 数十個のオブジェクトを数珠繋ぎにするのはどうすればいいんだろう
先頭が移動したら後ろのオブジェクトがついてくる感じ たしかmfaアップローダにグラディウス風オプションのサンプルあったような気がする >>787
サンプルを参考に実装させていただきます
非常に助かりました
ありがとうございます! 音量調節スライダーみたいのを作ろうとしてて
Drag Objectを落として色々やってみたんだけどスゲー難しい
もし作るとしたらどういう実装にしますか?
俺がDrag Object使いこなせてないのかなあ?
どうしてもアレ「クリックしながら移動」って風にならないんだよな デジタルゲージ式にしたらあかんの?
どうしてもドラッグでアナログ的にバーを動かしたい? いやまあ、実装がしんどそうならデジタルゲージでもいいかなー。
ぶっちゃけ使い勝手的には全然変わらんだろうし。
ちなみに質問ばっかりで恐縮だけど
「ドラッグ操作」自体はCF2.5でも問題なく構築出来るもんなのかな?
かなり手の込んだことしないと出来ない分類なのかな? マウスがオブジェクト上にある
クリックしてる間繰り返す
と条件入れて
オブジェクトのx座標をマウスのx座標に移動
みたいなカンジじゃダメなの? >>794
そのやり方だとマウスをすごくゆっくり動かさないとドラッグにならなくない? クリックしてる間だけスライダーをマウスカーソルに位置同期するのでは駄目? フラグ使うのがいい。
フラグが立ってる時はマウスに追尾させる
オブジェクトがクリックされたらフラグたてて
マウス離すとどんな状況であれフラグをオフ >>797-798
ありがとう、ちょっと試してみます 質問です
レンズオブジェクトのユーザーの指定できる画像の設定の仕方がよく分らないのですが
レンズオブジェクトの下位レイヤーにあるオブジェクトが受ける伸縮の度合いは
設定から読み込んだ画像の各ピクセル毎の輝度を基準としていると考えてよいのでしょうか?
どなたか知っている方いましたら教えてください 初期のdoomみたいなの作りたくてレイキャスターオブジェクトっていうエクステンション買ったんだけど動作しない(;o;) ttp://clickstore.clickteam.com/raycast_easy_system?keyword=Cast
これやろ? 質問です
アクティブオブジェクトをバウンスボール動作32方向、
アニメフレームの方向登録は4方向、で動かしてるんですが
そのアニメーションの方向(4方向)の数値を取得することってできないのでしょうか?
もしやりかたがあればおしえてください >>808
その計算でやれば出来そうですね 試してみます
回答ありがとうございます! ÷8のような気もするけど考え方は合ってるはず 頑張ってね >>808 810 811
バウンスボール動作方向/8で数値取得できました!
四捨五入のやり方はわからないです 計算式に命令があるんでしょうか?
そのあたり今後勉強していこうと思います
アドバイスありがとうございます! >>812
ttps://wikiwiki.jp/mmf2/%E3%83%86%E3%82%AF%E3%83%8B%E3%83%83%E3%82%AF%E9%9B%86/%E6%95%B0%E5%BC%8F%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9#q4a43187
ここの
ラウンド値
という所を見ましょう 二つの重なっているアクティブオブジェクトをクリックしたとき、
「通し番号(=変数)の少ないほう」だけフラグを立てる
……ということをしたいんだけど、方法はあるでしょうか
イベント条件を制限とかで出来んのかなあ? >>814
オブジェクトがマウス上にある場合変数A=1(通常は0)
マウスをクリックしたら通し番号が小さい順に高速ループ開始
A=1を最初に発見したらフラグONで高速ループ終了
この考えを応用すると2番目に小さい数とか〇〇番目も比較的簡単に出来る
セレクトオブジェクト使えばもっと簡単に出来るけどPC以外に対応していない どんなタイプのゲームを想定しているのかが分らないけどそのゲームでは
必ず重なりを判定しなければならないの?
ピッタリ重ならないように座標をずらして画面に配置するとか
オブジェクトの種類ごとにレイヤーに分けてしまうとかそっちの方が
手っ取り早い気もする シューティング作ってると同じようなことで悩むときあるよ
重なってる複数の敵にショット当てたら同時に破壊してしまうみたいな
一匹だけ破壊したいのに
CF2.5はこういうときの処理って苦労するよね >>815-816
コメントありがとうございます
高速ループでやるのが現実的っぽい
レイヤー分けは全然使ってなかったんで試してみよ >>817
>>815で説明した応用で弾が当たったフレームを感知した時点でA=1
高速ループ回してA=1かつ変数Bを優先度としてそれに従って破壊かな?
個人的には作ってて厳密に判定したい気持ちは解るけど
ユーザーに有利な要素はあえて緩めてやった方が快適に感じる場合もあるから処理負荷と相談しても良いかと
例えば当たり判定を厳密にやり過ぎると「今かわしただろクソが」とか
「攻撃すりぬけた」と錯覚されたりするのでプレイヤーへの当たり判定はやや小さく
逆に敵への当たり判定はやや大きくがACTの基本みたいになってたりとかね ■ このスレッドは過去ログ倉庫に格納されています