トップページgamedev
982コメント350KB

【SB】Shooting Game Builder ver10【シューティング】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2010/09/24(金) 20:23:38ID:xbao/GdK
SB◆.if.Xu7A6c氏が作った開発ツール"ShootingGameBuilder"について語るスレ

ShootingGameBuilder公式サイト
http://maglog.jp/sb/
Twitter
http://twitter.com/StgBuilder

SHOOTINGGAMEDEVELOPERUPLOADER
http://www.esc-j.net/stg/

SB@wiki
http://www41.atwiki.jp/stgbuilder/

ニコニコ動画チュートリアル
http://www.nicovideo.jp/watch/sm8707904
http://www.nicovideo.jp/watch/sm8711074
http://www.nicovideo.jp/watch/sm8728404

前スレ
【SB】Shooting Game Builder ver9【シューティング】
http://hibari.2ch.net/test/read.cgi/gamedev/1275262039/
0040名前は開発中のものです。2010/09/27(月) 18:34:34ID:yRPnMY7q
>>11
反射しない...orz
スプライトもバグった…lllorz
何でだろう。その通りにやった筈なのに。

スクリプトはこんな感じにしたのですが、間違ってる所ありますかね?

変数(ローカル)x座標・→・変数1
変数(条件分岐)即値0>変数1 、 変数(条件分岐)即値480<変数1
変数(ローカル)x移動量・→・変数2
変数(計算)変数2×(-1)=変数2
0041名前は開発中のものです。2010/09/27(月) 18:41:22ID:hjnz6w7p
>>38
親子じゃなくてもシグナルは使えるさ
送信先に自分があるからな

数値はシグナルもローカルもシステムも全部で扱えるから、省略してんだろう
相関図だしww

>>39
キャラクタA主体に解説されているから、確かにそういう風に見えるわ

>>40
そのスクリプトでスプライトがバグルる要素ないだろww
即値は、画面端のX座標から、キャラクタのサイズを±しておいたほうが良いみたい

最後に、変数(ローカル)x移動量・←・変数2も忘れずにな!
0042名前は開発中のものです。2010/09/27(月) 19:33:59ID:Z2za7w2M
>>40
>スプライトもバグった…lllorz
バグっていうのがどの程度のことを言ってるのかはわからないが、スクリプトの
どのあたりにエラー箇所があるのか、絞り込む技術も身につけないと、つらいぜ〜

@:スクリプトの気になるところに適当な効果音パネルを置いて、きちんとそこを通過しているか
A:該当の変数を文字列表示させてみて、希望どおりの数値が入っているか

間違ってる箇所があるかってことだけど、ケアレスミスだってあるわけだしな。
そういうところを乗り越えていければ、Lvがアップするぜ、がんばれ!
0043名前は開発中のものです。2010/09/27(月) 19:34:58ID:Z2za7w2M
スクリプトがバグったと思ったら、スプライトだったのかww
0044名前は開発中のものです。2010/09/27(月) 20:13:10ID:fcj1oJjO
信号で変数送信が必須の例を見つけたかもしれない!

子が親の左右どちらにいるかで動きが変わる場合

以前

自身のX座標を取得し、システム変数1に代入するループ


自身のX座標をローカル変数Aに、システム変数1をローカル変数Bに代入し、比較するループ
AがBよりも小さければ左の動き、Bよりも大きければ右の動きとなる

現在

自身のX座標を取得し、それを信号送信するループ


自身のX座標をローカル変数Aに、信号受信してローカル変数Bに代入し、比較するループ
AがBよりも小さければ左の動き、Bよりも大きければ右の動きとなる


この場合、以前ならシステム変数を介するためこの親子は画面内に一組しか存在出来ないが、
現在は信号で処理するため複数組存在させることが出来る
0045名前は開発中のものです。2010/09/27(月) 20:21:38ID:fcj1oJjO
あ・・・ごめん、自信満々に言ったけどよく考えたら>>44は単に位置分岐すればいいだけだったわ

うーむ、そもそも親子間でシステム変数が必須な例を考えた方が早いかな・・・
0046名前は開発中のものです。2010/09/27(月) 20:45:52ID:lNnILtjd
何を再現したいのかさっぱりワカラン
0047名前は開発中のものです。2010/09/27(月) 20:50:30ID:D8iOoki3
皆丁寧に説明してくれてるのに
全然分からない;;
すいませんこういうのに関してはド素人なので
やっぱ変数とか完璧に知ってないとダメかな…

>>42
細かく言えば、スプライトの余白(?)の部分が透過しなくなってる
通過はちゃとしてるみたいです
0048名前は開発中のものです。2010/09/27(月) 21:14:02ID:hjnz6w7p
自機)
 ボタン判定A→ ショット:30度、60度、90度、120度、150度にファンネルを発射

ファンネル) *進行方向を向く:ON
 ループ開始:100回
 誘導:角速度3600,移動速度1,時間待ち10フレーム
 ローカル:画像の向き→変数0
 信号送信:子に代入,シグナル0←変数0
 ボタン判定:B→ 子生成:レーザー発射ポッド
 ループ終了
 消滅

