[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/16 18:26 / Filesize : 310 KB / Number-of Response : 954
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

汎用ゲームエディター『Multimedia Fusion2』 9



1 名前:名前は開発中のものです。 mailto:sage [2011/07/25(月) 02:01:31.22 ID:MOSB94mx]
『Multimedia Fusion2』シリーズに関する情報、技術、雑談、質問などに使いましょう。

■前スレ
hibari.2ch.net/test/read.cgi/gamedev/1296566000/

■参考リンク
・Clickteam本家
www.clickteam.com/
・Multimedia Fusion 2シリーズ日本語版公式サイト
www.clickteam.jp/
・Multimedia Fusion 2 wiki
wikiwiki.jp/mmf2/
・mfaアップローダ
ttp://ux.getuploader.com/mmf/
・『Multimedia Fusion2』避難所
jbbs.livedoor.jp/computer/43067/

524 名前:名前は開発中のものです。 mailto:sage [2011/11/06(日) 21:39:35.17 ID:8VpK6OK/]
>>523
各落下速度ごとに変数で分けて、オブジェクト生成時にその変数をランダムにすればどうでしょうか。

525 名前:名前は開発中のものです。 mailto:sage [2011/11/06(日) 21:44:41.11 ID:SLA3CePO]
>>523
物凄くシンプルな感じで
ux.getuploader.com/mmf/download/363/%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E8%90%BD%E4%B8%8B.mfa

526 名前:523 mailto:sage [2011/11/06(日) 22:09:08.02 ID:LjvoBSc/]
>>524 >>525
うわああどうもありがとうございます
ここまでシンプルになるだなんて…。

落下速度をランダムにしたら、落下中に速くなったり遅くなったりして
頭を抱えていたあの時間は一体…
発射台も32個用意して通し番号で処理していたのですが、1個で済むとは…。

527 名前:名前は開発中のものです。 mailto:sage [2011/11/06(日) 22:21:09.82 ID:8VpK6OK/]
>>523
折角組んだので一応
ux.getuploader.com/mmf/download/364/%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E8%90%BD%E4%B8%8B%E3%81%AE%E4%B8%80%E4%BE%8B.mfa

それより>>525の落下物がなぜ落下してるかが分かりませんの。

528 名前:名前は開発中のものです。 mailto:sage [2011/11/06(日) 22:27:24.96 ID:8VpK6OK/]
すまん、普通にオブジェクトイベントだったか。

529 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 08:55:24.46 ID:SjAU9gCu]
>>519
エクステンション使った方が結果的に制作難易度下がると思うが個人の問題か
弾幕STGなら例えば、360°全方位弾の他に
偶数弾(自機をはずす弾)なんか自分で細かい計算する必要すらない

530 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 13:51:32.71 ID:8v8Ze/J4]
しかしお前等の知識と努力はすごいな
それだけできるなら普通にゲームプログラミングもマスターできんじゃねえの?

531 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 17:09:53.75 ID:ncQ7xaQJ]
しかしお前等の知識と努力はすごいな
その割りにMMF2製の名作ゲーがあまり聞こえてこないという謎・・

532 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 17:36:10.71 ID:KAI9JfRk]
プログラム技術(ここでは≒MMF2でのコーディング技術)とゲームデザインの能力は全然別だしな
前者はいわば基礎体力みたいなもんで、ゲームを作るためには前提としてそれなりに必要になるが
それだけ持ってれば「面白いゲーム構成を考えて実現する」事が出来るかといえば、それだけじゃ全然足りないからだよ




533 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 18:36:46.78 ID:YYLyGDkf]
日本人が作ったまともに楽しめるゲームってモグラの人だけなん?

534 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 19:02:17.54 ID:ahetHBby]
MMF2向け横スクロールアクションをDLsiteで見た
面白いかどうかはわからん

535 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 19:06:40.21 ID:ahetHBby]
失礼
MMF2向けじゃなくてMMF2製だ

536 名前:名前は開発中のものです。 [2011/11/07(月) 20:18:30.74 ID:LTcwsc+O]
>>533
ひもじ村さんとかPEPOSOFTさんとかかなりクオリティ高いでしょ

537 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 20:21:08.98 ID:LTcwsc+O]
あsageわすれてるごめん…

538 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 21:12:37.08 ID:SjAU9gCu]
昨日サンプルで作った弾幕改良してみた
ttp://ux.getuploader.com/mmf/download/365/%E5%BC%BE%E5%B9%95.mfa

変更点
・弾幕タイプをリストから選べるように
・ゲーム画面とシステム画面を分断
・360°弾に隙間追加
・偶数弾追加
・弾速、敵速度変更可能に
・敵が狙っているターゲットを視覚化(偶数弾のみ)

539 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 22:14:13.90 ID:gvuwWmpX]
エクステ豊富なわりにはあんまり海外作品もみないけどな
目に留まるのはたいがいGM製だったりする

540 名前:名前は開発中のものです。 mailto:sage [2011/11/07(月) 22:20:33.13 ID:fWISFSSR]
作るのが楽しいのはこっちじゃね
作ること自体がゲームみたいなもん

