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


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

【2D】ゲーム作成ツールGameMaker part4【マンセー】



1 名前:名前は開発中のものです。 mailto:sage [2009/04/23(木) 08:11:08 ID:iAS0afeL]
無料Windows用2Dゲーム作成ツール"Game Maker"について、色々と語り合うスレッドです。

●本家(英語)
 ttp://www.gamemaker.nl/
●GameMaker Japan - 非公式情報サイト(日本語)
 ttp://gamemaker.main.jp/(現在一時閉鎖中)

前スレ
【2D】ゲーム作成ツールGameMaker part3【マンセー】
ttp://pc11.2ch.net/test/read.cgi/gamedev/1210437707/


647 名前:名前は開発中のものです。 mailto:sage [2010/01/19(火) 18:40:44 ID:6ti7jU/Z]
>>646
ウエエェー(;゚Д゚)出来たぁ!?
有難うございます何とかなりそうです
昔、引数一杯のbackground()か何かがプロ版のみとかで出来なかったから諦めてたorz
無駄なオブジェクト沢山作らずに済みました、本当に有難う&お世話になりました〜(;ω;)

648 名前:名前は開発中のものです。 mailto:sage [2010/01/21(木) 00:09:35 ID:Xw5ltV1q]
GM8でも一応例の日本語描画ツール使えば日本語書けるみたいだね
エディタに日本語打ち込むと文字化けするけどゲーム上ではちゃんと日本語が表示される

649 名前:名前は開発中のものです。 mailto:sage [2010/01/21(木) 03:37:14 ID:gobQ8P1c]
mbtextの構造からしてそうだろうね
だけどエディタに日本語書けないってのが致命的なんだよな
日本語は全部スプライトで管理したり外部ファイルで読み込むって手もあるけど、
やはりエディタに書けると嬉しい

650 名前:名前は開発中のものです。 mailto:sage [2010/01/26(火) 22:16:53 ID:FaW4K/F1]
日本語コメントだめなのはきつすぎるな

651 名前:名前は開発中のものです。 mailto:sage [2010/01/29(金) 01:59:13 ID:8vzlSTrb]
パスを使い始めたのですが、path_speedのことがよくわかりません。
マニュアルには「各ステップで進むピクセル数」とありますが、
例えばpath_speed = 100としても毎ステップで100ピクセル進まず、もっと遅いです。
私の解釈が間違っているのでしょうか?
GMLを使っています。

652 名前:名前は開発中のものです。 mailto:sage [2010/01/29(金) 17:11:10 ID:mZFPM7FC]
path_speedが予測と違うなら
Path の sp、GMLなら path_add_point(ind,x,y,speed) などのspeedの設定が間違ってるんじゃないのかな
100で現在の速度維持。それ以下なら遅くなる

653 名前:名前は開発中のものです。 mailto:sage [2010/01/30(土) 00:08:30 ID:j+0p8nHt]
GMLのスクリプトってswap(&a,&b)みたいな参照っぽい使い方って出来ませんよね
変数を入れ替える作業がのめんどくさくってしょうがないんです(´・ω・`)
なんかいい方法ないですか?

654 名前:名前は開発中のものです。 mailto:sage [2010/01/30(土) 11:40:51 ID:VUMX4QPq]
swap("a", "b") みたいに変数名をもらってvariable_local_get/setとか
execute_stringでやる方法はあるけど、効率は良くないな。

655 名前:名前は開発中のものです。 mailto:sage [2010/01/31(日) 00:04:23 ID:7PBqv3Nb]
GM6でスロットみたいなのを作っていて、当たりの判定が面倒なのですが良い案はないでしょうか?

図柄は1つずつに数字が割り振られていて1列目=1、2列目=1、3列目=1だと中央で1当たりです
それだけなら1列目=2列目=3列目の時に当たりとすれば良く
3段なので斜め等もあり1列目=2、2列目=1、3列目=3など中央の数字の並びで判定出きます

これで現在の各3図柄の3列3段の場合は何とか判定出来るのですが
実際は21の図柄を3列3段で上段並び、中段並び、下段並び、上斜め、下斜めの全てをそのようにすると
単純計算で105?の通りがありそれを全て書くと大変な長さになってしまいます

これを簡略化する方法があれば是非ともご教授お願いします



656 名前:名前は開発中のものです。 mailto:sage [2010/01/31(日) 00:24:03 ID:nFgBCrEE]
なんだかよくわからんがポケモンとかにおまけでありそうな感じのスロットってこと?
あたりがあるかどうか判定するなら、別に21図柄まとめてやらずとも各個撃破でいいんじゃないの
3図柄の3X3が出来るなら、1図柄が3X3の配列で当たってるかの判定はもっと簡単でしょ?
その判定を1〜21までやってそれぞれの当たり判定を集計すればいいんと違う?

657 名前:名前は開発中のものです。 mailto:sage [2010/01/31(日) 00:46:41 ID:uDla1eoE]
3列3段って調べるのは5通りになるんじゃないの
ABC  //RowUp[3]
DEF  //RowMid[3]
GHI  //RowBottom[3]
上段そろいABCなら if(RowUp[0] == RowUp[1] && RowUp[0] == RowUp[2]) とか
上斜めそろいAEIなら if(RowUp[0] == RowMid[1] && RowUp[0] == RowBottom[2]) とか
スロット列がいくつであっても出目A〜I に対して
ABC、DEF、GHI、AEI、GEC
の5通りで済むような気がする

658 名前:名前は開発中のものです。 mailto:sage [2010/01/31(日) 07:08:38 ID:qY8NTmDt]
MMFは結局日本語版が出ても英語からは逃げられずGMより情報がはるかに少ないという現状

659 名前:名前は開発中のものです。 mailto:sage [2010/01/31(日) 13:39:37 ID:9pquWRar]
チュートリアルや基本操作がわかったら次のステップに進むにはどうしたらいいですか?

660 名前:名前は開発中のものです。 mailto:sage [2010/02/02(火) 10:54:38 ID:pAqVBwNP]
>>652
解決しました。
よくマニュアルを見たら、pathのspeedはパーセントだって書いてありましたね。
遅くなりましたがありがとうございます。

661 名前:名前は開発中のものです。 mailto:sage [2010/02/02(火) 17:59:35 ID:+Ydy93TO]
www.youtube.com/watch?v=StlP7a69TNk&feature=related

これをそのまま真似てみたんですが壁の判定部分が壁の判定ではなく
まるで沼のような判定になってしまうのですがどのように直せば良いでしょうか?
一応ファイルも張っておきます。
ttp://www.dotup.org/uploda/www.dotup.org615943.zip.html
よろしくお願いします

662 名前:名前は開発中のものです。 mailto:sage [2010/02/02(火) 21:10:11 ID:+Ydy93TO]
ちなみにジャンプのところの!はなぜか入れたらエラーが出たので
あえて抜いてあります

663 名前:名前は開発中のものです。 mailto:sage [2010/02/03(水) 09:35:39 ID:CtOIR+P/]
失礼。自己解決しました

664 名前:名前は開発中のものです。 mailto:sage [2010/02/13(土) 03:48:52 ID:VdovzMYI]
GMでジオメトリーやスマッシュTVみたいな全方位シューティングを作ってみました。
SHOOTING GAME TKOOL WIKIのupロダに上げました。
やってもらえたら嬉しいです。

665 名前:名前は開発中のものです。 mailto:sage [2010/02/14(日) 07:38:24 ID:tdSVdIsJ]
スロットか。とりあえずやってみた。
上段3つに代入して、残りは上段の数字から取得。

// 判定
hit = 0;
if (drum[0,0] == drum[1,0] && drum[0,0] == drum[2,0]) hit = drum[0,0]; //上段
if (drum[0,1] == drum[1,1] && drum[0,1] == drum[2,1]) hit = drum[0,1]; //中段
if (drum[0,2] == drum[1,2] && drum[0,2] == drum[2,2]) hit = drum[0,2]; //下段
if (drum[0,0] == drum[1,1] && drum[0,0] == drum[2,2]) hit = drum[0,0]; //右下がり
if (drum[0,2] == drum[1,1] && drum[0,2] == drum[2,0]) hit = drum[0,2]; //右上がり

switch (hit)
{
case 1:

}
数回叩いて飽きた(´・ω・`)



666 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 01:02:03 ID:tpauSGur]
ジャンプアクションを作っているのですがジャンプで上昇中と下降中のアニメーションを
切り替えたいのですがどのようにすればよろしいでしょうか?参考になるサンプルとか
あればいいのですがつべとかでいろいろ見ましたがジャンプでのアニメーション
切り替えについてどうしてもわかりません、よろしくお願いします

667 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 03:33:00 ID:IDVHdV70]
>>666
垂直方向の速度で判断させればいいんじゃね?
vspeedが0以上ならアニメーションA、0以下ならアニメーションB、とか

668 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 17:14:00 ID:tpauSGur]
うーん、普段はyoutube等のチュートリアルで出てきた変数を
wikiで検索かけてたりしたのですが、今回は例にできるサンプルや動画も
見つからないためどんな変数を用いればいいかとか情報がわからなく困っています・・・

669 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 21:48:12 ID:7uwN/x8l]
なぜ>>667を読まないのか

670 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 22:15:43 ID:tpauSGur]
いや、vspeedの変数についてはわかるのです、左右の移動はできてるので

//重力
if place_free(x,y+1){gravity = 0.7}
else{gravity = 0}
gravity_direction=270
//スピード
if vspeed >20{vspeed = 20}

//左右移動
if keyboard_check(vk_right) && place_free(x+9,y){x+=5}
if keyboard_check(vk_left) && place_free(x-9,y){x-=5}

//ジャンプ
c_key_check = keyboard_check_pressed(67)
if c_key_check && !place_free(x,y+1){vspeed = -15}