レーザー発射ポッド) *親の向きに同期する:OFF
 ローカル:シグナル0→変数0
 ローカル:画像の向き←変数0
 ループ開始:3回
 ショット:画像の向きにレーザーを発射
 通過:100フレーム
 ループ終了
 消滅

Aボタンで複数のファンネルを発射、各ファンネルは個別に複数の敵を次々と捕捉、
Bボタンで各ファンネルからレーザー発射ポッドが出て、その時に補足している敵の向きに3回レーザを照射して消滅

各ファンネル−レーザーポッドは、親子間で独立しているので、各ファンネルの向きを入れたシグナルは混線しない
0049名前は開発中のものです。2010/09/27(月) 21:20:52ID:hjnz6w7p
ファンネルとレーザー発射ポッドを別にしているのは、
ファンネルをサーチ専用にして、レーザー発射ポッドを攻撃専用にすることで、
あるターゲットを捕捉してレーザー照射中に、絶えず別のターゲットを索敵して、
同時に別のターゲットにもレーザーを照射できる

まさにオールレンジ攻撃ww
0050名前は開発中のものです。2010/09/27(月) 21:24:40ID:fcj1oJjO
それ、レーザーポッドが親の向きに同期してたら駄目なの?
0051名前は開発中のものです。2010/09/27(月) 21:34:21ID:fcj1oJjO
あ・・・ごめん、>>49読んでなかった
よしじゃあ質問を変えよう
親の向きに同期してポッド作成後、向き同期フラグを切る、だと上手くいかないかな?
0052名前は開発中のものです。2010/09/27(月) 21:35:33ID:hjnz6w7p
ファンネルと一緒にレーザーポッドが動かれてしまうと、敵に照射し続けられず、
ファンネルと一緒にブルンブルンレーザーを振り回されてしまう・・・
0053名前は開発中のものです。2010/09/27(月) 21:37:30ID:hjnz6w7p
>>51
照射して消滅するパターンだと、親の向きに同期:ONで子生成して、
生成された直後に親の向きに同期:OFFでもいけるよ
0054名前は開発中のものです。2010/09/27(月) 21:40:18ID:hjnz6w7p
レーザーポッドを消滅させずに再利用する方法(子生成は1回きり)だと、
ボタンを押すたびに、カレントのファンネルの向きを代入して向きを変えてやる方が楽だったよ
0055名前は開発中のものです。2010/09/27(月) 22:03:49ID:lNnILtjd
蒼穹紅蓮隊のロックオンマーカーみたいな感じか
0056名前は開発中のものです。2010/09/27(月) 22:19:01ID:Z2za7w2M
要するに、レーザーポットが親から受け取った向きにレーザー3回照射してる間に、
ファンネルは次の索敵に移っている(敵が死んだ場合)ってことかな。

親に向き(や座標)を同期させてないときに、向き(や座標)の親子間でのやりとりに、
シグナルの変数送信が使えますよ。って例なのかな。

3回発射するレーザーは、みな同じ方向に撃つんだよね?
敵が動いたりしてると、レーザーの2発目、3発目は空ぶってる気がするけど、そういう
兵器なのかな?

>>52
ファンネルは自機と座標を同期してるわけでなく、発射された位置に留まってると思う。
ファンネル自体は移動速度1だから(誘導するためには最低移動力1が必要)」、そんなに
めちゃくちゃに動くわけではないと思うけどな。

もしどうしてもファンネルの移動が気になるなら、ファンネルの土台を作って、子として
ファンネルを発射させて(親と座標を同期 on)、1回誘導するたびに直行移動で座標(0,0)に
戻せば、その場で留まるファンネルは表現できそうだね。
0057名前は開発中のものです。2010/09/27(月) 22:29:43ID:hVJU+GuH
プレイヤー設定で登録するオプションにすると、自動で毎ターン初期座標にリセットされる。


ちなみに、親の向きに同期のオン・オフと、親の向きを代入は、ほとんど同値。

親の向きを変数に代入する方法では、変数計算で90度・180度を加減算して、向きを調整することもできる。

だけど、親の向きをオフにしている間に、回転パネル(相対ON)で90度・180度させても同じこと。

レーザーの発射時の角度を変化させる方法だってある。
0058名前は開発中のものです。2010/09/27(月) 22:33:17ID:Z2za7w2M
おお!
初期座標リセットは、オプションという手がありましたか・・・
0059名前は開発中のものです。2010/09/27(月) 22:38:35ID:hVJU+GuH
>>敵が動いたりしてると、レーザーの2発目、3発目は空ぶってる気がするけど、そういう兵器なのかな?

全部が追尾しちゃうと、最強無敵兵器になっちゃいそう。

>>ファンネルと一緒にレーザーポッドが動かれてしまうと、敵に照射し続けられず、ファンネルと一緒にブルンブルンレーザーを振り回されてしまう・・・

これは向きのことを言ってるような気がする。
照射中に敵を追尾しちゃうと、レーザーをスイングしてしまうって意味では?
レーザーって言うよりビームサーベル状態になっちゃいそう。

