[過去ログ] 一人で完成まで頑張るの寂しいからかまって [無断転載禁止]©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
276: 某犬犬 ◆HzfAAjcl8nz1 2018/09/02(日)00:16 ID:i2SMMNC0(1) AAS
海賊の攻撃のサブ・ルーチン群の枠を確保した
昨日は家族サービスでツクール用PC取られてたので
あんまし進捗せんかった
277: 某犬犬 ◆HzfAAjcl8nz1 2018/09/03(月)02:19 ID:OMruBQS8(1) AAS
恒星系の海賊のビームの初期化と
イテレータの処理を書いた
278: 某犬犬 ◆HzfAAjcl8nz1 2018/09/04(火)23:48 ID:a5g9zlPd(1) AAS
恒星系の海賊のビーム作った
座標の回転だけでかなり重いので
速度ベクトルはデータに持たせ無いで
回転を省いた
d = max(x, y, z)
フレーム数 = d / 最大速度
発射時にx,y,zの内一番自機から遠い距離を
最大速度で割って、衝突予想フレーム数を
求めて、敵弾のデータに保持する
フレーム数 -= 1
xの速度 = -(xの距離 / フレーム数)
yの速度 = -(yの距離 / フレーム数)
zの速度 = -(zの距離 / フレーム数)
x座標 += xの速度
y座標 += yの速度
z座標 += zの速度
1フレーム毎に、衝突予想フレーム数の
カウントを減らしながら
距離をフレーム数で割って速度を求めて
敵弾を移動させる
今時のゲームの物理演算と比べると
色々出鱈目だが、スクリプトの実行速度との
トレードオフでこの辺りが落とし所となった
279(1): 2018/09/05(水)00:27 ID:Bu1V3by6(1) AAS
いつも見てます
「フレーム」「x,y,z」「ビーム」などかっこいい言葉が頻繁に出てくるので好きです
これからも頑張ってください
280: 某犬犬 ◆HzfAAjcl8nz1 2018/09/05(水)03:40 ID:x1z3RxCE(1/2) AAS
>>279
ありがとう!
用語はスーファミとかメガドラなんかの
スプライト全盛期のを意識してます
281: 某犬犬 ◆HzfAAjcl8nz1 2018/09/05(水)20:22 ID:x1z3RxCE(2/2) AAS
海賊のビームの当たり判定と
自機のダメージ・エフェクトを作った
衝突予想フレーム数が 1 より大きければ
まだ当たっていないと判断出来るので
それを真っ先にチェックして弾いてから
座標のチェックをする
ダメージ・エフェクトは画面サイズの
ベタ塗り画像を背景と敵の間に
差し挟んで表現する
色は黒→白→黄色の順にアニメさせる
282: 某犬犬 ◆HzfAAjcl8nz1 2018/09/06(木)00:17 ID:vvLX/rVe(1) AAS
海賊のレーザーを作った
下向きで3段階の角度を付けたレーザーの画像を
拡大率100%固定で敵の見た目の座標から発射する
画面の下半分はコクピットなので
これで大体それっぽく見えると言う寸法
283: 某犬犬 ◆HzfAAjcl8nz1 2018/09/08(土)09:03 ID:3+1zpgJN(1/4) AAS
レーザーの当たり判定を作った
自機を上下に動かしてる間だけ
カウンタを増加させて
それ以外なら0でリセットする
判定の所でカウンタが一定値未満なら
その時点で敵が撃っているレーザーが全て当たる
レーザーはエイム→射撃→即着弾な
当て易い武器と言う設定
284(1): 2018/09/08(土)16:47 ID:wWjAIewH(1) AAS
脱出ゲームのシナリオを書いた
285: 某犬犬 ◆HzfAAjcl8nz1 2018/09/08(土)18:22 ID:3+1zpgJN(2/4) AAS
海賊のビームの当たり判定を
レーザーを参考に調整した
一定の範囲のフレーム数の間
ピッチを上げ下げし続けると
敵の攻撃を避けられる様になる
具体的にはインメルマン・ターンで
敵弾を回避したり
バレル・ロールで回避と同時に攻撃も出来る
ただしフレーム数の範囲内と限定しているので
同じ動きを続けていると効果が無くなる
偏差撃ちさせれば済む話だけど
過去から現在〜未来まで座標回転させると
処理が重くなるので、この様に実装した
AIを賢くするとその分
処理コストが上がるので
代替的な処理で近似する必要が有る
286: 某犬犬 ◆HzfAAjcl8nz1 2018/09/08(土)18:58 ID:3+1zpgJN(3/4) AAS
>>284
1氏じゃ無いだろうし…だれ?
287: 某犬犬 ◆HzfAAjcl8nz1 2018/09/08(土)20:19 ID:3+1zpgJN(4/4) AAS
海賊が後ろを向いてる時は
攻撃して来ない様にした
z座標が0以上(画面奥)で
ピッチが90〜270度の時と
z座標が0未満(画面より手前)で
ピッチが90度以下か270度以上の時は
武器を発射しない
発射できる角度は狭める方向で調整しても良いかも
288: 某犬犬 ◆HzfAAjcl8nz1 2018/09/09(日)01:39 ID:c3LvgQTF(1) AAS
自機のダメージ・エフェクトが発生している最中に
追加でダメージが発生した時
エフェクト・アニメの1コマ目が
連続で描画されてしまうので調整した
エフェクト発生時に既に発生中だったら
そのままにして置いて効果音だけ処理する様にした
289: 某犬犬 ◆HzfAAjcl8nz1 2018/09/10(月)03:00 ID:2HLZakh/(1/4) AAS
海賊のプラズマを作った
ビームと大体同じ処理で
発射していない時はチャージ中になる様にした
290(1): 某犬犬 ◆HzfAAjcl8nz1 2018/09/10(月)16:48 ID:2HLZakh/(2/4) AAS
プラズマは3つの状態を遷移する
0: 未初期化、初期化したら1にする
1: チャージ中、発射したら2にする
2: 攻撃中、当たるか消えたら0にする
291: 某犬犬 ◆HzfAAjcl8nz1 2018/09/10(月)18:42 ID:2HLZakh/(3/4) AAS
自機と海賊が使う主要な武器のフルネーム
・重陽子ビーム
・ハドロン・レーザー
・プラズマ・キャノン
・VTブラスター(ボム)
ハドロン・レーザーはPDSによって
強い相互作用が平行分岐した場を光子が通過する際
高エネルギー状態になる現象を応用したレーザー兵器
VTブラスターはバイドロイド・テクノロジーを利用した兵器
軍が極秘に発掘したものを主人公たちが強奪し
SSSに装備したと言う設定
292(1): 某犬犬 ◆HzfAAjcl8nz1 2018/09/10(月)21:59 ID:2HLZakh/(4/4) AAS
>>290
修正
他の武器作り始めたら気付いた
プラズマは4つの状態を遷移する
-1: 未装備、何もしない
0: 未初期化、武器がプラズマでなければ-1にする
初期化したら1にする
1: チャージ中、発射したら2にする
2: 攻撃中、当たるか消えたら0にする
初期状態は0
293: 某犬犬 ◆HzfAAjcl8nz1 2018/09/11(火)00:19 ID:0XkFbUjd(1/2) AAS
海賊のミサイルを作った
飛んでる間は警報がビビビビ鳴る様にした
これで恒星系の戦闘は一先ず終わり
294: 某犬犬 ◆HzfAAjcl8nz1 2018/09/11(火)06:48 ID:0XkFbUjd(2/2) AAS
>>292
プラズマの「-1: 未装備」の状態は
初期化ルーチンで遷移させとけば
良い様に見える
でも、データの初期化は
敵の装備の初期化→プラズマの装備確定
の順番に依存しているけど
初期化ルーチンを呼ぶ順番の方は
画面奥からスプライトを割り当てるのと
同じ順番で呼ばないといけない
なのでスプライトの割り当て順に初期化した後
サブ・ゲームが始まってから
データの残りの初期化をすると言う
一寸ややこしい構造になってる
オブジェクト指向言語なら、ファクトリ・メソッド
か何かに隠蔽しとけば良いのか知らんけど
ツクール2003はアセンブラライクなのと
サブルーチンが番号で管理されてて
並べ替えが困難で、後から色々追加すると
管理が破綻するので仕様がない
295: 某犬犬 ◆HzfAAjcl8nz1 2018/09/12(水)04:46 ID:0FK+2X9s(1) AAS
虚空の敵弾の画像作った
・氷のスプレー
・極太レーザーの雨
・全包囲スパーク
名前の設定は無いので適当
人類側の付けた通称は後で決める
通路の敵弾はネタを練ってる最中なので
こっちを先に実装する
296: 2018/09/15(土)05:08 ID:fDyU1PTM(1) AAS
虚空の敵弾のイベントの領域を確保した
見込み違いで足り無くなって、連番に出来なくなって来たけど
ビル街は弾を撃た無いし、FPSは他のサブ・ゲームとは別枠で
扱いたいので良しとする
DTMやりたい病が再発して三日ほど作業中断してたけど
自分を説得して抑え込んだので、続きをする
297: 某犬犬 ◆HzfAAjcl8nz1 2018/09/16(日)05:36 ID:uHo/f9mV(1) AAS
虚空の全包囲弾の初期化、リセット
イテレータ、発射まで作った
代表の敵をランダムに選んで
それを中心に発射する
配列の中に生きている敵が
何体いるか分からない状況で
その中からランダムに1体
選択したい時の処理
1) 代表の敵 = エラー値/デフォルト値
2) n = 0
3) 敵配列のループ開始
4) 敵が生きていたら
5) n++
6) (乱数 % n) が 0 なら
7) 代表の敵 = 敵ループの現在値
8) ループ末尾
生きてる敵が4体なら
1/1, 1/2, 1/3, 1/4
の確率で代表の敵を上書きして行くので
結果として、満遍なく 1/4 の確率で選ばれる
算数の問題
298: 某犬犬 ◆HzfAAjcl8nz1 2018/09/17(月)09:46 ID:/sEsFby3(1/2) AAS
虚空の全包囲弾の動きと描画作った
ランダムに選ばれた敵から放射状に
スパークが画面外へ飛んで行った後
自機を取り囲む様にスパークの輪が縮んで
一点で消滅する
初期化でsin/cosを使って同心円状に
折り返し地点の座標を入れとく
弾の動きは4つの状態で管理する
未使用、拡散、待機、収束
「未使用」:
弾が発射されたら敵の座標を
中心点に入れて、拡散に移行
「拡散」:
x = 返し地点のx * 現在の半径 / 最大半径 + 中心点のx
y = 返し地点のy * 現在の半径 / 最大半径 + 中心点のy
現在の半径を最大半径まで変化させながら描画
最大になったら、待機に移行
「待機」:
設定されたフレーム数の間、待ち続ける
待ち終わったら、自機の座標を中心点に入れて
収束に移行
「収束」:
現在の半径を 0 まで変化させながら
拡散と同様に描画
半径が 0 になったら、未使用に移行
現在の半径を、拡散する時は素早く
収束する時はゆっくり目に動かす
299: 某犬犬 ◆HzfAAjcl8nz1 2018/09/17(月)10:02 ID:/sEsFby3(2/2) AAS
現在の半径と最大半径は割り合いで
実際の半径は、折り返し地点の座標で決まるので
最大半径を 128、半径の変化速度を 2 や 4 とかの
2 の n 乗にして置くと「半分の半分」とか
「倍の倍」等に出来てバランス調整がやり易くなる
300: 某犬犬 ◆HzfAAjcl8nz1 2018/09/18(火)04:45 ID:WPULE/f8(1) AAS
虚空の全包囲弾の当たり判定作った
早めに避ければ当たっても大した事無いけど
ボーっとしてたり混戦中で、全弾命中
とかしてしまうと大ダメージな攻撃
301: 某犬犬 ◆HzfAAjcl8nz1 2018/09/19(水)00:41 ID:lYSOWyMT(1/2) AAS
虚空のレーザーの雨の全処理を作った
画面上の全ての敵から上方に弾を打ち上げた後
極太レーザーになって雨の様に降って来る
打ち上げ時のx座標にレーザーが降るので
事前に避け始める事が出来る
状態遷移などは全包囲弾と大体同じ
302: 某犬犬 ◆HzfAAjcl8nz1 2018/09/19(水)16:03 ID:lYSOWyMT(2/2) AAS
虚空の敵の氷放射の処理を作った
移動がまだバグってる
303: 某犬犬 ◆HzfAAjcl8nz1 2018/09/20(木)03:29 ID:N6p5SpZ5(1/3) AAS
虚空の氷放射できた
敵の内の一体から氷の火炎放射みたいなのが出て
自機を追い掛け回す
目標のx[0] = 敵のx
目標のx[n] = (目標のx[n - 1] + 目標のx[n + 1]) / 2
目標のx[max] = 自機のx
目標の座標を配列で持って置いて
先頭に敵、末尾に自機の座標を入れる
その中間は前後隣の座標の中間点にする
現在のx[n] += (目標のx[n] - 現在のx[n]) / 16
目標の座標が決まったら
現在の座標をそこへ向けて移動させる
目標の座標の変化が1フレームずつ
ジワジワ伝搬して行き
更に現在の座標も遅れて追尾する
これで触手の様にウネりを持った動きになる
ネットが利用出来なかった頃は
人が作ったゲームを観察して自分で考えて
技を盗むのが当たり前だったけど
今時はゲーム制作技術を共有した方が
皆で幸せになれるじゃろう
304: 某犬犬 ◆HzfAAjcl8nz1 2018/09/20(木)03:36 ID:N6p5SpZ5(2/3) AAS
皆で作るってのはそう言うものじゃないかなーと思う
305: 某犬犬 ◆HzfAAjcl8nz1 2018/09/20(木)14:30 ID:N6p5SpZ5(3/3) AAS
レゲー見ながらブレストして
敵の攻撃をいくつか思いついた
上下前次1-新書関写板覧索設栞歴
あと 697 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.012s