こんな感じにしています。
アニメーションを切り替えるのにどういう変数を用いてどのようにスクリプトを
作っていけばいいのがわからないのです

671 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 22:41:29 ID:r7Iarjwj]
普通に右のアイコンを使ったりはしないの?
画像の変更はsprite_indexだったはず
ヘルプ読めば分かると思うけど

672 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 22:53:27 ID:tpauSGur]
使っています、上のスクリプトを用いて左右のアニメーションの切り替えは
key pressのイベントChange spriteのアクションで構成させたのですが
ジャンプ中のアニメーションの切り替えだけがどうしてもわからないのです。
サンプルや海外のチュートリアル動画でもジャンプのアニメーション部分は
上昇中と下降中でわけていなく1つのスプライトしか使っていないもので。
どういうふうにすればいいか方法がわからなく・・・



673 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 23:31:22 ID:Iihzzpes]
if文の使い方はわかっているという前提で
Change spriteアクションには設定欄が3つあるけど、それぞれがGMLの変数に対応する。
「sprite」=sprite_index、「subimage」=image_index、「speed」=image_speed
普通は3つ全部代入する必要はなくて、変える必要のあるものだけ変えればいい。
例: if (vspeed < 0) { sprite_index = spr_jump_up; }

ちなみにGML使わずChange spriteアクションでもできる。
その場合、条件判定にはTest variableアクション(八角形のVAR)や
If expression is true(八角形の?マーク)を使えばいい。

あと、キーの値に直値使うのはあまりよくないな。
普通は keyboard_check_pressed(ord('C')) と書く。
こういうことみんなヘルプに載ってるんだから、
サンプルありきじゃなくまずヘルプを読むことを覚えてくれ。

674 名前:655 mailto:sage [2010/02/15(月) 23:36:23 ID:ORUjV2JB]
>>657
ありがとうございます
なんとか形になりました
書き込み規制で遅くなり申し訳ありません

675 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 23:38:23 ID:tpauSGur]
>>673
ありがとうございました
ちなみにkeyboard_check_pressed(ord('C'))は
一応やったのですがなぜかエラーが出てしまったので
c_key_check = keyboard_check_pressed(67)
if c_key_check && !place_free(x,y+1){vspeed = -15} に自分で作り変えています。




676 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 23:41:33 ID:r7Iarjwj]
ttp://www.dotup.org/uploda/www.dotup.org658239.zip
スペースでジャンプ

こんな感じでいいのか?これからは自分で考えて作るんだぞ

677 名前:名前は開発中のものです。 mailto:sage [2010/02/15(月) 23:47:31 ID:tpauSGur]
>>676
GMLを使わなくても右のアイコンから普通にできたのですね。
大変参考になります、ありがとうございました。
一応日本語化したヘルプファイルは見たのですが理解がまだ足りなかったようです。
もう一度じっくり見直してみます。

678 名前:名前は開発中のものです。 mailto:sage [2010/02/16(火) 08:01:02 ID:h1RSWInj]
GM6で質問なのですが一定時間後に次のアクションを実行するというような事をするにはどうすれば良いのでしょうか?
Set Alarmだと増えすぎて見にくいしSleepだと他のオブジェクトも止ってしまいます
Stepで変数Aに+1していって、Aが一定数に達したらB=1、「IF B=1〜」とかで次に繋げる事も出来ますがこれもイマイチです
初心者で申し訳ありませんがご回答よろしくお願いします

679 名前:名前は開発中のものです。 mailto:sage [2010/02/16(火) 10:14:58 ID:XrRMVF0j]
timelineというものがあってだな

680 名前:名前は開発中のものです。 mailto:sage [2010/02/16(火) 21:39:49 ID:h1RSWInj]
>>679
ありがとうございます
あまりの便利さに年号が大正に変わった時並の衝撃を受けました

681 名前:名前は開発中のものです。 mailto:sage [2010/02/16(火) 22:18:18 ID:RKDJmTNj]
今からGameMakerをはじめるならどのバージョンがいいですか?

682 名前:名前は開発中のものです。 mailto:sage [2010/02/17(水) 01:21:56 ID:OuLovxNF]
アニメーションを増やせば増やすほど壁にめり込みやすくなってしまうのですが
何かいい工夫の方法ってありますか?

683 名前:名前は開発中のものです。 mailto:sage [2010/02/17(水) 01:27:11 ID:MTfpk2jP]
その症状の意味がよくわからんが
詳細な衝突判定のチェックを外して、
衝突判定の大きさとoriginを揃え(あるいはMaskを使う)ておけばまずめり込むことはないと思うんだが。

684 名前:名前は開発中のものです。 mailto:sage [2010/02/19(金) 15:36:20 ID:UNUcs7a5]
ジョイスティックにもプレスとリリースのイベントがあればいいのに

685 名前:名前は開発中のものです。 mailto:sage [2010/02/19(金) 22:10:31 ID:pb8ghgYd]
gm6のマルチプレイヤについての質問なのですが
ホスト側がmplay_init_tcpip(addr) 、mplay_ipaddress() でIPをプレイしたい相手に伝える
次にmplay_session_create(sesname,playnumb,playername) でセッションを作成

相手側はmplay_init_tcpip(addr) にホストのIPを入力して
mplay_session_find() でセッション数の数だけmplay_session_name(numb) でセッション名を表示して
mplay_session_join(numb,playername) で任意のセッションに接続する、という順序でよいのでしょうか?

それと、上記のコードはゲーム中のどこで行うべきなのでしょうか?
オブジェクトやタイムラインで行っても良いのでしょうか?
よろしくお願いします



686 名前:名前は開発中のものです。 mailto:sage [2010/02/20(土) 17:20:02 ID:pXLk+4Sd]
prev_○○って前のステップの○○ってこと?

687 名前:名前は開発中のものです。 mailto:sage [2010/02/22(月) 10:39:05 ID:BpErQlzY]
>>684
begin stepやend stepを使って自作も出来るけど、
適当なエクステンションがGMフォーラムにもあったはず
Gamepad Extendedって奴かな、使ったことはない

688 名前:名前は開発中のものです。 mailto:sage [2010/02/22(月) 22:28:28 ID:U4BXwmb1]
ジョイスティックのボタンとキーボードのキーを対応させればいいだけだから
ジョイスティックイベントってのは結局いらないんだよね

こんな感じ↓の動作をするオブジェクトを最初のほうでcreateすればいいんじゃないかと
(Zとボタン1を対応させる場合)
if(joystick_check_button(1,1)) keyboard_key_press(ord('Z'));
else if(keyboard_check(ord('Z'))) keyboard_key_release(ord('Z'));


689 名前:名前は開発中のものです。 mailto:sage [2010/02/22(月) 23:16:32 ID:p56cWW+6]
斜めの坂を登る、斜めの坂から転がり落ちる、といった様な事はどのようにすれば良いでしょうか
跳ね返り有りのボールをぶつけてもピタリと止まってしまいます
よろしくお願いします

690 名前:名前は開発中のものです。 mailto:sage [2010/02/23(火) 06:00:56 ID:poh83Soa]
>>688
そうか、その手があったか。でも二行目は
else if(!keyboard_check(ord('Z'))) keyboard_key_release(ord('Z'));
かな?
ジョイスティックの1は押されてないけどキーボードではキーが押されてる時は
key_releaseは実行しないって感じか

691 名前:名前は開発中のものです。 mailto:sage [2010/02/23(火) 10:47:51 ID:jsahWFTu]
else if(keyboard_check(ord('Z'))) keyboard_key_release(ord('Z'));
であってると思うぞ ボタン離したのにZ押下が残ってたらZを離すってことだし

692 名前:名前は開発中のものです。 mailto:sage [2010/02/23(火) 12:31:19 ID:B7xiSASd]
もしよかったら十字キーとボタン二つくらいでプレス、リリース、押してるときのサンプルを作ってくださいまし

693 名前:名前は開発中のものです。 mailto:sage [2010/02/27(土) 01:13:14 ID:7yAKVkTI]
>>683
返事遅れました。てっきりスプライトのマスクのところいじるのかとおもってたら
オブジェクトのMaskの設定だったのですね、何とか解決しました

694 名前:名前は開発中のものです。 mailto:sage [2010/02/28(日) 20:19:41 ID:HDkOtntC]
うーん、海外サイトからサンプルいくつかおとしたけど全部中身GMLで書いてて
よくわからないなぁ・・・

695 名前:名前は開発中のものです。 mailto:sage [2010/03/02(火) 21:39:12 ID:rAfxrio1]
5.3を使ってるんだけど 透明色って強制的に画像の左下1ドットの色になるの?



696 名前:名前は開発中のものです。 mailto:sage [2010/03/02(火) 22:40:49 ID:0hlEDrjC]
5.3〜7.0は、強制的に左下の色になる。
アニメーションで変化する場合も、表示されるコマでの左下の色となるので、気をつけなければならない。
Pro版なら、ドット毎で透過度を指定できるコマンドがあるが、やや冗長で使いにくい。

8.0は、エディタ上でドット毎に透過度を設定できるようになっている。

697 名前:名前は開発中のものです。 mailto:sage [2010/03/02(火) 22:43:09 ID:ShiiXXx2]
>>689
重力を180°にするってのはどう?

698 名前:名前は開発中のものです。 mailto:sage [2010/03/02(火) 22:49:38 ID:rAfxrio1]
>>696
ありがとう 画像サイズを1ドット大きくしてみる

699 名前:名前は開発中のものです。 mailto:sage [2010/03/03(水) 01:55:35 ID:ah63hVO5]
320×240を拡大表示したらアンチエイリアスのせいで汚く見える
拡大してもドット絵がシャープに見える方法は無いかな

700 名前:名前は開発中のものです。 mailto:sage [2010/03/03(水) 07:16:29 ID:Fp5HeXYH]
常に圧縮表示して拡大表示時が原寸になるみたいな