541 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 00:56:32.64 ID:WMBbNL6K]
PC用のインディはSteamで売ってるものもあるし
それ以外でも海外製は探せば商業的な作品はある
Chipmunk使ってたりエクステンション作者と組んで
オリジナルのエクステンション積んでるものもあるみたい
報酬払いの仕事が本家ではたまにあるしね
ただし3D扱えないから需要として商業的な作品の数は少ない
中規模以上は取り組みにくいとか制限もある

小規模なものなら作りやすいから
iOSが出てからはそっちもだんだんリリース増えてて
SWFも本家見てると色々出てるから今の主流は
PC用よりそっち(小口需要)に向いてるんだろうね

542 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 00:56:46.97 ID:SVNT8827]
>>540
あんたいいこと言うなあ

10数年前?にK&Pから入ってC&Cに行ってMMF2を買ったのに、いまだにゲームを一つも完成させたことないよw
でもいじってるだけですごく楽しいし幸せ



543 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 03:23:34.43 ID:auAMRxJ4]
>>538
すみません
それのフレームエディタ画面のオブジェクトの自機関係やらフォルダっぽいのに入ってるのはどうやればいいんですか?
オブジェクトが多いから整理したいんですが


544 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 13:08:34.54 ID:3IGK+/CG]
そもそも公式がサポート放棄してる時点で普及は諦めないと

いつになったらヘルプファイル実装するんだよ
完全に詐欺だぞもう


545 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 13:57:44.09 ID:A/fXQGgf]
さすがに1年いじってたら今更ヘルプファイルもらってもな・・・
HWAだけしてくれりゃいいよ
ヘルプファイルより無謀そうだがw
回転と拡大とオブジェクト数増えるだけで自由度があがる

546 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 14:01:12.90 ID:3WNOmp0g]
クロスアップグレードも早く出してくれ…

547 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 14:20:03.31 ID:3IGK+/CG]
>>545
説明書にも書かれてる商品のセットに含まれてる物はしっかり渡してもらわないと
金払ってるんだから

そもそも経験者は良くても新規層が困るだろうに
一番大事な所放置しやがって…



548 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 14:47:35.78 ID:A/fXQGgf]
>>547
まあそうなんだけどね
私も日本語版から入った新規層だけど半年したあたりでもうあきらめちゃったよ・・・
このスレとwikiがなかったら100パー投げてるわ

549 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 15:27:46.86 ID:0fGHqH7+]
日本語版買うのと英語版+Unicodeパッチ買うのどっちがいいの?

550 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 15:51:44.26 ID:rW3GcmVl]
>>549
UIが英語でも支障が無いなら、現状では英語版と言わざるを得ない

SWFエクスポーターについてたヘルプはなかなかいい翻訳だと思ったから期待してたんだけどね…

551 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 18:10:25.80 ID:UQ2HgIL/]
>>549
初心者はまず日本語版買ったほうがいいと思う
やっぱり全部英語のソフト1から覚えるのはしんどいし
ここにあがるサンプルとかも英語版だと開けない

552 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 19:12:18.32 ID:P0MJocPl]
>>543
ワークスペースツールバーのフレームで右クリックメニューで
新規フォルダ

サンプル制作以来弾幕作りにはまりだし
自己流の動作方法をブログでも作って解説しようとしたらエラーで記事全部消えた
40分・・・



553 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 19:42:51.21 ID:rW3GcmVl]
>>551
>>549が言ってるようにUnicodeパッチも買えば大丈夫

554 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 22:27:04.38 ID:UQ2HgIL/]
>>553
アレ?
ってことは俺ユニコードパッチあてそこなってるのか?

555 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 22:36:19.66 ID:UQ2HgIL/]
あ、ユニコード版は元のとは別のexeで起動しなきゃならんのか

>>551の3行目は誤りでした
謹んでお詫び申し上げます

556 名前:名前は開発中のものです。 mailto:sage [2011/11/08(火) 23:11:01.51 ID:FBEhcEXV]
>>552
もう一度作ってうpしてください
お願いします

557 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 00:02:17.73 ID:hpMyYCHV]
なんとなく違うことをやりたくてベクターに触れて見たんですが
PMOみたいに簡単に衝突判定作ることはできないでしょうか?
バウンスだとぶるぶる震えてとめ方がわからない

558 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 00:09:40.62 ID:E3G8b2er]
>>552
そっちで作るのか…
アイコン並んでるとこ必死でクリックしてたorz
ありがとうございます

559 名前:552 mailto:sage [2011/11/09(水) 04:06:04.62 ID:NrWf75j9]
>>556
とりあえず自機と敵間の角度拾う方法利用の3WAY弾
ttp://kamekkusummf.blog.fc2.com/
ブログはじめてだから記事書くの1時間かかるわ
更新頻度は低そうだけど地道に

560 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 07:04:54.19 ID:iA8o2dMF]
>>559
おお、乙です!
画像アリでわかりやすくて良い感じですな

