トップページgamedev
981コメント382KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/04/23(木) 08:11:08ID: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/
0143名前は開発中のものです。2009/07/01(水) 04:23:22ID:93GVivtH
っと、毎ステップじゃなかったか。
でもどっちにしろ、何か別のアプローチがあると思う。
それと、呼び出し元がiとかの変数を持っていなかったとしても、
varを使えば解消すると思う。
0144名前は開発中のものです。2009/07/01(水) 18:32:23ID:wsmIF7l0
GM5.3使ってんの俺だけかな〜?
一番安定してるしなあ〜
0145名前は開発中のものです。2009/07/02(木) 03:01:27ID:hsioop3K
>>142
enterキーを押す → 必要なスプライトをロード → メニューを表示
escapeキーを押す → ロードしたスプライトをデリート → メニューを閉じる
という操作をしてる
だからenterとescapeを連続で押せば、最速1ステップ間隔でスプライトのロード・消去を行うことになる…って感じ
外部読み込みにした理由は、メニューに使う大量のスプライトを常にメモリに入れておきたくないから

別のアプローチとしては、メニューウインドウそのものではなくウインドウの枠のパーツのみメモリに入れておくとか?
それで、色んな大きさのウインドウはそのパーツから構成する、みたいな
するとあまり凝ったデザインが出来ないのが問題か…

varも常に駆使してる
i, jの件については、具体的な例が出てきたらまた書き込んでみるよ
ありがとう
0146名前は開発中のものです。2009/07/02(木) 04:40:24ID:nsbUExRL
>>145
常にメモリに入れておきたくないってのはわかる。
でも、Helpにも「基本的にゲームプレイ中にリソースの変更はしない方がいい」って書いてあるし、
特に頻繁に使うものなんかは、ゲーム中に作成&削除をしない方がいいと思う。
逆に、頻繁に呼び出すことがあるものを毎回外部からロードする、と考えると、
それこそ効率が悪いのではと思えてくるんだけどな。
確かにメモリは使うけど、その為のメモリだと思ってるから。

そんなわけで、リソースの作成や削除は基本的にルーム移動時に殆ど済ませるようにしているし、
ゲーム中でも、本当に必要なくなったものは削除するけど、
すぐに呼び出す可能性があるものは、出来るだけメモリに入れるようにしてる。
まぁリソースの簡略化(枠のパーツ化とか)もしているけど。
0147名前は開発中のものです。2009/07/02(木) 07:41:53ID:hsioop3K
>確かにメモリは使うけど、その為のメモリだと思ってるから。
なるほど、納得
メモリ使用率は少ない方がいい、とばかり思っていたが
そういう理由なら無難にメモリに突っ込んでおいた方がいいかもしれない
外部読み込みの方が起動も早いかと思ってたけど、コンパイルが長いからあんまり変わらないしな