701 名前:名前は開発中のものです。 mailto:sage [2010/03/05(金) 07:02:30 ID:K/WsbzjF]
マウスクリックした座標に飛行機を移動させるって動作の際に
直進方向以外のいわゆる旋回移動に制限を付けようと思っているんですがどうすればいいのでしょうか。
摩擦を使えばいいのか、それともアングルとクリック座標から計算したほうがいいのか…

702 名前:名前は開発中のものです。 mailto:sage [2010/03/05(金) 08:06:36 ID:4A3js8HY]
>>699
正確にはアンチエイリアスじゃなくて線形補完かな
global game settingsで拡大表示にしてるの?
俺も色々試したけど、結局texture_set_interpolationをオフにして
全てのスプライトのimage_xscaleとかをいじるか、draw_sprite_extで整数倍に拡大するかって結論になった
ビューとか使ってるなら少し面倒だけど、これなら基本的にドットがぼけない

703 名前:名前は開発中のものです。 mailto:sage [2010/03/06(土) 17:42:45 ID:m5KzOAuh]
画面左下にHPバーを表示したいんだけど
ビュー内の座標はどうすれば指定できるかな

704 名前:名前は開発中のものです。 mailto:sage [2010/03/06(土) 22:53:31 ID:SfY0Rt0r]
GM8 使ってるけど時々狂ったようにSprite Editorの調子が悪くなるな
正直7に比べるとここだけ格段に不安定になったように感じる

705 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 01:29:48 ID:DXuxsLAQ]
>>703
とりあえず検索・日本語マニュアル・スレ内検索のどれかをするんだ!
てかこのスレの上の方にあったような・・・



706 名前:703 mailto:sage [2010/03/07(日) 08:29:18 ID:/LOr08+f]
すまない 解決した

707 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 09:23:55 ID:lvOuk5YJ]
ifで変数(X)がある数(N)の倍数であるかを判断したいのですがどのようにすれば良いのでしょうか
プログラミングの分野じゃ常識的な事かもしれませんがよろしくお願いします

708 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 09:43:09 ID:MKLEC4hp]
>>707
剰余算「mod」ってのがあって、X mod N とすると、XをNで割った余りが計算できる。
XがNの倍数なら余りゼロってことだから、
if (X mod N == 0) {
...
}
っていうかんじで書ける。
剰余算はどの言語にもある演算だから覚えておくとよろし。

709 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 10:19:48 ID:KNf4+0qq]
ロックマンの武器選択とかRPGの会話とかみたいに一部分だけ動作させて
他の部分は動作を止めるっていうのはどうやるのがいいのだろう

710 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 15:48:14 ID:KXTIK9mK]
武器選択とかサブスクリーンを作る方法で一番簡単なのは
instance_deactivate_all(true);
instance_activate_object(obj); //停止させたくないオブジェクト・必要なオブジェクト
instance_create(SubscreenObj); //操作用オブジェクト作成
で扱って処理が終わったら
instance_activate_all();

RPGの会話(会話中キャラクタが動かない)とか、STGで敵はアニメーションするけど動作やアラームは止める
とかいうのは、GMだと基本的に個々のイベントを飛ばすことはできないから自分で管理しないとダメ


711 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 21:26:29 ID:lvOuk5YJ]
>>708
なるほど、確かに割り切れていれば倍数ですね
ありがとうございます

712 名前:名前は開発中のものです。 mailto:sage [2010/03/07(日) 22:56:06 ID:q1c1f1NA]
背景が手前と奥で違う(純粋な背景と足場)ようにスクロールにさせるにはどうしたらいいでしょうか

713 名前:名前は開発中のものです。 mailto:sage [2010/03/08(月) 08:34:27 ID:f1HsbEbX]
>>710
deactivateだとオブジェクトが見えなくなるしやっぱり専用の動作を作らないと駄目か

714 名前:名前は開発中のものです。 mailto:sage [2010/03/08(月) 10:08:27 ID:kyD8U0j1]
draw前にアクティブにすればいんじゃね

715 名前:名前は開発中のものです。 mailto:sage [2010/03/08(月) 20:43:49 ID:hKqIKFom]
>> 709
ループ作って回すという方法もある

do {
io_handle(); // キーイベント取り込み
// キー判定してメニュー処理などを行う
// 必要に応じて特定のオブジェクトの状態を変えたりする
screen_redraw();
sleep(1000/room_speed);
} until keyboard_check(ポーズ解除キー);

武器選択みたいにキーイベントしか使わない場合
io_handle+sleepじゃなくてkeyboard_waitがおすすめ。

>>712
背景の位置はbackground_x/y[]、移動速度はbackground_h/vspeed[]
0番と1番とでそれぞれ違う値を与えてやればいい。
parallax scrolling game maker とかでぐぐるとサンプルが出てくるよ



716 名前:名前は開発中のものです。 mailto:sage [2010/03/09(火) 12:57:26 ID:dAWdTrtl]
>>701
> マウスクリックした座標に飛行機を移動させるって動作の際に
> 直進方向以外のいわゆる旋回移動に制限を付けようと思っているんですがどうすればいいのでしょうか。
> 摩擦を使えばいいのか、それともアングルとクリック座標から計算したほうがいいのか…

摩擦は違うと思う。 飛行機の現在の座標位置とクリック座標を使ってpoint_direction()で角度を求めて
現状の飛行機の向いている角度と比較する。そんで旋回できる最大角度をきめておいて、それ以上だったら
最大角度で飛行機の方向を変える。以内だったらpoint_direction()で求まった角度に飛行機の方向を変える。
でいけると思う・・・あと移動速度があるままだとクリックポイントをくるくる回るような動作になるかも?
なので旋回時はスピードをなくしてあげて向いたら速度を与えるとかがいるかもしれんねぇ・・・・

717 名前:名前は開発中のものです。 mailto:sage [2010/03/10(水) 16:05:11 ID:y7KsC20g]
複数配置する敵キャラと剣波のオブジェクトを別々に作って
剣波が敵キャラに常に追従するようにしたいんだけど
剣波を生成した敵キャラインスタンスだけに追従する方法は無いだろうか

718 名前:712 mailto:sage [2010/03/10(水) 17:45:41 ID:SAQuwhgU]
>>715
解説ありがとうございました。
ググっても見ようと思います。

719 名前:名前は開発中のものです。 mailto:sage [2010/03/10(水) 20:36:21 ID:wfB1/ttt]
>>717
三行目に読点がないから具体的にはわからないけど
instance_nearest(x,y,obj)とかで索敵して追従するインスタンスidを取得
move_towards_point(x,y,sp)なんかでそのインスタンスに向かうように移動させたらいいんじゃないか

720 名前:名前は開発中のものです。 mailto:sage [2010/03/11(木) 18:24:32 ID:AQjiT5D5]
壁にぶつかったら跳ね返ってバウンドするのを解決する方法がわからない。
FRICTIONをHSPEEDから引いてやる?のかと思ったが、それもちょっと違うみたい。
誰か俺を救ってくれ。

Step Event:
set the friction to 1
if relative position (hspeed,0) gives a collision with Only solid objects
  if hspeed is smaller than 0
    move in direction 0 at most -hspeed till a contact with solid objects
  if hspeed is larger than 0
    move in direction 180 at most hspeed till a contact with solid objects

Keyboard Event for <Left> Key:
set the horizontal speed to -5

Keyboard Event for <Right> Key:
set the horizontal speed to 5

721 名前:名前は開発中のものです。 mailto:sage [2010/03/11(木) 19:39:40 ID:Ea/aU+lQ]
なんで辞書引かないの

722 名前:名前は開発中のものです。 mailto:sage [2010/03/13(土) 00:36:38 ID:YM2/ST+o]
2D横スクアクションを作っているんですが
攻撃した時にアニメを表示させる場合、何のイベント&アクションを使うのがいいんでしょうか?
試しにchange instanceでanimation endを使ってみたんですがどうにもうまくいかない・・


723 名前:名前は開発中のものです。 mailto:sage [2010/03/14(日) 23:38:38 ID:nkvMCnMT]
当たり判定がなんかおかしいと思ったら
bbox_* 関係は取得座標が小数なしまで丸められるのかよ・・・
せめて上下左右の大きさだけとれればよかったのに

724 名前:名前は開発中のものです。 mailto:sage [2010/03/20(土) 10:54:07 ID:UbAewb2i]
このスレどんだけかそってるんだw
mmfのスレはあんなに盛り上がっているというのに・・・

725 名前:名前は開発中のものです。 mailto:sage [2010/03/20(土) 10:56:45 ID:2KFp/FA3]
日本語化されてないからじゃね
MMFだって、日本語化されてないときは、こんなもんだったでしょ



726 名前:名前は開発中のものです。 [2010/03/20(土) 11:37:08 ID:5xltgAgS]
早くどっかの日本企業がライセンス買って日本語版発売してくれねーかなー
MMFは言語が使えないからちょっと厳しい

727 名前:名前は開発中のものです。 mailto:sage [2010/03/20(土) 15:08:48 ID:9qb/UR82]
キーコンフィグで指定したキーを イベントに使うことは出来ないのかね

728 名前:名前は開発中のものです。 mailto:sage [2010/03/20(土) 23:08:23 ID:w9rRSurb]
面倒だけどステップ内でGML使うとかで代用は出来るかもね

729 名前:名前は開発中のものです。 mailto:sage [2010/03/21(日) 00:14:54 ID:ItlXC61c]
どんなキーコンフィグ作ったのか知らないけど
keyboard_set_map(key1,key2)
キーボード同士ならこれでおk
ジョイスティックなら>>688みたいな感じでおk