561 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 17:20:32.69 ID:B7lx8Gfs]
公式フォーラムがいつ覗いてもメンテ中なのですが…
自分だけでしょうか?

562 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 17:56:31.89 ID:L0/sXDjm]
>>561
あんたもか。見れないの俺だけかと思ってたわ〜(棒)



563 名前:名前は開発中のものです。 mailto:sage [2011/11/09(水) 18:56:26.34 ID:PvaPtNzl]
もう二年か…
ツクールも駄目だったし日本のコンストラクションツールの未来は暗い

564 名前:名前は開発中のものです。 mailto:sage [2011/11/10(木) 01:57:28.62 ID:veEC8gEO]
ブログ第2回を更新しました
今回は自機の数フレーム前を付いてくるグラディウス風オプションです


565 名前:556 mailto:sage [2011/11/10(木) 02:02:57.07 ID:6sfrMk8f]
>>564
ありがとうございます
こういうサイトがあると本当に助かりります
SHTはまだ未挑戦ですが、いろんなものに利用できると思いますので、参考にさせていただきます

566 名前:名前は開発中のものです。 mailto:sage [2011/11/10(木) 02:26:39.77 ID:veEC8gEO]
>>565
説明するスキル足りないからスルーしたけど
今回のヤツを座標じゃなくてキー入力情報に置き換えて
改造すればリプレイファイルも作れるよ

567 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 02:17:57.85 ID:AFwd1/Fj]
ブログ第3回のサンプルのみ更新しました
・第3回はボタンを押している間1番近い敵から順にロックオンして
離すと弾を発射するです

時間的に解説記事は後日

568 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 11:31:51.99 ID:wsbAFDLu]
wikiの動く壁判定を使って動く壁を作って見たのですが
上下にはスムーズに動くのですが左右だと動く壁にめり込まなく放ったのですがそのままにすると
壁と平行して移動してしまいます
横の判定が壁と重なったときにX軸を+1か−1にしてみたのですがジグザグ動いたりやっぱり一緒に引っ付いて移動したりと安定しません
何かいい方法はないでしょうか?
ttp://ux.getuploader.com/mmf/download/367/%E5%8B%95%E3%81%8F%E5%A3%81%E5%88%A4%E5%AE%9A.mfa

569 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 13:24:56.52 ID:PFEc3hI8]
>>568
動く床の移動量は右移動時はプラス、左移動時はマイナスになるので、
下の判定と触れている時(床に乗っている時)は床に合わせて自機も動くようにするのでそれで良いのですが、
左右の判定が触れている場合に移動量を出している変数をそのまま当ててしまうと、押し出し効果がありません。
左右の場合は変数直接ではなく、床の左右移動時の移動量の最大値で押し出すようにしましょう。
カウンタに表示させて確認すると判り易いです。wikiのサンプルでもそうなっているので再確認してみて下さい。


570 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 19:37:38.41 ID:wsbAFDLu]
>>569
ありがとうございます
カウンターの数値の意味がやっとわかりました

571 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 22:48:44.01 ID:AFwd1/Fj]
ブログ第4回を更新しました
今回は弾に振子動作を加える方法です

第3回のロックオンは検証が必要な為更新しておりません
お蔵入りしないといいな

572 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 22:58:44.39 ID:dyGFVoxm]
>>571
また参考にさせていただきます
Platform Swing objectは使ったことがなかったので、勉強になります
HPは定期的に更新をチェックしておりますので、ここの書き込みがなくとも、拝見させていただいております




573 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 22:59:21.97 ID:wsbAFDLu]
>>571
お疲れ様です
うーん・・・wikiからPlatform Swing objectの入手先に飛んだけど横の検索場所はググっても見たが
Platform Swing objectがどこでDL出来るかわからない

574 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 23:42:20.77 ID:PFEc3hI8]
>>571
乙。
Platform Swingは新しいフォーラムでも検索したらヒットしたからwikiにページ追加しといたよ。

575 名前:名前は開発中のものです。 mailto:sage [2011/11/11(金) 23:59:25.38 ID:wsbAFDLu]
>>574
ありがとうございます

576 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 01:14:00.13 ID:R+HUGH4n]
ブログのPlatform Swing objectは日本語みたいですけど、どうやればいいんですか?

577 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 03:28:13.11 ID:SRBYTmiy]
>>576
有志が翻訳してくれた非公式パッチを当てたものでしょう。
ロダを探せば見つかるかも。
当然のことながら適用は自己責任で。

578 名前:日本語版 mailto:sage [2011/11/12(土) 13:27:48.82 ID:arkTQNvj]
すみません
Joypad objectでのパッド操作させる時
画面外に移動できないよう設定するにはどうしたら良いのですか?
座標で移動させると停止(動作)が選択できないんですが

あとこの初回の処理落ちはどうにもならないんですか?