>>ファンネル自体は移動速度1だから(誘導するためには最低移動力1が必要)

誘導時に最低移動力1が必要なのが結構ネックで、移動力0で進行方向だけ変更(追尾・誘導)して欲しいことが多々ある。
きっと、進行方向を割り出すのに、移動量のY/X比とか使用していて、移動量0で進行方向だけ追尾できないんだろうな・・・
(あれ?極座標移動では、速度0でも進行方向だけ変更できるなあ??)
0060名前は開発中のものです。2010/09/27(月) 22:53:06ID:Z2za7w2M
>照射中に敵を追尾しちゃうと、レーザーをスイングしてしまうって意味では?
いや、それは多分ないかな。
照射中に敵を追尾しないように、わざわざファンネルとの向き同期を切って、
1回だけ親から向きを取得→その向きに3回レーザー発射って手順を踏んでるみたいだし。

そういえば、ファンネルは発射された場所に留まるって予想したけど、ショットで撃たれた
ファンネルに上下左右のワインダーがかかってれば、自機の動きに同期するファンネルに
なるのかもな。

>全部が追尾しちゃうと、最強無敵兵器になっちゃいそう
発射場所の向きだけの誘導だと、敵が高速移動してる場合に1発目も意外と空ぶったり
するケースが多い気がする。
0061名前は開発中のものです。2010/09/27(月) 22:54:59ID:D8iOoki3
>>41
スプライトは単なる画像のミスでした。

今回の壁に反射の件は諦めます
ただ他にもう一つ質問があるのでお願いします

プレイヤーの選択画面についてなのですが、
とりあえずサンプルゲームからスクリプトをコピぺして実行してみたのですが文字が出てきません
フォントはデフォルトフォントにしてあります
0から作ろうにも何をすればいいのかさっぱりです(とりあえずレイアウトとステージは作りました)

ド素人なのでできるだけ具体的に説明お願いします。度々すいませんm(_ _)m
0062名前は開発中のものです。2010/09/27(月) 23:01:45ID:hVJU+GuH
50>>それ、レーザーポッドが親の向きに同期してたら駄目なの?
52>>ファンネルと一緒にレーザーポッドが動かれてしまうと、敵に照射し続けられず、ファンネルと一緒にブルンブルンレーザーを振り回されてしまう・・・
50の方法だと、52になるってことかと思った。

>>発射場所の向きだけの誘導だと、敵が高速移動してる場合に1発目も意外と空ぶったりするケースが多い気がする。
かえって3発全弾を追尾していないのは、・・・そのためなのか?

>>今回の壁に反射の件は諦めます
いや、まだ諦めんなよ!?
0063名前は開発中のものです。2010/09/27(月) 23:03:48ID:fcj1oJjO
>>62
俺もそれだと思ってた

中々「信号の変数送信が必須」っていう例を見つけるのは難しいわ・・・
0064名前は開発中のものです。2010/09/27(月) 23:04:58ID:Z2za7w2M
空振りとかもあるから、複数のファンネルを発射させてそれぞれ3回ずつレーザー撃たせて、
画面中にレーザーの当たり判定を多く出してるのかもな。
0065名前は開発中のものです。2010/09/27(月) 23:16:52ID:hVJU+GuH
>>64
ちょっと、その壮大なファンネルのサンプル見てみたい。ぜひupして欲しいな。
ガ●ダ○の版権的な問題でダメなのか?

>>63
いや・・・、別に必須でなくても、便利だったらいいと思うんだ。

・信号送信は、相手に受信値を送れない。
・ローカルでは、自分に送られた受信値しか参照・代入できない。
→変数を送信する機能があれば、
  ローカルで自分に送られた受信値を変数に取得して、
  その変数を相手に送信することで、受信値を送信したことになるよね?

この「自分が受けた受信値を相手に送信できる」ことが、変数送信の一番のメリットじゃない?
システム変数と違って、各親子間で独立して行えるし・・・。
0066名前は開発中のものです。2010/09/27(月) 23:28:44ID:Z2za7w2M
プレイヤー選択は
 ●:選択メニュー項目用の子を発射するための「親」が必要

ってことなんだよね。その親が画面内にきちんと存在しているか、
留まっているか、そこが第一歩になると思う。

 @:「親」用のキャラクタを1個、「ステージ」の「敵配置」の
   「時間配置」の「0」の上におく
 A:そのキャラクタを、画面の中の適当な場所へ「直行移動させる」
 B:移動したら、必ず「移動停止」させてやる。
 C:「親」キャラが出現中は「出現中の時間を停止」フラグオンにする
 D:「ステージ」の「全体時間」を「100」とか「1000」とか、余裕を持った数字に設定する
   (親キャラ出現中に時間が停止するので、余裕を持った大きな値でも関係ない)

まずはこれ。

これが出来るなら、あとは
 @:項目用の子を必要な数だけ発射させる
 A:「制御、メニュー」で「プレイヤー選択」を設定
 B:「消滅」