730 名前:名前は開発中のものです。 mailto:sage [2010/04/06(火) 19:09:53 ID:eQDK8rEU]
>>688ってどういうことかよくわかんないんだけど
コードをステップイベント中に実行するってこと?

731 名前:名前は開発中のものです。 mailto:sage [2010/04/10(土) 17:50:44 ID:gFqDEyWp]
画像をループさせたいのですが良い方法は無いでしょうか
@□■□■□A ←みたいな画像を左に流していき、Aから@へ繋がってる様にループさせたいのです
よろしくお願いします。

732 名前:名前は開発中のものです。 mailto:sage [2010/04/11(日) 12:00:04 ID:RzDfUQsd]
left_edge += 1 //画像の切れ目
if(left_edge >= sprite_width) left_edge = 0
//画像の切れ目から画像の終端まで
draw_sprite_part(sprite_index, image_index, left_edge, 0, sprite_width - left_edge, sprite_height, x, y)
//画像の先端から画像の切れ目まで
draw_sprite_part(sprite_index, image_index, 0, 0, left_edge, sprite_height, x+sprite_width - left_edge, y)

733 名前:名前は開発中のものです。 mailto:sage [2010/04/11(日) 16:16:00 ID:aPthgjeC]
>>732
ありがとうございます
何となくやり方はわかったのですがそのままコピペしてみてもGM6で動きませんでした
先にバージョンを明記せず申し訳ありませんでした

734 名前:名前は開発中のものです。 mailto:sage [2010/04/11(日) 22:04:14 ID:sb+5mwFJ]
コピペで動くソース要求するとか

735 名前:名前は開発中のものです。 mailto:sage [2010/04/12(月) 07:16:15 ID:UjHvnRTV]
>>733
単純にループさせたいだけならアニメーションエンドイベントでimage_indexを0に戻せばいいんでない?



736 名前:名前は開発中のものです。 mailto:sage [2010/04/18(日) 22:52:26 ID:D98Y6NTt]
>>735

>>733はきっとPSPのXMB(横縦ピッのやつ)みたいなのを作ろうとしているんだと思う
違ってたらすまん

737 名前:名前は開発中のものです。 mailto:sage [2010/04/20(火) 14:33:44 ID:fnZxDMJj]
>>735
遅くなってすみませんがありがとうございます
結構簡単に出来そうでありがたいです

>>736
なんとなくそんな感じかもしれません
XMBの縦は無しで横にピピピッと進めていって端が無いみたいな

738 名前:名前は開発中のものです。 mailto:sage [2010/04/24(土) 09:54:27 ID:YDMYzErf]
2Dシュータータイプのマルチプレイヤーゲームをサクッと作りたいと思い、
Gang Garrison2にも使われているらしい?GameMakerに行き着いたのですが
マルチプレイのサポートはどの程度実用的なものですか?
ネットコードを自力で書く必要があるようでは、あまり有り難味はないです
GangGarrison2はいかにもチープな2Dグラフィックだったのに信じられないくらい動作が重かったのも気になりましたし
お手軽にオンゲを作れるという幻想は捨てるべきですか?

739 名前:名前は開発中のものです。 mailto:sage [2010/04/24(土) 12:36:50 ID:a4YOAF6Q]
GameMaker標準のマルチプレイ機能は DirectPlay を簡単に利用できる程度。
だけど、ネット通信用のプラグインがいくつか公開されていて、Socketによる通信もお手軽に出来る。
39dll.dllが有名かも。
gmc.yoyogames.com/index.php?showtopic=90437

それを使った戦車のネット対戦ゲーム
www.yoyogames.com/games/22-hover-tank-3d#

なお、ネット機能やプラグインの利用といったような、
大規模ゲーム向けの機能はすべて有料版のみ ($25 USドル) の機能となる。

GameMaker製のゲームが重いのは、ある程度は仕方ないところ。対応策、というか気を使うべき点はあるけれど。
>>738 がお手軽に「市販レベルのゲーム」が作れる、というのを期待しているのであれば、やはり幻想と言わざるを得ない。

740 名前:名前は開発中のものです。 mailto:sage [2010/04/24(土) 13:43:15 ID:EStWy2QE]
お手軽を求めながらデフォルトでネット対応してないツールを選ぶ時点でおかしい

741 名前:名前は開発中のものです。 mailto:sage [2010/04/24(土) 15:43:48 ID:6qStzYe2]
>>ネットコードを自力で書く必要があるようでは、あまり有り難味はないです
どんだけだし

742 名前:名前は開発中のものです。 mailto:sage [2010/04/24(土) 16:21:08 ID:Ahd9dW6Q]
ここでのネットコードってGMLじゃなくて外部ライブラリとかエクステンションのことでしょ

ぶっちゃけ現状でのGameMakerはネトゲ作成には向いてないと思う
本当に基本的なAPIしか用意されてないしね
通信機能は評価版じゃ使えないから正規版を買う必要があるけど
苦労多くて実り少なしだから・・・手軽からは程遠いと思う

743 名前:名前は開発中のものです。 mailto:sage [2010/04/28(水) 13:08:03 ID:80mOF+Ry]
アクエディ今まで使ってたんですがGameMakerと主な相違点ってどんなものがあるでしょうか?
横スクアクションだったんですが同じ感覚では通用しないでしょうか?

744 名前:名前は開発中のものです。 mailto:sage [2010/04/28(水) 18:35:40 ID:2HI/3VpU]
レースゲーのラップタイム等を計るのに便利な関数って無いよね?
fpsと経過フレームから弾き出すしかないか

745 名前:名前は開発中のものです。 mailto:sage [2010/04/28(水) 22:08:21 ID:PAVXsTi9]
>>743
今アクエディを30秒触った人の意見でいいなら。
GameMakerとアクエディは、ツールの概念が根本的に違う。
GameMakerには、アクエディのように予め用意されているギミックは一切無いから、一から自分で作っていく必要がある。
(自キャラの操作からはじまって、ブロックに乗れるとか、重力の設定とか、アイテム、タイムの経過の表示とか、もろもろ)
それが用意できたら、アクエディのようにぺたぺた貼っていく感じで面を作っていくことが出来る。

一応忠告しておくと、自力でそれに到達するまでは、
GameMakerをいじって作り方を学ぶ必要があるんで、それなりに時間がかかる。プログラミング未経験なら、なおさら。
ジャンプアクションは、意外に難しいジャンル。
個人的に、ゲーム製作初心者が初めに手を出すべきでない、と思ってる。

>>744
実時間の計測したいなら、グローバル変数のcurrent_time(値はミリ秒)を用いる手があるが、精度がいまいちのような気がする。
実時間計測の精度を求めるなら、DLLをつかってWindowsのAPIにある精度の良い関数(timeGetTime()等)を呼び出すとかするしかない。



746 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 01:02:16 ID:oUdNBSO0]
精度がいいか悪いかは別として
current_timeは基本的にリファレンス通り1msぐらいの精度でとってくれるよ
内部でtimeGetTimeを呼んでるんじゃないかと思う

747 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 02:10:18 ID:tkZBl2+m]
>>743
アクエディってのは使ったことないけど
1から作るGamemakerで単純な横スクを作るとこんな感じの壁に当たると思う

重力や物に乗る設定

敵を踏む設定

背景や画面の設定

斜面との当たり判定

梯子とかあるとそこも壁になりかねないけどある程度応用が利けば何とかなる
タイムラインとグローバル変数を会得すれば快進撃が始まる

748 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 03:49:19 ID:6/QcXG7Y]
>>745>>747
ありがとうございます。
なるほど、基礎部分が大きく違うのですね……衝突や重力設定から自分で作らないといけないと。
とりあえずアクションにこだわらずいじって練習してみます。


749 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 10:11:26 ID:d5o0oHa5]
>>745-746
PCの起動時間を調べるだけみたいだから気に留めてなかった
この関数で出る数字は人によってまちまちになると思うけど、どうやったらこれをラップタイム等に応用できるのでしょか

750 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 10:17:17 ID:itw73pKb]
終了時刻−開始時刻=経過時間

751 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 10:28:34 ID:d5o0oHa5]
>>750
なるほど
これを分:秒:ミリ秒に変換する、と

ラップスタートとPCの起動時間に関連はないから若干の誤差は仕方ないのね


752 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 19:03:57 ID:d5o0oHa5]
画面上に動き続けるタイムを表示する場合だとこの式では無理?だよね

753 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 20:12:21 ID:oUdNBSO0]
ゲーム内の時間をとるんだったら、現実時間じゃなくてfpsから計算していかないと
ほとんどの場合使い物にならないよ。

タイム表示をするとしたら↓こんな感じ。割り算しまくってあまりいいコードじゃないけど
real_timeはすでにミリ秒に換算されたものとして
real_time_text = string(real_time div 1000 div 60)+"'"+
string(real_time div 1000 mod 60)+"'"+
string((real_time mod 1000) div 10)
draw_text(x, y, real_time_text)

754 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 21:01:11 ID:d5o0oHa5]
詳しく書いてくれてありがとう
ちなみにfpsでミリ秒を求める場合はどうやるんでしょか
60fpsの場合60フレームで1秒はわかるんだけど

755 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 21:39:19 ID:oUdNBSO0]
あんまり難しいこと考えずに算数を思い出して
60 fpsの場合、1fpsでかかる時間 x は
60 (fps) : 1000 (msec) = 1 (fps) : x (msec)
x = 1000 / 60 (msec)
経過時間 = 経過したフレーム数 * x




756 名前:名前は開発中のものです。 mailto:sage [2010/04/29(木) 21:46:09 ID:d5o0oHa5]
こうやって書いてもらうと簡単に思えるけど
自分で辿り着くのはすごく難しいんだよなー

何度も何度もありがとう

757 名前:名前は開発中のものです。 mailto:sage [2010/05/01(土) 18:53:49 ID:II5NejI3]
GMLが大量においてあるサイトはどこにあるんだ?
かれこれ数時間はぐぐっているのだがぜんぜん見当たらない・・・