579 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 13:41:22.89 ID:SRBYTmiy]
>>578
オブジェクトの座標で判定させて画面端の座標より外に行かないようにすれば良いと思います。
初回の処理落ちは何度か作者に報告しましたが直してもらえてません。
後継のJoystick 2では起こらないのでそちらを利用しましょう。
Joystick 2ではプロパティの「Test if device is Xbox controller」を外さないとフレーム開始時のロードが長くなるので注意。

580 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 15:33:59.20 ID:zHUt3Ord]
ブログ第5、6回更新しました
第5回は以前サンプルにもあげた360°全方位弾の解説です
第6回は第1回の3WAY弾応用編です、解説自体はありません

第3回がまるでボスキャラの様だ
原因は解ってきたので何とかイベントのスリム化した後に解説します、多分・・・

エクステンションはガンガン使う方針なのですが
申し訳ありませんが導入や日本語化はwikiやupロダを参考に自己責任でお願いします

581 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 21:38:05.35 ID://QUweRM]
ブログは非常に助かるのですが無理はしないで下さいね

582 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 21:38:50.75 ID:OFIDV0KU]
ブログ説明だと見やすくて助かります



583 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 23:18:27.12 ID:UdqZwIpb]
>通し番号をセットするアクションと、高速ループの実行アクションを同じイベントに組み込むと
>通し番号が何故か+1された値でセットされてしまいます。

Wikiに書いてあるこれって、実際に確認した人います?日本語の体験版で確認しているからなのかも
しれないのですが、どうも動作が書かれているのと違うようなのですが・・・

高速ループ処理時、問題は通し番号かどうかには関係なくオブジェクトの値にアクセスする
アクション全般に及んでいて、次のような動作をしているように見えます。
(原因は、イベント内のアクションでオブジェクトの選択状態が見えない規則で複雑に変化し、
それによって値が正しく参照・反映されるかどうかが直観では分かりにくい挙動になるためのようです。)

[ルール1]
高速ループアクションを含むイベント行でセットされるオブジェクトの値は、たとえ高速ループを呼ぶより
先に値がセットされていても、高速ループの中ではオブジェクトに値がまだ反映されていない。
(通し番号でも、単なる変数値セットでも同じ。)

[ルール2]
高速ループアクションを含むイベント行でオブジェクトにセットした変数値は、高速ループ内で
同じオブジェクトに対して(たとえ別変数であったとしても)値をセットしている場合には
イベント行を抜けたときに最終的に値が反映されずに破棄されている場合がある。
あるいは、高速ループ内でオブジェクトに設定した値が破棄されている場合もある。
(イベント行・高速ループのどちらかだけで操作しているオブジェクトは問題なくセットした値が
反映される。)

どうやら、注意すべきは通し番号の方ではなく、イベントループ呼び出しの方のようです。
※「見えない選択規則」というのは、試しているうちになんとなく分かってきたのですが、
書くにはちょっと複雑すぎます・・・

584 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 23:34:04.65 ID:UdqZwIpb]
(↑上で書いてる「同じオブジェクト」というのは、フレーム内に
◆◆◆◆◆◆□□□●●△△
などの実体がある場合に

[フレームが開始]
 ◆:変数Aを変更
 イベントループ呼び出し

[高速ループ]
 ◆:変数Bを変更

という風に、(同じ実体に限らず)同じオブジェクトを参照する記述を書いた場合のことです。
この場合、変数Aや変数Bは正しく反映されるとは限りません。
これが

[フレームが開始]
 ◆:変数Aを変更
 イベントループ呼び出し

[高速ループ]
 □:変数Bを変更

などの場合、高速ループ内で◆の変数Aの値は反映されていないので参照できませんが、
◆にセットした値と□にセットした値は、最終的に正常に反映されます。)

#もしかして当たり前のことだったでしょうか・・・

585 名前:名前は開発中のものです。 mailto:sage [2011/11/12(土) 23:38:18.94 ID:UdqZwIpb]
#重ね重ねすみません。「高速ループアクション」「イベントループ呼び出し」など、言葉がばらばらになってしまいましたが、
 これは全部高速ループを開始するアクションのことです。

586 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 00:45:09.32 ID:jq8dbBMS]
難解だな・・言いたいことはなんとなく分かるけど
体験版だしファイル保存無理ならイベントのSS撮ってくれたら助かるス

587 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 00:58:05.78 ID:eBZNreLP]
>>583
長文お疲れ様だけどよく分からなかったから自分なりに検証してみました。
ttp://ux.getuploader.com/mmf/download/369/%E9%80%9A%E3%81%97%E7%95%AA%E5%8F%B7%E3%81%A8%E9%AB%98%E9%80%9F%E3%83%AB%E3%83%BC%E3%83%97%E3%82%92%E5%90%8C%E3%81%98%E8%A1%8C%E3%81%AB%E8%A8%AD%E5%AE%9A.mfa
とりあえず「通し番号と高速ループを同じ行に設定するな」というのは間違いじゃないってことかな?

588 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 01:17:56.52 ID:6w1kgt/6]
>>586
たとえば単純な例では、フレームに
  ◆(アクティブ)を5つ
  ■(アクティブ2)を5つ
  ▲(アクティブ3)を5つ