あとはやはりリソースの簡略化か、ふむふむ
ありがとう参考になった
0148名前は開発中のものです。2009/07/02(木) 23:19:30ID:HJ1haqOL
スプライトを「曲げる」にはどうすればいいのでしょう?
デフォームで検索すればサンプルが見つかるかも、と思いましたがそうはいきませんでした!
d3dで丸いモデルにテクスチャをはっつければ曲がるかな、と思いましたがプリミティブ関連の記述がさっぱりわかりません。
何かいい方法ないでしょうか?
0149名前は開発中のものです。2009/07/03(金) 00:15:04ID:MOGY37Zl
念力
0150名前は開発中のものです。2009/07/03(金) 00:25:09ID:EJjOUzB4
3Dで考えてるのなら、
d3d_draw_cylinder()
d3d_draw_cone()
d3d_draw_ellipsoid()
あたりを使ってみれば。
0151名前は開発中のものです。2009/07/03(金) 00:27:05ID:4SHxhWQ7
1ラインずつずらしたり伸縮させたりしながら描画するなんて手法が昔あってのう
まあ、今ならプリミティブでいいんじゃない?GM6以降なら2Dでそのまま使えるよ
0152名前は開発中のものです。2009/07/04(土) 14:01:13ID:wARlrEyP
>>126さん感謝です!has codeが出て、ルームの移動が出来ました!!
あとこれだけ聞きたいのですが、今ボスを作成中なのですが、
以下のようにするにはどうすればいいのでしょうか?
・スプライトを上下に移動させたい
・何秒か毎に攻撃(レーザー光線)を放射させたい
・何発か攻撃するとスプライトが消えるようにしたい
0153名前は開発中のものです。2009/07/05(日) 14:16:51ID:8ABSewN9
ちょっとお聞きしたいのですが、
3体存在するボスのオブジェクトが全て消えたとき、
最終ステージへの門が開く、というようにしたいのです。
つまり、「複数のオブジェクトが消えたとき、ある特定の場所へワープさせる」
ということをしたいのですが、どうすれば良いのでしょうか?
0154名前は開発中のものです。2009/07/05(日) 14:18:54ID:8ABSewN9
すいません、sageて無かったですwwww
0155名前は開発中のものです。2009/07/05(日) 14:20:18ID:8ABSewN9
今度こそsage
何度もすいませんwwwwww
0156名前は開発中のものです。2009/07/05(日) 14:21:11ID:8ABSewN9
なんかsageって打ってもならない件
0157名前は開発中のものです。2009/07/05(日) 22:01:32ID:Xh6km2on
マルチ止めれ
0158名前は開発中のものです。2009/07/06(月) 15:23:33ID:iriqlFx7
>>153
http://www.nicovideo.jp/watch/sm6286966
0159名前は開発中のものです。2009/07/06(月) 20:23:23ID:agP5gMex
非公式情報サイト、早く復旧してほしいな……。
0160名前は開発中のものです。2009/07/06(月) 23:04:37ID:pu2JgBqG
8のbeta公開されてますぜ。
0161名前は開発中のものです。2009/07/07(火) 07:28:04ID:HWuU6Za6
mbtextで使用できる日本語文字、第二水準まで拡張されないかな……
テキストの多いゲームを作ろうとすると、どうしても第二水準の漢字にぶち当たってしまう
今のところ必要な文字は手で挿して使ってるけどさすがに大変なんだよな……
0162名前は開発中のものです。2009/07/07(火) 22:59:54ID:Mfs4614r
古文か厨ノベルでもない限り、第二水準なんて使わないだろ
0163名前は開発中のものです。2009/07/08(水) 01:25:14ID:OPujPKaU
いや、そうでもない。
例えば登場人物の名前とか。
0164名前は開発中のものです。2009/07/08(水) 01:26:11ID:g9VlwgPm
そもそも政治圧力に屈して会見で堂々と違法と監督責任認めてる鳩山を逮捕しない検察もクズなんだが
http://tsushima.2ch.net/test/read.cgi/newsplus/1246852005/-100
↑秘書の犯行も自分の責任を認めてるのに
警察に出頭しないで罰金も納めずに済ますのは絶対おかしい!!

犯罪者鳩山由紀夫を諭して
自首を呼びかけましょう
民主党https://form.dpj.or.jp/contact/
検察https://www.kensatsu.go.jp/kensatsumail/feedback.php?id=001
法務省http://www.moj.go.jp/mail.html
0165名前は開発中のものです。2009/07/08(水) 01:44:36ID:OPujPKaU
以下カレーにするー

まぁ自分以外にも第二水準で四苦八苦している人がいるということは、
少しは需要があると思うんだ。
スクリプトの方は少し弄れば処理できるようになる。
勿論第二水準が必要ない人もいるので、
もしよければ、jFontMakerに第二水準のON/OFFの機能を追加してほしい。
0166名前は開発中のものです。2009/07/08(水) 03:00:56ID:7bwe3GjO
緻密、彷彿、揶揄とかそのくらいの単語でも第二水準だからな。
テキストを書いてみると、案外文字化けが多いことに気づく。