758 名前:名前は開発中のものです。 mailto:sage [2010/05/02(日) 02:17:03 ID:1vQ/IaZ6]
少なくとも日本のサイトにはないんじゃない

759 名前:757 mailto:sage [2010/05/02(日) 10:15:45 ID:aa09sJ7a]
>>758
そうか・・・もうちょっと頑張ってググってみるよ。



760 名前:名前は開発中のものです。 mailto:sage [2010/05/02(日) 10:40:23 ID:aa09sJ7a]
お前らって横スクロールアクションゲームの斜面処理どうしてる?


連投ですまない。

761 名前:名前は開発中のものです。 mailto:sage [2010/05/02(日) 23:19:33 ID:uBl6tD5c]
俺も知りたい

762 名前:名前は開発中のものです。 mailto:sage [2010/05/02(日) 23:26:10 ID:5bIfN4MQ]
こういうの?
ttp://www.youtube.com/watch?v=gymK3oi1xmE

763 名前:名前は開発中のものです。 mailto:sage [2010/05/02(日) 23:35:56 ID:uBl6tD5c]
これだと登るのは可能だけど 下るのは落ちるようになるなぁ

764 名前:名前は開発中のものです。 mailto:sage [2010/05/03(月) 01:32:24 ID:8PtFWmtK]
公式のチュートリアルに坂道って入ってなかったっけ
…と思ったが、確かめてみたらその動画と似たりよったりだった

よくあるのは、ループで下から上に向かって調べていって
空いているスペースがあったらそこに移動する方法かな。
for (vy = 4; vy >= -4; vy -= 1) {
if (place_free(x + 4, y + vy)) {
x += 4;
y += vy;
break;
}
}

765 名前:名前は開発中のものです。 mailto:sage [2010/05/03(月) 01:44:11 ID:8PtFWmtK]
ついでに>757 GMLスクリプトの定番サイト
ttp://www.gmlscripts.com/



766 名前:名前は開発中のものです。 mailto:sage [2010/05/03(月) 20:07:36 ID:2UeCxxLo]
>>762
すばらしいチュートリアルを有難うございます!
これを参考にして見ます。

>>764
スクリプト提供サンクス。
これを参考にして作ってみます。

>>765
おお!ありがとうございます!

いろいろ忙しくてレス出来なくてすまない。

767 名前:757 mailto:sage [2010/05/03(月) 20:11:54 ID:2UeCxxLo]
名乗るのを忘れていたorz
>>766 は俺です


768 名前:名前は開発中のものです。 mailto:sage [2010/05/03(月) 21:32:52 ID:OdCmNntC]
斜面に関してだけどつまり
向きを「/」として、斜面のXより左に自キャラがいるときに→キーを押した場合、
「X,n+Y」(上)と「n+X,n+Y」(斜め上)に何もないか調べて、無ければそこに移動、みたいな感じで良いのかな
以前同じようなのを作った気がしたけど失敗した


で、俺は曲線の斜面を登る必要はないから滑り落ちる様なのを作りたいんだけど
何か質問文考えてる途中で何となくイメージが掴めて来たから困る

769 名前:名前は開発中のものです。 mailto:sage [2010/05/08(土) 17:12:54 ID:b3P5iVqG]
横スクアクションの無限ループするマップを楽に作れないかな

770 名前:名前は開発中のものです。 mailto:sage [2010/05/08(土) 17:53:33 ID:b3P5iVqG]
自己解決した

771 名前:名前は開発中のものです。 mailto:sage [2010/05/08(土) 19:32:43 ID:pAC3Vaca]
>>768
こんな感じかな?
左右キーで移動
スペースでジャンプ

サンプルはこちら
www.mediafire.com/?sharekey=81a95152d02a511aab1eab3e9fa335cab6c5a8801dbaf8fc

772 名前:名前は開発中のものです。 mailto:sage [2010/05/08(土) 19:45:18 ID:pAC3Vaca]
www.youtube.com/user/ultim8p00#p/a/u/2/wS55PSlfayc
こんな感じにルーム遷移をしたいんだけど、なにかいい方法ないかな・・・
詳しい方、ご教授願います。

773 名前:名前は開発中のものです。 mailto:sage [2010/05/09(日) 15:58:20 ID:+L3j5tFD]
こんな感じのこれはどれを指してるんだ

774 名前:名前は開発中のものです。 [2010/05/09(日) 19:49:26 ID:xBD6SAPM]
すいません GameMakerの処理速度はプログラム言語でたとえるとどの言語程度でしょうか?

775 名前:772 mailto:sage [2010/05/10(月) 19:22:18 ID:MvcHCLbq]
>>773

説明不足でした。ごめんなさい

この動画の 1:11から1:13あたりの、ルームを移動したときに前の処理を継続しているみたいなんです。

ルーム移動時にオブジェクトの移動速度や状態をどうやって保持するのかなとおもいまして



776 名前:名前は開発中のものです。 mailto:sage [2010/05/10(月) 21:34:53 ID:tts9fO3P]
残したいobjectにpersistentを設定

777 名前:名前は開発中のものです。 mailto:sage [2010/05/13(木) 20:15:05 ID:wxlWK1XE]
ジョイパッド キーボードでのキーコンフィグの作り方がよく分からない
サンプルって無いだろうか

778 名前:名前は開発中のものです。 mailto:sage [2010/05/14(金) 20:25:16 ID:YaJQFI/9]
>>777
ジョイパッドはわからないが
キーボードでのキーコンフィグなら

www.mediafire.com/file/jymdrhmimnd/keyconfig.gmd

ヘルプにも有るように、今作ってるゲームのシステムを使ってやっつけモード全開で作ったので・・・


779 名前:777 mailto:sage [2010/05/14(金) 20:57:51 ID:ZT/EAdjl]
>>778
ありがたい
ver8.0をliteで使ってるんだけど スクリプト:key_initの
datafile_exportが不明なスクリプトと出た ちょっと色々調べてくる

780 名前:名前は開発中のものです。 mailto:sage [2010/05/14(金) 23:29:40 ID:fHM8y9Wt]
キーコンフィグなら上のほうにも出ているけどキーマップ切り替えが簡単だと思うよ
例えば、Zと何かのキーを変更するなら
default_key = ord("Z")
keyboard_wait()
custom_key = keyboard_lastkey
keyboard_set_map(custom_key, default_key)

781 名前:名前は開発中のものです。 mailto:sage [2010/05/15(土) 00:24:40 ID:uTaTmBuv]
>>780
ありがとう 試してみる
今夜は寝ないでがんばる

782 名前:名前は開発中のものです。 mailto:sage [2010/05/16(日) 00:35:52 ID:prMMPTJc]
スコア等を表示するときに
1250ではなく0001250のように表示するにはどうしたらよいでしょうか

783 名前:名前は開発中のものです。 mailto:sage [2010/05/16(日) 11:45:50 ID:nSJwkLn0]
ttp://gamemaker.jpn.org/v1/modules/docs/article.php?id=23
ここにGM7以降はアルファチャンネルの合成・・・とか書いてあるが実装されてるのでしょうか?
白に近い色も透明化できるということですよね?

GM8使ってみても6と違って透明処理が非常に分かりにくいorz 読み込んだ後の画像の透明化の仕方すら分からん…。

784 名前:名前は開発中のものです。 mailto:sage [2010/05/16(日) 15:35:38 ID:s7h1BRs+]
>>782
string_formatが誰得な使えない機能になっているので、一番上のスコア部分をグラフィックで隠すか
str_number = string(number | 100000000) //8桁表示
draw_text(x, y, string_copy(str_number, 2, 8))
大きい桁の数で読み込んで上の桁を削るとかかな

>>783
日本語のやつは使ったこと無いから知らないけど
GM8の透過はアルファつきのpng読めば勝手に透明化してくれる
自分で画像を作るときはopacity設定して書くだけ

785 名前:名前は開発中のものです。 mailto:sage [2010/05/16(日) 20:03:43 ID:4L+tUZJD]
>782
> 1250ではなく0001250のように表示する

四桁までなら以下のスクリプトで出来る。
www.mediafire.com/file/y1yzjo2vczz/chgdeg 3and4.gml

>784 のような方法が一番無難だけどね。



786 名前:785 mailto:sage [2010/05/17(月) 18:31:49 ID:a6R0p8Vc]
ファイル名間違えたorz
www.mediafire.com/file/znzhwrdwnjw/chgdeg_3and4.gml
正しくはこっちね。


787 名前:名前は開発中のものです。 [2010/05/17(月) 19:19:16 ID:qsApoeyK]
すいません GameMakerで商業レベルの戦略 戦術シミュレーションゲームを作る事は可能でしょうか?

788 名前:名前は開発中のものです。 mailto:sage [2010/05/17(月) 22:44:35 ID:iruzC88G]
無理

789 名前:名前は開発中のものです。 mailto:sage [2010/05/18(火) 10:30:04 ID:UBDSEPmt]
GMをレジストする時のfirstname/lastnameってやっぱり本名だよね
PRO版になった後に「ライセンス保持者は○○」みたいにどこかに表示されたりする?
それともライセンス名は自由に決められる?

なんとなく気になったもので

790 名前:名前は開発中のものです。 mailto:sage [2010/05/18(火) 20:08:56 ID:SNyXku20]
無理か無理じゃないかと言われたら無理じゃない
死ぬほど頑張れば出来るとおもうよ

791 名前:名前は開発中のものです。 [2010/05/18(火) 20:10:43 ID:C9Z95m5J]
i wanna be the engine でゲームを作っているんですけど
オブジェクトと時計回りに飛ばすにはどうすればよいのでしょうか?
i wanna be the guy で言うとグラディウスの面の最後のサクランボです