作成して、イベントエディタで
==================
[1.フレームが開始]
◆:デバッガに追加
■:デバッガに追加
▲:デバッガに追加
----------
[2.フレームが開始]
◆:変数Aを1に変更
■:変数Bを2に変更
"loop1"を1回ループ開始
----------
[3."loop1"がループ実行中]
◆:変数Cを3に変更
▲:変数Dを4に変更
==================
こういう条件とアクションを組んだときに、これを実行したら
どういう結果がデバッガで見えるかということなんです。
普通であれば、
  ◆:5つともすべて変数A=1,変数C=3
  ■:5つともすべて変数B=2
  ▲:5つともすべて変数D=4
になっているはずだと思いませんか?でも実際にはそうはならないんです。

589 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 01:23:49.79 ID:6w1kgt/6]
>>588の結果がどうなるかというと、

  ■:5つともすべて変数B=2
  ▲:5つともすべて変数D=4

はそのとおりになるのですが、◆は

  ◆:1つだけ変数A=1,変数C=3
  ◆:残り4つは変数A=0,変数C=3

になるんです。理由も大体ですが想像がつきます。

>>587
>とりあえず「通し番号と高速ループを同じ行に設定するな」というのは間違いじゃないってことかな

それはそうなんですが、あえて書き込んだのは「通し番号」以外でもいろいろ問題が起こるよ、
っていう注意喚起のためでした。あの書き方では通し番号以外は大丈夫みたいな書き方でしたから・・・

590 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 01:32:39.41 ID:eBZNreLP]
>>589
そうですね。通し番号じゃなくて普通に変数変更した場合も確認できました。
ツッコミがなければ自分も検証しなかったし、勉強になりました。
よければwikiに追記してもらえるとありがたいです。

591 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 02:04:32.52 ID:6w1kgt/6]
>>590
もともと疑問を持ったのはgame-creator87.com/blog/2010/05/mmf2-9.htmlを見ていてなんですね。このページに書かれている

>--------------------------------
>1:フレームが開始した時
> ・◆:0から通し番号を設定:変数A
> ・"testloop"を◆の数だけの回数、ループ開始
>2:"testloop"がループ中
>   かつ
>  ◆の変数Aの値が"testloop"のループインデックスと一致

> ・"testloop"のループインデックス数を出力
>----
>アクティブオブジェクトが3つの時
>上のイベントを組んだ場合、
>本来なら「0」→「1」→「2」と表示されるはずなのですが、
>上のように組んだ場合だと、「0」しか表示されません。
>--------------------------------

という部分で、高速ループを呼び出した時点では変数Aには
まだ通し番号が反映されていないと考えれば変数Aはすべて
0ということで納得なんです。
そこでいろいろデバッグして、高速ループ内でオブジェクトの変数に
値を書き込んだり読み出したりしてると、アクセスしてるのがまったく別の変数なのに
変数Aの通し番号が消えてしまうことがある・・・と。

それでこれは単純に通し番号と高速ループの組み合わせが原因なのではなく、
いろいろ複雑な要因が組み合わさって、よく使うオブジェクトの初期化シーケンスでは
「たまたま」値が+1されているに過ぎない(=他にもいろいろな現象として
問題が起こる)ということにたどり着いた次第です。
ただ、その「複雑な要因」というのがまたいろいろ条件があって、その条件によって難しくて・・・

592 名前:日本語版 mailto:sage [2011/11/13(日) 02:55:23.94 ID:UhvYIhjy]
>>579
ヒントありがとうございます
答えなんだろうけど・・



593 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 03:10:10.66 ID:jq8dbBMS]
ux.getuploader.com/mmf/download/370/fastloop_bug_set.zip
>>591
試しに各種ビルドしてみたよ(結果は変わらなかったけど)
これは本家で聞かないと分からんね、変数AとBへの代入のタイミングを入れ替えしても
変数Aは毎回{1,0,0,0,0}になっちゃうし、あたりまえだけど
高速ループの回数増やしてもイベントの順序入れ替えても同じ結果だった
R252でも日本語版でも同じ結果だから、この方法は意識して避けないとやばいね

594 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 07:22:00.33 ID:6w1kgt/6]
その後いろいろ触ってみて、驚愕の事実(みなさんには既知かもしれませんが、直観とは少し異なる動作)が
いくつかみつかったので書いておきます。
(自分にブログがあればそこへ、あるいはWikiに書けばいいのかもしれませんが、まだ体験版を触って
2、3日の状態ですので用語もよく分からず、何が既知かも分からないので今は控えておきます。)

---------------------------

★驚愕の事実1★

同一イベント行内に書かれた高速ループ開始アクションとオブジェクトへの操作アクションは、
その並び順にかかわらず、まず高速ループが実行されてから、その後で
オブジェクトへの操作が実行されるようです。
(そりゃ、通し番号のセットと高速ループの開始が意図どおりに動作しないはずです。
通し番号が+1されるからといったどころではなかったようです。)

