1 名前:名前は開発中のものです。 [2005/07/12(火) 09:03:47 ID:DK0oUKwt] 無料Windows用2Dゲーム作成ツール"Game Maker"について、色々と語り合うスレッドです。 ●本家(英語) ttp://www.gamemaker.nl/ ●GameMaker Japan - 非公式情報サイト(日本語) ttp://gamemaker.main.jp/ ●初心者向けチュートリアル ttp://gamemaker.main.jp/modules/articles/index.php?cat_id=1 前スレ: 【2D】ゲーム作成ツールGameMaker【マンセー】 pc8.2ch.net/test/read.cgi/gamedev/1087068523/
822 名前:名前は開発中のものです。 mailto:sage [2008/03/10(月) 16:38:14 ID:qJ6+/ltX] >>819 ,820 セブンイレブン
823 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 20:45:46 ID:EJkJUT5l] 親インスタンスの設定と当たり判定の設定がまとめを見てもわからない・・・ GM7だとやり方が変わってるのでしょうか? もしそうなら誰か設定の仕方を教えてくれませんか?
824 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 21:53:46 ID:c68BSDCd] 別に変わってないはずだけど ParentとかBounding Boxが見つからないって話だったら まず File >Advanced Mode にチェックつける
825 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 22:02:17 ID:EJkJUT5l] >>824 d advanced modeにチェックを入れたら見れるようになりました ありがとうございました
826 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 11:21:30 ID:7GR4thT4] インスタンスIDを使って、当たり判定の位置調節をしているのですが、 存在するIDを指定しているのに、時々そんな変数しらねぇよといわれてしまいます。 おそらく、instance_changeの時に何か起こっているのだと思うのですが・・ 立ち状態のインスタンスのIDを保存して、攻撃やダメージの際に、 instance_changeを利用しています。 立ちインスタンス←ここのIDを保存している └攻撃1インスタンス └攻撃2インスタンス └ダメージインスタンス if(adjust){ if(player == 1 && global.cpu_1){ x = (global.com1).x + (global.com1).hspeed + posx; y = (global.com1).y + (global.com1).vspeed + posy; }else if(player == 2 && global.cpu_2){ x = (global.com2).x + (global.com2).hspeed + posx; y = (global.com2).y + (global.com2).vspeed + posy; }else if(player == 3 && global.cpu_3){ x = (global.com3).x + (global.com3).hspeed + posx; y = (global.com3).y + (global.com3).vspeed + posy; }else if(player == 4 && global.cpu_4){ x = (global.com4).x + (global.com4).hspeed + posx; y = (global.com4).y + (global.com4).vspeed + posy; } }
827 名前:名前は開発中のものです。 mailto:sage [2008/03/16(日) 13:35:59 ID:V0YG+k5o] インスタンスを変更すると、1ステップの間そのインスタンスは 「存在するけど存在しない」みたいな不安定な状態になるらしくて 「instance.variable」みたいにドット使って変数を参照するとエラーになる。 やっかいなのは、インスタンス自身は存在するので instance_existsとかでチェックできないこと。 対策としては、with使ってその中で変数使えばエラーは出ない。 with (global.com1) { other.x = x + hspeed + other.posx; other.y = y + vspeed + other.posy; } みたいな感じで(withの中ではotherが元のselfになるのに注意) インスタンスの変更は変数の継承がらみでもややこしい問題があるので、 できるだけ使わずにすませた方がいいよ。 この場合、オブジェクト一つだけでよくない? 当たり判定はmaskで変えられるよ。
828 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 10:22:50 ID:RBuRFwrN] >>827 なるほど・・わかりやすい説明ありがとうございます。 ダメージモーションの種類が4、攻撃の種類が40、その他死亡モーションや、 予備動作などがあって、一つのオブジェクトで作ると、 俺の頭がこんがらがってしまったので分けましたが、 実際のところは分けないほうが最終的にわかりやすいんだろうなぁ・・。 やっぱり自分の力量に応じて仕様というか、 ある程度妥協した方が結果的にいい場合もあるんでしょうね。
829 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 13:07:23 ID:0WhHqNl0] モーションってのがただ単にスプライトのことだったら、スプライトの入れ替えだけで済むし(sprite_indexの変更)、 全てのスプライトを1つにまとめて、subimageの値を決めることでも解決する。(image_indexの範囲指定) スプライト以外だとしても、そのインスタンスの状態(ダメージ、攻撃中、移動中等)で場合分けをするといいだろうね。(step内でswitchを使って場合分け) インスタンスを変えるということは、今あるインスタンスを削除して、新しくインスタンスを作るということ。 敵を攻撃したり、ダメージを受けたりする度に自分が生まれ変わるってのも変な話だよね? インスタンスを変えていると、システム的なエラーだけじゃなく「エラーメッセージは出ないけど、自分の意図した通りにならない」というエラーも起こりやすい。 だから、場合分けをインスタンスの変更でするんじゃなくて、オブジェクトの中で場合分けをするように作っていく方がいいよ。
830 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 20:51:48 ID:zfMhFuyL] さっきレジストしたんですが、バックアップCDってのは別にいらないですよね?
831 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 21:11:55 ID:9xiWBLkG] 特定のボタンを押したり画面内のボタンをクリックしたらいったんその画面の動きを止めて 画面上に別のメニュー画面などを表示させたいのですがどうすればいいでしょうか。
832 名前:名前は開発中のものです。 mailto:sage [2008/03/17(月) 22:38:19 ID:lI4Ks6j6] >>831 お手軽なのはshow_menu。当然メニューとしてはしょぼいけど。 キー操作だけでよければ、keyboard_waitでループ回しつつ キー処理をしてメニューをがしがし描き変えるという方法がある。 サンプルで付いてくるasteroidsが参考になるかな。 ただ、このやり方はメニューの構成が複雑になると厳しい。 一般的なのはポーズする時にグローバル変数を設定しておいて、 他のオブジェクトはその変数が立っている間動きを止めるというもの。 ただ、止めないといけないものは意外とたくさんあるので(gravityだとか alarmだとかアニメーションだとか)、ゲームが複雑になるにつれて ちゃんとメンテするのが難しくなってくる。正直労力に見合わない。 本格的にやるなら、background_create_from_screenで 今の画面を背景画像に設定してから instance_deactivate_allでインスタンスを全部非アクティブにしてしまう。 それからメニュー用のオブジェクトを配置する。 これならマウス使ったりメニューオブジェクトを動かしたりするのも自由だし、 メニュー抜ける時の後始末さえしっかりやれば一番実装しやすいと思う。
833 名前:名前は開発中のものです。 [2008/03/23(日) 14:48:57 ID:CEb9FX4l] タイトル画面のメニューとして使うスプライトを外部から読み取ろうとしているのですが、 (Start/Option/Endの3項目があるとして) 1) あらかじめ3つの項目を横一列に並べた画像「title.gif」を作っておく。 ゲーム実行時にtitle.gifから、3つのサブイメージを持ったスプライト「sprite_title」を作る。 3つのオブジェクト「obj_start」「obj_option」「obj_end」のスプライトを全て「sprite_title」に設定する。 image_singleを、obj_startは0、obj_optionは1、obj_endは2に設定する。 (つまり、3つのサブイメージを持った1つのスプライトを使い、表示させるものを変える) 2) あらかじめ3つの画像「start.gif」「option.gif」「end.gif」を作っておく。 ゲーム実行時にそれぞれの画像をロードして、「sprite_start」「sprite_option」「sprite_end」の3つのスプライトを作る。 オブジェクト「obj_start」に「sprite_start」を割り当てる。他二つも同様。 (このとき、1つのオブジェクトに対してサブイメージは1つだけ) 1と2でメモリ浪費等で違いはありますか? できれば1の方法を使いたいのですが、そうするとそれぞれのオブジェクトが、 表示されないサブイメージを2つずつ持っていることになり、これは無駄になるのかなと。 ならないのであれば、不要になったときに消すスプライトが一つで済むのですが。 詳しい方、教えてください。
834 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 21:06:26 ID:vPqoB7Ec] 試してないからわからないけど、多分同一スプライトを複数のオブジェクトから参照しても、 メモリ上にスプライトを複製するようなことをしない、と思う。。。 1の方法でいいんではないかな。
835 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 21:32:39 ID:PWwLtvC1] その「sprite_title」がグローバル変数で、ロード(sprite_add)を1回しかしないなら スプライト1つ分のメモリしか使わない。ローカル変数でそれぞれのオブジェクトが 個別にsprite_addするなら、当然スプライト3つ分のメモリを使う。 なので(1)と後者の方法の組み合わせだとメモリを無駄に使うことになる。 他の組み合わせだと使用量は同じかな。 でも、メモリの節約だけが目的なら、単にスプライトのプリロードをオフにする (GM5の場合は遅延ロードをオンにする)で十分だと思う。 これだと必要な時に自動的にロードして、ルームの終了時に自動的に解放もしてくれるよ。
836 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 02:31:39 ID:jcEogdo3] >>834 ,>>835 有難うございました。1の方法でロードすることにします。
837 名前:名前は開発中のものです。 [2008/03/24(月) 17:37:42 ID:M/9alYxD] 複数の地面になるオブジェクトを並べてジャンプ後に着地するように設定したんですが、 横一列に並べているのに着地位置が縦1マス分ほどあいまいになってしまいます。 bounding boxも隙間なく設定しているんですがなぜでしょうか?
838 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 17:55:40 ID:jv5GLLmZ] 言語ファイル対応させろよ・・・
839 名前:名前は開発中のものです。 mailto:sage [2008/03/24(月) 23:02:33 ID:GFQTJ2FQ] >>838 >>746
840 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 01:38:15 ID:/7w1wYJ6] >>837 地面にぴったり着地しなくて、宙に浮いた状態になるってこと? Collisionイベントに「move to contact」のアクションは入れてる?
841 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 02:43:56 ID:7R5Ni7yo] >>837 >>840 の解説。 衝突が起きたとき、相手がSolidだと自分は衝突前の位置に戻される。 例えば床との距離が5あって、自キャラが3の速度で落下していたとき、 次のステップで床との距離が2になって、さらに次のステップでは床にめり込む。 このめり込んだ瞬間に、床にSolid判定がついていたのなら、 衝突が起きる一つ前のステップ、つまり床との距離が2の時の位置に一旦戻される。 たまに浮いてしまうのはこのため。 Collisionイベントに「move to contact」のアクションを入れてやることで、 「(めり込んだ後、一旦1ステップ前の位置に戻してから)床に接する位置に移動させる」 という過程で、床にぴったり着地させることができる。
842 名前:名前は開発中のものです。 [2008/03/25(火) 04:38:59 ID:6z3i9o/6] 質問に答えていただきありがとうございます
843 名前:名前は開発中のものです。 [2008/03/26(水) 21:43:48 ID:paW4cEkf] すいません、質問で今アクションゲームを作っているのですが、 スマブラのAボタンのコンボみたいなものを作りたいと思っています。 どうすればできるでしょうか。GMLじゃないとできないとかなんでしょうか。 もしGMLじゃなくてもできるのであればご教授お願いします。 下手糞な文章ですいません。
844 名前:名前は開発中のものです。 [2008/03/26(水) 21:45:56 ID:paW4cEkf] すいませんVer.5.3Aです。
845 名前:名前は開発中のものです。 [2008/03/26(水) 21:46:16 ID:paW4cEkf] すいませんVer.5.3Aです。
846 名前:名前は開発中のものです。 mailto:sage [2008/03/26(水) 22:08:47 ID:tIIk7RtU] スマブラのAボタンのコンボみたいというのが、漠然としすぎてよく分からない もっと具体的に
847 名前:名前は開発中のものです。 [2008/03/26(水) 22:17:44 ID:paW4cEkf] 1個目の攻撃のモーションが出た後につづけて攻撃ボタンを押すと、 2個目の攻撃モーションがつづけて出るみたいのにしたいんです。 パンチ→パンチ→キックみたいな。
848 名前:名前は開発中のものです。 mailto:sage [2008/03/27(木) 02:00:03 ID:CI1Rl28I] >>847 アクションあまり詳しくないからこれでいいかわかんないけど アラームイベント2個組み合わせてコンボ入力受付期間を作ってみたらどう? まずオブジェクトにコンボアクション発動許可用変数を用意し”0”を初期値に。 攻撃ボタン押したら1回目の攻撃を行わすとともに1つ目のアラームを起動させる。 1つ目のアラームがタイムアップしアラーム内アクションにコンボアクション発動許可用変数を”1”にして2個目のアラームを起動させる。 2個目のアラームがタイムアップしたらコンボアクション発動許可用変数を”0”に戻す。 攻撃ボタンはコンボアクション発動許可用変数が”0”の時と”1”の時で攻撃が変わるようにIf a variable has a valueで分岐させる。 とかそんな感じだと思うけど・・・まずはアニメーションスプライト用意して通常攻撃モーションとコンボモーションを作成してみては? そこらへんはもうできてるかもしんないけど・・・
849 名前:名前は開発中のものです。 [2008/03/27(木) 08:42:25 ID:bXR6vAZf] ご丁寧な返答ありがとうございます。 またわからないことがあったら聞きに着ます。
850 名前:名前は開発中のものです。 [2008/03/27(木) 09:37:30 ID:bXR6vAZf] 「攻撃ボタン押したら1回目の攻撃を行わすとともに1つ目のアラームを起動させる。」 の部分でアラームイベント内にどんなアクションを入れたらいいんでしょうか。 ご教授お願いします。
851 名前:名前は開発中のものです。 [2008/03/27(木) 13:17:57 ID:bXR6vAZf] 解決することができました。ありがとうございます。
852 名前:名前は開発中のものです。 [2008/03/27(木) 20:38:31 ID:bXR6vAZf] 質問なのですがアニメーションをループさせず一週でとめるにはどうすればよいのですか?
853 名前:名前は開発中のものです。 mailto:sage [2008/03/27(木) 22:07:49 ID:fgaEWE81] >>852 アニメーションエンドイベントで image_index を最後の番号(絵が18枚ならindexは0〜17なので、17にする)にして、 image_speed を 0 にする、とか。
854 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 11:24:35 ID:MJYJEqfl] 背景をタイル張りにせずにビューについてこさせるためには どうすればいいのでしょうか?
855 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 11:33:42 ID:uVxOA1kY] 一枚絵の背景画像を view についてこさせたいってことなら、 背景画像の表示位置は、background_x[0..9] と background_y[0..9] の変数で管理されてるんで、 0番目の背景を0番目のview左上角位置に調整したければ、 ステップイベントで以下のコードを記述すればよい。と思う。 background_x[0] = view_xview[0] background_y[0] = view_yview[0] 背景画像がタイル化指定していたら、無効かもしれない。
856 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 18:19:37 ID:NXbnTPzd] 特定のインスタンスを常に手前側に表示させるって方法がありましたっけ? あったら教えてくださると嬉しいです。
857 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 18:20:34 ID:NXbnTPzd] >>856 文にミスがあったので修正 ×方法が ○方法って
858 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 18:40:24 ID:y58KxNze] depthを小さくさせる、かな。 depthが小さいほど手前、大きいほど奥に表示される。 例えば-10、0、10の3つがあったら-10が一番手前に表示される。 手前に表示したければ、その特定のインスタンスのdepthを他より小さくすればいい。 デフォでdepthは0になってるから、特に何もしてない限りdepthを-1にすれば済むはず。
859 名前:名前は開発中のものです。 mailto:sage [2008/03/30(日) 20:25:27 ID:NXbnTPzd] >>858 ありがとうございます。 解決しました
860 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 00:26:35 ID:3gZNdKrL] >>855 ありがとうございます。コードを組み込んだらちゃんと着いてきました。 でも何故かとまるときや着地するときに背景がズレるのです。 解決方法があれば教えていただけるとうれしいです。 gamdev.org/up/img/11264.zip
861 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 01:54:01 ID:VGQZQIFz] >>860 落として見たわけじゃないけど、viewの座標は 「End stepイベントの後」かつ「Drawイベントの前」に更新されるので StepイベントやEnd stepイベントで他の座標をviewに合わせても 描画の時点でずれてしまうという問題がある。たぶんそれじゃないかな。 一般的な解決法は「Drawイベントでviewに合わせて描画する」なんだけど、 背景の描画はDrawイベントより前に実行されるのでこのケースでは厳しい。 この場合、ルームの背景自体はなし<no background>にして、 かわりにうんとdepthの大きいオブジェクトを一つ用意し、 そいつに背景を描画させるのがいいと思う。 Drawイベントの中で draw_background(background0, view_xview[0], view_yview[0]); みたいな感じで。
862 名前:名前は開発中のものです。 [2008/03/31(月) 06:36:23 ID:/Z2PGPfr] アクションゲームで被ダメージのイベントを作りたいのですが、 敵の様々な攻撃を「敵の攻撃」と、一つにまとめられないでしょうか。 「このオブジェクトに衝突したらダメージ、このオブジェクトにも衝突したらダメージ」と オブジェクトの数だけ記述しているような状態を何とかしたいのですが。
863 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 13:44:36 ID:3gZNdKrL] >>861 解決しました。 ありがとうございます。
864 名前:名前は開発中のものです。 mailto:sage [2008/03/31(月) 22:40:41 ID:VGQZQIFz] >>862 そのためのparent 適当なオブジェクトを一つ作ってobj_damage_parentとでも名付ける ダメージ元のオブジェクト全部でそいつをparentに指定する (Advanced modeをオンにしないとparentの設定は出てこないので注意) 後はobj_damage_parentとの衝突イベントだけ作ればOK
865 名前:名前は開発中のものです。 [2008/03/31(月) 23:28:59 ID:/Z2PGPfr] >>864 ありがとうございます
866 名前:名前は開発中のものです。 mailto:sage [2008/04/01(火) 15:45:29 ID:jcfVMQvT] >>863 >>860 のファイルちらっと見たけど1つだけ オブジェクトとかスプライトとかサウンドのリソース名が同じものがいくつかあるけど 別の名前にしておいた方がいいよ
867 名前:名前は開発中のものです。 mailto:sage [2008/04/01(火) 16:06:42 ID:jcfVMQvT] あっとそれから名前に”-”や”?”をつかうのもダメだったと思う メニューの「Scripts」→「Check Resource Names」で チェックしてみ <No name conflicts were found>と出るようになったらok
868 名前:名前は開発中のものです。 [2008/04/03(木) 12:01:14 ID:LCg7Ks7Z] ライフバーの機能を使ってみようと思い、マウスの位置に合わせて描画されるように作ったつもりなのですが全く描画されません。 どこら辺が間違っているのでしょうか? Sprite: <no sprite> Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite> Step Event: set the health to 50 draw the health bar with size (mouse_x,mouse_y,mouse_x+200,mouse_y+30) with back color white and bar color blue
869 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 12:13:58 ID:RldfVeQ4] drawアクションはdrawイベント内で実行しよう
870 名前:名前は開発中のものです。 [2008/04/03(木) 12:26:59 ID:LCg7Ks7Z] 単純なことであるのに質問に答えていただき誠に感謝します。
871 名前:名前は開発中のものです。 [2008/04/03(木) 15:31:34 ID:hpoNHotE] livesのイメージって縦に出来ない?
872 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 17:47:55 ID:x/yJQOmc] >>871 draw Livesアクションは横方向でしかならべられないのね。GMLでかいたらこんな感じかな? drawイベントに「Execute a piece of code」で for(i = 0; i < lives; i +=1) { draw_sprite(ライフ表示用スプライト名,-1,先頭のスプライトイメージのX座標, 先頭のスプライトイメージのY座標+sprite_get_height(ライフ表示用スプライト名) *i); }
873 名前:名前は開発中のものです。 mailto:sage [2008/04/03(木) 17:55:35 ID:x/yJQOmc] Draw Live Images アクションだった^
874 名前:名前は開発中のものです。 [2008/04/04(金) 05:13:29 ID:xKOenXkz] おー、縦にできた。ありがとう
875 名前:名前は開発中のものです。 [2008/04/04(金) 05:21:13 ID:xKOenXkz] ってこれ減らした時に下から減っていくのは仕様なのか
876 名前:名前は開発中のものです。 mailto:sage [2008/04/04(金) 05:32:53 ID:ozKEK2lV] +を-にしたりすれば上下逆もできるんじゃ?
877 名前:872 mailto:sage [2008/04/04(金) 06:59:11 ID:GCwfYrIO] >>875 氏 仕様というかそういうんじゃなくて draw_sprite()は描画イベントでスプライトを表示させる命令 sprite_get_height()は指定したスプライトの高さを調べる命令 そんでdraw_sprite()命令をfor文を使って単にライフの数だけ繰り返してる for()の中で”i”は初期値が”0”で1回処理されるごとに1づつ増えていくからsprite_get_height()*iとすることで スプライトの高さだけずれて描画されていってる >>876 氏のいう様に”sprite_get_height(ライフ表示用スプライト名) *i”の前の符号を-にしたら下から上になる
878 名前:名前は開発中のものです。 [2008/04/04(金) 08:31:17 ID:xKOenXkz] なるへそ。 ちょっと考えればわかることだね、お恥ずかしい。 勉強になります、ありがとう
879 名前:名前は開発中のものです。 [2008/04/04(金) 11:47:17 ID:UN21xGR5] クリックした時にそのクリックした位置が そのオブジェクトより上だったならそのオブジェクトの画像を後ろ向き、下なら前向き、左なら左向き、右なら右向き・・・ってな感じで変える方法は無いでしょうか? 右斜め下とか8方に作りたいのです。 それとクリックした位置にオブジェクトを移動させる(一瞬でじゃなくそこまでの道程を通って)のはどうすれば良いのでしょうか? 初歩的な質問ですみませんがよろしくお願いします。
880 名前:名前は開発中のものです。 [2008/04/04(金) 23:37:08 ID:atXFd6s2] rapidshare.com/files/104815717/test.gmk.html
881 名前:名前は開発中のものです。 [2008/04/04(金) 23:44:49 ID:atXFd6s2] ゴメン、ミスったぜ www.uploda.org/uporg1350943.gmk.html pass:GM
882 名前:名前は開発中のものです。 [2008/04/05(土) 01:54:06 ID:28WyvbPP] >>881 すみませんがGM6なので開くことができません・・・。 それともGM6で開く方法もあるのでしょうか?
883 名前:名前は開発中のものです。 [2008/04/05(土) 04:41:45 ID:/7lMTMqT] Object1 Step Event: set variable image_angle to direction Object2(追尾させたいスプライト) Step Event: if left mouse button is pressed for all honoo: perform a step towards position (mouse_x,mouse_y) with speed 10 stop at solid only GM6だと開けないのか〜
884 名前:名前は開発中のものです。 mailto:sage [2008/04/05(土) 04:46:32 ID:mh+kpRIe] 俺普段はGM5使ってるけど 中身見る用にGM7も入れてる
885 名前:名前は開発中のものです。 [2008/04/05(土) 05:54:37 ID:/7lMTMqT] 書き間違えました。 上から7行目のhonooってのはObject2のことです。
886 名前:名前は開発中のものです。 mailto:sage [2008/04/05(土) 08:08:06 ID:Q8dvYXzo] ここの住民的にニコニコ動画(VS)ってどうなんだ? 外部データからキャラクターの追加とか 結構システム設計まわりをがんばってるみたいだが。
887 名前:名前は開発中のものです。 [2008/04/05(土) 13:27:36 ID:/7lMTMqT] なかなか良いと思ってるよ。 キャラを後から追加できるなんて良心的だよね。 俺ならキャラデータを丸ごとexeにブチ込んでアップデートのたびに 大容量のデータをいちいちダウンロードさせてる所だよ。 開発が長引いたのはうp主が忙しかったからかな?
888 名前:名前は開発中のものです。 [2008/04/05(土) 14:18:21 ID:28WyvbPP] 後から外部からデータ追加とかどうやってるんだろ
889 名前:名前は開発中のものです。 [2008/04/05(土) 14:52:56 ID:/7lMTMqT] Replace a sprite from a fileを使えばおk
890 名前:名前は開発中のものです。 [2008/04/05(土) 21:57:34 ID:/7lMTMqT] 自らを生成したオブジェクトを指定する関数っていうのはありますか?
891 名前:名前は開発中のものです。 mailto:sage [2008/04/06(日) 00:30:38 ID:jpfm9sAG] >>890 ないので自分で誰が作ったか覚えておかないといけない。 ・instance_createは生成したインスタンスのIDを返す ・自分自身のインスタンスIDはidでとれる ので aaa = instance_create(x, y, object0); aaa.createor = id; としてやると、object0の中からはcreatorで自分を作ったインスタンスを参照できる。
892 名前:名前は開発中のものです。 [2008/04/06(日) 14:46:53 ID:+Z1B7XWC] >>891 ありがとうございます
893 名前:名前は開発中のものです。 [2008/04/06(日) 15:05:43 ID:EU0AU+S4] オブジェクトBの位置までオブジェクトAが移動して、オブジェクトBの位置についたら移動を停止する。というのはどうすればよろしいのでしょうか?
894 名前:名前は開発中のものです。 [2008/04/06(日) 17:03:33 ID:+Z1B7XWC] >>893 step towardsのx座標に「ObjectB.x」y座標にも同じく「ObjectB.y」って入れれば ObjectBが目標の座標になるよ。
895 名前:名前は開発中のものです。 [2008/04/06(日) 17:45:37 ID:EU0AU+S4] >>894 おお・・・こんな簡単に・・・ありがとうございます><
896 名前:名前は開発中のものです。 [2008/04/06(日) 18:30:55 ID:EU0AU+S4] すみませんがもう1つお願いします。 現在このようなゲームを作っているのですが↓ gamdev.org/up/img/11284.zip クリックした時、オブジェクト0が進行方向(オブジェクト1のある方向)と 同じ向きの矢印スプライトに変化する様にするにはどうすれば良いのでしょうか? 解り難い説明ですみませんが、ご存知の方よろしくお願いします。
897 名前:名前は開発中のものです。 [2008/04/07(月) 00:07:19 ID:ip9v6GLB] 【速報】らき☆すた二期決定でアニオタ歓喜wwwwwwwwww jbbs.livedoor.jp/bbs/read.cgi/sports/26525/1204784207/
898 名前:名前は開発中のものです。 [2008/04/07(月) 05:30:29 ID:wG6ko/jv] >>896 zip落せなかった;; image_angleの値をdirectionにすれば楽にできるけどレジストバージョンしか出来ないかもしれないから、 レジストじゃなかったらdirectionの角度ある程度の範囲になったらになったらChange the spriteを使う方法があるよ 大雑把な説明だけどzipがどんなのか確認できたらもっとわかりやすく書くかも。
899 名前:名前は開発中のものです。 [2008/04/07(月) 09:53:52 ID:PrCqy7fg] >>898 私のPCではちゃんと落とせるのですが・・・ 再うpしてみましたのでこちらはどうでしょうか? ttp://gamdev.org/up/img/11292.zip
900 名前:名前は開発中のものです。 [2008/04/07(月) 13:17:17 ID:wG6ko/jv] 私のはGM7なのであえて記述させてもらいます Information about object: object0 Sprite: sprite2 Step Event: perform a step towards position (object1.x,object1.y) with speed 5 stop at solid only set variable image_angle to direction Information about object: object1 Sprite: <no sprite> Mouse Event for Glob Left Button: move to position (mouse_x,mouse_y) なお、これはレジスト用です、レジストでない場合はimage angleが使えないので Ifステートメントとchange spriteを組み合わせるしかないでしょう。 私はまだ日が浅く、その場合の方法は考え付かなかったので非公式サイトあたりで聞いてみてください。
901 名前:名前は開発中のものです。 mailto:sage [2008/04/07(月) 23:37:03 ID:5Vpyn9U6] 某東のほうのSTGの魔女っ娘みたいな極太レーザーを表現したいんですけども どうすれば極力ゲームが軽く仕上がるでしょうか?
902 名前:名前は開発中のものです。 mailto:sage [2008/04/08(火) 00:43:47 ID:1aWF0Oei] >>901 いまどきのマシンスペックなら少々無茶やっても速度落ちないと思うけど? ただimage_xscale,image_xscaleでスプライトを拡大すると処理負荷がかかるっていうのはあるのかな? 以下gamemaker helpの「ゲームの仕上げ」→「ゲームの速度について」より引用 >ほとんどのグラフィックカードは、効果的に画像を拡大することが出来ますが、その処理のために重くなります。 だそうです 自分は400×480のルームに画面半分近いぐらいのボスを作ってみたけど PVマシンでもルームスピードが落ちることはそうなかったですよ? んで純粋にレーザーの作り方はというと 普通に弾撃たす処理と対して変わらないかと思います。 要はレーザー発射源オブジェクトのインスタンスよりレーザー用のインスタンスを切れ目なく生成して その時一緒にdirection,speedの数値をレーザー用のインスタンスに与えてあげたらいい。 切れ目なく生成するというのはアラームイベントを使えばよくて、この時「number of steps」の数値が大きすぎると レーザー1コマ1コマの間が長くなるから隙間が生じる。 答えになってるかどうか心配ですが。一応ここまででレス切っておきます。
903 名前:名前は開発中のものです。 mailto:sage [2008/04/08(火) 11:32:50 ID:PGw82Ekz] GMに興味あるんだけど、ここ見てると書式結構独特ぽいな… やってる人はけっこうサクっと順応できたのかな。
904 名前:名前は開発中のものです。 mailto:sage [2008/04/08(火) 21:09:24 ID:lWzhg9Ri] >>903 ここ数レスのはアイコンの内容を言葉で説明したものであって、 実際にああいうコードを打つわけじゃないですよ。 Game Makerではオブジェクトの動作を定義するのに 「アクション」というアイコンをポチポチ並べていく方法と、 「GML」という言語で直接コードを書く方法があって 習熟度に応じててきとーに混ぜて使えます。 GMLの文法はCとほぼ同じ(一部Pascal要素あり)なので、 ある程度プログラミングの経験があればすんなり覚えられるはず。 たとえば>>900 は2箇所のイベントにアクションを3つ置いた様子を 表しているけれど、同じ内容をGMLで書くとこうなります。 // object0のStepイベント mp_linear_step(object1.x, object1.y, 5, false); image_angle = direction; // object1のマウスボタンイベント x = mouse_x; y = mouse_y;
905 名前:名前は開発中のものです。 mailto:sage [2008/04/08(火) 23:29:01 ID:C/r/gPzk] >>902 後者で試してみようと思います ありがとうございました!
906 名前:900 mailto:sage [2008/04/09(水) 03:31:08 ID:R1oJ6a1A] >>904 ああ、そうなのかー…なるほどなあ… わざわざ丁寧にありがとうございます。 以前豆乳システムとかもいぢってたんで、 C言語に似てるなら結構早めに覚えられそうですね。
907 名前:名前は開発中のものです。 [2008/04/09(水) 06:41:45 ID:n+SEEGKi] 自分はhspでゲームが簡単に作れるって聞いたもんだから実際に触ってみたらサッパリ理解できなかった。 それに比べてGMなら2週間くらいで大体使えるようになった。
908 名前:名前は開発中のものです。 [2008/04/11(金) 18:09:33 ID:AT/nfPM9] >>900 遅くなりましたがありがとうございます。 レジスト、というのがどのような物なのか解りませんが・・・。 それとスレ違いかも知れませんが非公式のフォーラムに書き込むことが出来ないのですが私だけでしょうか?
909 名前:名前は開発中のものです。 [2008/04/11(金) 20:34:53 ID:LqedxyKD] 非公式サイトはユーザー登録してからフォーラムで「新規に投稿」押せば書き込めるよ。 あとレジストは料金を支払って制限解除したバージョンのこと。 良く分からない単語使ってゴメンネ
910 名前:名前は開発中のものです。 [2008/04/11(金) 20:37:53 ID:EEx5djbh] >>908 レジストとは、お金を払ってプロダクトキーを貰い、使用制限を解除することです。
911 名前:名前は開発中のものです。 mailto:sage [2008/04/11(金) 20:38:20 ID:EEx5djbh] おおう、更新すれば良かったorz
912 名前:名前は開発中のものです。 [2008/04/12(土) 11:01:55 ID:eNZFgCaH] >>909 ,910 ありがとうございます。 なるほど、有料登録ですね
913 名前:名前は開発中のものです。 mailto:sage [2008/04/18(金) 10:19:47 ID:3dx+PVyf] ちょっと参考までに、日本語圏でのGM作品を見てみたいんだが、 有名所で、GM作品を公開してる人っているかい?
914 名前:名前は開発中のものです。 [2008/04/18(金) 20:35:49 ID:xHO8JEqh] ニコニコのミックマンXやニコニコアクションゲームとかなら知ってるけど。 ニコニコでgamemakerを検索するとちょっぴり出てくる。
915 名前:名前は開発中のものです。 mailto:sage [2008/04/27(日) 05:53:10 ID:2l2AKY8C] これダウンロードできなくね?
916 名前:名前は開発中のものです。 [2008/04/27(日) 11:06:31 ID:CLNLyEnS] 英語だらけだから難しいよね 俺もダウンロードするのに一日かかった
917 名前:名前は開発中のものです。 mailto:sage [2008/04/29(火) 09:44:12 ID:2d8FpwgV] 登録しねーとDLできないのか?
918 名前:名前は開発中のものです。 mailto:sage [2008/04/29(火) 11:59:36 ID:YwZZ6j+f] 基本的に登録してからダウンロードしたほうがいい。 けど、 ttp://www.yoyogames.com/gamemaker/try_download からDL出来ると思う。
919 名前:名前は開発中のものです。 mailto:sage [2008/04/30(水) 21:35:13 ID:wqvUGn48] 6.1で3Dポリゴンにテクスチャを張りたいのですが、色々試しても黒く表示されるだけでどうにも…… どうコードを組めばうまく表示されるか誰かアドバイスくれませんか?
920 名前:名前は開発中のものです。 mailto:sage [2008/05/01(木) 00:53:19 ID:TumL990E] その「色々試した」の中身が重要なわけだけども。 まあ、仮にテクスチャはちゃんと取れているものとして。 描画するのにcolorが付かない方のd3d_vertex_textureを使ってるとすると その場合テクスチャは現在設定している色でブレンドされる。 draw_set_colorしてないと初期値は黒だから、結果も真っ黒になるよ。 もしそうだとしたら、先頭でdraw_set_color(c_white)してみて。
921 名前:名前は開発中のものです。 mailto:sage [2008/05/01(木) 05:57:14 ID:boSZuiu9] >>920 ありがとうございます! まさしくそれでした(^^; こんな簡単なミスだったとは……
922 名前:名前は開発中のものです。 mailto:sage [2008/05/01(木) 22:44:02 ID:QlMWKAXW] すごい漠然とした質問なんですが 画像を1、2、3って表示させるときに 1の画像が前面、3の画像が背景側に表示させる方法ってあります? GML非公式サイトでdraw関連のコードがあまり説明されてなかったので。。。