でもサブイメージの数が2倍以上になるからな…ON/OFFも含めて追加されれば嬉しい。
オープンソースであれば、描画する文字コードの範囲の拡張くらいは出来るかもしれないが…
0167名前は開発中のものです。2009/07/08(水) 06:52:41ID:xLCuvTpV
いや、普通に第2水準は、使うだろ。
第1水準だけとか言ってる奴、どんだけゆとりの低学歴なんだよw
頭悪いにも程がある。
0168名前は開発中のものです。2009/07/08(水) 10:30:14ID:Ca6Hf7Pr
GMJの移転日程が出てた。7月下旬だそうだ。
0169名前は開発中のものです。2009/07/08(水) 19:10:29ID:k41sOO30
手榴弾の「榴」が第二水準なだけでもいろいろ苦労してるから、第二水準対応はあると大変ありがたい。
ひらがなとカタカナだけで満足な人からしたら不愉快だろうけど、やっぱり漢字使いたいんだよね。
0170名前は開発中のものです。2009/07/09(木) 08:03:27ID:D9tzZRHz
なんだ、俺以外にも第二水準の問題持ってる人いたんだな……
GMJの移転作業とかで忙しいだろうし、いつか対応されれば感涙ものくらいの気持ちでいよう
0171名前は開発中のものです。2009/07/09(木) 08:56:14ID:VDbgfUAG
第二水準対応はまさに悲願だよね。
あと、別のプラグインだけどMIDIをまともにループさせられるのが出てきてくれたらなぁ。
MP3やOGGのBGM素材はちと大仰過ぎるのが多いし、そもそもあんまりまとまった数が手に入らない・・・
(個人的にはピストンコラージュが使えるプラグインが登場しても面白いと思うけどまずMIDIだ)
0172名前は開発中のものです。2009/07/09(木) 11:09:44ID:yobaDOg1
>>150,151 ありがとうございます。

すいません、少しややこしい質問になるのですが、d3dの効果を特定のオブジェクトだけに適用するにはどうすればいいのでしょうか?
たとえばdraw_set_blend_modeなら_bm_addで始めてbm_normalで閉じれば内側のスプライトは加算合成になりますよね?
これと同じ具合に、d3d_set_projectionを使って、視点を動かすと重ねたスプライトがずれるような動きをしたいのですが、これって無理ですか?
解り辛い質問で申し訳ありません、突っ込んでいただければ、できるかぎり補足します!お願いします!
0173よこしま2009/07/09(木) 22:53:50ID:tDSIyShL
ご要望が多かったので、第二水準追加版のjFontMakerとmbtext scriptsを作りました。
ttp://gamemaker.main.jp/dlfiles/mbtext-2nd-level-kanji.zip

※全角スプライトのサブイメージ数が22→40に増えたので、
メモリ使用量がその分増えます。

追加した文字の参考表:
ttp://www.page.sannet.ne.jp/mtoga/etc/cpu/bih-g_cl.htm
0174名前は開発中のものです。2009/07/09(木) 23:44:41ID:VDbgfUAG
>>173
きたぁぁぁぁ!
本当に本当にありがとうございます、早速使わせていただきます!
0175名前は開発中のものです。2009/07/10(金) 00:27:43ID:wxEAQxJK
まあいまどきのPCならそれくらい余裕でしょ
0176名前は開発中のものです。2009/07/10(金) 03:40:01ID:QgBn60lh
>>173
まじかよぉぉぉぉぉぉぉ!!!!
本当にありがとうございます、感謝してもしきれないです。
今同人ゲームを作っていて、漢字の問題に悩んでいたところなので……

お礼になるかはわからないが、日本GMユーザーの励みになるようきっと頒布まで持っていってみせる!
0177名前は開発中のものです。2009/07/10(金) 20:04:36ID:H7MFUHPJ
>>153のものですが、
別々のルームに存在するボスが3体消えたときに、
特定のルームへワープさせる、ということをしたいのですが、どうすれば良いのでしょうか?

簡単にいえば、i wanna be the fangameで例えるとのラストへ行く前のリフトは、3体のボスを倒すと現れる。
という感じにしたいわけです。
0178名前は開発中のものです。2009/07/11(土) 08:40:47ID:KnOrr9uV
>>177
グローバル変数使えばいいんじゃないの?
0179名前は開発中のものです。2009/07/12(日) 04:39:23ID:RLThpjAH
>>173
凄い!
0180名前は開発中のものです。2009/07/12(日) 11:23:32ID:opcvOITm
ところで、出来た文字スプライトはPreload_textureをオンにした方がいいと思うんだけど
これをオンにしとかないとCPUの負荷がものすごいことになる
0181名前は開発中のものです。2009/07/14(火) 03:55:40ID:8XVe7npV
αチャンネルに対応してないのかー、と思ったけど
背景黒にしたフォントを加算で描画すればほぼ事足りることに気づいた
0182名前は開発中のものです。2009/07/14(火) 16:06:00ID:CU0jQ04K
ニコニコアクションを作っているものです。
GM6.1Aでゲームを作成しているのですが、
キャラのモーションなどを描画する際、パーツの角度や
位置などの情報を大量の配列で扱っています。
(どういうものかは動画とかを見ていただけると分かりやすいかと)

