一人で完成まで頑張るの寂しいからかまって [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1名前は開発中のものです。
垢版 |
2017/03/08(水) 22:06:31.71ID:OX0NO28I
・ウディタ製
・RPG
・ぼくがたのしいとおもったしすてむ
・ぼくがたのしいとおもったばらんす
・基本システム流用できるところは流用して楽していく
・エタらないように頑張る
2019/03/20(水) 04:09:07.85ID:q69fB3i7
>>496
目標地点の座標をリレー形式で
バトンを手渡して行くイメージ
2019/03/20(水) 09:26:49.72ID:q69fB3i7
壁のイテレータとか細かい最適化をした

今はまだ壁の数自体が少ないので
あまり目に見えた効果は無かったけど
ソースの可読性も上がる修整だったので
良しとする

コード読み直して、敵の描画処理の
見当をつけた
2019/03/20(水) 15:53:57.29ID:q69fB3i7
FPSの敵の移動パターン4つネタ出しした
2019/03/21(木) 11:21:41.22ID:+0gLwVuf
FPSの敵の画像をレンダリングした
取り敢えず1種類だけ作って動かして見て
問題無ければ残り3種類 + ボスも作る

敵を壁の手前や奥に描画できる様に
敵と壁を1枚の画像にまとめた
ファイル・サイズが大きく成り過ぎたので
縦横半分に縮小した
2019/03/21(木) 15:59:40.79ID:+0gLwVuf
>>120
地表面の地面と海/川は、アフターバーナーっぽい
角の面取りを止めて正方形にした
地平線がギャラクシーフォースの様に面一になった

デバッグ用に草原以外のマップも
ランダムに選ばれるフラグを用意した
2019/03/22(金) 09:41:26.47ID:NeZvWN39
FPSの敵戦車を取り敢えず描画できる様にした

初期化時にマップを左上から右下まで
1キャラずつ見て行って
その地形に応じて、壁や敵を生成して行き
管理用の配列にリンクする

管理配列をソートした後
順番に対応するピクチャ番号で描画する
こうすると、奥にいる戦車が手前の壁に
隠れて見える様になる
503某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/22(金) 11:13:21.78ID:NeZvWN39
1には悪いけど、このスレも半分消化したな
まだまだ続くでー
2019/03/23(土) 03:09:05.78ID:Q/m1CvIm
敵戦車が1両しか描画できないバグを直した
イテレータで指定するバッチ範囲の修正し忘れだった
度々これをやらかす自動化してくれ
2019/03/23(土) 08:49:16.60ID:Q/m1CvIm
敵戦車の移動Aを作った
ランダムに方向転換と直進を繰り返す

・角度 = (次の向き - 現在の向き + 360) % 360
・角度 = 角度 / 回転速度 * 回転速度
・(角度 == 0) なら 直進
・(角度 <= 180) なら 現在の向き += 回転速度
・(角度 > 180) なら 現在の向き -= 回転速度

これで左右回りの近い方に
方向転換してから直進する
2019/03/23(土) 09:16:18.25ID:Q/m1CvIm
敵戦車の種類で、画像と攻撃方法が固定で決まり
それとは独立に、移動パターンを掛け合わせて
バリエーションを増やす
507名前は開発中のものです。
垢版 |
2019/03/23(土) 11:26:48.60ID:Q/m1CvIm
敵戦車の移動Bを作った
PCの視線に対して直角に左右に逃げる

・(戦車の描画X < 0) なら
 次の向き = 360 - PCの向き - 90
・(戦車の描画X >= 0) なら
 次の向き = 360 - PCの向き + 90

これで後は戦車Aと同じ処理
2019/03/24(日) 13:53:07.49ID:bKpugRoi
敵戦車の移動Cを作った
左手法でマップの壁に沿って移動する

・前方が壁なら右折する
・左に壁が無いなら左折する
・但しランダムに決めた時間内は直進する

近くに壁が無い状態だと
その場でクルクル回って仕舞うので
ランダムに直進する処理を加えた
2019/03/24(日) 13:54:41.30ID:bKpugRoi
敵にもPCと同じ、壁の当たり判定と
押し出し処理を実装した
2019/03/24(日) 15:19:13.46ID:bKpugRoi
PCの出現位置をマップ上で指定できる様にした

マップから壁や敵を生成する時に
特定の地形が有ったら
その座標をPCの座標に入れる
2019/03/24(日) 16:13:00.26ID:bKpugRoi
戦車の画像は、移動方向に合わせて
車体の向きが12枚ある

砲塔は常にPCの方向を向いていて
何時でも攻撃できる様になっている
2019/03/25(月) 03:22:55.49ID:mBobaV08
敵戦車の移動Dを作った
PCに向かって追い掛けて来る

dx = (自機X - 敵X) / 1マスのサイズ
dy = (自機Y - 敵Y) / 1マスのサイズ
if (dx <= -1) {
 if (dz <= -1) {
  目標の向き = 3
 }
 if (dz == 0) {
  目標の向き = 2
 }
 if (dz >= +1) {
  目標の向き = 1
 }
}
if (dx == 0) {
  目標の向き = 4
  目標の向き /= 45
  目標の向き = 0
}
if (dx >= +1) {
 ……
}
目標の向き *= 45

45度単位で、目標(PC)の方を向いて
その方向に直進する
PCと重なっている時は、向きを変えない
2019/03/25(月) 03:34:55.99ID:mBobaV08
>>512
※訂正

dz = (自機Z - 敵Z) / 1マスのサイズ

if (dx == 0) {
 if (dz <= -1) {
  目標の向き = 4
 }
 if (dz == 0) {
  目標の向き /= 45
 }
 if (dz >= +1) {
  目標の向き = 0
 }
}
2019/03/25(月) 05:30:12.70ID:mBobaV08
戦車の攻撃パターンをネタ出しした

・自機狙い
・4Way
・緩いホーミング
・ランダムに揺れる弾幕
2019/03/25(月) 08:58:19.17ID:mBobaV08
PCが敵戦車に轢かれたらダメージを受ける様にした
ダメージと効果音の処理の一部を実装した
2019/03/26(火) 16:21:02.56ID:yQUdAvyc
戦車4種のレンダリングした
Blender が少しずつ解って来た気がするけど
たぶん気のせい
2019/03/27(水) 00:39:16.31ID:kz4Q+KiW
FPSの戦車4種の画像とマップ上の生成が出来た
2019/03/27(水) 14:52:20.43ID:kz4Q+KiW
戦車の砲弾の画像を作って、取り敢えず
撃ったその場に描画する所までやった
PCの回転や移動もおk
2019/03/28(木) 11:34:04.48ID:yyMS9KtM
戦車の攻撃Aを実装した

・x1 = 攻撃した敵のマップ上のx
・y1 = 攻撃した敵のマップ上のy
・dx = (PCのマップ上のx - x1) / 弾の速度
・dy = (PCのマップ上のy - y1) / 弾の速度
・最大フレーム数 = 最大(絶対値(dx), 絶対値(dy))

弾の発射時に、発射位置(x1, y1)と
PCとの相対座標(dx, dy)と
PCと衝突するまでの最大フレーム数を
求めて置く

・フレーム数 = 0...最大フレーム数
・弾のx = dx * フレーム数 / 最大フレーム数 + x1
・弾のy = dy * フレーム数 / 最大フレーム数 + y1

フレーム数をインクリメントしながら
弾のマップ上の座標を計算して、描画処理に渡す
こうするとsin, cos, tanの重い処理を省ける

弾がPCに当たらなかった場合は
そのままフレーム数を増やして行って
壁にぶつかったら消す
最大フレーム数を越えても問題無い

実際は弾の速度を半分にして
移動と当たり判定を2回分実行する事で
壁のすり抜けを防ぐ
2019/03/28(木) 15:15:10.72ID:yyMS9KtM
>>514
・自機狙い
単発で撃って来るだけ。単純に雑魚

・4Way
最初ビビるけど直ぐに避けられる様になる

・ホーミング
めっちゃ当てに来るので壁避け必須。HP少な目

・ランダムに揺れる弾幕
板野サーカスの腕前を要求。単純に強い
2019/03/28(木) 16:46:35.33ID:yyMS9KtM
>>515
「敵が前に進んでてその角度の範囲内にPCが……」
とか難しく考え過ぎる子が居るから答え合わせな

・dx = (戦車のx - PCのx) / 当たり半径
・dy = (戦車のy - PCのy) / 当たり半径

でdxとdyが両方とも0だったらひき頃されてる
2019/03/28(木) 17:06:35.06ID:yyMS9KtM
>>519
・最大フレーム数 = 最大(絶対値(dx), 絶対値(dy))

こっちのdx, dyは合ってるけど

・弾のx = dx * フレーム数 / 最大フレーム数 + x1

こっちのは、弾の速度で割る前の値な
説明を省くと文章にバグが入り込む何時ものやつ
2019/03/29(金) 10:39:28.04ID:ELgYOkhI
敵戦車の4Way攻撃を実装した
PCを中心にした扇状の4方向へ向けて飛ばす

1. PCと敵の相対座標から角度を45度単位で求める
 x > 0 かつ y > 0 の場合
  (x / y) >= 2 なら 0度
  (y / x) >= 2 なら 90度
  それ以外なら 45度 と言う感じ
2. 角度を直角に回転し正規化する
  0度 なら x = 0, y = 1
 45度 なら x = -1, y = 1
 90度 なら x = -1, y = 0
3. 正規化した数値を +1, -1 倍して扇の幅を掛けて
 敵の座標に加えた位置から発射し
 数値を +1, -1, +5, -5 倍して扇の幅を掛けて
 PCの座標に加えた座標に向けて飛ばす
2019/03/30(土) 09:59:52.16ID:RzjCApdz
敵戦車のホーミング攻撃を実装した

移動処理で、目標の座標を
現在のPCの座標で毎フレーム更新するだけ
他は >>519 の自機狙い弾と同じ

自機狙いは残像拳と一緒で
当たる頃には、もうそこに居ない
「馬鹿め!何処を狙っている!わしはここだ」
2019/04/02(火) 16:32:36.49ID:kiYAJn+a
Done. で落ちてたのでまとめて進捗する
2019/04/02(火) 16:33:41.64ID:kiYAJn+a
敵戦車の弾幕攻撃を実装した
4つの弾が広がってから
PCにぶつかる様に収束する

「発射処理」
・速度 = 壁の幅 * 100 * 乱数(4..12) / 12 / 10
・加速度 = 速度 * -2 / 着弾までの予測フレーム数 - 1

乱数で拡散する速度を決めて
そこからPCの座標に向かって収束する様に加速度を求める

「描画処理」
・速度 += 加速度
・補正座標 += 速度
・現在のX or Z座標 += 補正座標

PCと敵の位置関係で軸に直角になる様に
計算中の描画用XかZ座標に補正座標を加える

・Y >= 0 なら Yの速度--
・Y < 0 なら Yの速度++

Y座標は原点に向けて加速するsinカーブ
要は R-TYPE II の拡散波動砲
2019/04/02(火) 16:34:38.58ID:kiYAJn+a
FPSの敵弾xPCの当たり判定を作った

・DX = (PCのX - 弾のX) / (PCの半径 + 弾の半径)
・DZ = (PCのZ - 弾のZ) / (PCの半径 + 弾の半径)

でDXとDZが両方0だったらPCにダメージ
2019/04/02(火) 16:35:36.82ID:kiYAJn+a
移動や攻撃などのキーが押されていなかったら
PCのHPを少しずつ回復する様にした
2019/04/02(火) 16:36:07.30ID:kiYAJn+a
グレネードの煙幕で敵弾を防げる様にした
当たり判定は敵弾xPC等と大体一緒
2019/04/02(火) 16:44:45.11ID:kiYAJn+a
自弾のパルス、バースト、グレネードと敵との当たり判定できた

パルスとバーストはオブジェクトのポインタの配列に
ソートされて入ってるので、手前から判定して行って
最初に射線上(画面中心)に居るものが敵だったら
そいつにダメージを入れる
2019/04/02(火) 16:45:18.53ID:kiYAJn+a
戦車のHPが0になったら
その場にグレネードと同じ爆炎を置く様にした

グレネードは着弾予測地点で判定
ダメージは4フレームに別けて与える事で
誘爆する時に時間差が出る様にした
2019/04/02(火) 16:45:45.53ID:kiYAJn+a
戦車の爆発がおかしな場所に生成されるバグを直した
相互リンクする部分があやふやなコードだった

ツクールだとコメント入れるだけでも面倒だけど
それでも目印くらい付けとくべきだった
533某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/02(火) 16:46:15.17ID:kiYAJn+a
近接のビーム・クリスと敵の当たり判定できた

使用中のオブジェクトへのポインタの配列から
描画座標と半径が取得できるので、それで判定する
壁の有無に関係なく範囲内の敵全てにダメージを入れる

2コマでモーションして3コマ目で戻るので
ダメージも半分ずつに分けて与える
2019/04/03(水) 09:40:46.20ID:MRhUeRMg
四捨五入ルーチン呼んでる所インライン展開したら
めっちゃ速くなったwもう別ゲー
2019/04/03(水) 09:52:32.94ID:MRhUeRMg
>>534
恒星系(宇宙)のモッサリ感が払拭された
2019/04/03(水) 14:16:52.40ID:MRhUeRMg
FPSの戦車のダメージ・エフェクト作った

虚数空間のデータ構造をそのまま流用して
処理を少し調整しただけ
後で専用のデータが必要になる事が有れば
その時に修整する
2019/04/03(水) 15:34:45.93ID:MRhUeRMg
FPSのPCのダメージ・エフェクトを作った

恒星系のを流用して背景がフラッシュする様にした
PCのHPが0になった時の
フェードアウト→ゲームオーバー、の流れも出来た

これでFPSの戦闘周りは大体できた
2019/04/03(水) 16:17:58.09ID:MRhUeRMg
ゲームオーバー前のフェードアウト時に
画面を赤くするの忘れてたので実装

フェードアウト処理で
赤画面のピクチャ番号が0だったら普通に描画
番号が入ってたら黒画面の下に
赤画面を透明度50%で描画する
539某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/04(木) 10:20:12.49ID:tAjJGQFq
FPSのブリーフィング画面を作った
マップを3Dでグルグル回転して描画する

http://lnl.osdn.jp/images/Space-SSS/blog/2019/02/l/briefing-001.png

・画面のX = 回転後のX
・画面のY = 回転後のZ / 2

マップ平面上の X,Z を回転させて
画面上の Y を半分に押し潰して描画する
ピクチャ番号は90度毎に回転させて
奥から手前の順に変換する

画像は菱形を描いて
自前スクリプトで回転コピペしたものを
上下に縮小したものを使用する
540名前は開発中のものです。
垢版 |
2019/04/04(木) 10:22:32.19ID:tAjJGQFq
>>539
リンクミス
http://lnl.osdn.jp/images/Space-SSS/blog/2019/04/s/briefing-001.png
2019/04/04(木) 12:17:25.82ID:qRoOXX5a
10時間かけて作って余韻に浸ってるけど
「だから何?Unityならそんなの10分で作れるよ」
と言う目線が厳しいので後でUE4で作り直します
2019/04/04(木) 22:18:34.23ID:qRoOXX5a
三角関数の調整をした

座標に100の下駄を履かせて、固定小数点数にしてるけど
数学関数だけ精度を上げようと、1,000にしたのは間違いだった
オーバーフローしない様に、10で割ってから使ってるから意味無い
2019/04/05(金) 10:35:56.81ID:xTokyv9S
ブリーフィング画面の背景と
読み込み中のメッセージを作った

この演出の為にロード時間が伸びて本末転倒なので
次のエリアに進む時はマップ回転無しにする
2019/04/05(金) 12:37:50.48ID:xTokyv9S
FPSのHUDの内、PCのHPメーターを作った
ビル街からのほぼコピペ
2019/04/07(日) 16:54:27.15ID:3yJyslof
FPSのHUDの残弾数をレイアウトした

武器毎に箱で囲んで横に4つ並べると
画面の横幅的に厳しいので
1行1武器で4行のリスト表示にした
546名前は開発中のものです。
垢版 |
2019/04/08(月) 18:34:02.96ID:O2OldtP6
HUDの残弾数の画像を作った

デジタル数字を8x16ドットでポチポチ打った
3桁表示に合わせて∞を3キャラの逆組み文字にした

GIMPで粗いドットの袋文字を作る手順
・普通に文字を描く
・下のレイヤーにコピペする
・色を替える
・縦横8方向に1ドットずつずらしてコピペする
2019/04/09(火) 13:12:59.63ID:/0BGufNQ
HUDの残弾数の描画を作った

・1の位:シート番号 = 弾数 % 10
・10の位:シート番号 = (弾数 / 10) % 10
・100の位:シート番号 = (弾数 / 100) % 10
・武器が選択中なら シート番号 += 16
・シート番号 += 1

これでスプライト・シートの番号を決める

0123
4567
89//
(X)_

スプライト・シートには
上記の16文字がx2色分入っている
「/」は数字の区切り
「(X)」は3文字で無限
2019/04/09(火) 15:11:48.62ID:8W/93SC+
0割…
2019/04/10(水) 20:10:17.06ID:bnRj0nsh
アイテムのグレネードの画像を作った
コアになる液体が透明なカプセルに封じられてる感じ

バースト・ボルトの弾薬とHP回復コンテナの
モデルも選んでダウンロードして置いた
2019/04/10(水) 20:11:49.35ID:bnRj0nsh
>>548
どした?
2019/04/11(木) 14:05:17.75ID:fcVoOrr1
取り敢えずアイテム画像はでっち上げて
イベントの枠を確保した
2019/04/12(金) 16:03:00.78ID:3SgiTR2v
アイテムを描画できる様になった
一枚絵なのでどの方向から見ても同じ画像
スプライト・シートの余ってる所に入れて置いた
2019/04/13(土) 14:03:48.77ID:9yULFTQb
FPSでのアイテム拾いの処理を作った

拾ったら弾数を増やしたりHPを回復したりして
リスポーン時間も設定する

「リスポーン時間 > 0」の間は
リスポーン時間をカウントダウンして
アイテムを非表示にする

マップ・データ上ではアイテムのオブジェクトが
存在したままになる
2019/04/14(日) 14:57:37.60ID:lB/90hYp
破壊すると爆発するコンテナを作った

どの方向から見ても同じ画像で
動かない敵として実装した
取り敢えずパルス・ショットの
3点バースト1連射で倒せるHPに設定した
2019/04/14(日) 15:07:36.16ID:lB/90hYp
アイテムを攻撃すると同じ番号の敵に
ダメージが入って仕舞うバグを直した
敵かどうかのチェックでIDの範囲が間違っていた

敵より手前にアイテムが有ると
敵に攻撃が当たら無いバグも直した
Z座標のチェックからアイテムを対象外にして対処
2019/04/15(月) 20:08:29.68ID:0TZEIq5p
FPSの出口を描画できる様にした

出口を壁として描画して置いて
エリアの達成条件を充たしたらフラグを立てて
出口を出口の画像で描画する
557名前は開発中のものです。
垢版 |
2019/04/16(火) 17:25:00.44ID:oNitq/wd
「回転」
X1 = X * cos(角度) - Z * sin(角度)
Z1 = Z * cos(角度) + X * sin(角度)

「一点透視図法」
X2 = X1 / Z1
Y2 = Y / Z1

本当にこれだけで2.5Dゲーは作れる
後は全部これの応用、難しく考えなくていい
2019/04/16(火) 20:07:33.81ID:oNitq/wd
敵を倒したら、敵が全滅したかチェックして
アリア達成フラグを立てる様にした
立ったら出口が現れる
但しコンテナは数に含めない
2019/04/16(火) 20:11:34.11ID:oNitq/wd
>>558
エリアな。よく英語とローマ字打ち間違える
2019/04/16(火) 23:00:46.24ID:oNitq/wd
出口に接触したら
次のエリアにマップが進む様にした
スプライトのロード無しでマップを初期化する

マップ・データを2x2の4区画に区切って
時計回りに1から4のエリアとしている
エリア4をクリアしたら
取り敢えずタイトル画面に戻る
リザルト画面はクエストを実装する時に作る

これでFPSの白兵戦は大体終わった
2019/04/17(水) 18:54:12.28ID:1eJW+mIp
FPSのオブジェクトのソートを実装した

表示Z座標でバブル・ソートする
毎フレーム一定数分ずつ分割して処理するので
ジワジワと前後関係が更新されて行く

マップの外壁は常に一番遠いので
処理を省いて高速化した
562某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/17(水) 22:21:03.42ID:1eJW+mIp
「スペースSSS」のテストプレイ版を更新しました。

ウェブ・ブラウザでプレイ出来ます。
今回は FPS が一通り遊べる様になりました。
メニューの1番上の Default を選んで下さい。

http://lnl.osdn.jp/pukiwiki/index.php?blog
2019/04/17(水) 22:40:53.75ID:1eJW+mIp
>>562
ゲーム速度を Celeron オンボに合わせてるので
後で設定メニューから高速版も選べる様にします。
2019/04/17(水) 23:46:07.30ID:1eJW+mIp
安物のノートPCで制作始めて良かったワ
Core i7に合わせてたらCeleronでゲームになら無かった
2019/04/22(月) 04:30:03.29ID:BA41hZBT
今、込み入った作業やってるから
もう暫く待っててな
2019/04/22(月) 21:37:14.58ID:zxbPAiwB
http://lnl.osdn.jp/images/Space-SSS/blog/2019/04/l/F-2003-001.png

七つ目のサブ・ゲーム F-2003 の
プロトタイプを作った

取り敢えず、スーファミの F-ZERO の
ミュートシティっぽく出来た
ギリでゲームが成立する位の処理の重さ
明日辺り、動画をうpる予定
2019/04/23(火) 16:13:35.21ID:4N/tEkve
https://www.youtube.com/watch?v=b4PyktnVbgM

「スペースSSS」RPGツクール2003 進捗動画 #010
サブ・ゲーム「F-2003」のプロトタイプです。
各惑星で開かれる銀河レースで優勝をめざせ!
http://lnl.osdn.jp/pukiwiki/index.php?works
568某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/24(水) 05:19:07.90ID:f1mw/H+I
F-2003のコース外の当たり判定を作った

FPSの判定とほぼ同じで、壁の代わりに
マップ・データ上の海の部分と比較する
ジャンプの着地失敗などで
コースを大幅にはみ出すと
自機が爆発する事になる
2019/04/24(水) 05:24:17.56ID:f1mw/H+I
>>568
コース外と衝突すると、速度の符号が反転して
減速され、弾き返される
2019/04/24(水) 21:48:10.61ID:f1mw/H+I
コース上にライバル車のライン取り用
イベント・マーカーを打った
これを辿って移動する
2019/04/26(金) 07:50:11.70ID:b2J1gzII
取り敢えず、画面にライバルの車を
描画する所まで出来た
骨組みは出来たので、肉付けして行く
2019/04/26(金) 22:14:27.71ID:b2J1gzII
ライバル車のX,Z座標の移動と回転できた
まだスタートラインに停車していて走れない
2019/04/28(日) 06:52:23.71ID:/9rJrNEX
ライバル車がイベント・マーカーを
辿ってコースを周回する様になった

イベントの座標を得るコマンドで
イベント番号を変数で指定出来ないので
マップのローディング時にマップを舐めて
配列に座標を突っ込んで置く様にした
2019/04/29(月) 01:55:34.70ID:YI6DKQAh
ライバル車の方向転換と加減速が出来た

次のマーカーの方へ向きを変えながら
アクセルを吹かす
向きを変えたらブレーキを効かせる
2019/04/29(月) 07:53:22.27ID:YI6DKQAh
ライバル車の壁と自車との当たり判定を作った
これで車が普通にコースを走る所までは出来た
2019/05/01(水) 05:08:51.68ID:zeCps8os
路肩と荒地のギミックを実装した

コース上のこれらを踏むと効果が出る
何方もチリチリ音を出しながら減速して行く
速度が遅いと音の鳴る頻度が低くなる

「路肩の減速」
自車の速度 = 自車の速度 * 95 / 100

徐々に減速して停車する
アクセルを吹かしているなら加速が遅くなる

「荒地の減速」
自車の速度 = 自車の速度 * (100 - 2 * アクセル加速度) / 100

アクセル加速度が10なら自車の速度が
80%の80%の80%の……となって減速して行く
アクセルを吹かしているなら一定の速度で減速が止まる
2019/05/01(水) 09:36:41.96ID:zeCps8os
路肩のギミックを変更した
路肩を踏むとHPにダメージが入り
HPが減ると速度が落ちる様にした

ライバル車やコース外に衝突した時も
HPにダメージが入る様にした

HUDのHPとスピード・メーターも実装した
2019/05/07(火) 16:23:45.61ID:6+PD1T/n
ピットインのギミックを実装した

ピット・エリアの上に乗ると
RPGのセーブポイントの様な
エフェクトが出て、HPが回復する
透過率50%のアニメ画像でサンドイッチする
579某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/05/08(水) 11:06:20.51ID:BsHq90s1
F-2003の自車の爆発を実装した

ダメージでHPが0になったら
自車の代わりに爆炎を描画して
キー入力や移動などの処理をスキップする

コースアウトしたらHPを0にする
2019/05/11(土) 12:05:42.61ID:nR0/TpBu
ゴールのギミックを実装した

コース上に順周りでゴール、ポイントA、B
のイベントの帯を配置して
自車が踏むとイベント処理が呼ばれる
下記の処理で逆走せずにゴールしたか
チェックが出来る

「ポイントA」
・フラグBがoff なら フラグA=on
・フラグBがon & フラグAがon なら フラグB=off

「ポイントB」
・フラグB=on

「ゴール」
・フラグAがoff & フラグBがoff なら スタート
・フラグAがon & フラグBがon なら ゴール
・それ以外ならコースを逆走と判定
・フラグA=off、フラグB=off
581某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/05/12(日) 13:06:53.77ID:4L9OTjw7
「スペースSSS」RPGツクール2003 進捗動画 #011
サブ・ゲームの白兵戦FPSです。
基本要素は揃ったので、あとはボスとレベル・デザインです。

https://www.youtube.com/watch?v=5VhHuyQ_SMg&;list=PLA7OQaUQq9PqfTQaaNG3mHbo1F3hChKA0&index=11
2019/05/12(日) 16:52:03.92ID:4L9OTjw7
F-2003のニトロのギミックを実装した

ニトロを使うと一時的に高加速して
最高速度が倍になる
荒地やHPの速度制限も受け無くなる
コースを1周する毎に1つ手に入る
2019/05/13(月) 16:44:14.50ID:hjykxNuS
FPSのブリーフィング画面の
メッセージを分かり易くした
出撃準備が出来たら「Go!」と表示する

敵戦車の攻撃がアイテムに
衝突すると消えるのを修正
地形の定数や判定のリファクタリングで
修整漏れが有った
2019/05/14(火) 20:41:13.59ID:DzFCq9af
F-2003のスリップ地帯のギミックを実装した
氷床の様に滑って
ステアリングを切るとドリフトする

氷床を踏んだら、現在のX,Z速度を
保存して置いて、フラグをonにする
自車の移動処理で、フラグがonなら
現在の速度を保存していた速度で
上書きし続ける
氷床から抜けたら、フラグをoffにする
2019/05/16(木) 00:13:13.51ID:SHhJLXU3
F-2003のブースターの描画だけ作った

踏むと前方に高加速する
正面左右 -45 度から +45 度分だけ
スプライト・シートを用意した

スプライト番号の計算式
番号 = ((自車の向き + 40) % 90 / 5 - 18) * -1
2019/05/28(火) 03:36:36.09ID:0tGvNuS1
暫く Frostpunk にハマってたけど
落ち着いたので、今日から再開する
取り敢えず進捗
587某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/05/28(火) 03:52:08.83ID:0tGvNuS1
F-2003のブースターの効果を作った
90度単位で進入時の自車の向きに
200%の速度へと加速する

・ブースターを踏んだ時に
VXかVZへ200%を入れて置く
・自車の移動処理で速度ベクトルを
普通に計算した後、VX,VZが0以外だったら
速度ベクトルに上書きする

これでブースト方向に倍速移動しつつ
自車の方向にも移動する
但し200%は越えない様になる
2019/06/02(日) 03:37:35.72ID:QJ9HPpUZ
F-2003のジャンプ台の描画だけ作った
ブースターとデータを共用して
スプライト番号だけ変える様にした
2019/06/03(月) 07:11:40.07ID:x4L7Jlr5
F-2003のジャンプ台の効果を作った
踏むと加速しながらジャンプする

ジャンプ中にカーソル上で
低ジャンプ&高加速
カーソル下で
高ジャンプ&低加速

ジャンプ台を踏んだら
・自車のY速度をMax
・ジャンプ中フラグをOn
ジャンプ中は
・Y加速度にカーソル上下の補正
・Y速度 -= Y加速度
・Y座標 += Y速度
Y座標 <= 0 なら
・Y座標 = 0
・ジャンプ中フラグをOff

ジャンプ中はコースのギミック等の
当たり判定をOffにして
着地時にコース外なら
当たり判定の処理で爆発する事になる
2019/06/12(水) 13:45:07.37ID:YfSAD1mS
スタート用信号機を作った
赤→黄→緑でカウントダウンする

(赤)( )( )( )( )
 ↓
(黄)(黄)( )( )( )
 ↓
(黄)(黄)(黄)( )( )
 ↓
(黄)(黄)(黄)(黄)( )
 ↓
(緑)(緑)(緑)(緑)(緑)

横長の信号機を順番に
スプライト・アニメさせて
各車スタートしたらフェード・アウトで消す
赤の状態で始めて、117時報のタイミングで
黄から緑に変える

フレーム数とカウント・ダウン数に別けて
フレーム数が1秒進む毎に、カウント数を減らす
カウント数には、カウントが始まる前や
フェード・アウト中/後の状態の意味も持たせた
2019/06/16(日) 14:50:33.81ID:oKyBFrDT
ラップ・タイムとニトロ用の画像を作った

タイムは計測中、確定、記録更新の
3色を用意した
ニトロは使用済みの黒塗りと
未使用の緑の2色の「N」にした
2019/06/17(月) 08:53:26.11ID:PkQPEIik
スタート前は自車・他車共に
移動できない様にした

ニトロの残数表示も作った

1. i で0から最大描画数 - 1までループ
2. i < 残数 なら色付きで描画
3. それ以外なら黒塗りで描画
4. ループ終端
2019/06/19(水) 16:44:30.24ID:JL+30X1/
タイムの更新と描画の処理を作った

予め100秒間の平均フレーム数を測って置いて
現在のフレーム数から秒数に変換するのに使う

この値は一度リリースしたら変えない様にする
ゲーム内時間で記録を測ら無いと
不公平になって仕舞うので
環境によって1秒の長さが微妙に変わるけど
気にしないで置く

記録更新したら色を変えて描画する

ゴールを踏んだら
・1つ前のラップ・タイム = ラップ・タイム
・ラップ・タイム = 0
・1つ前のラップ < 今回の最速ラップ なら
  今回の最速ラップ = 1つ前のラップ

フィニッシュしたら
・ラップ = 今回の最速ラップ
・ラップと合計タイムのカウントを止める
2019/06/20(木) 16:43:40.63ID:lS3NB87c
スタート・ダッシュの裏技を仕込んだ

信号機が緑になる1つ前に
タイミング良くアクセル・ボタンを押し続けると
スタート直後に急加速できる

「キー入力処理」
・アクセル・キー == On
 &1f 前のアクセル・キー == Off
 &信号機のカウント == 1
 &信号機のカウント2 == 2 なら
  ダッシュ・フラグ = On
・信号機のカウント2 = 信号機のカウント
・アクセル・キー == Off なら
  ダッシュ・フラグ = Off
・ダッシュ・フラグ == On
  ダッシュ速度 += 加速度
・ダッシュ・フラグ == On
 &信号機のカウント == 0 なら
  ダッシュ・フラグ = Off
  自車の速度 = ダッシュ速度
595某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/06/20(木) 17:17:50.15ID:lS3NB87c
これで F-2003 は大体できたから
全サブ・ゲームのシステムの目鼻が付いた
後はマップとボスとシナリオを肉付けして行く
2019/06/21(金) 17:27:28.92ID:Rwzq32HJ
F-2003のコースの描画を最適化した

全てのタイルの座標を
一つずつ回転するのを止めて
四隅の座標だけ回転して
他は四隅からの相対座標で計算する様にした

大分軽くなったし何故最初からそうしなかった?
になったけど、「早すぎる最適化」を避けて
最後にやるつもりでいたので問題無い
2019/06/28(金) 15:36:34.98ID:j1m1kmFm
見てるよ!がんばって
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況