まずは、@〜Dまでやって、「親キャラが画面に留まっているか」を確認してみてくれ。
0067名前は開発中のものです。2010/09/27(月) 23:32:00ID:Z2za7w2M
あ、そうそう、壁に反射の件は、あきらめるのではなく、
「今の段階では、まだ力量が足りずに出来なかった」と考えたほうがいい。

もっと経験を積んだら、いずれは出来るようになる。
そのときまで、がんばれ!
0068名前は開発中のものです。2010/09/27(月) 23:42:31ID:BiGUcDB5
てけとーにクソゲー量産して(公開はやめて!)
後々に神ゲーつくれ
0069名前は開発中のものです。2010/09/27(月) 23:50:37ID:Z2za7w2M
>>65
確かに、サンプルみてみたいねぇ。
>>48さん、よろしければ、サンプルおねがいしますよ。

ところで、武器lv系をあまり使ったことがない、オプションやインデックス系、
ボムもあまり触れたことないから、SB氏のテストがなかなか進まない・・・

このヴァージョンでは、リードオンリーがほとんど外れてるけど、それらが
全部書き込みも可能にしてあるってことですよねぇ、ふぅ・・・
0070名前は開発中のものです。2010/09/27(月) 23:54:59ID:JS/l1GG0
>>68
糞ゲーの中にも光る物があるから完成に近い状態なら公開して欲しい。
0071名前は開発中のものです。2010/09/28(火) 00:01:50ID:0s6Ht39j
>>70
俺がテストのために作った習作ならいいぜ
10数個ある
0072名前は開発中のものです。2010/09/28(火) 00:07:38ID:UeA5ORRW
シグナルとローカル変数とシステム変数の相関図を作り直してみました。
 *親子間限定
 *即値あり
 *送信と受信を分割
http://www41.atwiki.jp/stgbuilder?cmd=upload&act=open&pageid=432&file=%E3%82%B7%E3%82%B0%E3%83%8A%E3%83%AB%E3%83%BB%E5%A4%89%E6%95%B02.PNG
0073名前は開発中のものです。2010/09/28(火) 00:08:45ID:us/Y6pzg
>>71
な〜にぃ〜
やっちまったな
男はだまって
うp
男はだまって
うp
本当に秀作ならいいなー


死ネタ
0074名前は開発中のものです。2010/09/28(火) 00:28:51ID:UeA5ORRW
システム変数:ATM(カードと暗証番号さえあれば、いつでも・どこでも・誰でも使える。預けたり、下ろしたり・・・)
ローカル変数:財布(個々人がそれぞれ管理している。収入が入ってきたり、支出が出て行ったり・・・)
シグナル:現金書留(指定された相手にしか届かない。中身を確認できるのは受け取った相手だけ)

<ローカル変数(財布)とシステム変数(ATM:銀行口座)>
兄の収入・・・・・・・・・・・・弟の収入
 ↓・・・・・・・・・・・・・・・・・・・↓
兄の財布←→ATM←→弟の財布
 ↓・・・・・・・・・・・・・・・・・・・↓
兄の支出・・・・・・・・・・・・弟の支出
(兄と弟は、共通の口座を共有しています)

<ローカル変数(財布)とシグナル(現金書留)>
兄の財布→現金書留(弟へ)→弟の財布
兄の財布←現金書留(兄へ)←弟の財布
(送った金額は覚えているので前回送る時に参考にできますが、中身を見れるのは受け取った人だけ)
0075名前は開発中のものです。2010/09/28(火) 00:33:08ID:0s6Ht39j
>>73
stg0728.zip
うっぷぷした
○○のR○○から○出をした○○を使ったものとかあって○○権がやばいから
安全なものだけ

たぶんSBで作ることはもう無いだろうから後でプロジェクトファイルだけのをアップするかも
(こちらは習作ではなく時間かけてきちんと作ったもの)
0076名前は開発中のものです。2010/09/28(火) 00:51:50ID:UeA5ORRW
自機弾のフレイムに感動しました。
AfterEffect並みの炎を弾幕で再現するなんて。
これがパーティクルフィジックスってヤツですか。
0077名前は開発中のものです。2010/09/28(火) 02:14:42ID:Iv31Lrgq
>>61
てゆーか俺がぱっと見で一番気になったのは、「480」という数字。
これって通常は縦のサイズだよ。
もしもサンプルゲームと同じ画面幅なのに480に設定しちゃっているのだとしたら、
遥か画面外で反射して二度と見える範囲には戻ってこないという結末になると思う。
ひょっとしたら横シューなのかな?とも思ったけど、そこらへん大丈夫?
0078名前は開発中のものです。2010/09/28(火) 04:03:35ID:vbeC4IXk
>>74
お金に例えるなら

・システム変数:銀行(一時的に残高を預かってくれる場所)
・シグナル :ATM(親や子の関係者のみ残高を振り込んだり引き落としたりできる)
・ローカル変数:財布(自分で出し入れする以外に残高は変わらない)

のほうがわかりやすいぞ

信号送信・受信で解り難くしている要因に送信データの中に
【自分のシグナル】が無いからだと思う
まぁ今まで無くても困らなかったので無いのだろうけど…