792 名前:名前は開発中のものです。 mailto:sage [2010/05/18(火) 21:24:11 ID:SNyXku20]
またアイワナか

793 名前:名前は開発中のものです。 mailto:sage [2010/05/19(水) 00:25:50 ID:CbssJVe7]
しかもマルチかw別にいいけど

794 名前:名前は開発中のものです。 mailto:sage [2010/05/20(木) 13:03:53 ID:XqlYIriT]
Game MakerとMMF2ってどっちの方がとっつきやすいの?
人によるのかな?

795 名前:名前は開発中のものです。 mailto:sage [2010/05/20(木) 23:25:21 ID:WBZEEzhD]
使用者が少なくともプログラマじゃないとして

ツクールを裏技駆使したりするレベルでコアに使い込むタイプの人
→MMF2

デザイナーだけどFlashでActionScript使うのが好き(勉強が苦にならない)人
→Game Maker

どんなに苦労してもいいからゲーム作りを飯の種にしたいという決意の人
→Java



796 名前:名前は開発中のものです。 mailto:sage [2010/05/21(金) 00:55:49 ID:8RMu8YrK]
>>795
なるほど、把握

797 名前:名前は開発中のものです。 mailto:sage [2010/05/22(土) 23:51:45 ID:kzKFYK2b]
gamemakerの3D機能が本当に微弱という話は良く聞きますが
実際どれくらいの事まで出来るのでしょう?
良ければサンプル、あるいは3Dを使用した作品の動画などを教えていただけませんでしょうか

798 名前:名前は開発中のものです。 mailto:sage [2010/05/26(水) 10:00:33 ID:zLNiQ8yo]
アクティベーションできない・・・
このレジスト方法嫌いだ。

799 名前:名前は開発中のものです。 mailto:sage [2010/05/29(土) 00:36:22 ID:tQ6NeHot]
アクティできあ。
〜nameとか書いてあるから名前書いてたけど
メールアドレスだったのね・・・・サポートに2度もメール出しちゃった。
ハスカスィ

800 名前:名前は開発中のものです。 mailto:sage [2010/05/29(土) 13:47:15 ID:ri3eQDYH]
〜nameってどこの事?

801 名前:名前は開発中のものです。 mailto:sage [2010/05/29(土) 14:32:12 ID:+iWaOSdT]
licence holder のことでしょ
分かりにくいのは全部softwrapのせい

802 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 02:22:15 ID:yzHAUCrX]
マウスをゲームのウインドウからはみ出さないようにする事は可能でしょうか
マウスがウインドウから出た時ステップイベント中にwindow_mouse_setでウインドウ内に戻す方法では
一応ウインドウ内に戻る事は戻るのですが一時的にはみ出してしまいます


803 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 10:35:25 ID:K80hcH1v]
常にフルスクリーンならともかく
強制的にマウスをウインドウに閉じ込めるのは非常によろしくない
何がしたいのかわからないけれど、きちんとウインドウ外に出たときの処理を作ったほうがいい

804 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 13:45:16 ID:yzHAUCrX]
マウスを使うアクションゲームを考えているのですが
マウスがウインドウからはみ出してクリックする度にフォーカスが外れるのはストレスになるだろうと思いまして

ワイド画面の場合の余白の事もあるのでフル/ウインドウ問わずゲーム画面内にマウスをキープできればと

805 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 20:36:11 ID:K80hcH1v]
個人的なあれやこれやを押し付けてもしょうがないので先に解決策を書くと
>>802の状態で、おそらくウインドウいっぱいにゲーム領域があるんだろうけど
もう少しウインドウサイズを大きくして、ゲームに淵の部分をつけてマウスをその中に収めるようにすれば
フォーカスを失うことは無いかと

でもやっぱりウインドウモードでマウスが占有されるっていうのは、う〜む・・・



806 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 20:47:11 ID:6CMxHS1M]
FPSとかはゲーム中占有してるもんだけどね。
ただ、メニューモードになるとマウスカーソルが表示されて
ウィンドウフォーカスをマウスで選択できるようになるけど。


807 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 20:54:01 ID:yzHAUCrX]
たしかにこの方法だとフォーカスが移ってもマウスの移動が制限されてしまうんですよね
理想はFPSのウインドウモードのような感じなのですが

色々調べてみたところ望んだ動作をさせるにはDLLを使うしかないようです
そのDLLがどんな物なのかは全くの謎ですが

808 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 21:01:23 ID:yzHAUCrX]
>>806
更新したら同じようなレスが

メニューモードでもウインドウ内に閉じ込めるタイプがありますが、それが理想の動作かもしれません
ALT+TABでフォーカスを移してもマウスの動きも制限されないですし

809 名前:名前は開発中のものです。 mailto:sage [2010/05/30(日) 22:56:03 ID:jFXrZH5T]
普通にフルスクリーン限定のゲームじゃダメなのかな
ウィンドウのFPSを遊んだ事が無いので何とも不愉快なイメージしか無い
人によってはフルスクリーンになる事の方が嫌なのかもしれないけど

それにそんな画面いっぱい使ってるゲームなら尚更フルスクリーンの方が楽しめるんじゃないかな

810 名前:名前は開発中のものです。 mailto:sage [2010/05/31(月) 20:14:52 ID:uB+Rcg9m]
ゲーム画面が4:3だとモニターがワイドの場合フルスクリーンにすると余白ができてしまって不都合が出るかと思ったのですが
特に問題は無さそうなのでフルスクリーンで作ることにします
ありがとうございます

811 名前:名前は開発中のものです。 mailto:sage [2010/06/01(火) 13:33:24 ID:mLQywIcm]
www.youtube.com/watch?v=K895MJuf10Y
この動画みたいに同じタイプのパーティクルを個別の位置(ザコ1匹毎)に作るにはどうしたら良いでしょうか?

812 名前:名前は開発中のものです。 mailto:sage [2010/06/02(水) 21:15:39 ID:pzl3yDfb]
Proエディションにアップさせたいんだけど金はどうやって払えば良いのかな
銀行振り込みなんかが出来ると助かるんだけど

それと送られてきたキーはどのバージョンでも使えるのかな?
今GM6で何か別物になってそうな気がしてGM7に進めないんだけど
将来的にやっぱりバージョンは上げてくだろうし

813 名前:名前は開発中のものです。 mailto:sage [2010/06/02(水) 23:38:52 ID:MxWIiucV]
GMってズーム機能とかはないのかな?
image_xscaleとimage_yscaleをいじるしかない?

814 名前:名前は開発中のものです。 mailto:sage [2010/06/03(木) 02:49:00 ID:dVlhQ8ao]
>>811
敵の位置を指定してpart_particles_createするだけじゃないの?
particle systemとtypeは、適当なコントローラオブジェクトにでも作らせて
グローバルに一個だけ持っておけばいい。

>>812
支払いはクレジットカードとPayPalだけだったかと。
バージョンによってやり方は微妙に違うと思うけど、
Lite版だったらGM起動するたびに「Proにしないか」って画面が出るから
それを押して案内に従えばいいと思う。
ちなみにバージョン間でキーの互換性はないよ。
(GM6買った時は5と6両方のキーがもらえたけど)

>>813
GM6以降だったら、Viewを使って拡大縮小ができる。

815 名前:名前は開発中のものです。 mailto:sage [2010/06/03(木) 15:22:06 ID:YHqswL3e]
>>814
おお、ありがとうございます
おかげでズームアップできました



816 名前:名前は開発中のものです。 mailto:sage [2010/06/03(木) 22:05:01 ID:aReQvSl6]
GM9はC#製になるらしいね
gamemakerblog.com/2010/05/26/game-maker-9-to-be-written-in-c/

817 名前:名前は開発中のものです。 mailto:sage [2010/06/03(木) 22:13:37 ID:ZiWZ04IR]
新verか 線形補間解除できるようになったらいいな

818 名前:名前は開発中のものです。 mailto:sage [2010/06/03(木) 23:37:06 ID:AF5Clpsp]
それって公式発表じゃない気が。
>>816のページもGameMakerユーザーがやってるっぽいし。
本当にC#だったら、Macは切捨てか・・・?

819 名前:812 mailto:sage [2010/06/04(金) 17:36:04 ID:ds85S00c]
>>814
ありがとう
互換性無いのか・・・
なんか知らぬ間にどんどんバージョン上がってきてるしどうすりゃ良いんだ

820 名前:名前は開発中のものです。 mailto:sage [2010/06/07(月) 15:39:30 ID:A0pl8E9h]
線形補間って解除できなかったっけ
GM6だけ?

821 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 15:59:46 ID:ebHnfTX2]
スプライトの回転はProだけでしょうか。

822 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 17:02:25 ID:3eDecubD]
いえす

823 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 20:48:06 ID:iBEd3wdQ]
あるオブジェクトにある変数が定義されているかどうかを確認する方法ってありますか?
定義されていないならその処理は行わないみたいなことをやりたいのですが…

824 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 21:05:50 ID:sZ3LRrvf]
つ variable_local_exists(変数名)

825 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 21:19:21 ID:iBEd3wdQ]
う、ヘルプのその他の変数のところにしっかりとあったのですね。すごい恥ずかしい…
素早いレスありがとうございました。これで先に進めそうです



826 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 21:19:27 ID:dOFxgLqw]
>>820
まじか
8だと出来ないわ

827 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 23:03:40 ID:3eDecubD]
7はどうだったか忘れたけど、
8だと解除っていうかデフォルトで設定されてない
もちろんチェックをいれれば有効になる

828 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 23:05:13 ID:dOFxgLqw]
>>827
まじか
色々チェックを弄って試してるんだけど分からぬ
どのチェックかな

829 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 23:24:26 ID:3eDecubD]
Global Game Settings の interpolate
この辺は6から変わらないと思う