「変数の宣言できる量などの上限などはスペック依存なのか、
 あるいは仕様として上限が決まっているのか・・・。」

ヘルプを見たところ特に記述が無かったのでどうなのか知りたいです。
見落としでしたら申し訳ないです。

>>177
他の方も言っている通り、グローバル変数を使うのが簡単だと思います。
global.boss[0] = true;
global.boss[1] = true;
global.boss[2] = true;
とでもしておいてボスを倒したら各々ボスに対応した変数をfalseにして、
3つのグローバル変数がfalseになったら移動すればよいと思います。
0183名前は開発中のものです。2009/07/14(火) 16:17:45ID:VeW5i252
変数はわからないけど、配列は上限があるみたい。
各配列のインデックスの上限は32,000まで、
全配列のインデックスの総数は1,000,000まで。

原文:The system puts a limit of 32000 on each index and 1,000,000 on the total size.

変数は多分、上限はスペック依存かもねぇ。
ただ、一度にそれだけの変数を使う場面ってあんまりないのでは?
ローカル変数で処理しておけば、
インスタンスが存在するときだけメモリが消費されるわけで。
(インスタンスが破棄されれば、そのインスタンスに使っていたローカル変数のメモリも開放されるはず)
01841822009/07/14(火) 17:57:23ID:vUQ3woyL
回答ありがとうございした。
配列の項目に書いてありましたか・・・すいませんでした。

インデックスは上限が決まっているけど
配列の数そのものはスペック依存な感じですかね。
でも出来るかぎり少なく作らないといろいろ問題もでるので気をつけようと思います。

一応現在もローカル変数で作っているのですが、
今後も出来るかぎりメモリの浪費を抑える努力をしようと思います。
0185名前は開発中のものです。2009/07/14(火) 21:09:17ID:xN5w2kOc
画面にポーズをかけて全てのオブジェクトの動きや変数の増減をその間ストップさせたいのですがそのようなことは可能でしょうか。
0186名前は開発中のものです。2009/07/14(火) 21:38:37ID:vUQ3woyL
負荷的にどうなのかはわかりませんが
自分は特定ボタンを押すまでwhileループさせて
その中にscreen_redrawを入れてます

この方法だとポーズ中×を押しても
終わらなかったりするので
他に良い方法があればそちらの方が良いと思います
0187名前は開発中のものです。2009/07/15(水) 01:16:16ID:x7myA04T
一番お手軽なのはshow_message("ポーズしたよ");

サンプルに付いてくる隕石ゲームではkeyboard_waitを使ってるな。
これをループで回してキーチェックを入れれば
簡単なポーズメニューくらいは実装できる。

他には、画面のスクリーンショットをとって背景に設定してから
他のオブジェクトをdeactivateする手法がよく使われるかな。
0188名前は開発中のものです。2009/07/16(木) 18:14:35ID:VZjdHqja
>>177
親切にもサンプル作ってもらって、「なんのこっちゃ、全て分からん」
その後、サンプルその2作ってもらって「分からんから俺の作ったのを改造してよ」
DQNもいい加減にしろ。sageてなかったり、忠告してくれた人に
「自分で学習できないようじゃ、って言われてもね〜。」だの酷すぎる
一度生まれ変われ
0189名前は開発中のものです。2009/07/16(木) 18:21:31ID:/ens9lwf
親切に教えてもらっても感謝の一言もないとかね
0190名前は開発中のものです。2009/07/16(木) 18:28:39ID:vL2/o72f
自分の力を育てなかった結果いつか損するのは
彼自身なんだし暖かく見殺せばいいんじゃないですかね
0191名前は開発中のものです。2009/07/16(木) 19:52:16ID:7TZC2gMD
どうせそんな奴、誰にも相手にされずに朽ちていくさ
0192名前は開発中のものです。2009/07/16(木) 21:54:41ID:gO8rBliL
前にもいたなぁ。変わりに作ってくれとか言ってたやつ。

