トップページgamedev
983コメント346KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001よこしまなMr.004/06/13 04:28ID:FjVifVER
2Dゲーム作成ツールGame Maker( - _ - )イイ!!なスレッドです。
機能がしっかりしているので、アイデア次第でいろいろなゲームを作ることができます。

「Game Maker」の特徴

・コリジョン(当たり判定)、スプライト、マップ、タイマ処理、ランダム処理、サウンド再生...などを簡単に管理できる
・*.exeにてゲームを出力可能
・キーボード、マウス、ジョイスティックからの入力をサポート
・イベントドリブン型なのでスマートにゲームを構築できる
・組み込みスクリプト言語"GML"により、さらに細かい処理が可能
・なんといっても無料!! (15ユーロ寄付してユーザ登録すると起動時のロゴが除去され機能が若干追加されるが、基本的に無料で十分使える)


Game Maker Website> ttp://www.gamemaker.nl/
日本語マニュアル[Word形式]> ttp://www.gamemaker.nl/doc/gmaker_japan.doc
0740よこしまなMr.005/01/03 01:38:05ID:6okwv40N
>>738-739
グラフィック、サウンドの質の高さにビビりました。激乙です!

ちょっと気づいた点:
[Script]を覗いてみたところ、for文でよく「temp=instance_find(crow,i)」とされていますが、このfor文をwith構文に書き直すと かなり楽になります。
with構文についての詳細は、GM付属Helpの"With constructions"の項(またはttp://gamemaker.main.jp/modules/articles/article.php?id=18)をご覧ください。
0741名前は開発中のものです。05/01/03 14:23:30ID:Ocf3WtJL
>>739
スゲーカコイイ!
074273805/01/04 02:52:47ID:deZDuzTL
740>>
ありがとうございます。
withがよくわからなくてあの表現に落ち着いたのですが、
もう一度やってみます。
0743名前は開発中のものです。05/01/04 12:07:25ID:/GcwaC5X
>>728
今頃
ありがとう
0744名前は開発中のものです。05/01/05 10:36:06ID:ub+Y/tLO
小物ですが、738(=717)氏の一連の流れで、役に立ちそうな汎用スクリプトを書いてみました。
instance_nearest関数では、呼び出し側と同種のときは自分自身が最も近いと判断されてしまいますが、
自分以外で最も近いインスタンスidを返す方が便利かと思ったので・・・(まさに738氏がスクリプトでやっていたことですが)
また、withの使い方のサンプルとして参考になるかもしれません。
txtファイルなので、使うときはscriptの項目に新規登録し、丸々コピペしてください。
ttp://gamdev.org/up/img/2204.zip
0745名前は開発中のものです。05/01/06 01:28:31ID:JQSc0RVx
>>744
乙です!
こういうGMLのサンプルが充実するといいですね。
074668105/01/12 02:45:57ID:Wpv3HQk/
>>744
乙です。
with内からローカル変数にアクセスできないものかと思っていたら、
localなんてのがあったとは……早速取り入れさせていただきました。

というわけでひとまず完成版です。
背景はスッパリ諦めました……
http://gamdev.org/up/img/2231.zip
0747名前は開発中のものです。05/01/17 20:10:41ID:xWW2gdxU
よこしまなMr.0氏のGameMaker - Japan フォーラムを
本家フォーラムで紹介してみたい。

ダメですかね?
0748名前は開発中のものです。05/01/18 14:20:30ID:tteJaFPk
GameMakerのレジストをしようと思っているのですが、
ShareItで電信振替、日本円で郵便局から振り込んだ方とかいらっしゃいますか?
0749よこしまなMr.005/01/18 17:18:44ID:y7AHxs30
>>747
もちろんOKです。
というかありがたいです(笑
0750名前は開発中のものです。05/01/18 18:34:02ID:ySHhEV7H
http://forums.gamemaker.nl/index.php?showtopic=96533
0751名前は開発中のものです。05/01/21 12:41:28ID:E+Z+Tg1Z
今日これを知ってダウンした。
が、日本語の説明書がないのだがどうしたらいいのか?

あと何やら難しそうだがこれで格闘ゲームやアクションゲームは作れるの?
0752名前は開発中のものです。05/01/21 12:43:08ID:JDbvAaFT
>>751
GamDevPukiWiki - GameMaker
http://gamdev.org/w/?GameMaker
0753名前は開発中のものです。05/01/21 22:10:49ID:XIrrT2mH
テストが終わったら俺もつくってみるよ
0754フォルテ05/01/22 13:15:11ID:zDa1OWB2
あの、自己解凍ができないのですが。PCが壊れたか?前まで出来たのに
0755名前は開発中のものです。05/01/22 14:28:55ID:za+FxnBp
winzipやwinrarで強制的に解凍してみては?
0756名前は開発中のものです。05/01/22 20:56:19ID:/Dqd8nK2
>>752にいけない
0757名前は開発中のものです。05/01/23 02:22:45ID:RGZYY6g3
gamdev.orgフカーツシタヨ
0758名前は開発中のものです。05/01/23 03:38:30ID:GMtLiXMy
シューティングのような8方向に移動するゲームを作る場合、
GMでは上下左右4方向のイベント処理を作り、
斜め移動は縦方向と横方向の2つのイベントの組み合わせで実現します。
しかしこの方法だと、斜めに移動する時は縦・横移動時と比べて
見た目のスピードが1.4倍ほど速くなってしまいます。

そこで、斜め移動でも見た目のスピードが縦・横移動時と同じになる
移動用スクリプトを作ってみました。
(デモプログラムは5.3A用ですが、スクリプト自体は6でも動くと思います。)
ttp://gamdev.org/up/img/2260.zip
0759名前は開発中のものです。05/01/23 14:59:25ID:9iovXCuY
>>758
乙。IDがGMカコイイ
0760名前は開発中のものです。05/01/23 19:11:32ID:jemQT7cE
初歩的な質問なんですが、
透明のスプライトを配置した時、そのスプライトがどこに配置されているのかを
視覚できるようにするにはどうすればいいでしょうか?
076176005/01/23 20:03:36ID:jemQT7cE
解決しました。
0762名前は開発中のものです。05/01/28 21:26:55ID:1PpZJazC
ttp://krackmania.hp.infoseek.co.jp/ 
にある「大学に行こう!」のようなRPGゲームを作りたいのですが、 
フリーでRPGゲームを作るツールを教えてくれませんか? 
0763名前は開発中のものです。05/01/28 21:40:07ID:1PpZJazC
連続投稿すいません
本当に>>1にはってあるゲームメーカーって無償ですよね?
0764名前は開発中のものです。05/01/28 21:53:51ID:iQUMsx4C
>>762
シェアウェアなので未登録だと一部制限があるが限られるが、
未登録でも>>762のようなゲームを作るぐらいの機能は十分使える。試用期間も無い。
ただ、ジャンル的にRPGは手間がかかりそうなモヨリ。
出来ることが多い分、作らなければならないこともまた多くなる。
一からプログラムを組むよりかは生産性があるが。
>>762の力量がどのくらいかわからんが、はじめからRPGに手を出すとつらいので、
ttp://gamemaker.main.jp/index.php
のドキュメント>>入門編>>チュートリアルを見て、まず製作の流れからつかんでみれ。
076576205/01/28 22:00:22ID:1PpZJazC
バカな質問ばっかりします・・・・
これって日本語バージョンないですか?・・初心者です。すいませんorz
0766まとめた ◆yIZgqoM/0k 05/01/28 22:29:41ID:ZcaI4I/I
1.本家からGameMaker5.3Aをダウンロード
2.GM5.3Aをインストールして非公式サイトから日本語化パッチをダウンロード
3.パッチあてる
4.uma-
0767名前は開発中のものです。05/01/28 22:51:47ID:1PpZJazC
ありがとうございます
076876205/01/28 22:54:26ID:1PpZJazC
また質問ですorz
5.3Aがある場所がみつかりません・・そして、5.3Aは絶対に無償ですかね?
0769名前は開発中のものです。05/01/28 23:02:52ID:8gF7UJ+8
帰れ厨房
0770名前は開発中のものです。05/01/28 23:04:45ID:ZcaI4I/I
>>768
5.3A。
ttp://www.gamemaker.nl/old.html

>5.3Aは絶対に無償ですかね?
未登録だと無償でずっと使える。
077176205/01/28 23:30:07ID:1PpZJazC
何から何までありがとうございます。
本当にありがとうございます!
077276205/01/29 00:00:28ID:A+UvlmrQ
パッチをやっても日本語化されてません・・・
確かに5.3Aなのですが・・・
自分のやり方が違うのでしょうか?
0773まとめた ◆yIZgqoM/0k 05/01/29 00:11:52ID:2u4Ve/3z
ぜひ非公式サイトを見てくれ
0774名前は開発中のものです。05/01/29 00:21:24ID:A+UvlmrQ
非公式のサイトさんも見たのですが、ぜんぜんダメでした・・・・
0775名前は開発中のものです。05/01/29 00:22:41ID:4tHoorfQ
readme.txtをよく読め。100%日本語化されるわけではない。一部でも日本語になっていたら成功している。
0776名前は開発中のものです。05/01/29 00:24:27ID:A+UvlmrQ
どのテキストもよみました・・・みれるところはみましたが、すべて英語でした・・

・・・おさわがせしました

RPGツクールかいますorz
0777名前は開発中のものです。05/01/29 00:57:41ID:mx8PcbNM
いづれにしろ英語くらい読む気無いときついツールだ、という気はする

プラットフォームゲーム作るのがKlik&Playぐらい簡単だったら……と思い
ちゃんと動くサンプル製作に着手したはいいが
壁引っかからないための苦肉のバウンドがバウンドしすぎ、
時折妙に重くなるわムーンウォークはできるわで
自分の存在が何なのかさえ分からず震えている
誰か助けて下さい。
普通のマリオの動きすればそれで満足なんです。

ttp://gamdev.org/up/img/2296.lzh
今夜もゲムデヴ有り難う
ちなみにグラフィックは全て手打ちであるからして自由に使ってくれい
0778名前は開発中のものです。05/01/29 01:15:29ID:2xpeNZMh
文字表示が結構面倒だから、RPGには向いてないよな
0779名前は開発中のものです。05/01/29 02:39:30ID:pAtXBqAQ
>普通のマリオの動きすればそれで満足なんです。
無茶言うなw あそこまで洗練された動きは素人には無理。
0780名前は開発中のものです。05/01/29 12:06:26ID:XmGBhhkR
779>
確かに甘く見てた。あれからまたいじってるがぜんぜんうまくいかん。

具体的にはブロックに上下左右どこから当たったかの判定、
地上にいるかどうかの判定が必要みたい。
なにか汎用的で上手い方法はないものか……。
0781名前は開発中のものです。05/01/29 12:35:38ID:UoiFS++v
そういう場合、コリジョンイベントでやるより、
自機オブジェクト上でステップイベントやキーイベントで動かすときに、
If a position is collision free や If there is a collision at a positionなどを利用して、
条件をつけてやればいいのでは。方向別に書かないといけないけど。

たとえば、ブロックの上にいるかどうかは、
If there is a collison at a positionを使い、座標をrelativeにし、x:0 y:1、objectをsolidを選択すればよい。
これが真のときは、自機の1ドット下にソリッドオブジェクトがあることになる。つまり、地上にいる、ということに。
ジャンプアクションの場合、落下設定するのに以下のようにするのが定石となっているらしい。(海外サンプルで大概やっていた)
show informationによる表示
----
if relative position (0,1) is collision free for Only solid objects
 set the gravity to 0.5 in direction 270
else
 set the gravity to 0 in direction 270
----
地上にいない場合は真下への重力加速度をに0.5、地上にいるときは重力加速度を0にしている。
文で説明するとややこしいが、ガンガレ。
0782名前は開発中のものです。05/01/30 00:41:20ID:kjNyyDgL
これってちゃんとしたゲームつくるのはやっぱ難しいよね。英語だし。
投入もこれも挫折した・・・
0783名前は開発中のものです。05/01/30 10:55:18ID:ntwgDzqk
豆乳はマニュアル全部日本語で、英語版なんかねぇじゃん。
0784名前は開発中のものです。05/01/30 12:34:11ID:bf3zrrRc
>>781
サンクス。試してみてるけどなかなかうまくいかない。
重力加速度ゼロにしただけでは止まらないなぁ。速度ゼロにするとなんかおかしいし。
マリオの動作って調べてみるとやはりむずいらしくやせた。

>>782
RPGツクール買って下さい。
0785名前は開発中のものです。05/02/06 08:04:31ID:1EqPpoOm
イベントのアニメーションエンドの使い方がわかりません
X枚目が表示されたらアニメーションを終える。としたい時
アクションの項には何をいれたらいいんでしょうか
0786名前は開発中のものです。05/02/06 08:44:06ID:6RB0HDMP
アニメーションエンドイベントは、スプライトの最終サブイメージが表示されたあとに呼ばれる。
爆発エフェクトなどで、
「爆発オブジェクト発生」→「アニメーションエンドイベントで破棄」
といった使い方が一般的か。

スプライトアニメーションの途中で何らかの処理をしたい場合、
ステップイベント内で条件をつければよいかと思われる。
オブジェクトの表示されているスプライト番号は、変数"image_index"(最初:0〜)で参照できる。
以下は、最初から4枚目のイメージが表示されたときに破棄する例。
------------
Step Event:
execute code:
if (image_index == 3) then {
      instance_destroy() ;
}
------------
0787名前は開発中のものです。05/02/06 10:35:12ID:dbbYJswf
>>782はコードが英文にみえるという意味では無いだろうか。

だとしたら何やっても挫折するぞ・・・
0788名前は開発中のものです。05/02/06 14:20:39ID:+4VgMuPT
>>785
アニメーションをループさせずに一周で止めたいという意味なら、
Animation Endイベントで

image_singe = image_number - 1;

とする。(アクションでやるなら Set Variable を使う)
ただしGM6だとimage_singleは廃止されているので、

image_index = image_number - 1;
image_speed = 0;

に置き換える必要あり。
0789名前は開発中のものです。05/02/07 02:11:05ID:3mzxYMNw
プログラムまったく分からんズブの初心者で厨な質問とは承知していますが
親切なエロイ人がいたら答えてください
自機をマウスで動かしたいでつ
実は質問をしつつもとりあえず>>85のブロック崩し(マウスで自機操作)の
マウスで棒を動かすアクションのスクリプト内のxを全てyに置き換えたスクリプト
ty = mouse_y-36;
if (ty>-2)&&(ty<436) {
y = ty;
}
を同じアクションの欄に貼り付けたら画面内を自機が自由に動けるようになったので
とりあえず確実なのはこのスクリプトを応用することというのは分かるのですが
出来れば(というかせっかくだから)自機操作くらいスクリプト無しでやりたい!
というかそれ以前にそもそも上のスクリプトの意味が分からんw
なんで直ぐにオブジェクトの位置をマウスの座標に代入しないで変数作るのですか?
この方法が最善で、GameMakerではGUIのみでは自機をマウス操作に出来ないというなら
あきらめますがもしスクリプト抜きで出来るなら教えてください
試しにやってみたのは
Mouse Leaveのイベントで
Move towards point(mouse_x,mouse_y)のアクション
(正確にはstart moving relative in the direction of position
(mouse_x,mouse_y) with speed 5)
これでマウスの座標を自機が追従して移動するはず!
と思ってオブジェクト配置して起動してみたら
なんかポインタをオブジェクトの上に置いて離したらあらぬ(しかし一定の)方向へ・・・orz
そもそもはオブジェクトの上にポインタ置かなきゃいけない時点で何かおかしいorz
左クリックで弾を出すとかのアクションは普通にGUIだけでやって出来たので
移動に関しても出来ると思うのですが……
一応解説書とかは一通り読んだつもりだけど書いてあったらスマソ
0790名前は開発中のものです。05/02/07 06:38:35ID:1+7BHQSV
>>789
ステップイベントで次のアイコンを追加してみ。
------------------------
"Jump to a given position"
x:mouse_x
y:mouse_y
relativeのチェックをはずす
------------------------
いろいろ混乱しているようなので解説。
このイベントは、オブジェクト上にマウスカーソルを当てた状態から、離れた状態になったときに呼ばれるイベントだ。
たとえば、Mouse Enterイベントと組み合わせて、WEBなどでよく見かける、
『ボタン上にマウスカーソルを当てるとハイライトし、離れると元に戻る』
といったああいう動作を実現するのに利用できる。
mouse_x、mouse_yはゲームウィンドウの左上を(0,0)としたときのマウスポインタの座標だ。
で、移動先の座標をrelative(相対)にすると、現在のオブジェクトの位置を(0,0)とした座標としてしまうので・・・
結果、常に右下に移動してしまうことになる。

読みにくいかもしれん、長文スマソ
0791名前は開発中のものです。05/02/07 06:39:52ID:1+7BHQSV
コピペでいろいろ編集してたら抜けてた・・・
解説の「このイベントは」の部分は、Mouse Leaveイベントのことです・・・
0792名前は開発中のものです。05/02/07 10:55:03ID:6IudCJxO
>>790
>>791
おおっ、丁寧な解説ありがとうございます!
とりあえずJump to a given positionでやってみたら自機が完全にマウスの座標と連動しますた 感動・・・!
ただ、自分の作りたいのはシューティングで、とにかく指定の座標に瞬間移動するJumpは難易度をむちゃくちゃ
下げてしまうので、ステップ毎にMove towards point(mouse_x,mouse_y)でrelativeのチェックを外してみると
速度付で追従してくれるようになりました(でもシューティングで言えばこれは入力遅延とも言うので・・・w)
が、そうした場合何かブルブル揺れています このやり方はやはりダメなのでしょうか?
それからもうひとつ、これはJump〜にせよMove〜にせよ浮上してしまう問題なのですが、
クリックして弾を撃つ挙動を自機オブジェクトの中で(Left Pressed)イベントで
Create instance of object (弾オブジェクト) at position (自機).x,(自機).y with speed 5 in direction 90
のように設定したら、自機動かすアクションを入れてなかったときは自機をクリックすることによって
弾が出ていたのですが、JumpやMoveでマウスに合わせて自機を動かすようにした後クリックしても
思うように弾が出ません。
原因は恐らくマウスカーソルが常にそれに対応して動くオブジェクトの上に置かれないから
(だからがんばって自機の動きを先読みして「ここだ!」ってときにクリックしたら弾が出るw)
だと思うんですが、だとしても対処法が分からないorz
特にブルブル震えてしまうMove方式ならまだしも、教えていただいたJump方式ならば
常に(mouse_x,mouse_y)が自機オブジェクトの(0,0)に当たる部分、
つまり本来クリックしてちゃんと反応する部分に存在しているはずなのに反応しないのは全く意味が分かりません
もしかしてスプライトの透過色部分には当たり判定無かったりしますか?
連続質問&読みづらい長文申し訳ありません
0793名前は開発中のものです。05/02/07 14:43:36ID:1+7BHQSV
なぜブルブル震えるか考えてみたか?
Move towards pointは、あくまでオブジェクトに進行方向と速度を与えているに過ぎないということだ。
略図を使って説明。
★:自機
□:マス目
▲:マウスポインタ
速度:5(1ステップで5マス進む)

状態1:★□▲□□□

この次のステップはどうなるかというと、進行方向は右、速度5だから、

状態2:□□▲□□★

となる。じゃあ次は?といえば、今度は進行方向は左なので、1の状態になる。
この繰り返しが、あのブルブル震える現象の正体。これをどう解決するか?
マウスポインタまでの距離が速度より大きい場合と小さい場合で処理を変えなければならないだろう。
速度より小さい場合のときに、速度5ではなく、マウスポインタまでの距離を移動させるようにすれば。。。
速度とか弄るより、この場合だけjump to a given positionを使うとよい感じか。
ただし、マウスポインタと自機がピッタリ重なったときに速度(speed)を0にしておかないと、無駄に動いてしまうぞ。

左クリックの問題は、Global Mouseの中の物を使うとよい(Global left buttonか?)
でないとおまいさんの指摘どおり、オブジェクト上にマウスポインタがあるときだけしか反応しない。
Left buttonイベントは、メニュー選択などのボタンアクション向けかと思われる。

文才無いからか、老婆心過ぎるのか、無駄に長いな。。。ウザカッタラキエマス。。。
079478905/02/07 15:56:39ID:2lGFcnKA
>>793
キタ――――!!
解決しますた! 本当にありがとうございます!
ちゃんと動いて弾を撃ってます!
自機操作さえ何とかなったらあとはシューティングはテンプレや
初心者向けの製作チャートがいっぱいあるんで何とかうまくいけそうです
まともなのが出来たらサンプルをageようかと思います
本当にありがとうございました!
0795名前は開発中のものです。05/02/07 19:11:34ID:1+7BHQSV
>>794
無事解決できてなにより。
距離の判定は多分GML関数(point_distanceかな?)使わないと出来なかったんだが、出来てる様でよかった。
また余計なお世話かもしれないが、最後に一言。
スクリプトの記述はそんなに言うほど難しくない。
むしろ、アイコンでやりくりするほうが煩雑になったりする場合があるので、毛嫌いせず、挑戦してほしい。
基本的な文法の理解と、GMLをヘルプで調べるスキルさえあればいいんで・・・
(・∀・)ガンガレ!!
079678905/02/07 22:40:21ID:SX23cWKX
>>794
申し訳ありません。。。
やっぱり「静止した!」と思ったら常時Jump〜アクションが優先されていただけでしたorz
距離の判定を全てQuestionアイコンで行っていまるのですがやはりGMLが必要なようです・・・
やはり、しばらくスクリプトを修行してきまつ
・・・と、まあ自機操作は漏れが勉強するとして、
それはそれとしてJump〜アクション(アイコンのみ)の自機移動による
STGを概要だけ作って見ようとしたところ・・・
http://gamdev.org/up/img/2331.lzh
うわあぁぁあぁああぁああせdrftgyふじこlp
問題点は列挙にいとまが無いですがorz、とりあえず解決方法がまったく見えてこないのは
・敵大杉弾大杉
 (ステップ毎にオブジェクト生成アクションをさせている事に原因があるような気がしますが、
  ステップ毎以外に常時敵を出現させたり、
  特定の条件下やランダムで弾を撃たせたりする方法が思い浮かばない)
ザコの挙動がおかしいのはアクションの数値を間違ってたりしてるというのは分かっているので
それは適当に直せば大丈夫なのですが、上二つがどうにも・・・
いつまでもただの長文質問ばっかりで少しはうpなどしてスレに貢献しようと思ったら
結局また長文質問を出してしまう有様・・・スマソ
左上のカタパルトからしか敵が出てこないのはこれを書いている間に解決しますたw
ザコを射出する座標を設定してなかったから全部(0,0)から出てたのね。。。orz
入力ミス&入力忘れ以外で何か他にアドバイスあればおながいします
0797名前は開発中のものです。05/02/07 23:34:31ID:1+7BHQSV
orz
>>793のヒント。
・条件文を使うのはやはりステップイベント
・条件に使うアイコンは8角形の奴で、中に?かVARと書いてある奴のどちらかを使う(どちらでも出来る)
・2点間の距離を得るのはpoint_distance(x1,y1,x2,y2)という関数。 点(x1,y1)と点(x2,y2)の距離を返す
・マウスポインタまでの距離がspeedより近い場合に、自機のspeedを0にするのを忘れずに
それ以外について。(2つと書いてあるが、出現数に関してだけかな)
『敵多すぎ=ステップごとに生成しているから』は当たりだ。
特にenemy2の弾撃ちは確実にステップごとに行われているため、ものすごい数が飛んできている。
一定の時間間隔で撃つには、alarmイベントを利用するとよい。
また、敵生成でも使っているランダムの条件をくわえて抑えるのも可。
カタパルトによる敵生成も、ステップごとに判定しているな。
1秒間30ステップがデフォルトなので、1秒間で考えると結構出現する計算になるんで、
弾と同じように一定間隔にするか、出現確率を下げてみてはどうか。
最後に、ここを参照しているか?イベントやアクションについて基本事項は抑えてあるので一読を。
GM6の情報だが、アイコンに関してはさほど変わってないので、参考になるはず。
GMJapan 非公式情報サイト
ttp://gamemaker.main.jp/index.php
いつもお世話になっております...>>よこしまさん
079878905/02/08 00:32:37ID:h6GtyXnX
>>797
度々申し訳ありません
実は797様がダウンロードなさったのは一回細かいところを修正してうpしなおしたバージョンでして
それを書きこむのをすっかり忘れていたため内容が796のカキコと矛盾するものになってしまいました

ええと、GMLのpoint_distance(x1,y1,x2,y2)に関してはご紹介してくださったサイトを含め
勉強してみます。ありがとうございます! ただ、ヒントの上二つ
>・条件文を使うのはやはりステップイベント
>・条件に使うアイコンは8角形の奴で、中に?かVARと書いてある奴のどちらかを使う(どちらでも出来る)
自機オブジェクト(2種類ありますが)の中身見ていただければ分かるのですが、
一応If a variable has a valueクエスチョンでマウスと自機の位置関係に関して条件分岐っぽいものを
実装してはいます。jikiの場合は無条件下でマウス座標に対し所定速度のMoveアクションを行い、
通常速度分の距離以内にいるならJumpアクション、jiki2は無条件下でJumpアクション、
マウス座標と所定の距離より離れていたらその距離分のフレーム間速度でMoveアクションと
してはいるはずなのですが・・・何故か完全Jumpアクションでの挙動です
まあ、中身からも分かるとおりアイコンの数が大変なことになっているのでw GMLを修行することにしますが、
それでも上で論理的に何が間違っているのかよく分からないのが心に残ります・・・
とりあえず目標は見えてきたし、うだうだ言っててもウザイと思うので名無しに戻らせていただきます
ご教授ありがとうございました!
0799名前は開発中のものです。05/02/08 05:05:43ID:zk7JeCnz
>>798
もう直してるかもしれないけど、mouse_yと比較するのは jiki.x じゃなくて jiki.y ですね。
で、jikiについては最初の Jump to a given position を実行した時点で
jiki.x=mouse_x, jiki.y=mouse_y になります。
だからその後の条件判定にはひっかかりません。

jiki2については、たとえばx方向の条件について見ると
(1) jiki2.x-mouse_x が-6より小さい時は、最初のIfにひっかかる
(2) jiki2.x-mouse_x が-6〜6の時は、最初と2番目のIfにひっかかる
(3) jiki2.x-mouse_x が6より大きい時は、2番目のIfにひっかかる
ので、結局どんな場合でも Jump to a given position が実行されてしまいます。

この場合、座標に関する4つの条件が「すべて」成立した時だけ
Jump to〜 を実行すべきなので、and演算子(&&)を使って

If 条件1 && 条件2 && 条件3 && 条件4
Jump to a given position

のように一つの判定文にまとめます。まあ、すごく長い式になってしまうので、
ここまで来たら上で出てたpoint_distanceを使った方が楽ですが。
0800よこしまなMr.005/02/08 06:48:20ID:bYhSHMb8
>>789
>なんで直ぐにオブジェクトの位置をマウスの座標に代入しないで変数作るのですか?
mouse_yは各ステップごとに更新される変数... というわけではなく、「GML内で参照されるたびに更新される変数」ですので
mouse_xやmouse_yをせまいコード内で何度も記述するのは避けるべきだと思います。

ちなみにmouse_yをCとWin32APIで極端に書くと、
POINT point;
RECT rect;
int mouse_y = 0;
GetCursorPos(&point);
GetClientRect(hWndGM, &rect);
mouse_y = (point.y - rect.top);
たぶんこんなかんじなので、1秒間に何百回もmouse_yを参照すると重くなるかも... というわけです。

>>797
どもです。
0801まとめた ◆yIZgqoM/0k 05/02/11 19:46:08ID:VYcDpRib
何故かまとめサイトがデリられた。
近いうち移転するんでよろ
0802名前は開発中のものです。05/02/11 22:59:27ID:4Bznc7HM
ここじゃなくて?
ttp://gamemaker.main.jp/
0803名前は開発中のものです。05/02/11 23:19:42ID:Dcu7PeaK
>>801
乙です。漏れもwww-aaaにもってたサイトがデリられた(gamemakerと関係ないサイトだけど)
RSSでチェックできるサイトにしてくれたらなぁ・・・・と要望。
0804まとめた ◆yIZgqoM/0k 05/02/13 20:52:56ID:gmldcHyv
http://gamemaker.shrine-maiden.org/
移転完了。RSSでチェックできるようになったはず。
なんかあったら言ってくれ
0805名前は開発中のものです。05/02/14 01:03:04ID:kuuRTVnx
>804
お疲れ様です。

むかしハマったクリックアンドプレイっぽいなと思って、
なんとなくブロック崩し作ってたらいつの間にか、どっぷりハマってしまった。
やっぱりゲーム作るのは楽しいなぁ。
0806名前は開発中のものです。05/02/14 01:25:11ID:Jj3GmAmR
>>804
乙、さっそくRSS登録しますた。
0807名前は開発中のものです。05/02/17 02:16:06ID:DecmQgwT
GM6.0では、日本語表示は出来ないのでしょうか・・・?

私がやったことは以下のとおりです。
・フォントリソースに"MSゴシック"、Character Range をALLに設定したものを追加。
・以下の命令を持つオブジェクトを追加
Draw Event:
set the font for drawing text to font0 and align left
set the drawing color to 0
at position (0,0) draw text: "テスト"

以上を実行すると、"テスト"とは表示されず、文字化けしたようなものしか表示されません・・・
半角カナの文ならうまくいくのですが。2バイト文字は表示できないのかな・・・
余談ですが、
半角カナだけで日本文を表示すると懐かしいと感じるのは年寄りだからですか、そうですか。
0808名前は開発中のものです。05/02/18 21:48:21ID:sqW1Scv8
>>807
うちもだめですなー
てか、5.3で日本語表示が出来たことに、今気付きました。
日本語化のおかげ?
なんかいい方法ないもんかなー。
日本語をビットマップフォントに置き換えるスクリプト書くとか……面倒か
080980705/02/19 04:33:32ID:MYybBstf
>>808
現状、画像を利用するしか解決できなさそうですね。
ver6.1ではローカライズに力を入れるみたいなんで、そのときに修正してもらえることを期待・・・
0810名前は開発中のものです。05/02/19 16:10:38ID:r5DvU9w7
5.3での日本語表示ってどうやるんですか?
0811名前は開発中のものです。05/02/20 01:15:07ID:k+cXeeL8
display a messageでも日本語表示されないね。
俺は仕方ないので、EDGHで画像作って表示させてるけど、激しく面倒・・・orz

>>810
Createイベント等で、「set the font for drawing text」日本語フォントを指定、
Drawイベント内で、「draw a text」で文章を表示させるだけだよ。
もしかしたら、日本語パッチを当ててないと表示されないかも・・・。
0812名前は開発中のものです。05/02/20 11:48:48ID:j27t95AP
>>811
できました。ありがとうございます。


0813名前は開発中のものです。05/02/20 18:20:54ID:4c0NXvEv
GMの使い方を覚えるために作ってみました。
プログラミングの経験が殆ど無く、マニュアルと睨めっこしながらコードを書いたので
やたらと重いものになってしまいました・・・
ttp://hiya.ciao.jp/gm/file/Ms_paddler_gm6.zip
ttp://hiya.ciao.jp/gm/file/Ms_Paddler_exe.zip

プログラミングが出来なくても思いついた事をすぐ形に出来るGMはほんと楽しいです。
0814名前は開発中のものです。05/02/24 19:56:46ID:U48Jz3Xw
アクションゲーム作成中。
ttp://www.ismusic.ne.jp/nagatsuta/yurika3_gmd.lzh
継承覚えたら、格段にコード量減ったわー。しかし疲れた。
0815名前は開発中のものです。05/02/24 20:13:05ID:U48Jz3Xw
>>813
今更だけど、できいいなぁ。
演出が凝ってる。
0816名前は開発中のものです。05/02/25 18:20:44ID:6+Hc8BU2
最近、レベルが高いぁ。
ところで日本語表示について。次のコードを実行すると、
display a message で日本語が表示できるようになりました。(5.3A , 6.0 ともに動作確認)
-----
message_text_font("MS ゴシック",10,c_white,0) ;
-----
最初の引数にはフォント名を入れるのですが、GM6.0で設定できるフォントリソースのIDではありません。

また、レジストの制限がありますが、
GM6.0ではスプライト画像をフォントとして利用することが出来るらしいです。(未確認)
関数font_add_sprite( ) を参照してみてください。
使用する漢字の描かれたスプライトを用意することで、
0-255のアスキーコードをテーブルとして応用することが出来ると思います。
ビットマップフォントを使用することには変わりませんが、
少しは自分で管理するより楽になるかも・・?
0817名前は開発中のものです。05/02/26 10:09:59ID:B+4ixigE
>>813
ほんとすごいなぁ
アクションゲームなら何でも出来そうだ・・
081881305/02/28 01:07:44ID:GAEbwpd7
プレイありがとうございます。
ブロック崩しで少しは使い方が判ったので、
今度はアクションゲームに挑戦してみようかなぁと思ってます。
0819名前は開発中のものです。05/03/01 10:28:16ID:a8U64FeL
Gamdev が復活してきたので、wikiのほう適当に編集しておきました。
作品が多くなってきたので、負荷分散のため別ページに移動しました。
前回更新からかなり日が経っていたのもあり、
既にDLできなくなっている作品は、割愛させていただきました。
抜けてる作品があったらごめんなさい。
0820名前は開発中のものです。05/03/01 13:52:14ID:7Kgvi68w
>819
乙ですっ。
人少なめですが盛り上げて行きましょう!

やりたい事は色々あるものの、絵がなぁ…絵が…
絵描き歌のかわいいコックさんですらUMAになっちまうしなぁ。
0821名前は開発中のものです。05/03/01 16:43:12ID:mFC8Y2QC
showcaseのコンテストどうなった?
0822名前は開発中のものです。05/03/05 02:04:53ID:ioXJEL8a
>>819
乙です。
参考にさせていただいてます。
0823名前は開発中のものです。05/03/05 15:57:28ID:f+q5Yy4z
日本語マニュアルはもうなくなったんですか?
0824名前は開発中のものです。05/03/05 23:41:16ID:f+q5Yy4z
すいません。落とせました。
0825名前は開発中のものです。05/03/06 18:04:39ID:am2JgNGr
EXE形式にするにはどうしたらいいのですか?
0826名前は開発中のものです。05/03/06 18:17:54ID:Lc/GMt6Z
File メニューにある、Create Executable を選択。
0827 ◆dmakQ6Mags 05/03/06 19:36:38ID:UHvjcj+y
ゲームを作ってはみたものの全く利益に繋がらないという方へ
簡単に大儲けしてみましょうよ
■□■□■□■□■□■□■□■□■□■□
2週間で100万円 最高のビジネス到来!
成功者続出です!
□■□■ 特 徴 □■□■
◎知識や技術は何もいらない!
◎一日30分で十分稼げる!
◎家に居ながらできる!
◎利益は全て自分のもの!
◎2週間で100万円!
◎特別おまけ付き!
■□■□■□■□■□■□■
無責任な誇大表現ではありません!
ご自分の目でお確かめ下さい!
人数制限あり!早い者勝ちです!
詳しくは下記アドレスまで!
ttp://www18.tok2.com/home/kantan100man/
皆様のご訪問お待ちしております!
■□■□■□■□■□■□■□■□■□■□
これで貯めたお金でツールを買って最高のゲームを作ってください
0828名前は開発中のものです。05/03/06 21:03:11ID:EfEp2IDv
http://gamdev.org/up/img/2398.png
ブロック素材提供
0829名前は開発中のものです。05/03/09 18:12:05ID:5+vQO/af
壁にぶつかるとChange the instanceで
画像が入れ替わるように設定したのですが、そこからまた壁から離れると元の画像に戻るように設定したいのですが
どうすればいいかわかりません。どうすればいいでしょうか?
あと、常に画像が変化し続ける(1秒ごとに画像が変わるなどのような)ように設定したいのですが
なかなかわかりません。。
0830よこしまなMr.005/03/09 19:50:41ID:xegQl9qY
>>829
GM Japan Forumで既に返答しています。
0831名前は開発中のものです。05/03/09 20:20:12ID:CgMXBO4N
>>829
前者の件に関して、よこしまなMr.0氏の回答でも出来ますが、
こんな感じでもよいかと。
ttp://gamdev.org/up/img/2406.zip(gm6ファイル)

obj_Wall2のほうで、ステップ毎に周りにobj_Myobjが居ないかどうかチェックしてます。 (居た場合に処理を抜けてます)
obj_Myobj中のコリジョンイベントでやっている move contactは、壁に密着するためのテクです。
0832名前は開発中のものです。05/03/10 23:50:32ID:U3xIj/jG
実行ファイルでけー・・・。
UPXでどれだけ縮む?
0833よこしまなMr.02005/03/25(金) 14:48:42ID:gN2sX+M2
本家サイトにて、GM6.0日本語マニュアルが配布開始されました。

詳細:
ttp://gamemaker.main.jp/modules/news/article.php?storyid=21
0834名前は開発中のものです。2005/03/31(木) 01:42:11ID:YNa+mEh/
面白そうなので作り始めたものの、
スレに書き込みが無く、不安な気持ちの俺ガイル。
0835名前は開発中のものです。2005/03/31(木) 01:43:05ID:3TThfFxd
>>834
書き込みはないけど、見ていますよ。
0836名前は開発中のものです。2005/03/31(木) 15:24:54ID:UpoF/Zxu
>>834じゃないけど。
練習作が出来たので、アップしてみました。
http://gamdev.org/up/img/2478.zip

GameMaker、面白いですね。
0837名前は開発中のものです。2005/03/31(木) 16:42:01ID:MrBus2W4
うーむ、得点を常に左上に表示したいのですが、できません。
Viewでスクロールさせているので、
もうひとつのビューを使って得点表示オブジェクトを作ろうとすると、
左端の壁を、背景が覆う…orz

Draw the value of scoreで、
画面から見た座標指定はできないものですかね?
08388372005/03/31(木) 17:00:18ID:MrBus2W4
ありゃ、公式にあるチュートリアルを見るのを忘れていました。
自己解決しました。失礼しました。

view_xview
view_yview ですね。
0839名前は開発中のものです。皇紀2665/04/01(金) 10:24:12ID:1ARpyFX9
こんにちは、横スクロールアクションゲームを作っている者です。

敵を倒す判定で困ったことになっていまいました。
重なった敵を倒そうとすると、一匹は倒せるものの、
主人公キャラが死亡してしまいます。

・主人公キャラ
 ・敵キャラと衝突イベント
vspeed > 0 && y < other.y+8が成立している時

(other)Destroy the instance
(self)Set the vertical speed -10
    (↑ここが原因っぽい。マ○オ風にしたかった。)

else

死亡時キャラグラに変更
1000ミリ秒停止
ライフが一つ減る
現在のルームをやり直す


次の発言へ続く。
■ このスレッドは過去ログ倉庫に格納されています