830 名前:名前は開発中のものです。 mailto:sage [2010/06/09(水) 23:31:12 ID:dOFxgLqw]
すまない 画面を拡大した時に輪郭がボケるのを無くしたかったんだ

831 名前:名前は開発中のものです。 mailto:sage [2010/06/11(金) 21:51:55 ID:t2BjBbMT]
いまTDS(TopDownShooter)で軽くゲームを作っているのだが、
どうもキーボード使って斜め移動をしているときに、銃を撃とうとすると斜め移動できなくなるな

なんでだろ

832 名前:名前は開発中のものです。 mailto:sage [2010/06/12(土) 01:22:20 ID:PYXKd/uJ]
普通のキーボードはいくつものキーを同時押しできる作りにはなってない
組み合わせによっては三つ以上認識できないことがある
ShiftとかCtrlにすると改善されるかも

833 名前:名前は開発中のものです。 mailto:sage [2010/06/12(土) 13:54:56 ID:oloLVXQg]
image_angleくらいliteでも使わせてくれ…うぅ

834 名前:831 mailto:sage [2010/06/13(日) 11:29:24 ID:XK4fWSQG]
>>832
やっぱりそうでしたか・・・
キーの組み合わせを調整してみます。

それでもうまくいかないようだったら四方向固定にしようかと。

>>833
激しく同意。 image_angleなしでTDS系のゲームとか作ろうとすると結構つらいorz

835 名前:名前は開発中のものです。 mailto:sage [2010/06/13(日) 15:12:21 ID:S6dSSaR1]
2000円くらい払えよ
ゲーム製作なんて何ヶ月もかかるんだから、2000円ケチる方がはるかに損だと思うんだがな



836 名前:名前は開発中のものです。 mailto:sage [2010/06/13(日) 19:10:48 ID:ov7pH7B7]
ところで格ゲーとかのコマンド入力ってどうやってる?
ボタン押したら変数onにしてタイムラインで一定時間内に次キーが押されなかったら変数offなんて面倒な仕様にしてるんだけど
もっと単純な方法は無いかな

837 名前:名前は開発中のものです。 mailto:sage [2010/06/13(日) 21:29:16 ID:taDSM2ud]
技ひとつをオブジェクト扱いにして
処理コマンド(キーを入力する順番)を配列として持ったものと
技の入力状況を示すイテレータを持たせる

一定時間ごとにキー判定を取って、キーが一致すればイテレータを進め
一致しなければ先頭に戻す。最後まで到達すれば技発動・・・みたいなことを考えた

838 名前:836 mailto:sage [2010/06/16(水) 07:51:51 ID:iSVFrURJ]
なるほど、技ひとつひとつがオブジェクトですか
参考にしてみるよ。ありがとうございました

839 名前:名前は開発中のものです。 mailto:sage [2010/06/16(水) 07:56:57 ID:Jeqzgo2J]
アクションゲーム作っていて、剣を振るとか殴るとかで
アニメが終わる間動きを止めたいんですけどどうすればいいのか
教えてもらえませんか?
よくアラームを使うって見かけるけどいまいちわからなくて…
AnimationEndを使うとオブジェクトをいくつも分けないとだし
変数もややこしくなるしで一つのオブジェクトで済ませたいんです


840 名前:名前は開発中のものです。 mailto:sage [2010/06/16(水) 17:24:01 ID:jPwPQDvq]
動きに応じてsprite_indexを変更するようにしとけば、AnimationEndイベント使ってもひとつのオブジェクトでできるよ。
ただ、AnimationEndイベント内部はswitch-caseとかの場合わけが必要になるかもしれないけど。


841 名前:839 mailto:sage [2010/06/17(木) 00:24:48 ID:mBfyuQLT]
>>840
ありがとう。分けなくてもAnimationEnd使えるんですか
ただ動きに応じて、という処理の書き方・GMLは使ってないのでこれまた
書き方がヘルプ等見ても見当がつかないんですがGML使わなくても出来ますか?

というか皆さんこういう場合具体的にどうやっているんでしょうか?
散々調べたけどその辺詳しく解説されているところが見つからなくて…
ニュートラル>攻撃モーション完了(完了まで攻撃ボタン無効)>ニュートラル 
というのがどうやっても出来なくて数ヶ月詰まってます。
もっと簡単な方法とか他にあればどなたか教えて下さい
お願いします。

842 名前:名前は開発中のものです。 mailto:sage [2010/06/17(木) 07:20:40 ID:nIJZSKy9]
全ての操作の条件に変数がonになってる事を追加して
攻撃モーションへ移る際にその変数をoff、モーション完了後に変数をonに直せば良いだけの話じゃないの?

843 名前:839 mailto:sage [2010/06/18(金) 21:45:25 ID:zwccdsE4]
>>842
ありがとう
なんかそう言われるとやけに簡単な気がして
ゼロから組み直したらある程度形になりました。
まだ思い通りにはいきませんが…

844 名前:名前は開発中のものです。 mailto:sage [2010/06/22(火) 11:01:41 ID:Ci7o/Mjt]
進行方向と速度を指定してオブジェクト生成(電球に矢印のマーク)のアクションをGMLで表すにはどのようにするのでしょうか。

845 名前:名前は開発中のものです。 mailto:sage [2010/06/23(水) 01:35:42 ID:qd+uDdYg]
>>844
まずcreateしてからsppedとdirectionを設定すればいい
a = instance_create(x, y, object);
a.speed = 速度;
a.direction = 方向;

Createイベントの時点ではまだspeedとdirectionが設定されてないから
厳密に言うとアクションと等価じゃないけどな



846 名前:名前は開発中のものです。 mailto:sage [2010/06/23(水) 01:44:03 ID:tBjeKmtz]
そうですか…一度にいくつも同時にその処理を行いたかったのですが
たくさん変数を用意しないといけませんね。

847 名前:名前は開発中のものです。 mailto:sage [2010/06/23(水) 01:54:04 ID:qd+uDdYg]
いや、別に一時変数だから使い回しでいいし
一時変数すら使いたくないならwithを使う方法もある
with (instance_create(x, y, object)) { spped=速度; direction=方向; }
同じことをあちこちでやるんだったらスクリプトにすればいい。

848 名前:名前は開発中のものです。 mailto:sage [2010/07/01(木) 17:55:32 ID:RG53nBFr]
すいません 
Step towards a point avoiding objects はGMLでどう表せばよいのでしょうか
www1.axfc.net/uploader/Img/so/87434.bmp


849 名前:名前は開発中のものです。 mailto:sage [2010/07/01(木) 19:26:31 ID:U4SaJhzr]
レジストしているのならA*を使う
レジストしていないなら
mp_potential_settings(maxrot,rotstep,ahead,onspot)
で設定した後
mp_potential_step_object(x,y,stepsize,obj) もしくは mp_potential_step(x,y,stepsize,checkall)

関係ないけど画像でaxfc使われると手間がかかるんだよなあ

850 名前:名前は開発中のものです。 mailto:sage [2010/07/01(木) 19:50:38 ID:RG53nBFr]
>>849
ありがとうございます。

ところで A*ってなんでしょうか

851 名前:名前は開発中のものです。 mailto:sage [2010/07/01(木) 20:36:34 ID:U4SaJhzr]
読み方は A star 最短経路を出すアルゴリズム。
GameMaker でも使えるみたいだけどGMで使ったこと無いから
精度とかコストはどれほどものかわからない

A*そのものについてはググッた方が早いかも
今なら結構解説サイトがあると思う

852 名前:名前は開発中のものです。 mailto:sage [2010/07/01(木) 21:52:39 ID:RG53nBFr]
>>851
ありがとうございます


853 名前:名前は開発中のものです。 mailto:sage [2010/07/03(土) 12:24:32 ID:xej2WSqR]
未レジストのGM5で迷路みたいな複雑な道をAIに通らせる
このようなアプローチは可能でしょうか

854 名前:名前は開発中のものです。 mailto:sage [2010/07/03(土) 17:57:32 ID:LChSDnyO]
広さにもよるけど可能

855 名前:853 mailto:sage [2010/07/03(土) 18:31:38 ID:xej2WSqR]
>>854

mp_potential_stepとmp_potential_settingsを使うのでしょうか
ルームの広さは大体600×600くらいです



856 名前:名前は開発中のものです。 mailto:sage [2010/07/03(土) 20:41:39 ID:LChSDnyO]
何をしたいかによるよ
例えばTower Defense系のように最短経路を辿らせたいとか
トルネコみたいなローグ系な動きとか
迷路のほうはともかくAIに何をさせたいか分からないと説明に困るぞ

857 名前:名前は開発中のものです。 mailto:sage [2010/07/03(土) 21:34:57 ID:9sSVyJeo]
英語でぐぐれ

858 名前:名前は開発中のものです。 mailto:sage [2010/07/03(土) 21:35:54 ID:9sSVyJeo]
誤爆


859 名前:853 mailto:sage [2010/07/04(日) 09:41:34 ID:R47f51en]
>>856
そうですね・・・
Tower Defenceみたいに最短経路を辿らせてみたいのですが

説明忘れてましたorz

860 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 11:49:06 ID:fTuJE3/P]
TDなら塗りつぶし法がいいと思う
迷路の形状が決まった時点で、出口から通路をスコアつきで塗りつぶしていけば
敵はそのスコアが小さくなるようにたどっていけば最短になる

mp_potential_stepとmp_potential_settingsの組み合わせはTDには向いていない
根本的に最短を通るわけではないし

かなりいい加減によけていくのでおそらく狭い通路みたいなところだとうまくないと思う
2Dの見下ろし型のゲームで単純な障害物をよけるような場面が適しているんじゃないかと

861 名前:853 mailto:sage [2010/07/04(日) 13:05:11 ID:R47f51en]
>>860
塗りつぶし法ですか