RPGツクールの売りはRPGを自分で作る楽しさ。
だったらGMの売りはゲームを自分で作る楽しさ。
何かを作る時には、どう作ればいいかという試行錯誤が必要なわけで、
逆に言えば、その悩む工程無しに物は作れない。
自分の頭を使えず、他人に任せ、作ることを楽しめない人には何も作れない。
0193名前は開発中のものです。2009/07/16(木) 22:29:37ID:MpWxoNZ2
アイワナ好きがワナビー君。自己愛の強いやつってわけだw
0194名前は開発中のものです。2009/07/17(金) 01:13:50ID:hU1Bxe0M
GM8感想
・アルファチャンネルネイティブサポートなんで透過PNG使うのがラク。超綺麗。
・イメージエディタも↑対応。
・ビルドが若干早くなってる。
・スクリプトも若干記述が簡易になったものが。
・トリガーイベントが地味に便利っぽい。

全体としてはマイナーチェンジの印象が拭えないけど、各所で地味に作りやすくなってるのは確か。
特に問題がなければ推奨かも。個人的にはアルファチャンネルサポートが一番嬉しい。
0195名前は開発中のものです。2009/07/17(金) 06:59:35ID:8JCsTQOd
sprite_set_bboxが無くなっているという話を聞いたが
そこらへんはどんな感じだろう
0196名前は開発中のものです。2009/07/17(金) 13:24:51ID:FXJQqITE
Collisionイベントを使って特定のオブジェクトに衝突判定させたときは、
「衝突したその種類のすべてのインスタンス」に処理が行われますが、
collision関数を使って同じように行うにはどうすればよいでしょうか。
イベントではなく関数を使うのは、キャラの攻撃判定を
プレイヤーが任意に設定できるようにするためなので、
あらかじめ攻撃判定の大きさのマスクを用意するわけにもいかないのです。

現在は
var col;
col = collision_line(~,~,obj~);
with(col){・・・処理・・・};

で行っているのですが、これだと「衝突したうち一つのインスタンス」
しか衝突判定が行われません。
アクションゲームなどで重なった敵を攻撃する際に
非常にストレスになるらしく、出来れば改善したいところです・・・。
0197名前は開発中のものです。2009/07/17(金) 14:49:28ID:Ys5x6wol
ご指摘の通り、collisionチェック系の関数だとか、
instance_place()で得られるインスタンスって一つしかないんだよね。
なので、一つ得られたらそれを deactive にして、さらに判定して、、、ということをすればいいのでは?
と思ってやってみたら出来た。

ttp://gmdev.xrea.jp/st/up/54.zip

コリジョンイベントは使わず、collision_circle()をつかった手抜きサンプル。
デバッグモードでメッセージウィンドウを見れば、
同じステップの時点で当たり判定が行われているのがわかると思う。
0198名前は開発中のものです。2009/07/17(金) 15:31:03ID:Mf35okkz
こんな早く回答がいただけるとは・・・
さらには解説付のサンプルまで・・・
本当にありがとうございました。

なるほど・・・判定をループさせるのは考えてはいたんですが、
一時変数で判定したオブジェクトを記録することは思いつきませんでした。
今思えば当然といえば当然ですけどコロンブスのなんとやらですねぇ。

ということはコリジョンイベントの際にも裏でこういう処理をしているんだろうか・・・?
何はともあれこれで要求を満たせそうです。ありがとうございました。
0199名前は開発中のものです。2009/07/17(金) 19:06:30ID:sccaG/w+
>>196
プレイヤーが任意に設定したい攻撃判定の数だけダミーの不可視のオブジェクト作って、
これのx,y座標をプレイヤーキャラのx,yに同期して、
何かのインスタンスに当たったら、これの衝突情報を、プレイヤーキャラのインスタンス側で参照するとかは?
0200名前は開発中のものです。2009/07/18(土) 00:20:17ID:lmxBXlGJ
>>196
発想を逆にして
with (obj) {
if (collision_line(other.x, other.y, .., id, ...)) { 処理 }
}
みたいにする方法もある。withの中ではselfとotherが逆転するのに注意だけど
0201名前は開発中のものです。2009/07/18(土) 16:01:59ID:HY50PxeX
回答ありがとうございます。