シグナルに変数をデータとして送信できる最大のメリットは
今まで一度変数に取得して変数分岐でチェックして不動数の信号に変換していたものを
ローカルデータの変数のまま子や親に送信できる事で
システム変数の仲介の手間がはぶける部分って事になるのかな?
0079名前は開発中のものです。2010/09/28(火) 07:39:07ID:BoIEPy3s
新しい携帯電話を買って、凄い多機能だし使い方も覚えたけど
結局普通の電話とメールだけで全てまかなえちゃう、みたいな?
0080名前は開発中のものです。2010/09/28(火) 12:35:28ID:stBTsWu1
>>66
おおできました!
ありがとうございます
>>67
そういう意味も込めたつもりだったのですが...
文才なくてすみません;;
>>77
自分のは縦シューです。
つまり、480よりも小さい数字にした方が良いという事ですかね?
0081名前は開発中のものです。2010/09/28(火) 13:14:26ID:rOw2WdNo
デフォルトと同じレイアウトで横へのフリースクロールが無いなら画面サイズは縦480、横384だよ
つまり画面反射に使う値は
X→0〜384
Y→0〜480

これでもっかいやってみ
座標取得して範囲外に出たら分岐して移動量に-1をかける、の繰り返し
簡単さー
0082名前は開発中のものです。2010/09/28(火) 13:32:58ID:EzvWN5JW
弾の反射がどういう理屈、どういう理論の元で、あのようなスクリプトが組まれているか、
それは理解できているかい?
プレイヤー選択が出来たのはおめでとうと言いたいけど、黒板に書かれた内容を、ただひたすら
ノートに書き写しているだけに見えるかな。

まずは、反射させたい弾が今どの座標にいるのか、それをしっかり把握する必要があるかもしれないね。

  ●弾の座標取得
  @:弾のx座標を変数aに読み込む
  A:弾のy座標を変数bに読み込む
  B:@、Aを、outとinでループさせ、弾の現在値を常に取得させる

  ●文字列表示
  @:弾の「キャラクタ」の「文字列表示」の「文字列を表示する」にチェックをいれる
  A:「引数1」と「引数2」に該当の変数を設定する
  B:「表示文字列」に、「%3d %3d」と入力する
    %3dの3と言う数字は、3桁の数字を表示すると言うこと。これがたとえば得点などの
    沢山の桁数を表示させたかったら、%8dとかにすれば、8桁の表示になる。

これで、弾の現在の座標がリアルタイムで弾の下に表示されるはず
0083名前は開発中のものです。2010/09/28(火) 16:42:44ID:stBTsWu1
>>82
>黒板に書かれた内容を、ただひたすらノートに書き写しているだけに見えるかな。
ズバリその通りです...

理屈も半分くらいしか分かってません...
(どちらかといえば理屈はだいたい分かっている方なのですが、
どのパネルを使うとか、何をどうするかが分からないです)
0084名前は開発中のものです。2010/09/28(火) 17:23:09ID:rOw2WdNo
・X座標を変数0、Y座標を変数1に取得(ローカル変数の項目内にある)
・変数0が0以下だったらラベル0、変数0が384以上だったらラベル0に分岐
・変数1が0以下だったらラベル1、変数1が480以上だったらラベル1に分岐
・通過(1フレーム)
↑ここまでをループさせる

ラベル0の処理
・X移動量を変数0に取得(ローカル変数の項目内にある)
・変数0に-1をかける(変数0 × -1 = 変数0 でおk)
・変数0をX移動量に戻す(矢印を左向きにすればおk)
・通過(1フレーム)

ラベル1の処理
・Y移動量を変数1に取得(ローカル変数の項目内にある)
・変数1に-1をかける(変数1 × -1 = 変数1 でおk)
・変数1をY移動量に戻す(矢印を左向きにすればおk)
・通過(1フレーム)


これで分かんないならもうどうしようもないから1作か2作完成するまで消えとけ
0085名前は開発中のものです。2010/09/28(火) 18:06:07ID:stBTsWu1
できなかった...orz
でも変数の役割はなんとなく分かりました

という訳でもう消えます。迷惑かけてすいませんでした。
どっかにSBの講座とか質問受け付けてる所ってありますかね…?
0086名前は開発中のものです。2010/09/28(火) 18:09:05ID:stBTsWu1
あ、できた。
でも消えます
ありがとうございました
0087名前は開発中のものです。2010/09/28(火) 18:20:42ID:5OBypobc
>>85
SB@wikiのFAQコーナー
0088名前は開発中のものです。2010/09/28(火) 18:25:29ID:Iv31Lrgq
やっぱり480が最大の元凶か
SBの講座は俺は見たことない
俺の場合はツクールとかSRCでゲーム作ってたから難しくは感じなかったな
0089名前は開発中のものです。2010/09/28(火) 19:16:26ID:8LPh3Qra
初心者で分からないのはしょうがないんだけどね。
質問されることも別に迷惑でもなんでもないんだけどね。

でも、これから先もずっと質問を続けて、言われたことをただ書き写して行くだけなのかな。
講座なんてしっかりしたものはないんだから、自分でいじりながら覚えるしかないんだけどね。