★驚愕の事実2★

さらに!高速ループだけでなくグローバル変数への値セット(ようするに特別オブジェクトへの操作)も、
同一イベント行ではオブジェクトへの操作アクションより先に実行されるようです。つまり、

 グローバル変数Aを10に変更
 ◆:変数Aをグローバル変数Aに変更
 グローバル変数Aに50を追加

と書いていると、◆:変数Aには10ではなく60がセットされるようです。

595 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 07:44:24.23 ID:6w1kgt/6]
★驚愕の事実3★

◆を5つ作成した状態で、

==================
[1.フレームが開始]
◆:0から通し番号を設定:変数A
----------
[2.フレームが開始 & ◆:変数A>=3]
◆:10から通し番号を設定:変数B
==================

を実行すると、変数Aの通し番号が0〜2の◆には変数Bがセットされず、
選択状態になっている通し番号3,4の◆の変数Bに対して、通し番号10,11が
それぞれセットされます。(これは直観と照らし合わせても普通の正しい動作)

ですが、
----------
[2.フレームが開始 & ◆:変数A>=3]
◆:10から通し番号を設定:変数B
"loop1"を1回ループ開始
---
[3."loop1"がループ実行中]
クリップボードをクリア(←なんでもよい)
----------
に修正して、高速ループ開始を同一行に書いてしまうと、なんと通し番号0,1,2,3,4の
すべての変数Bに対して通し番号11,12,13,14,15がセットされるようになってしまいます。
(★驚愕の事実1★で書いたように、まず先に高速ループが実行されるのですが、
そのときに◆の選択状態が解除され、すべての◆が操作対象に変更されてから
通し番号が振られてしまうようです。しかも+1で。)

596 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 07:56:58.37 ID:6w1kgt/6]
★驚愕の事実4★

ちなみに、次のように同一の高速ループ名のイベント行を2つ作成しておいた場合、
呼び出し順序はどのようになるでしょうか?

==================
[1.フレームが開始]
"loop1"を5回ループ開始
----------
[2."loop1"がループ実行中]
"o"を出力する処理
----------
[3."loop1"がループ実行中]
"x"を出力する処理
==================

この場合は"oooooxxxxx"と出力されるでしょうか?"oxoxoxoxox"と出力されるでしょうか?
答えは"oxoxoxoxox"となります。
どうやらMMF2では、高速ループの呼び出しはサブルーチンやイベントハンドラのような
ものではなく、純粋にイベントのリスト全体を繰り返し回数分だけ毎回一つずつ舐めながら、
条件に合うものを拾って処理していく、というスタイルのようです。

597 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 08:11:59.71 ID:6w1kgt/6]
★驚愕の事実5★

通し番号の+1の件ですが、まず基本的な形として、

-----------
[フレームが開始]
◆:0から通し番号を設定:変数A
"loop1"を1回ループ開始
-----------

だと+1されてしまいますが、

-----------
[フレームが開始]
"loop1"を1回ループ開始
◆:100から通し番号を設定:変数A
-----------

だと+1されず、正常に通し番号がセットされます。ですが、

-----------
[フレームが開始]
"loop1"を1回ループ開始
◆:100から通し番号を設定:変数A
"loop1"を1回ループ開始
-----------

だと、またまた+1でNGとなってしまいます。そこで  ・・・続く

598 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 08:21:53.55 ID:6w1kgt/6]
(続き)

-----------
[フレームが開始]
"loop1"を1回ループ開始
◆:100から通し番号を設定:変数A
"loop1"を1回ループ開始
◆:アニメーションを停止
-----------

などとすると、再び変数Aには正しい通し番号がセットされるようになります。
★驚愕の事実1★で書いたように、同一イベント行では高速ループの呼び出しが
先に行われ、どうやらそのときに通し番号のカウントスタート値が0ではなく
1にセットされてしまうようなのですが、高速ループを拾ってすべて実行した後、
その後ろにまだオブジェクトへの操作アクションが記述されていた場合には
その時点で通し番号のカウントスタート値は0にリセットされるようなのです。
ですので、イベント行の先頭に戻って今度はオブジェクトへの操作アクションを
拾って実行していく段階では正しい通し番号がセットされるようになっている、
ということのようです。  ・・・続く

599 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 08:37:30.92 ID:6w1kgt/6]
(続き)

なお、それではイベント行で高速ループを呼び出す記述をすること自体が
通し番号のカウントスタート値を狂わせてしまうのか、ということについてですが、
これはそうではないようです。たとえば

==================
[フレームが開始]
"loop1"を1回ループ開始
◆:100から通し番号を設定:変数A
グローバル変数Aを1000に変更
"loop1"を1回ループ開始
----------
["loop1"がループ実行中 & グローバル変数 A<=500]
クリップボードをクリア
==================