>>199
んおお・・?
攻撃判定用のオブジェクトを先に作っておいて
プレイヤと同期させて、プレイヤーと目標物が当たったら
攻撃判定用のオブジェクトと目標物でコリジョンイベントを行うような感じです・・・かね?

>>200
なるほど。シンプルですね。
欠点としてはcollision_〜関数を実行するインスタンスが
場合によっては大量になる点でしょうか。
0202名前は開発中のものです。2009/07/20(月) 09:08:57ID:s1CnwUHQ
ちょっと質問いいですか?
スプライトのアニメの制御で、OtherイベントのAnimationEndとImage_Indexをif構文で制御する以外の方法ってありますか?
if構文で制御すると安定しないんです。
(インスタンスの移動スピードが速いと判定をすり抜けてしまうようような感じ)

キャラクターの向きや状態ごとに新規のオブジェクトとスプライトを設定してそこで制御すると安定するんだけど、
ソースがややこしくなってしまいました。
(雛形のオブジェクトを親、新規の空オブジェクトを子にして、スプライトやパラメーターで個性を出すと言うことが出来なくなってしまった)
0203名前は開発中のものです。2009/07/20(月) 10:25:28ID:S0Bac2pO
if文で出来ないことなんてないと思うけど・・・。ifの条件文を見直してみたら?

確かに、image_speed に小数点以下の値を設定していて、かつ、条件を == (等しい) でやっていると
すり抜ける場合があるんで(丸め誤差による)、
>= (以上) とか、 <= (以下) で比較してみるとよいかも。
0204名前は開発中のものです。2009/07/20(月) 23:39:21ID:s1CnwUHQ
さんきゅです。

動作ごとにオブジェクトに分けて(親にデフォルト移動のオブジェクト)、
向きごとに空オブジェクト(スプライトはそれぞれの向きで親は元の向き)で設定完了しちゃったあとなんで
確認使用がありません。

うーん、マウスイベントに変なの仕込んじゃったかなぁ・・・。
マウスホイールの動作中にSTEPイベントが無視されてる気がしたんですよ。
0205名前は開発中のものです。2009/07/23(木) 11:11:26ID:siugnnVT
このスレに書き込んでる奴って、どっかでゲーム公開してたりすんの?
そういうまとめサイトがあればGMユーザーの存在感も増すだろうけど
0206名前は開発中のものです。2009/07/23(木) 12:27:13ID:9sYuv18d
俺はまだ製作中で公開に至ってない。
あと、まとめよりは日本語フォーラムが欲しい。
0207名前は開発中のものです。2009/07/23(木) 15:10:50ID:CphK7ga9
フォーラムだと排他的になるぜ
目的が存在感アップなら向かない
0208名前は開発中のものです。2009/07/23(木) 15:18:28ID:MsF2cp7s
似たような話が前出てたな
確かに日本での皆で公開する場所ができれば嬉しいかも
0209名前は開発中のものです。2009/07/23(木) 17:12:53ID:4NdzeTGq
双葉のID板で、途中のやつを公開してみたけど。そのくらいかなぁ。
ゲーム開発自体は初心者だし。
0210名前は開発中のものです。2009/07/23(木) 21:49:01ID:9sYuv18d
GMユーザーの活動を広報したいのか、GMユーザーの裾野を広げたいのか。
0211名前は開発中のものです。2009/07/24(金) 00:54:57ID:4oRtOW6p
そんな細かく目的を分ける必要ないだろ・・・
0212名前は開発中のものです。2009/07/24(金) 01:28:06ID:VftsPVOX
ま、やりたい奴がやりゃそれでいいんじゃね?
俺は別にGMでドーコーってのは無くて普通に公開するけど。
0213名前は開発中のものです。2009/07/24(金) 17:31:08ID:JepbGxNy
俺も普通に公開するかな
まだ体験版にすら至ってないが…
0214名前は開発中のものです。2009/07/24(金) 20:36:34ID:rsS/wSle
ここがもうちょっとにぎわってからだね
0215名前は開発中のものです。2009/07/24(金) 22:42:14ID:p6tGynQg
昔作りかけで飽きて投げたのを久しぶりにやったら面白かったんで、大規模に改良したのを作ってみてる。
ところで、国内でTDS(TopDownShooter,真上から見た視点のFPSみたいなの)作ってる人っているのだろうか?
公式フォーラムではアメリカや西欧だけでなく東欧や南米の人も作ってるみたいだけど、日本で作ってる人はいるかな。
0216名前は開発中のものです。2009/07/26(日) 17:08:53ID:HUXpWVlV
みんなどういうもの作ってるのかというのは気になるね。
マイナージャンルで仲間見つけたら嬉しいってのもあるだろうし
他人のを見て色々と勉強になることもあるだろうし。
0217名前は開発中のものです。2009/07/26(日) 23:11:50ID:wjKvaZZx
これ課金したらGMで作ったとわからなくなるの?
Cとか出来ないからGM6で結構時間かけてゲーム作ってるんだけど
いざ配布するとかなるとGMで作ったってのは何か恥ずかしい
0218名前は開発中のものです。2009/07/26(日) 23:24:05ID:MBQlOFLN
なにが恥ずかしいのかワケワカメ
そんな恥ずかしいならCの勉強でもすれば
0219名前は開発中のものです。2009/07/26(日) 23:39:44ID:svPTsVsB
どんなツール使おうが名作は名作、駄作は駄作。
0220名前は開発中のものです。2009/07/27(月) 01:24:39ID:GXQZBDGy
Cで基礎から必死こいて作ったショボいゲームと、GMで基礎に手間がかからない分他に手を掛ける余裕があったゲームなら当然後者のほうがいいに決まってる。
ただ、ファイルサイズを小さくしたりファミコン風音源を使おうってのなら不利かもしれない。
0221名前は開発中のものです。2009/07/27(月) 01:46:39ID:pfTBKVpb
C++でRPG作って、そのマップエディタをGMで作ってる俺のようなのも居る
0222名前は開発中のものです。2009/07/27(月) 08:58:58ID:NneejjYT
>>217
わからんでもないが、ライセンス書かなくも音割れバグとかで簡単にバレるよ
0223名前は開発中のものです。2009/07/27(月) 10:02:43ID:X0yauOKd
俺も>>220に同意
まず基礎が出来てる状態でゲーム作りを学んで、余裕が出来たり不足を感じたら
C++なりなんなりに移行しようと思ってる
pro版でextensionとか使えば大体の用は足りるしな
日本語描画もよこしまさんのスクリプトで補完されたし
0224名前は開発中のものです。2009/07/28(火) 07:48:38ID:BtFahcpx
最初のロード画面をなんとかできないかな
非表示じゃ味気ないからバーじゃなくてgifアニメ表示できるとか
0225名前は開発中のものです。2009/07/29(水) 17:01:01ID:vVv3xV/u
ゲーム中マウスでMSペイントみたいに自由に線をかくことはできますか?
あとその線を辿るようにオブジェクトを動かしたりすることはできるでしょうか?
0226名前は開発中のものです。2009/07/29(水) 17:35:46ID:5nVguQsg
グローバル変数の値のみを保存する方法ってありますか?
gamemakerのセーブを使うと丸ごと保存してしまうので・・・
0227名前は開発中のものです。2009/07/29(水) 20:31:01ID:p52lIH/W
ファイルに書き出す
0228名前は開発中のものです。2009/07/29(水) 21:01:59ID:/KofeTr0
>>225
自由に線を描くのは面倒。特に曲線となるとね。
ステップイベントで、マウスの左クリックが押されているときのルーム座標を配列で記録する、ということをして、
ドローイベントで、配列に入れた座標をたどるように直線を描く、ということをする。
MSペイントのような直線の描画の仕方をしたければ、
最初にクリックした座標を記録し、次にドラッグして離した座標を記録して、
その2点間を直線で描くようにする。

このあたりに必要な変数や関数は、
mouse_x mouse_y draw_line()
あたりか。あとは、配列(array)についての知識が必要だ。

つぎに、線を辿るようオブジェクトを制御したければ、
記録した座標を元に、move_towards_point()を実行してやればよいかと。
Pro版であれば、ゲーム実行中にもPathリソースを作ることが可能なので、
これを利用しても出来るはず。(調整とか難しそうだけど)
必要な関数は、helpの Changing Resource にある Path の項目にある。

これらを駆使すれば可能。結構むずかしめの内容だから、それ相応の知識と経験が必要。
0229名前は開発中のものです。2009/07/29(水) 23:05:51ID:drifYlMd
>>226
iniファイルに書き出すのが一番簡単かな
プレイヤー簡単に書き換えられちゃうけど
0230名前は開発中のものです。2009/07/29(水) 23:23:03ID:5nVguQsg
>>229
できれば詳しく教えていただけませんか?
まとめwikiにもそれらしいのが見つからなかったです・・・
0231名前は開発中のものです。2009/07/30(木) 00:05:05ID:3O7J4K1+
>>230
日本語版ヘルプの「ファイル、レジストリの操作、プログラムの実行」の中の「INIファイル」を参照
0232名前は開発中のものです。2009/07/30(木) 00:10:55ID:J2rqCKCO
>>231
ありがとうございます!
じっくり読んで出直してきます
0233名前は開発中のものです。2009/07/30(木) 00:27:39ID:nNQ8sNDh
I wanna be the englineをもとにして作ろうとしているのですが、
trigger01に触れたら、上方向のトゲが飛び、
trigger02に触れたら、別の右方向のトゲが飛ぶ
このようにしたいのですが、trigger01に触れると上方向のトゲは飛ぶのですが、trigger02に触れても右方向のトゲが飛びません。
また、先にtrigger02に触れると逆のパターンになります。

上方向のトゲのイベント
Create:Execute a piece of code depth=1000002;
step:Execute a piece of code
if (vspeed==0) {
if (trigger01.triggered) {
vspeed=-8;
}
}
else {
}

Outside Room:Execute a piece of code instance_destroy();

右方向のトゲのイベント
Create:Execute a piece of code depth=1000002;
step:Execute a piece of code
if (hspeed==0) {
if (trigger02.triggered) {
hspeed=-7;
}
}
else {
Outside Room:Execute a piece of code instance_destroy();

trigger01のDepth:1000002 trigger02のDepth:1000002
たすけてください。お願いします。
0234名前は開発中のものです。2009/07/30(木) 00:29:33ID:nNQ8sNDh
sageるの忘れていました。すいません。
0235名前は開発中のものです。2009/07/30(木) 00:38:50ID:kAinn6XT
右方向ならhspeedはマイナスの値でなくプラスの値なんでないの?
hspeed=7
に変えてみ。
0236名前は開発中のものです。2009/07/30(木) 00:40:18ID:nNQ8sNDh
あ、すいません。左方向でした。

ご指摘ありがとうございます。
0237名前は開発中のものです。2009/07/30(木) 00:57:04ID:kAinn6XT
ああ、思い出した。これ、前に俺も嵌ったわ。
これはエンジン側のバグで、triggerParent の player との衝突イベントで、

with (instance_id) ...

ってあるけど、これを

with (object_index) ...

と直せば、トリガ別に反応するようになる。
…多分エンジン作者はこういう意図だったのではないかと思ってる。
0238名前は開発中のものです。2009/07/30(木) 01:25:59ID:nNQ8sNDh
nNQ8sNDhです。
そうなんですか!エンジン側のバグだとは・・・
今はちょっとパソコンが使えないのでまたあとでやって見ます。
どうも親切に教えて頂きありがとうございました。
0239名前は開発中のものです。2009/08/01(土) 00:00:40ID:W+p5V0Gb
>>229
txtファイルに書き出した後、ファイル暗号化のextensionを使う、とかどうだろう
俺も考えてはいるがまだ試してはない
0240名前は開発中のものです。2009/08/01(土) 14:46:38ID:cciNANQN
ゲーム名変更ってどうやるのですか?
0241名前は開発中のものです。2009/08/05(水) 15:11:10ID:b5+ghAk/
>>240
キャプションならルームの設定画面で変えられたはず
タスクバーに出る名前ならファイル名
0242名前は開発中のものです。2009/08/06(木) 20:49:12ID:kaETpL1/
>>241
解決しました!ありがとうございます。

■ このスレッドは過去ログ倉庫に格納されています