>何か値段が描いてあるけどよく分からないorz
これって、まさか同人のバナーに興味を持ってしまったわけではないよね?
「STGDupl」っていうところをクリックしないとね。
0090名前は開発中のものです。2010/09/28(火) 19:21:13ID:8LPh3Qra
>>78
実際には銀行とATMにつながりがあるわけだから、その例えだと、システム変数とシグナルが
直接やり取りできるように見えてしまう気がするな。
0091名前は開発中のものです。2010/09/28(火) 19:47:20ID:5OBypobc
>>74
>>78

シグナルを使った印象は、送りっぱなしの書留に近いかな

システム変数はATMというか、家族共通の銀行口座かな
0092名前は開発中のものです。2010/09/28(火) 19:50:11ID:5OBypobc
新しい図はだいぶ整理されて見やすくなった

シグナルの送信・受信が別の値だというのがよくわかる

しかも、受信値はいったんローカルで変数に呼び出さないと中身を確認できない点とか

変数を送信できるようになったことで、シグナルの受信→送信サイクルがつながったわけだね
0093SB ◆.if.Xu7A6c 2010/09/28(火) 21:35:24ID:PQ8yxRHK
シグナルに関して
wikiに割と詳しい解説を書いてくれてるね

強調したいのは、シグナル受信箱は各キャラに
一つしかないこと

複数の子を持つ親がいたとして、
子が親に対して一斉に同一番号のシグナルを
送信すると親はパニックになる

うまく処理することも可能ではあるが
おすすめはしない
0094名前は開発中のものです。2010/09/28(火) 22:00:53ID:Iv31Lrgq
まあ「SBの講座」は知らないけど、ツクールとかの講座だったら探せば腐るほどあるよ
俺も昔はさんざん見て回ったもんだった
べつにSB用じゃなくてもたとえば変数の考え方なんかは全てのツールで共通の概念だから役に立つよ
0095名前は開発中のものです。2010/09/28(火) 22:01:30ID:8LPh3Qra
SB氏、お疲れ様です。

>一斉に同一番号のシグナルを送信

これは、全くの同一タイミングで送信されるケースってことですよね?
複数の子キャラが親にシグナル送信するような仕組みは、やもすると誤動作が
起こりかねないので、なるべくなら作らないほうが懸命であるってことですね。

了解しました〜。
0096名前は開発中のものです。2010/09/28(火) 22:16:01ID:8LPh3Qra
>>94
ああ、確かに。
おれもシューツクの講座もさんざん見て回ったな〜、なつかしい。
だから、SBでのシステム変数、ローカル変数の概念なんかはわりと迷いなく
理解できたほうかも。

システム変数が256あると知って、しかもすべて保存の有無の切り替えができるんで、
これは色々なことが出来る!とか思ったな。

ただ、SBを使いたい人が、一体どれだけSB以外の講座に行けるかってのはあるね。
とりあえずは、WIKIの充実が一番のような気がする。
0097名前は開発中のものです。2010/09/28(火) 22:34:37ID:8LPh3Qra
そういえば、
 「画面内に敵が何匹出現したか」
 「そのうちの何匹が死んだか」
 「画面内の敵がすべていなくなってから次の動作へ移行」

こんなような事をするため、敵数の計測用にシグナルでカウンター作ってるんだよな。
こんなのが、同一シグナルの混戦を一番招きそうだよな・・・
今のシステムをいじるのはもう億劫なので、次こういうことをするときは、別のシステムを
考えるかな。
0098名前は開発中のものです。2010/09/29(水) 12:39:48ID:mx50E8aJ
敵の登場時にシステム変数を加算していき、破壊時に減算する方式だと、
画面内の敵の出現数をカウントできて良いけれど、
同時に死亡したりしてフレームが重なった時に、減算し損なって0にならなくなり、
全滅フラグが発動しないことがある

指定フレーム経過後に0になるシステム変数を、
敵の出現中はどの敵も常に同じ変数を絶えず1に書き換え続けることで、
誰も書き換える人がいなくなり、全滅した時点で0のままになり発動する、
デススイッチ方式フラグもあるね
0099名前は開発中のものです。2010/09/29(水) 14:06:35ID:o9YGV8jk
それを信号でやる方法って無い?
0100名前は開発中のものです。2010/09/29(水) 19:01:04ID:o+zmGTqQ
>同時に死亡したりしてフレームが重なった時に、減算し損なって0にならなくなり、

以前、同じような疑問を持ってそういう質問をしたら、
システムをローカルに読み込む(ウェイトなし) → 減算する(ウェイトなし) → システムへ書き戻す(ウェイト1)

と、システムの読み込みと書き戻しを同時にやると、その手のエラーが起こらないという、SB氏からの回答があったな。
でも、シグナルでは同一タイミングでの混線ありって>>93でも出てるから、完全には拭えないのかな。