などとすると、通し番号は+1されずに正しくセットされます。
要するに、高速ループを呼び出すときにカウントスタート値がおかしくなるのではなく、
実際に高速ループが実行されたときにはじめてカウントスタート値がおかしくなって
しまうのでしょう。
(おそらくMMF2がやらかしてしまっていて、カウントスタート値が0ではなく1に初期化
されてしまっているのでしょう。通し番号のオフセット値の方が+1されているのでは
内容に思います。)

いったんこれぐらいにしておきます。
他にも何かいろいろあったような気がしますが・・・
(特にMMF2で何かをしようと思って触り始めたわけではないので、次はいつになるか
わかりません。)
長々と書いてすみませんでした。

600 名前:名前は開発中のものです。 [2011/11/13(日) 14:17:03.02 ID:Uw0d1OxZ]
すみません、PMOについてどうしても分からない事がありまして、
どなたか教えていただけないでしょうか?

横スクロールアクションで、
ボタンを押している間、プレイヤーキャラがダッシュをするように
してあるのですが、その制御をPMOで行っています。
(Set additional X velocityを使い、右向きの時ボタンを押すと
+、左向きの時は−という感じです)

それは良いのですが、敵のオブジェクトが弾を発射した時に、
相手が右側にいる時、こちらが右にダッシュすると相手の弾が遅く、
左にダッシュすると、それを追うように相手の弾が急加速します。
それどころか、こちらがジャンプすると相手の弾まで一緒に上昇します。
※プレイヤのジャンプ等もPMOで制御してます。
PMOの加速度、強制移動はセットしたオブジェクトだけではなく、
全てのオブジェクトに作用するという事なのでしょうか・・・。
完全にお手上げ状態です。
そこで、強制移動、加速度をプレイヤーのみに適用させる方法
をご存知の方がいましたら、教えていただけないえしょうか?

長くなってしまって申し訳ありませんが、宜しくお願いいたします。

601 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 15:35:00.08 ID:JUjcKpgy]
>>600
サンプルみないと何とも言えんが
弾のオブジェクトのスクロールオプションの
動作領域に固定のチェックはずれてない?

スクロール対象から外れると表示画面を基準に動くようになるから
背景の動きが加算されてそう見えるだけになってそうだね

PMO1個で制御出来るのはオブジェクト1個だよ

602 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 15:55:13.54 ID:zsHqc7h8]
>>588-599
長々とご苦労さんです
この手の「ツール独自のクセ・変な仕様」みたいな物は情報がまとまってると凄い助かるね



603 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 16:34:54.45 ID:jq8dbBMS]
共学3くらいまでしかまだ読んでないんだけど、3行でまとめると
要するに「フレームが開始」一行で変数への代入と高速ループ開始を
同時に指定するとまずいからよゐ子のミンナは二行に分けて指定しようってことだね

604 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 16:35:02.92 ID:JUjcKpgy]
ブログ第7,8回更新しました
第7回は背景用流れ星
第8回は円運動を使った交差弾です

605 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 16:40:38.62 ID:jq8dbBMS]
>>604
乙ですー

606 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 16:42:28.15 ID:zsHqc7h8]
>>603
変数の代入と分けるだけじゃなくて
高速ループの開始行は他に何もしない方が間違いが起こらなくていいと思う

607 名前:名前は開発中のものです。 mailto:sage [2011/11/13(日) 16:50:43.88 ID:jq8dbBMS]
>>606
いま試してわかったけど別に「フレームが開始」に限った話じゃないね、これ

>>593でアップしたMFAを改変して「常に実行」に変えても同じ症状出るから
高速ループの開始行は他に何もしない方が安全・・・これだね

608 名前:名前は開発中のものです。 [2011/11/13(日) 18:42:06.19 ID:Uw0d1OxZ]
>>601
まさにその通りでした・・・。
そういうことだったのですね。
親切に教えていただき、有難う御座いました

609 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 11:38:53.51 ID:nyF9inyw]
ようやく技術持ってる連中がいままで隠してた手の内晒し始めてくるようになってきたな
すげぇ助かる

610 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 12:09:41.15 ID:sHSL9ZDZ]
なんか引っかかる言い方だな・・・

611 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 12:10:48.69 ID:wpuc2NuL]
過去ログ1から全部読んでこいと言いたい

612 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 14:46:40.95 ID:YLKg+Hjo]
高速ループもそうですが、>>594のグローバル変数も驚愕でした
いままでひとつのイベントで高速ループを複数、さらに変数やら何やら10以上並べていたりしてたのですが、
どこかでおかしくなってた可能性もあるわけですね・・




613 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 14:56:01.22 ID:Y4UcV9G3]
>>594
グローバル変数の方を試してみたけど10になったよ?

614 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 15:06:32.30 ID:YLKg+Hjo]
ひとつ質問なのですが、オブジェクトとオブジェクトが衝突した際のイベントで、何か別の新オブジェクトを作成し、
その新オブジェクトの変数をそのイベント内で設定させているのですが、ここで条件文の分岐をさせることってできないものでしょうか?

衝突したときグローバル変数Aが1の場合は、作成した新オブジェクトの変数も1にするとか、そのような感じで