ちょっと調べてきます
有難うございました

862 名前:853 mailto:sage [2010/07/04(日) 14:11:38 ID:R47f51en]
>>860
>迷路の形状が決まった時点で、出口から通路をスコアつきで塗りつぶしていけば
調べてもなかなかよくわかりませんでした

サンプルとかあると幸いです

863 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 14:58:54 ID:fTuJE3/P]
ん〜例えば、Sをスタート、Gをゴールとして下の図を塗りつぶすと
ずれているかも知れないけど右のようになるでしょう
あとは数字が少なくなるように移動させるだけ
□□□□    3456
□■S □ → 2■65
□G ■□   10■4
□□□□    2123

GM5は古いしサンプル期待するのは難しいかもしれない
経路探索の名前はともかくアルゴリズムの本を見れば大抵のものには
これ系のものは載っていると思う

864 名前:名前は開発中のものです。 mailto:sage [2010/07/04(日) 21:49:22 ID:R47f51en]
>>863
ヒントを有難う
これを参考に頑張ってみます

865 名前:名前は開発中のものです。 [2010/07/13(火) 18:47:11 ID:K3o0YDHH]
戦闘機のシューティングを作っているんですが…

自機スプライトの縦と横の長さが違い、回転するのでroomの中に常に収めるコードが
うまく書けません。
正方形のスプライトなら if (x < sprite_width/2) x = sprite_width/2
とかで出来るんですが…(原点=中心)

lengthdirとか使ってもうまくいきません
いい方法ありませんか?



866 名前:名前は開発中のものです。 mailto:sage [2010/07/13(火) 19:14:30 ID:/NxeAPUS]
>>865
仮にスプライトの縦の方が横より長いとして
自機が縦向きで画面の端にくっついているとしよう。
その状態で自機が回転して横向きになったら、ぐぐーっと端から離れないといけないの?
縦と横の最大値をとって、その分だけ固定で離した方が簡単だし自然じゃない?

ちなみにスプライトの幅÷2をw、高さ÷2をhとおくと一番遠い端までの距離はこうなる。
a = degtorad(image_angle);
b = arctan(h/w);
x = sqrt(sqr(w) + sqr(h)) * max(abs(cos(a + b)), abs(cos(a - b)));


867 名前:名前は開発中のものです。 mailto:sage [2010/07/13(火) 19:22:14 ID:/NxeAPUS]
補足すると sqrt(sqr(w) + sqr(h)) が対角線の長さなので
固定で距離をとる場合はこの値にすればいい。
もし角度によって距離を変える場合、縦の距離は上の式のcosをsinに変えれば出る。

868 名前:名前は開発中のものです。 [2010/07/13(火) 21:37:38 ID:K3o0YDHH]
出来ました!
ありがとうございました

869 名前:名前は開発中のものです。 mailto:sage [2010/07/17(土) 12:18:00 ID:gER7nrJ5]
TDS系のゲームで高速移動する銃弾を作りたいのですが

collision_line(x,y,x+hspeed,y+vspeed,壁オブジェクト,1,0)

だとSpeedが10や13ぐらいなら壁をすり抜けずにすむのですが、Speedを60とかにすると
うまいこと行きません。
何かいい方法はないでしょうか?
Gamemakerのバージョンは6、未レジストです

870 名前:名前は開発中のものです。 mailto:sage [2010/07/17(土) 20:48:18 ID:7i0jj3Bm]
collision_lineをどう使ってて、何がうまくいかないのかわからないと何とも
よくある間違いはcollision_lineの結果をtrueやfalseと比較することだけど
そこは大丈夫か?

871 名前:名前は開発中のものです。 mailto:sage [2010/07/18(日) 14:00:31 ID:4F6YppA5]
>>870
大丈夫 だと思います

どうやら俺の作り方がまずかったみたい。

Step Event:
execute code:


if(collision_line(x,y,x+hspeed,y+vspeed,kabe,1,0)){sound_play(chakudan);instance_destroy();}

と設定すると着弾処理自体はしっかりと行ってくれるみたいです

ですが、弾道のトレースを行うと壁を貫通しているんです
うp:www1.axfc.net/uploader/Sc/so/135056
形式は.gm6です


872 名前:名前は開発中のものです。 mailto:sage [2010/07/18(日) 14:07:27 ID:XkeNVelG]
そりゃそうよ
xとyが更新されるのはStepイベントの後、Collisionなどが実行される手前
(ヘルプでEventのところを見ると詳しく書いてある)
・Stepイベントでcollision_lineでチェック→この時点ではまだ貫通してない
・その後、xとyにhspeedとvspeedが足される
・Drawイベントでx,yから直線を描画
1ステップ未来の弾道を見てるから、貫通してるように見えるだけ。

873 名前:名前は開発中のものです。 mailto:sage [2010/07/18(日) 15:14:06 ID:4F6YppA5]
>>872
なるほど
いろいろと調べながら頑張ります。

ありがとうございます

874 名前:名前は開発中のものです。 mailto:sage [2010/07/18(日) 17:51:47 ID:XkeNVelG]
言い忘れてたけど、draw_line(xprevious, yprevious, x, y) にすれば見た目どおりになる。
End stepイベントでcollision_line(xprevious, yprevious, x, y, ..) でチェックしてもいいけど
(その場合Stepイベントでは駄目)

弾速が速い場合、今度は弾が壁の手前で消えるように見えるという問題が出るはず。
それが気になるようだったら、move_contact_solidを使って着弾点まで移動させればいい。

875 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 13:12:37 ID:bqKfWWqP]
GM7未レジスト版だけどこれも参考になるかも?
ttp://gmc.yoyogames.com/index.php?showtopic=320670



876 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 17:01:55 ID:PLPwIk6X]
collision_line の返り値みてあれって思ったけど
6だとtrue/falseが返ってくるのか。wikiにもそんなことが書いてあったし
7以降だとちゃんとidが返ってくるのにね
true/falseの返り値だとかなり使いにくいと思う

877 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 17:23:01 ID:WcNhtTfY]
いや、6でもインスタンスIDか-4(noone)を返すよ。
> All these functions return either the id of one of the instances that collide,
> or they return a negative value when there is no collision.
ここの説明は5から8までずっと変わっていない。
ただ、全体読まずに関数の説明だけ見てtrue/falseだと早とちりする人は多い。

878 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 17:35:40 ID:WcNhtTfY]
ちなみにGMでは、0より大きい値は真、0かそれ以下の値は偽と解釈される。
if (A) は if (A > 0)、 if (!A) は if (A <= 0) と同じ意味。
>871のif文が期待どおり動くのはそういう理由。
これを if (collision_line(...) == true) と直接true/falseと比較してしまうと動かなくなる。

879 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 17:35:54 ID:PLPwIk6X]
なら単純に
ttp://gamemaker.wikicomplete.info/gml:collision-line
ここの説明が間違ってるのか

880 名前:名前は開発中のものです。 mailto:sage [2010/07/19(月) 19:06:25 ID:WcNhtTfY]
うn
collision_pointの方の説明は合ってるのにね
他にも「bbox_*はProでしか使えない」とかところどころ間違ってる

881 名前:873 mailto:sage [2010/07/25(日) 20:00:59 ID:1/i3AWzX]
>>874-878
おおお!
俺がPC使っていない間に… みんなありがとう!

>874
move_contact_solidか・・・使ってみたらめり込みが改善されました。

>875
サンプル有難うございます!
これを参考に頑張ります。
>878
そんな仕様があったなんて知らなかった・・・


882 名前:名前は開発中のものです。 mailto:sage [2010/08/03(火) 20:30:08 ID:cKSw/IY1]
GM5.3Aで半加算処理って出来ないものなんでしょうか・・・


883 名前:名前は開発中のものです。 [2010/08/17(火) 09:24:30 ID:OKMjBkLc]
早く多言語対応してくれー

884 名前:名前は開発中のものです。 mailto:sage [2010/08/17(火) 13:43:12 ID:4/akdMWt]
>>

885 名前:名前は開発中のものです。 mailto:sage [2010/08/17(火) 13:46:28 ID:4/akdMWt]
途中で送ってしまったorz
>>883
禿同。



886 名前:名前は開発中のものです。 [2010/08/30(月) 12:44:47 ID:4I8KA9ny]
透過PNG使いてぇけど、GM8だと日本語がまったく使えなくなるからなぁ

887 名前:名前は開発中のものです。 mailto:sage [2010/09/02(木) 07:47:32 ID:GMFPofTi]
GMで商用ソフトウェアを作っていたんだが、一つだけどうしても潰れないバグがある…
有償でGM(7pro)に本当に詳しい人を募集したら、集まるものだろうか?
自分はプログラムは素人だけど、GMLを2年くらい触ってる。

888 名前:名前は開発中のものです。 mailto:sage [2010/09/02(木) 19:43:56 ID:DnjUZssB]
商用ってどんなの?
同人ゲームとか?あえてソフトウェアと呼ぶという事はツールとかかな?

889 名前:名前は開発中のものです。 mailto:sage [2010/09/02(木) 21:17:32 ID:0WLIvYuZ]
幻想少女大戦?

890 名前:名前は開発中のものです。 mailto:sage [2010/09/03(金) 10:10:05 ID:MNeR9scq]
>>888
そう、同人ゲーム。
興味がある人がいれば連絡用のメアドを晒そうと思うので、
詳しいことはそちらで改めて。

>>889
べ、別にメモリリークとか言ってないんだからね!

891 名前:名前は開発中のものです。 mailto:sage [2010/09/07(火) 21:58:20 ID:4Oy4y2r6]
>>890
興味ありますなあ、教えてもらう側として

892 名前:名前は開発中のものです。 mailto:sage [2010/09/19(日) 22:23:46 ID:rmqa1/V5]
日本語対応まだー






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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