デススイッチフラグはいい案だな。
指定フレームってのが300くらいだった時は、キャラクタのALIVEチェックの間隔はちょい少な目の290位にしておくとかすれば、
キャラクタ大量発生時のシステム変数の読み書きの負担も軽減できるかもな。
今度取り入れてみるかな。
0101名前は開発中のものです。2010/09/29(水) 20:02:32ID:id3cSmrS
>SB氏からの回答があったな。
知らなかったわ
トンクスコ
0102名前は開発中のものです。2010/09/29(水) 20:41:12ID:cNvcGlAY
>>98
いいねそれ
色々応用も効いて便利だから使わせて頂きます
0103名前は開発中のものです。2010/09/29(水) 20:45:40ID:o+zmGTqQ
>SB氏からの回答があったな。
6スレ目の>402のレスだね。

「システム変数を取得してから書き戻すまでに
ウエイトを入れずにやれば大丈夫」

これって、最後の書き戻しでウェイト1にするってことでいいんですよね・・・
0104名前は開発中のものです。2010/09/29(水) 20:47:13ID:o+zmGTqQ
↑スマン、7番目スレッドだった...orz
0105名前は開発中のものです。2010/09/29(水) 22:18:48ID:mx50E8aJ
デススイッチの良いところは、作働が確実な点

ゴ○ゴ13もこれで手傷を負わされたんだから・・・
0106名前は開発中のものです。2010/09/30(木) 00:01:56ID:YXwJ7fQt
このデススイッチって考え方、わりとゲーム製作の基本として習うやり方だよね
0107名前は開発中のものです。2010/09/30(木) 01:10:24ID:DfhX48eY
ゲーム製作の基本とかだと、
・ビット演算(スイッチ判定とか)
・n桁の数字の任意の桁の抽出
・割った余りの利用
ここら辺を知っておくとかなり進化する。知らない人に限るけど

あとSBで、16bitで角度を管理するのは精度が高すぎる気がするんだけど・・・
SBでの三角比はどうやって求めてるんだろう
0108名前は開発中のものです。2010/09/30(木) 08:55:56ID:qd9QlfHM
関数計算できれば最強!


…と言ってみるテスト
0109名前は開発中のものです。2010/09/30(木) 13:53:05ID:OmFpH/9H
三角関数は前スレで要望出てたけど、完全にアドバンス機能だから、結局まだ時期尚早でスルーとなった経過あり。

でも、公転パネルで角度θを指定すると、X座標とY座標がそれぞれ、半径×cosθと半径×sinθになるから、
いったん変数に保存して半径で割ると、三角関数として取り出せるよ。
0110名前は開発中のものです。2010/09/30(木) 15:43:22ID:mfN4OfTt
SBだと普通にパラメータで色々設定出来るから三角関数とか取得出来ても使う機会が無いっていう
0111名前は開発中のものです。2010/09/30(木) 20:50:39ID:JGARKMb7
角度取得できる品
でもプロフェッショナルはいろんなことやるんだろう
0112SB ◆.if.Xu7A6c 2010/09/30(木) 22:43:46ID:yq5BY9ak
ver 0.99.35が動かないって人いないっぽいかな
0113名前は開発中のものです。2010/09/30(木) 23:19:02ID:DfhX48eY
こっちでは普通に動作しました
0114名前は開発中のものです。2010/10/01(金) 00:10:09ID:F1cSBFRE
動きましたよー
やっぱり透明アイテム食わせるより動作が安定しますわ
0115SB ◆.if.Xu7A6c 2010/10/01(金) 00:12:12ID:I4mCTCNu
テストありがd

このままリリースしよう
0116名前は開発中のものです。2010/10/01(金) 00:34:57ID:LLbIy3D4
プレイヤの情報色々取得出来るようになったんですね
移動速度インデックスがあれば完璧かな
0117名前は開発中のものです。2010/10/01(金) 00:52:34ID:oo0eRR0f
何その図々しい要望の仕方
0118名前は開発中のものです。2010/10/01(金) 01:35:46ID:9oiKz0XF
スクリプトでできるじゃん
0119名前は開発中のものです。2010/10/01(金) 20:23:55ID:7n2aSwAx
透明アイテムのテクニックがついに過去のモノに・・・。

0120名前は開発中のものです。2010/10/01(金) 20:36:49ID:7n2aSwAx
>>116
「進行方向の速度」のローカルデータ化という意味かな?
進行方向の向きは変数になっているから、その向きの移動速度が取得・代入できれば極座標移動を変数でできるね

現状だと、X移動量とY移動量で別々に設定することである程度は代替できるけど、
進行方向への移動速度が一定で時間とともに進行方向が変わるような動きは難しいからね・・・
(それこそ、三角関数が必要か)

X,Y方向別に速度・加速度を調整できるから、現状でもすごく便利だけど、
√計算ができないので、X・Y移動量を用いて三平方の定理から導出しようと思っても、移動方向の速度は計算できないんだよね
0121名前は開発中のものです。2010/10/02(土) 00:31:45ID:SqD3g80J
>進行方向への移動速度が一定で時間とともに進行方向が変わるような動きは難しい

へ?
0122名前は開発中のものです。2010/10/02(土) 02:32:18ID:1m+ul0xO
>>120
プレイヤー編集にある移動速度設定のインデックスの事だろ
武器設定だけ数値指定ができてこちらはできないのはおかしいって話じゃないのか
0123名前は開発中のものです。2010/10/02(土) 12:19:57ID:ya6bVj58
プレイヤーが下から登場するときの横座標ってどこかで設定できるでしょうか?
プレイヤーキャラのスクリプトのメインタスクで最初に絶対座標移動の指定しても
うまいこと動いてくれないのです(いつもの登場してから移動してしまう)

あと、今のバージョンってゲージ消費武器がゲージ残りなくても撃てちゃってるような・・・
0124名前は開発中のものです。2010/10/02(土) 12:53:42ID:SqD3g80J
>>123
タスク13開始とかやって13になにも設定してないとデフォルトスクリプトが使われる
自分でタスク13を設定するかそもそも13を開始しなければいい

ゲージ消費はよく分かんね
プレイヤーの武器設定とかゲージ設定とか見直してみれば?
駄目なら自機タスクでボタン判定してゲージ量で分岐するとか
0125名前は開発中のものです。2010/10/02(土) 13:16:36ID:ya6bVj58
>124
なるほど!できました
ディフォルトが適用されるってことですね、他でも注意しときます

ゲージに関してはもうちょっと調べてみます
必要ゲージとか設定してるんだけどなあ・・・
(二年ぐらい前に練習で作ったときはちゃんとできてたのです)
0126名前は開発中のものです。2010/10/02(土) 19:35:08ID:51x560yT
>>115
リリース乙です。
いつもながら頭が下がります。
0127名前は開発中のものです。2010/10/02(土) 23:36:03ID:s0YIeRB0
オプション数はローカルで参照も代入もできないのか。
アイテムで一つずつオプションが増えるんじゃなくて
特定のレベルで二つずつ増やしてる人とかいる?
0128名前は開発中のものです。2010/10/03(日) 02:17:47ID:KKyZaVSq
俺のゲームにはオプション存在しないからしらね
0129名前は開発中のものです。2010/10/03(日) 22:18:14ID:G2TH4Ik6
>>127
ローカル変数で出来ないならシステム変数使えばいいじゃない
自機とオプションなんて画面内に一組しか存在しないんだから何も問題は無いだろ
0130名前は開発中のものです。2010/10/04(月) 21:15:42ID:ERhScMAZ
オプションは、アイテムで1個ずつ増やしたり、減らした方が良い。
オプションの総数はシステム変数で管理したほうが良い。
(書き換え数は頻繁でもないので・・・)

以前に、オプションを消滅させたり、表示オフにしてみたり、いろいろやったけど、結局ダメだった。
(なぜかアイコンの画像がバグる・・・)
0131名前は開発中のものです。2010/10/04(月) 21:18:32ID:ERhScMAZ
自機の移動速度のインデックスは、確かにまだローカルデータになかったね
これを変更してしまえば、全方向への移動速度が一気に設定できるわけか・・・


ver 0.99.35も正式リリースされたし、SBはかなり完成度がupしてきたな〜
0132名前は開発中のものです。2010/10/04(月) 21:28:15ID:+m3HRkK1
>>130
それ自動消滅しないにチェックしてないんじゃない?
0133名前は開発中のものです。2010/10/04(月) 23:19:00ID:WdNZRJqv
いや、オプション関連は昔から謎の動作が多いから十分ありえる
0134名前は開発中のものです。2010/10/04(月) 23:22:36ID:+m3HRkK1
そうか
ところで現バージョンだとテストプレイで編隊テストした時に
白い四角になるバグが復活してるね
0135名前は開発中のものです。2010/10/05(火) 08:13:31ID:r2ACJyi+
>>130
数を増減させない限り表示を消すだけなら何の問題も無かったと思ったけど。
可能性としては体力0になって死亡フラグが発生したタイミングが怪しいと思うので
いっそ体力9999にして防御ヒット時タスクで処理してみてはどうかな?
0136名前は開発中のものです。2010/10/05(火) 18:54:53ID:panSU9qY
表示だけ消すとオプションのショットが消えない罠・・・

ボタン設定の内容を、ゲーム内で変更できるようなスクリプトが欲しいと思ってみたり
(Aボタンでメイン,Bボタンでサブ,Xボタンでオプション・・・とかの変更)

ゲーム中に一時的に、指定したボタンの入力を無視したい時が、しばしばあるもので・・・
0137名前は開発中のものです。2010/10/05(火) 19:04:06ID:eIlUw0kg
ゲーム中にオプションが増減するタイプの事をやろうとしてるのか?
R−TYPEレオとか、サラマンダ2みたいなオプションシュート?
0138名前は開発中のものです。2010/10/05(火) 20:43:08ID:iTA8/xyq
バニッシャーでやってたよね
0139名前は開発中のものです。2010/10/05(火) 21:16:39ID:eIlUw0kg
超初期のNOILA-TEM TYPEで、トレースオプションを固定したり
魔女達の長い午後でも2つ目のオプションが特攻したりしてるが
どんな事をやりたいのかが凄い気になる
■ このスレッドは過去ログ倉庫に格納されています