最初は衝突イベントの中で高速ループを開始して、

ーーーーーーーーーーー
衝突イベント→高速ループを開始
ーーーーーーーーーーー
高速ループ中
グローバル変数A=1のとき→新オブジェクトの変数を1に
ーーーーーーーーーーー
高速ループ中
グローバル変数A=1のとき→新オブジェクトの変数を2に
ーーーーーーーーーーー

こんな感じでやればいいかと思ったのですが、新オブジェクトの数が複数になると、すべてに適用されてしまって無理でした
複雑なゲームを作る際には頻繁に行われる処理だと思うのですが、みなさんはどのように対処しているのでしょうか?

615 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 15:26:33.60 ID:Y4UcV9G3]
>>614
オブジェクトにセットする変数がグローバル変数と同じなら
作成時にオブジェクトの変数にグローバル変数を代入すれば良いと思います。

グローバル変数と違うのであれば、作成のイベントの条件にグローバル変数の条件を足したイベントを
分岐数だけ用意するとか、
作成のイベントを1つで済ませたいなら以下のようにも。
ttp://ux.getuploader.com/mmf/download/371/%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E5%A4%89%E6%95%B0%E3%82%BB%E3%83%83%E3%83%88.mfa

616 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 15:59:06.09 ID:EcO+3cpY]
>>613
俺も試してみた。
オブジェクトが1つのときと複製して複数にしたときで動作が違う・・・ ( Д) ゚ ゚

・・・笑うしかねぇw

617 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:03:20.41 ID:YLKg+Hjo]
>>615
ありがとうございます
グローバル変数が〜というのはあくまで例えで、ボタンを押していたり、座標だったり、いろいろな条件で分岐させたかったのですが、
つまり「新オブジェクトを作成させた」というフラグを使って、まったく別の場所でイベントを組めば良かったというわけなのですね
これでひとつのイベントにいろいろ詰め込まずに、分けて見やすく作っていけそうです


それから、>>594の★驚愕の事実2★について調べてみましたが、これはおそらく間違いで、
オブジェクトを複数作った際の現象を指しているのではないかと思います

オブジェクトを複数作ると、確かに>>594の★驚愕の事実2★の通りになりますが、
これはグローバル変数でなくても、オブジェクト変数でも50になってしまいます
オブジェクトが1つなら普通に10になりますので、その現象のことだと思います

618 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:16:42.02 ID:EcO+3cpY]
>>617
うーん・・・複数の場合だと納得できる動作なのかな。
よけいにわけわからん、困った動作な気もするが。

619 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:30:49.69 ID:EcO+3cpY]
ちなみに俺のところでは、
 @オブジェクトが1つだけのとき→変数A=10
 Aオブジェクトが複数のとき→1つのオブジェクトだけ変数A=10、後は全部変数A=60
になってる。@はAの特殊ケースってこと?

620 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:40:45.35 ID:YLKg+Hjo]
>>618
あ、いえ、納得はできないのですが、この現象自体は前に見ていたので、そういうものだと思って回避していました
なので、あくまで複数のオブジェクトがある場合限定の現象だと思います

★驚愕の事実1★についてもたぶん同じようなことなのではないかと思うのですが、
この現象については確認できませんでした

>>619
複数ある場合、適用されるのは最初の1つだけになるんだと思います
なぜそうなるのかはよくわからないのですが、オブジェクトが複数ある場合は、
こういう現象が起きていたので、いつも通し番号+高速ループを使うようにしていました

勝手にこういう仕様だと思ってました

<実際の処理>
 グローバル変数Aを10に変更
 ◆(その1):変数Aをグローバル変数Aに変更
 グローバル変数Aに50を追加
 ◆(その2):変数Aをグローバル変数Aに変更
 ◆(その3):変数Aをグローバル変数Aに変更
 ◆(その4):変数Aをグローバル変数Aに変更
 ◆(その5):変数Aをグローバル変数Aに変更

621 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:43:08.93 ID:EcO+3cpY]
グローバル変数のセットが先に行われるというよりは、
複数のオブジェクトへのアクションは(1つをのぞいて)後回しにされて
最後に実行される、ということでいいのかな。

622 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 16:59:31.32 ID:YLKg+Hjo]
>>621
想像ですが、そんな感じなんなのではないかと・・
なので、この場合は高速ループで行を分けると正常に動作します

 グローバル変数Aを10に変更
 高速ループを開始
 グローバル変数Aに50を追加
ーーーーーーーーーーーーーーーーーーー
高速ループ中
 ◆:変数Aをグローバル変数Aに変更




623 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 17:51:28.89 ID:eJ5g23uj]
そろそろforeachみたいに高速ループを一本化してほしいもんだ

624 名前:名前は開発中のものです。 mailto:sage [2011/11/14(月) 18:06:18.78 ID:WRdObV11]
グローバル変数ってゲーム中何に使うものなのか教えて欲しい
最近では画面切替のやつくらいしか知らないんだ

それ以外のデータもあったら教えて欲しい






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<310KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef