X



一人で完成まで頑張るの寂しいからかまって [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
0001名前は開発中のものです。
垢版 |
2017/03/08(水) 22:06:31.71ID:OX0NO28I
・ウディタ製
・RPG
・ぼくがたのしいとおもったしすてむ
・ぼくがたのしいとおもったばらんす
・基本システム流用できるところは流用して楽していく
・エタらないように頑張る
0066某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/05(火) 09:07:32.95ID:npL2k4Vs
取り敢えず適当に描画していた虚数空間の敵の座標を真面目に計算させた
虚数空間のサブゲームはこんな感じ
https://www.youtube.com/watch?v=JLrkddYZUBM

まずタイル状の地面のY座標の求め方
地面のY座標 = (自機のY座標 + 画面のY半径) / 4 + 画面中央のY + 地面の画像サイズの半分
こうすると自機が下降すると地面スレスレを飛んで空が開ける
逆に上昇すると地面が広がって俯瞰視点になる

で、敵を描画するY座標の計算式
敵の描画Y座標 = (敵のY座標 - 自機のY座標) / 敵のZ座標 + 地面のY座標 - 地面のサイズの半分
「(敵のY座標 - 自機のY座標)」で自機視点からの相対座標にして
「/ 敵のZ座標」で一点透視図法にする
これに先程の「+ 地面のY座標」を加えて地面の動きと連動させる
「- 地面のサイズの半分」地面のY座標の中心は要らないので引いとく
(ツクール200Xではピクチャの描画座標は画像の中心の位置を指定する為)

解説いらない子はスルーして
0067名前は開発中のものです。
垢版 |
2018/06/05(火) 10:37:07.85ID:npL2k4Vs
虚空の敵Aはこれで一旦いいとして
敵Bの編隊出現イベント作った
虚空の敵は皆、編隊を組んで襲って来る

敵Aは自機の後ろから追い抜いて前方へ直進する
敵Bは前方から螺旋状に公転しながら手前に向かって来る
0068某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/05(火) 11:49:06.87ID:npL2k4Vs
敵Bを取り敢えず直進させた
編隊の間隔を敵Aより広めに取ってみた
休憩したら螺旋運動させる
0069某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/05(火) 11:52:59.04ID:npL2k4Vs
タイトル言って無かったな「スペースSSS」
SSSSって略すとアニメ版グリッドマンと、かぶるんで困ったな
0070某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/05(火) 14:41:41.60ID:npL2k4Vs
敵Bを公転させた
敵データに重心のX,Yと角度を追加して、敵Aの移動処理をコピペ
X,Y座標でなくて重心のCX,CYを敵AのX,Yと同じ様に動かした後
X = cos(角度) * 半径 + CX
Y = sin(角度) * 半径 + CY
で間接的にX,Y座標を求める厨一レベル
0072名前は開発中のものです。
垢版 |
2018/06/05(火) 23:59:11.90ID:3CN8SDup
HP見てきた!L&Lいいね!好みのゲームだし休みになったらやってみようかな。
Advancedとか「マークした」とか、言葉の端々からD&D感を醸し出してるw

RPGMakerって使ったことないけど、スペースハリアーみたいなの作れるのですね。
びっくりだ応援する!
0073某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/06(水) 05:42:02.90ID:VYrqZy4I
>>72
早速スレタイ回収したw
L&Lは完成してるのでプレイするよろし
隙を見てAL&Lの方も進捗出したい

RPGMaker2003(Steam版RPGツクール2003)で作ってるけど
完成したらUE4に移植してVRで3D酔いしてもらうぞ!覚悟するべし
0075某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/06(水) 09:13:54.42ID:VYrqZy4I
敵C出来た

地上を滑走して接近 → ジャンプ → 上空を滑空して後退 → 降下 → …

を繰り返す
編隊データに接近/後退の目標座標を交互に入れて置いて
敵座標が目標座標を越えたら、編隊データへのインデックスをインクリメントする

X += (目標X - X) / 16
Y += (目標Y - Y) / 8
Z += (目標Z - 始点Z) / 移動フレーム数

で移動する
移動フレーム数は、始点から目標地点までの移動にかかるフレーム数
接近時の目標Yに地面の高さ、後退時に空の高さを入れて置く事で
接近 → 後退の切り替え直後に、ジャンプした様な動きになる
0078某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/06(水) 12:31:12.13ID:VYrqZy4I
敵D出来た
UFOみたく画面上をランダムにジグザグ移動する
編隊の目標座標をランダムに設定して
敵Dが目標の近くに着いたら、編隊の番号を+1するだけ

目標Z = 乱数(1.0〜5.0)
目標X = 乱数(-160〜160) * Z
目標Y = 乱数(-120〜120) * Z

目標座標の初期値はZを先にランダムに決めて
X,Yに画面の幅と高さの乱数を入れてから、Zを掛けると
Z(奥行き)がいくつでも、X,Yが視界の範囲内に収まる

X += (目標X - X) / 8
Y += (目標Y - Y) / 8
Z += (目標Z - Z) / 8

この式で動かすと、縦シューのヘリコプターっぽい動きになる
0079名前は開発中のものです。
垢版 |
2018/06/06(水) 12:36:57.32ID:VYrqZy4I
目標Y = 乱数(-120〜0) * Z

目標Yは地面にめり込んでたら、サイコロを上記で振り直す
あと座標は全て100の下駄を履かせて、固定小数点にしてる
0081某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/06(水) 21:04:55.53ID:VYrqZy4I
ネタ出しで見るゲしてたら
敵のアイデアは出て来なかったけど、代わりに
地形の岩山をロックオンして撃つと、鉱物資源を回収できる
ってのが降りて来た
資源でミサイルとか燃料とか生産できる自給自足
0082某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/07(木) 14:59:17.27ID:D9AfjwHV
起きたし食ったしネットしたし、今日もやっていくかな
0083某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/07(木) 17:19:57.84ID:D9AfjwHV
地表面の敵の横一列(アブレスト)編隊の遭遇処理を実装した
画面上の見た目の中心座標をランダムに決めて
そこが中心になる様に横一列にポンポン配置して行く
Z座標を決めたら見た目のX,Yに掛け算して実際のX,Yに変換する

SX, SY : スクリーン上の見た目の座標
Z = MaxZ
X = SX * Z
Y = SY * Z
0084某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/07(木) 20:38:43.39ID:D9AfjwHV
敵の座標を初期化して取り敢えず画面に出す所まで出来た
まだ1機しか表示できないバグが取れて無いけど
風邪ひいて辛いので今日はここまでにしとく
0086某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 09:05:52.44ID:7g39NsLX
敵編隊が1機しか現れないバグ一瞬で直った
「一晩寝ると直るバグ」ってやつだな
0087某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 10:44:50.58ID:7g39NsLX
地表面の敵のライフ・サイクルを実装した

編隊生成
 ↓
一定時間ホバリング
 ↓
移動
 ↓
画面外に出たら削除
0089某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 14:23:57.05ID:7g39NsLX
地表面の敵を取り敢えず適当に描画してたのを修整
画面の回転に合わせて描画座標も回転させた

それと編隊の内1機だけ誘爆する敵を混ぜた
撃墜すると画面上の敵が全滅する様に後で実装する
0090某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 17:22:09.50ID:7g39NsLX
V字編隊作った

  3
 2 4
1   5

こう言う感じで
1) 3の座標と機体間隔(dx, dy)をランダムに決める
2) 3とdx, dyから1の座標(x, y)を求める
3) 1〜5までループ
4) x, yに敵を配置
5) x += dx
6) 3までは y -= dy
7) 4以降は y += dy
8) ループ終端
0091某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 19:21:17.30ID:7g39NsLX
菱形編隊できた

 1   5
3 4 7 8
 2   6

敵を4機毎のグループで生成する
1) 1〜8までループ
2) 中心の座標(x, y)と機体間隔(dx, dy)をランダムに決める
3) カウンタが編隊数になったらループ終了
4) 座標x, y - dyに配置(1, 5)
5) カウンタが編隊数になったらループ終了
6) 座標x, y + dyに配置(2, 6)
7) カウンタが編隊数になったらループ終了
8) 座標x - dx, yに配置(3, 7)
9) カウンタが編隊数になったらループ終了
10) 座標x + dx, yに配置(4, 8)
11) ループ終端
0093某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/08(金) 19:46:44.01ID:7g39NsLX
>>90-91
テスト
0094名前は開発中のものです。
垢版 |
2018/06/09(土) 16:40:39.21ID:Z4jniHuy
L&Lやってみた。
Rogueのランダムダンジョンに、NeverWinterNightsの操作を加えたような感じですね。

自分も似たようなゲームを作ろうと思ったことだけあります。
(メインキャラ1人+サポート5人で、メインを操作しつつサポートに指示を出す感じ)
メインで作ってるWIZ風RPGと丸被りなので、着手までは至りませんでしたがw

>>90
V字の先端を、1番機にしたほうがいいんじゃね?
0095某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/10(日) 02:36:38.11ID:NmRYb6GQ
http://lnl.osdn.jp/images/Space-SSS/SS/sss-2018-06-10-002.png
V字編隊の出現直後のSS

>>94
> L&Lやってみた。
ありがとう

> Rogueのランダムダンジョンに、NeverWinterNightsの操作を加えたような感じですね。
NeverWinterNightsはやった事あるけど
実を言うとL&Lは初代トルネコの大冒険の発売より前から
作ってたのでそう言ったRPGのパクリでも無いんだけどね
ネタが降りて来てから完成まで20年かかったと言う
よくエタらなかったもんだ

> メインで作ってるWIZ風RPGと丸被りなので、着手までは至りませんでしたがw
制作がんばれー

> V字の先端を、1番機にしたほうがいいんじゃね?
フレーバー要素としてはそれも良いかも試練けど
見た目上滅多にスプライト重なら無いし意味ないかなと
1番機を誘爆にすると真ん中だけ狙ってれば良い事になるし

月曜日は病院行くので、今日は飯食ったら作業する
0097某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/10(日) 08:29:27.51ID:NmRYb6GQ
地表面の海賊のテクスチャのコントラストを全部上げた
元の色やたら暗い
0098某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/10(日) 18:03:49.85ID:NmRYb6GQ
海賊四種の回転画像を生成した
Blender上で、回転した時に、はみ出ないギリギリのサイズに調整した後
GIMP用の自作スクリプトで自動回転させた
0099某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/12(火) 13:38:59.93ID:4quDurys
海賊のスプライトを回転描画できる様にした

360度 / 5度 = 72枚

で72パターンに回転させた画像を列べたピクチャを用意して置いて
スプライト・シートの番号を指定するだけ
0100某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/12(火) 19:01:00.48ID:4quDurys
自機の後方から襲って来る海賊のx, y方向の移動を作った
ケツに食らい付いて来るので振り払う

vx += sgn(自機x - 敵x) * v
敵x += vx

x方向は等加速度運動で、常に自機の方向へ加速し続ける
(最大速度で制限する)

vy += (自機y - 敵y) / n
敵y += vy

y方向は前レスのヘリ移動
0101某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/12(火) 19:40:48.80ID:4quDurys
vxは常に自機の方向へ加速するので
自機の後ろへ突っ込む → 通り過ぎて減速 → 反対から再び突っ込む
を繰り返す
0102某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/12(火) 20:59:17.45ID:4quDurys
>100
vy += (自機y - 敵y) / n
じゃなくて↓だった
vy = (自機y - 敵y) / n
0103名前は開発中のものです。
垢版 |
2018/06/12(火) 21:47:09.33ID:8jE+wr4K
>>101
自機の後ろに食らいつくっつーか
自機を中心に振り子運動してんじゃねーか!!
(とりあえずツッコミ)
0104某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/13(水) 12:25:17.63ID:4Q3KlVDr
>>103
最大速度で制限する、のとy方向の機動、画面の動きと
プレイヤーが振りほどこうとする動作が絡み合うので
単純な振り子じゃ無くて、複雑なケツの取り合いが楽しめるぞ!!
(ツッコミ上等)
0105某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/13(水) 16:14:50.52ID:4Q3KlVDr
惑星の画像とかモデルとかのフリー素材
片っ端からダウンして加工してるけど
テクスチャ貼って無いのとか
Blenderで読み込めないのが有って
没にするのが勿体ない

太陽系含めて恒星系4つ分くらいの世界観なので
もっと物量的にジャンジャン必要
0106某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/13(水) 18:34:55.64ID:4Q3KlVDr
土星に輪っかがついて無いとか
何がしたいの?って思いました
0107某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/13(水) 20:58:55.87ID:4Q3KlVDr
取り敢えず4機分のピクチャを用意してたけど
その内の一つが後方から迫る敵になったので
後ろをこちらに向けた画像に差し替えて置いた

大気圏内の海賊は翼が有って平べったいモデルを
優先的に割り振った
0108名前は開発中のものです。
垢版 |
2018/06/14(木) 07:55:48.73ID:mEBK+H1i
なんや
0109某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/14(木) 10:15:52.64ID:CHNuIcRI
後方から来る海賊Cの速度の処理が出来た

敵vz = (自機z - 敵z) / 4
敵z += vz

で低速だと自機の直ぐ後ろに付き
高速だと少し離れる感じになる

zが100未満の場合、仮のz = 100
見た目のx = x / 仮のz

zが100以下で自機より手前にいる場合
見た目のx, yが極端に大きくなり過ぎるので
この敵だけ、zを100で計算する様にした
0110某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/14(木) 10:29:16.51ID:CHNuIcRI
海賊Cに背後を取られたら、下記の手順で倒せる

最高速度に上げて、海賊に速度制限を発生させる
 ↓
最低速度に下げる
 ↓
海賊Cが前方に出る
 ↓
今度は自機が背後を取って攻撃する

処理の手順
・海賊Cの出現時に速度制限フラグをOFFにする
・自機が最高速度になったらフラグをONにする
・海賊Cの移動処理でフラグがONなら
最低速度を制限して、それより下がら無い様にする
0111某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/14(木) 10:53:09.55ID:CHNuIcRI
>>109
zが100未満でも、敵のピクチャの拡大率は
普通に計算するので、距離感はつかめる
0112某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/14(木) 21:03:07.53ID:CHNuIcRI
ビル街の敵の車両をレンダリングした
1両目は出来たけど、2両目はテクスチャが貼られて無くてダメ
3両目はパーツがバラバラで、グループ化しても
何故かパーツ単位でしか回転出来なくてダメ
移動はグループ単位で出来るのにわけ分からん

車系のモデルはやたらハイポリで
レンダリングするだけで30分以上かかったりする

あとBlenderはほんとクソ
作った奴は神UIだと思ったシリーズ
0114某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/18(月) 17:04:43.84ID:3+6QeKFi
地表面の自機の影を描画できる様にした

x = 自機のx
y = 画面の下端に固定

影の座標を入れて透視変換して描画する
メッシュのフラグをOnにすると影がメッシュになる
0115某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/18(月) 18:52:26.45ID:3+6QeKFi
敵の影も実装した
0116某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/19(火) 16:36:05.89ID:XbOiCX65
ビル街の車のベースになるイベント組んだ
この上に個別のアクションを乗せる

ここ迄は単純作業なのでモチベ関係なく出来る
これに一寸足すだけで形になって行くので
気楽に手を付けて、そのままやって行ける
(モチベ管理)
0117某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/19(火) 20:32:18.46ID:XbOiCX65
取り敢えず、車を生成して動かして
画面に何か描画する所まで出来た
動作が確認出来たので、ここから修整を加えて行く
風呂入ったし飯でも食う
0118某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/19(火) 23:40:50.77ID:XbOiCX65
車を道路に沿って移動させて、正しく描画する所まで出来た
調整に手間取った

ラスター番号 = 道路のheight / 車のz
x = ラスターのx[ラスター番号] + (車のx / 車のz)
y = ラスターのy[ラスター番号] + (車のy / 車のz)

道路のheightをzで割って、道路のラスター番号に変換して
ラスター・スクロールするのに使ってるx, y座標を得て
そこからの相対座標を車の座標とすると
車の内部座標を直進させるだけで
道路のカーブに沿って移動させる事が出来る
0119某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/20(水) 00:29:25.87ID:Ot+4fqOS
おい!おまいら!俺を放ったらかしか?
スレタイをもう一度よく思い出して欲しい
寂しくて氏んじゃうだろ!
0120名前は開発中のものです。
垢版 |
2018/06/20(水) 01:47:01.58ID:LR3N5bUZ
だって忙しいんだもん(俺が)w

>>80の動画、海の部分はモコモコしてないほうがいいんじゃないか?
0121某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/20(水) 02:09:51.37ID:Ot+4fqOS
>>120
忙しいのか、それはすまんかった

地形に応じて微妙に高低差が有っても良いかも試練な
海・川を少し低くして、森・岩は高めにするとか
処理が重く無い様なら組み込んでみるとするか
0122某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/20(水) 18:46:17.46ID:Ot+4fqOS
車の画像に抜き色のノイズが出ていたので取り除いた
カクつきが生じていたので
フレーム・スキップのwait配分を調整した
0123某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/20(水) 19:00:11.61ID:Ot+4fqOS
https://www.youtube.com/watch?v=cuSppnWkgHs

ビル街のサブ・ゲームはこんな感じ
この動画ではもっさりしてるけど
今は最適化してあるので倍速くらいでヌルヌル動く
0124某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/20(水) 20:01:14.12ID:Ot+4fqOS
車の出現間隔を設定できる様にした

車間距離 = 道路の長さ / 車の数
minZ = min(車のz)
maxZ = max(車のz)

1. 「道路の長さ」(車が動く範囲)を
出現させたい「車の数」で割って「車間距離」とする
2. 車の最前「minZ」と最後尾「maxZ」をカウントして置く
3. 「minZ」と「maxZ」が両方とも「車間距離」以上の距離に
なっていたら、車を出現させる

道路の範囲から車のz座標が、はみ出たら
反対端に移動する(先端 <-> 末端)
0125某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/21(木) 05:06:34.75ID:1u/001Ay
敵の車B作った
一定フレーム毎に、直進するのと
自機に向かってx軸移動するのを繰り返す

f = (アニメ用フレーム + 車のインデックス * 3) % 24
f < 12 なら直進、それ以外ならx軸移動
車のインデックスは最大で8

アニメさせる時に使うフレーム・カウンタに
車のインデックスを加えて、固有のタイミングを作る
車のデータにフレーム・カウンタ入れても良いけど
なるべくデータを少なくしたいので計算で求める事にした
0126某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/21(木) 20:40:14.29ID:1u/001Ay
敵の車C作った
珍走団よろしく蛇行運転する

速度vx += 符号sign(-座標x) * 加速度avx
座標x += 速度vx

重心に向かって加速するsinカーブだな
0127某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/23(土) 21:45:53.38ID:jFD72F5j
各サブ・ゲーム用のダメージと爆風の画像を作った

海賊    :恒星系、地表面:オレンジ
軍隊    :白兵戦    : 〃
バイドロイド:恒星間通路  :グリーン
電磁甲殻体 :虚数空間   :ブルー

こんな感じで色分けした
0128某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/24(日) 08:56:45.59ID:PqCFaYvH
通路の敵のダメージ表示/爆発を作った

アニメ・カウンタ = フレーム・カウンタ / フレーム長
フレーム・カウンタ += 1

アニメ・カウンタ <= アニメ最大数
ならアニメ・カウンタ番目のアニメを描画
アニメ・カウンタ > アニメ最大数
ならオブジェクトを削除

アニメ・カウンタで、アニメが何コマ目か計算
フレーム・カウンタで、アニメ開始時からのフレームを数える
フレーム長で、アニメの1コマの長さを指定
アニメ最大数で、アニメの終了を判定

先に自弾x敵の当たり判定を作らないと
きちんと動くか確かめられ無い
0129某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/24(日) 10:42:29.54ID:PqCFaYvH
ダメージ表示は、生成時に
毎回アニメ・カウンタを0で初期化すると
連続的に攻撃を与えた時に
1コマ目だけが連続で描画され続けてしまうので
初期化しない方が良い(多分)

爆発の方は、同じ敵に対してあまり連続で発生しないし
1コマ目からアニメが始まら無いとおかしいので
逆に初期化が要る(きっとそう)

早く試したい
0130某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/24(日) 10:58:17.98ID:PqCFaYvH
>>129
違うな
生成直後に、アニメ・カウンタが
アニメ最大数になったら、いきなり終わってしまう

これとは別にグローバルな方の
アニメ・カウンタが有るので
それと足し合わせれば、必ずアニメしてくれるな
実際に試さずにレスすると、仕様もない
0131某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/24(日) 11:12:15.58ID:PqCFaYvH
>>130
足したら二倍速再生されてまう
グローバルなカウンタを初期値として入れれば良いかな
机上の空論もういいや止めとこう
0132某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/25(月) 03:12:09.63ID:p3jSt/DV
自レーザーx敵の当たり判定を作った
撃った瞬間、自機の正面付近にいる敵にダメージ
レーザーのグレードによって、判定サイズが変わる

>>129
ダメージの描画は↓の様に使い分ける事で実装した
・アニメの終了判定に、フレーム・カウンタ
・アニメが何コマ目かには、グローバルなアニメ・カウンタ
0133某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/26(火) 00:43:21.05ID:vYGGuCdo
「自ビーム x 敵」の当たり判定を作った
ビームは生成順に配列に入れる事で
遠いものから近いものまで、距離順に列ぶので
z座標の二分探索で当たり判定を高速化できる

1) 敵の配列でループ
2) 敵がビームの先端と末端の外側なら 6) へ行く
3) 敵に一番近いビームを二分探索で探す
4) 敵とビームの座標で当たり判定
5) 当たっていたら敵にダメージを与える
6) 配列を次の敵に進めて 2) へ行く
0134某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/26(火) 02:07:15.90ID:vYGGuCdo
ビームだのレーザーだの言っても知らんわだろうから解説

https://www.youtube.com/watch?v=kc4qrNfTe1A

メイン武装にはビーム、レーザー、プラズマの三種類が有り
それぞれ三段階のグレードに分かれる
ビーム :標準武装。タップ撃ちすると遠方へ届く。偏差撃ちが必要
レーザー:エイムさえ合えば撃った瞬間に当たる。DPSがビームの1/2
プラズマ:チャージ武器。溜めてから撃つとダメージ大。連射するとダメージ小
0135某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/26(火) 06:00:11.63ID:vYGGuCdo
ビームの処理を微妙に最適化後コピペして
「自プラズマ x 敵」の当たり判定を作った

ビーム大量に撃てても仕様がないので
減らして、タップ撃ち要素を増した
0136名前は開発中のものです。
垢版 |
2018/06/26(火) 11:32:09.73ID:C46YWV+M
動画見た。
ツクールでよくここまで動かすなw

ちょっと狭苦しい感が気になる。
コンパネが場所を取ってるからなのか
ビームがでかすぎるからなのか
0139名前は開発中のものです。
垢版 |
2018/06/26(火) 23:40:10.22ID:SAZQHcc/
スターラスターって初めて見たけど、ものすごくスタートレック(レトロゲーのほう)だなw
(さすがにやったことは無いけど)

上げてくれた動画を見て、未来のコクピットって、ガラス越しに外を見る(下方が死角になる)んじゃなくて、
ヘッドマウントディスプレイ越しに360度見える(自分の体すら死角にならない)のが、正しい将来像なんじゃないかと妄想した。
(コンパネもといインパネは当然HUD。まぁ、どっかに既出な妄想なんだろうけど)
0140某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/27(水) 00:47:54.25ID:VMS+XY8G
>>139
昔のマイコンでBASICと言えば、みんな大好きスタートレック

全方位モニタとか網膜投影HUDは
エルガイム、Zガンダム、マシーネンクリーガー辺りから始まって
縦横シューティングとかで、一時全盛期が有ったし
その妄想はだいたい合ってる

今は一部の同人で、三人称視点+青白いHUDが流行ってたりするけど
SSSSは時代に逆行するレトロ雰囲気
パネルの計器は全部ゲームと連動させる予定
0141某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/27(水) 03:47:02.56ID:VMS+XY8G
ワープの星の光跡を毎フレーム全て描画していたのを
差分だけにした
特に目に見えて高速化はされ無かった

デバッグするサブ・ゲームを
ゲーム開始時にメニューで選択できる様にした

ゲーム中にテンキーの「/ キー」で
メイン・メニューを出せる様にした
「Shift + Z + X」の同時押しで同様の機能だけど
上手く認識してくれない
Nキーロールオーバーで無い、安いキーボードだからだろうか?
0142某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/27(水) 08:47:00.68ID:VMS+XY8G
度々変更になるけど現時点でのキー割り当て

←→↑↓    :移動
X       :メイン射撃
Z       :サブ・アイテム
Shift + X + ←→:メイン切り替え
Shift + Z + ←→:サブ切り替え
Shift + ↑↓  :加速/減速
Shift + ←→  :メニュー
Shift + X + Z :メニュー(キーボードによっては不可)
「/」     :メニュー
「-」「+」   :加速/減速

ツクールでは色々制限が多いのでこれが限界
0143某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/27(水) 21:25:31.14ID:VMS+XY8G
サブ・ゲーム選択メニューに、デフォルトの項目を追加した
2003だと選択肢が4つ(キャンセル入れると5つ)しかないので
階層メニューになって面倒なので、空いてる所に入れた
0144某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/28(木) 07:49:04.04ID:DOPeeB4A
キー入力周りをリファクタリングした
Shiftとかの組み合わせでキーのフラグを立てる階層と
立っているフラグを見て各処理を呼ぶ階層の二段構えにした
0145名前は開発中のものです。
垢版 |
2018/06/28(木) 19:50:36.50ID:33NHoakT
>>140
マイコンとBASICが並んでると、昔懐かしベーマガを思い出すなw

>SSSSは時代に逆行するレトロ雰囲気
なるほど理解した!いいね!
0146某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/28(木) 23:00:24.17ID:DOPeeB4A
>>145
ベーマガに投稿したかったけど
当時は作り散らかすだけで
一本も完成させられなかった思い出

レトロでも何でもオッサンは
生まれ育った場所に戻って来てしまう
という動物の本能(シャケとかと一緒
0147某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/29(金) 00:16:15.17ID:XHICieHZ
自機の光跡の画像作った
ノズルの光ってる部分をコピペで抽出しただけ
0148某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/29(金) 04:38:58.02ID:XHICieHZ
自機の光跡の描画できた
リング・バッファで自機の過去の座標を記録して置いて
透明度の変化でフェード・アウトさせながら
光跡の画像を描画する

ツインビーの分身と同じ
自機が動いている時だけリング・バッファに
自機の座標を追加して行くと
グラディウスのオプションになる

ただそのままだと自機の動きが速くて
画像同士の間が空いてスカスカになるので
補完する必要が有る

1) n を 1 から補完数までループ
2) 光跡のx = 自機のx + (自機のx - 1つ前の自機のx) * n / 補完数
3) 光跡のy = 自機のy + (自機のy - 1つ前の自機のy) * n / 補完数
4) 光跡のx, yをリング・バッファに登録
5) ループ末尾
0149名前は開発中のものです。
垢版 |
2018/06/29(金) 05:21:14.53ID:XHICieHZ
>>148
間違った修正

2) 光跡のx = 1つ前の自機のx + (自機のx - 1つ前の自機のx) * n / 補完数
3) 光跡のy = 1つ前の自機のy + (自機のy - 1つ前の自機のy) * n / 補完数
0150某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/29(金) 05:26:42.16ID:XHICieHZ
説明のために省いたり構成を変えると
文章にバグが紛れ込むと言う
0152某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/29(金) 06:58:24.85ID:XHICieHZ
光跡の画像を少し厚み出して
リング・バッファのサイズを半分に減らした
0153某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/06/30(土) 02:31:09.51ID:ik0Eciyj
虚数空間の方の自機の光跡も出来た
描画座標の計算が違うだけで、通路と大体一緒

自機の向きに合わせて光跡の角度も変える様にしたけど
見た目ほとんど効果無かった
0154某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/02(月) 08:57:53.45ID:SVZotT8s
取り敢えず、虚数空間の自弾レーザーだけ
当たり判定作った

判定上の敵x = 敵x / 敵z
判定上の敵y = 敵y / 敵z
abs(判定上の敵x - 画面上の自機x) <= 当たりwidth かつ
abs(判定上の敵y - 画面上の自機y) <= 当たりheight なら当たり

敵の判定上の座標と、画面上の描画座標は
視点の移動等によって、同じでは無くなって来る

ダメージと爆発のエフェクトがまだ出来てないので
適当にSEを鳴らしてテストしてる
ツクール200Xにはprintfどころか文字列変数すら無いので
しばしば効果音でデバッグしたりする
0155某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/02(月) 09:48:51.26ID:SVZotT8s
ブレードランナーとかエイリアンズみたいに
「ヒコンッ…ヒコンッ…」って動体探知器で
インターラクティブ・デバッグだな
0156某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/02(月) 10:06:49.74ID:SVZotT8s
ビームの当たり判定も出来た
ほぼ星間通路のやつのコピペ
0157某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/02(月) 12:56:01.16ID:SVZotT8s
プラズマの判定もコピペでやった
判定する敵を換えただけ
0159某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/03(火) 06:37:31.87ID:QgczOFAg
>>158
それはSEデバッグの時点でオレもすぐ気づいて
「ダメージ・エフェクトがまだ出来てないので
十分にテスト出来ないから、デバッグと調整は後回しにします」
って言う話と一緒にレスするか迷ったけど
基本的に実際にやり終わった事/出来上がった事しか
レスをしない方針なので、予定の話はしないでいたら
目敏く突っつかれたし、おまいら油断も隙も無いな
後知恵っぽく聞こえちゃうだろw

新人研修で、話の段取りが有るのに
空気読まずに途中で質問したり
伏線を張ってるのに「ここおかしくないですか?」
ってドヤったりして、一人だけ浮き捲った挙句
一週間で肩を叩かれた新人のオレを思い出すし
その時の過ちを今つぐなってる気分だワ

あと実際の座標で当たり判定すると
遠くの敵がスカスカで当てるの難しくなるので
見た目上の大きさでやらないといけなくなりそうだし
どの道テスト出来る段階にならないと
机上の空論なので後回しにする必要が有る

有言実行 = 出来ても無い内からベラベラしゃべる → エターナル
不言実行 = やり終わった事だけを報告する → 完走ランナー
「今日は一つこれを覚えて行って下さいね奥さん」
0160某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/03(火) 07:16:00.13ID:QgczOFAg
サンダーセプター
https://www.youtube.com/watch?v=VoR0f97vWE4

スペースハリアー
https://www.youtube.com/watch?v=JLOf2StF_zY

↑を例に解説すると
どちらも一点透視図法で遠くの物ほど小さく見えるが
サンダーセプターでは、一本道なので画面手前も奥も
キャラクタの動ける座標の範囲は変わらないのに対し
スペースハリアーでは、奥に行くほど
画面の数倍の範囲に広がって行く

なので前者ではzで割る前の実際の座標で
当たり判定できる
後者ではzで割った見た目上の座標で
判定しないと当たり憎い
但し遠くの敵は幅と高さが小さくなるが
自弾の当たり幅はあまり変え無い

自弾◯と近くの敵■の判定ギリギリの位置
◯■

自弾○と遠くの敵「.」の判定ギリギリの位置
○.
0161某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/03(火) 07:19:53.58ID:QgczOFAg
要するにスペハリでは
遠くの物は当たり判定ガバでないと当たらんなる
0162名前は開発中のものです。
垢版 |
2018/07/03(火) 10:33:56.15ID:FJldzOoS
>>159
勝ったなガハハ

実際、デバッグ時は当り判定が緩いほうが楽なのは同意w

スペハリ動画見たけど、自機が撃つ弾って画面座標上でまっすぐ直進(ワールド座標上だと斜めに直進)なんなー、だから154の式になるのね
0163某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/03(火) 11:06:48.67ID:QgczOFAg
>>162
面倒草い奴だなw
見た目直進が実際斜めなのはその通り
理解は早い様だな
この手の作った事あんじゃね?
0164某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/03(火) 11:40:16.55ID:QgczOFAg
虚数空間の敵のダメージ/爆発エフェクト作った
恒星間通路のをコピペして
座標計算は虚数の敵のとチャンポンした
0165名前は開発中のものです。
垢版 |
2018/07/03(火) 16:29:48.30ID:4Naw9x2k
>>163
残念ながら、作ろうと思ったこともないな。
こういうのは、大型筐体のなかで揺すられてナンボだと思ってたので。
0166某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/04(水) 05:29:25.44ID:IIfvhtO/
地表面の自弾当たり判定は
ロックオン操作が前提になるので
先にそれをやる

取り敢えず下準備はしたので
飯食ったらコードで埋めてく
0167某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/04(水) 06:54:36.54ID:IIfvhtO/
地表面の自弾のロックオン出来た
取り敢えず画面の中心に一番近い敵をロックオンして
そこに向けて弾が飛ぶ様にした

ロック可能範囲とかマーカーの描画は
後でHUDを作る時にまとめてやる
0168某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/04(水) 13:05:31.10ID:IIfvhtO/
ロックオンの切り替え出来た
移動キーを左右にコンコン入れると
ロックオンの対象が左右隣りの敵に移って行く

右移動キーが on の場合
1) n = -1
2) minX = 999999
3) 敵の配列でループ
4) x = 現在の配列要素のx
5) (ロック中の敵x < x) かつ (x < minX) なら
  n = 現在の配列の添字
  minX = x
6) ループの末尾
7) (n > -1) なら、その敵をロックオン

ロックオン中の敵よりも右側限定で
一番左側の敵を探して、それを再ロックオンする
これを左移動キーの分も反対向きにやればOK
実際のコードでは、x座標が同じ敵がいた場合は
y座標も同様にチェックする
0169某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/05(木) 17:19:25.04ID:9I0o2AJP
地表面のレーザーの当たり判定作った
ダメージ・エフェクトがまだ出来て無いので
きちんと当たってるか確認でき無い

当たり判定とダメージは、両方揃うまで
お互いにテスト出来ない関係
鶏が先か卵が先か
0170某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/06(金) 15:45:46.68ID:NHCBi4v4
地表面のダメージ/爆発エフェクト出来た
レーザーの当たり判定も、ちゃんと動いてた

レーザーは撃った瞬間に、問答無用で着弾するので
コリジョンもへったくれも無いけど
0171某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/06(金) 17:28:40.45ID:NHCBi4v4
地表面の自弾ビームの当たり判定できた

ロックオンしている敵とだけ判定するので
全敵 X 全ビームの総当たりにならず
計算量が O(N) で処理が軽い

但し、ロック先を切り替えると
直前の敵に向かっていた残りのビームが
全弾外れるけど、仕様と言う事にする
0172某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/08(日) 06:03:46.85ID:LiZywf2l
世界設定で、惑星上や宇宙港ではロックオンが可能
大型艦でもある程度可能なので大艦巨砲主義が成立する
「当たるのであれば、どうと言う事は無い」
0173某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/08(日) 06:23:29.68ID:LiZywf2l
恒星系に大量に漂ってる白い玉が悪さして
コンピュータやネットが制限されるので
旧式の照準装置で船員の技量に頼った戦いになる
0174某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/08(日) 08:46:40.88ID:LiZywf2l
小型艇 < 大型艦 < 巨大要塞 < 小型艇 < ……
の三すくみ

衛星要塞に対抗できる小型戦闘機
そして宇宙モノ…後は分かるな?
おっとこれ以上はディズられてしまうな
0175某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/09(月) 13:17:24.06ID:iJ8NiUeD
>>171
各ビームに敵のイテレータを持たせて置いて
当たり判定する時に、イテレータの値が違う時だけ
イテレータを更新する事で、処理速度を維持したまま
残弾が当たらないのを回避した
0176某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/09(月) 14:14:38.64ID:iJ8NiUeD
ビル街の遠景が左右の端までスクロールしたら
クロスフェードして中心にリセットする様にした

遠景のピクチャを同じ画像で2枚用意して置いて
端に来たら、そこで1枚目の動きを止めて
もう1枚の座標を中心に戻し、透明度を100%にする
後は描画する時に、透明度が0%になるまで
毎フレーム減らして行く
0177某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/09(月) 14:58:16.85ID:iJ8NiUeD
>>176
こうすると遠景の端をループさせた画像を用意しなくても
スクロールのスピード感を保ったまま
自然に無限ループ出来る

遠景のビル街は、写真を加工したもので
ループ画像にするのは面倒なので、この様にした
0178某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/09(月) 15:12:08.87ID:iJ8NiUeD
地表面の「自プラズマ X 敵」の当たり判定できた
ビームのほぼコピペ
0179某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/09(月) 20:48:48.06ID:iJ8NiUeD
イテレータの操作を高速化しようとして上手く行かなかった

データA1
データA2
データA3
データB1
データB2
データB3
データC1
データC2
データC3
インデックス1 = データA1のインデックス
インデックス2 = データA2のインデックス
インデックス3 = データA3のインデックス

こう言う感じで、各インデックスから
ポインタみたいに間接的にデータに
アクセスするのだけど
ループでインデックスにセットするのを止めて
if文のネストでインデックスの個数を
二分探索の場合分けして、代入文を個数分並べたら
高速化できるんじゃないかと考えた
所謂「ループ展開」ってやつで
アセンブラだと、これで速くなるんだけど
ツクール2003ではダメっぽい
多分if文の中身が長いと
一行ずつ解釈してendifを探すので時間がかかる
のかも試練

去年の9月末に生まれて初めてRPGツクールを使い出して
「これアセンブラライクだな」と思ったけど
必ずしもそうでも無い様だな
0180某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/10(火) 20:17:26.31ID:UYLDASMT
恒星系の背景の宇宙の素材を探した
加工したので明日以降、描画できる様にする
0181某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/11(水) 12:19:37.29ID:Xti58K44
恒星系の背景の星々を描画できる様にした
これで宇宙っぽくなった

x,y,z軸の先端の前後左右上下の無限遠に
宇宙の画像を6つ配置して
自機のピッチ/ロールの動きに合わせて
座標を回転させるだけ
画像の回転はロールの時だけで良い
(本当は良くないけど2.5Dゲー的ごまかし)
0182某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/12(木) 21:05:21.61ID:h2eNXfTk
今日の作業だが、現時点でやれる事があまり残って無いし
先送りにしていた恒星系の敵を作って仕舞わないと進まない
他のサブゲームでは、敵が正面か一寸斜め向く程度だけど
宇宙空間だと、きちんと計算しないといけん
で、俺の3D技術はバーチャファイター1辺りで
止っているので、真面目に勉強する必要が有る

と言う訳けで、一旦作業を中断して
暫くセガの黒本を読む事にする
ただそれだと読書感想文になって仕舞うので
世界観の背景設定を小出しにして時間を稼ぐ
0183某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/12(木) 21:07:20.39ID:h2eNXfTk
取り敢えず「ロボを出す」から「ロボを動かす」
まで読んだ

「PDS--Perfect Defending System」
この宇宙の基本的な4つの力の内、重力を除いて
一時的に平行宇宙に枝分かれさせる事で
範囲内の核エネルギーと放射線/放射性物質を
高次元で折り畳まれた宇宙の何処か遠くへ
送り込む、核兵器に対する完全防御システム
0184某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/12(木) 21:41:53.84ID:h2eNXfTk
別にエターなったわけじゃ無いから
勝手に終了宣言とかするんじゃないぞ!
分かったな?
0185名前は開発中のものです。
垢版 |
2018/07/12(木) 23:16:34.04ID:bsIvjpap
何の能力もないゴミ共が頑張ってる奴を必死に蹴落そうとする様は見てて滑稽だな。頑張れ
0186某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/12(木) 23:31:11.06ID:h2eNXfTk
>>185
お、おう 掩護射撃テンキュー
作業してないと落ち着かないので、戦線復帰を急ぐ
寝る前にもう少し読むワ
0187某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/13(金) 00:31:56.65ID:RcGQD3Sa
『「ロボファイト」を作り始める』と『Zバッファ精度問題』
を読んで、14章『立体を描く』が終わった
この調子で頑張る

>>183
枝分かれしていても1/4は繋っているので
一定時間経過後、復元力が働いて元の宇宙に戻る
PDS物理学では、エネルギーは発生元の物質や
条件などによって、固有の「色」が有ると考える
核エネルギー等いくつかの色は特定されているが
特定手順は研究開発した科学者によって
ブラック・ボックスにされている

もうner
0188某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/13(金) 19:53:34.64ID:RcGQD3Sa
「15章ライブラリの作り方」を読んだ

>>187
PDSは、その核エネルギーの色にのみ
効果が発生する
しかし核兵器が無力化される事によって
紛争の火種が世界中にばら撒かれて仕舞う

PDSが働いている領域では
電磁波に指向性を持たせて
他の物質を透過させる事が出来る
この特性と高度なトラッキング技術などを
組み合わせる事で
「無制限の電波帯域」
「莫大な容量の外部記憶」
「量子計算機の小型化」
が可能になる
0189某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/17(火) 22:53:48.83ID:gVSVBWn0
「16章XMLモドキを読む」を読んだ

>>188
PDSによる量子計算機は
「タキオン・コンピューティング」と呼ばれ
計算時間が負になり(0には出来無い)
結果を先に得て、後から計算する
「時間の後払い」が出来る
応用として、答が分っている短かい計算を繰り返し
結果が一致しなければ、近い将来計算が
中断される事が確率的に予言できる
これを交通システムに搭載すれば
事故を事前に察知する事が可能と成る
100%当たるのでは無くガイガーカウンタの様に
チリチリとしたノイズ音で聞き取れる
0190某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/19(木) 00:23:03.03ID:BRQPYrbb
「17章 遅くないコードを書くために」を読んだ
ここ迄で脱線が終わって、次から本題に戻るそうな

>>189
動物が進化の過程で、自分の周囲の
三次元空間を見る「目」を獲得した様に
人類は起こり得る未来の四次元時空間
を感じ取る能力を得た

地球は、ほぼ全球がPDSネットワークで覆われ
ネットフレアが吹き上げる紺碧の星と化している
但し南極大陸だけは国際条約でPDSの使用が禁止され
各国の核融合発電所の街が点在する

ここ迄は21世紀の設定で、スペースSSSは
その数百年後が舞台となる
0191某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/20(金) 01:00:29.09ID:wZmhsOgo
「18章 立体の衝突処理」の前半を読んだ

>>190
スペースSSSに登場する主な組織

国家に代る横軸のソーシャル・ネット構造
・グローバル連合
・シオニス同盟

持つ者と持たざる者を隔てる縦軸の階層構造
・自由貿易組合
・オメガ教団

人類の宇宙進出を担う中立組織
・宇宙港連合
・星間通路管理局
・深銀河開拓公社

人類に敵対する非DNA生命体
・電磁甲殻体
・バイドロイド

宇宙に秩序をもたらす者
・王立銀河宅配協会
・考古学探求者

組織に属さないならず者達
・海賊
・賞金稼ぎ
0192某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/21(土) 01:48:26.57ID:divgTWN0
「18章 立体の衝突処理」の後半を読んだ
> 衝突処理を「売り物クォリティ」にする作業は
> 君にゆだねられることになる
とか丸投げ落ち。こんな本読まずに
自分のやりたい様にやった方が早い

>>191
「グローバル連合」
「Global Allied Planets : GAP」
「通称:グ連」
・銀河統一政府を樹立しようとする勢力

「シオニス同盟」
「Zionis Rebellion : Zio」
「通称:同盟」
・各惑星は独立すべきとする勢力

・民衆はどちらかの勢力を
自由に支持する権利を
両勢力の軍事力バランスによって
担保されている
・明確な国境が無いので
大規模な戦争が起きない代わりに
経済戦や情報戦で綱引きが行われる
・局地的な小競り合い等の
茶番の上で成り立つ平和な時代と言える
だが今日の飯にありつくのは楽では無い!
0193某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/28(土) 12:32:03.50ID:qgeTCD2L
放置しても無反応なので、今日も頑張る
「19章 ロボファイトの設計」を読んだ
0194名前は開発中のものです。
垢版 |
2018/07/28(土) 12:38:23.25ID:/Wb6gtI+
    ∧_∧  ミ _ ドスッ
    (    )┌─┴┴─┐
    /    つ. 終  了 |
   :/o   /´ .└─┬┬─┘
  (_(_) ;;、`;。;`| |
0197某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/29(日) 12:16:34.40ID:ulQDcmhM
読書だけだとモチベだだ下がりなので
読みながら作業もする事にする

恒星系の海賊の画像を取り敢えず1種類
レンダリングした
動かして問題無ければ4種類に増やす
画像が同じでも地域によって
攻撃パターンが変わる様にする

宇宙では45度ずつだけ回転させても
8 x 8 x 8 = 512パターン
必要になって画像デカ杉なので
筒状に回転させて端折る事にした

正面向きに45度ずつ回転で8パターン
更に真後ろまで45度ずつ振り向いて
8 x 5 = 40パターン
で何とか表現する
0198某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/29(日) 14:34:21.20ID:ulQDcmhM
恒星系の海賊の共通コードを書いて準備した

自機と敵のローリングで、きちんと向きが合うか
テスト用の描画を先に作った方が良さそうだな
0199某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/30(月) 05:57:42.25ID:G0EooMRB
顔グラの利用規約を読み直したら
ツクールVXのユーザ登録が必須だったので
セールの時に買って置く事にする

UE4のVRに移植する時には使えないので
代わりのを探して置く必要が有る
0200某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/30(月) 07:58:29.15ID:G0EooMRB
一晩中、素材探し直ししたけど
ツクール以外で使えて、顔グラの質と量が
揃ってる素材サイトは、あんまり無いな

顔グラの仕様自体がツクール向けとしても
ツクール以外でも需要は有るだろうに
0201某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/30(月) 11:58:17.36ID:G0EooMRB
YADOTさんのサイトの自作エンカウント処理を読んだ
後でマップの処理を作る時に対応できる様に
考慮して海賊の生成処理を書く
0202某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/07/31(火) 15:10:49.13ID:ALTBK6ZT
恒星系の海賊の生成と描画が出来た
AIはまだ空っぽで動かない

デバッグ用に、敵を画面の中心にサイズ固定で描画して
方向転換が正しく出来てるか、テスト表示できる様にした
画面のUIに余裕が有れば、これを使って
サイト付近の敵を小さ目にHUDに描画するのも
格好良いかも
0203某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/01(水) 13:11:12.62ID:6o/It6yB
海賊のAIを取り敢えず2つ分だけ考えた
実装したら説明する
0204某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/01(水) 15:51:38.24ID:6o/It6yB
海賊の直進移動を作った
向いている方向へ動く

恒星系の敵の進行方向は円柱で表す
円柱の穴を常にZ座標に向けていて
自機か敵がロールすると円柱がネジ状に回転する
敵がピッチで機首を上げ下げすると
円柱の周囲に放射状に開く

ピッチとロールの角度だけで向きを管理してる訳で
ポリゴン3Dゲーとしてはデタラメだけど
スプライト2.5Dゲーとして割り切る
0205某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/01(水) 16:48:44.08ID:6o/It6yB
x,y の速度は、ロールとピッチの角度をそれぞれ
サイン波状の三角波に変換して
掛け合わせで合成して求める
z の速度は、ピッチだけで決まる

「ロールの三角波」
r = (ロール角度 + 90) % 360
r < 180 なら r = (90 - r)
r >= 180 なら r = (r - 270)

「ピッチの三角波」
p = (ピッチ角度 + 90) % 360
p < 180 なら p = (p - 90)
p >= 180 なら p = (270 - p)

「x の速度」
vx = (r * p / 90) * 速度 / 90
0206某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/02(木) 15:52:56.47ID:dKsRE4SW
恒星系の海賊 B の AI を作った
旋回して自機の後方につける→追い抜く
を繰り返す

自機の前方にいる時は
ピッチを ±30 に向けて
z 軸のマイナス側(後方)へ向かう

自機の後方にいる時は
ロールで天頂を自機に向け
ピッチを 160±10 に向けて
自機の方へ斜めに向かう
0207某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/02(木) 16:06:49.65ID:dKsRE4SW
デバッグ用のレーダー表示も作った

描画x = 敵のx * 表示範囲 / 敵の最大x
描画y = -敵のz * 表示範囲 / 敵の最大z
拡大率 = 4%くらい

で描画するだけ
0208某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/03(金) 06:15:51.11ID:A7wg0YLG
通路と虚空の自弾の当たり判定で
連射しないと当たらないバグを多分w修正できた
微妙かも試練

敵のz座標が先頭と末尾の弾の範囲外だったら
二分探索せずに終了する所で
弾のz方向の幅を計算に入れて無かった
0210某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/03(金) 13:39:30.27ID:A7wg0YLG
恒星系の海賊 C の AI を作った
自機の方へ旋回して急接近→突っ切ったら反転
の一撃離脱戦法を繰り返す

生成時の初期化でフェーズ = 0

フェーズ 0 の時は
ロールで天頂を自機に向け
ピッチを自機の方へ ±30 に向けて
最大加速
自機に近づいたらフェーズ = 1

フェーズ 1 の時は
そのまま直進
自機から離れたらフェーズ = 2

フェーズ 2 の時は
ピッチを自機の方へ ±30 に向けつつ
減速
速度が 0 になったらフェーズ = 0
0211某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/03(金) 14:20:10.11ID:A7wg0YLG
マウスでエイムするわけじゃ無く
カーソル・キーで移動もエイムもするゲームなので
当たり判定は基本ガバ

パッドFPSでも自動エイム必須だし、問題無い
SpaceSSSで自動エイムすると、移動がおかしくなる

スプライトゲー作った事無い奴に限って
ポリゴンゲーの常識色眼鏡でベラベラ語る
0212某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/05(日) 16:47:19.82ID:KAGvq58o
恒星系の海賊グループのエンカウント処理を作った

1. マップの初期化で地形毎に
 グループ単位の比率を設定して置く
2. グループの比率に応じて
 ランダムにグループを選ぶ
3. グループによって敵の種類毎の比率を設定する
4. 敵の比率に応じて、ランダムに敵を出現させる
5. 敵の出現数分 4. を繰り返す
0213某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/05(日) 16:59:41.21ID:KAGvq58o
比率に応じてランダムに選択する処理

比率A = 20
比率B = 30
比率C = 50
比率D = 60

比率の合計 = 比率A + 比率B + 比率C + 比率D
n = 乱数(1〜10000)
n %= 比率の合計
(n < 比率A) なら
 敵Aを生成
違うなら
 n -= 比率A
 (n < 比率B) なら
  敵Bを生成
 違うなら
  n -= 比率B
  (n < 比率C) なら
   敵Cを生成
  違うなら
   n -= 比率C
   (n < 比率D) なら
    敵Dを生成
0214某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/07(火) 18:18:20.62ID:/HAEG7Tu
恒星系の海賊 A の AI 作った

フェーズ が 0 の時
自機と直角に向いて、前方を旋回
一定時間後、フェーズ = 1

フェーズ が 1 の時
自機の後方へ移動
後方に離れたら、フェーズ = 2

フェーズ が 2 の時
自機と直角に向いて、後方を旋回
一定時間後、フェーズ = 3

フェーズ が 3 の時
自機の前方へ移動
前方に離れたら、フェーズ = 0

以上を繰り返す
0215某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/08(水) 16:53:17.09ID:uqGPAsL6
海賊の残り3種類をレンダリングして
スプライト・シートに列べた
これで種類毎に違う画像で描画される
0216某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/08(水) 22:54:11.98ID:uqGPAsL6
PCのミサイルの画像作った

本体 + スモークで 4 枚使うとすると
PCが 4 発 x 4 枚 = 16 枚
敵が 4 機 x 4 枚 = 16 枚
足して 32 枚のスプライトの座標を
回転させる事になるので、一寸重いかも試練
0217某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/09(木) 13:51:54.20ID:9HFL9hwa
恒星系の自ミサイルの初期化とイテレータ作った
取り敢えず休憩
0218某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/09(木) 17:23:15.95ID:9HFL9hwa
自ミサイルの発射処理を書いた

敵の中から描画座標がレティクルの範囲内で
自機に一番近いものを探してロックオンして
ミサイルのデータを設定する

移動と描画はまだ出来て無いので
ロックオンや発射とかの効果音だけ
0219某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/09(木) 19:11:32.02ID:9HFL9hwa
後でリファクタリングしなくて良い様に
考えて作ってるので、亀の様に遅い
ツクールで順番並べ替えたりするのキツいんでな
何言ってるか分からんだろうけど
0220某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/10(金) 19:13:18.22ID:RGx3TtY1
自ミサイルの移動処理を作った

ミサイルの座標だけ回転させて
移動ベクトルの方は回転せずに
毎フレーム計算する事で、処理を軽くした

ミサイルのスモークの座標も回転させないで
数珠つなぎに座標をコピペして行くだけにしたけど
そもそも宇宙空間でスモーク出すのはおかしいので
恒星系のサブ・ゲームの時だけカットするかも

設定フラグでスモークをOn/Off出来る様にしとく
0221某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/10(金) 20:19:52.59ID:RGx3TtY1
自ミサイルの描画作った

ロックオンして無い状態で発射すると
ショボい効果音で真っ直ぐ飛んで行く

ロックした敵へのホーミングが
まだ少しバグってる
0222某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/13(月) 16:33:54.70ID:j7PELdzO
自ミサイルの当たり判定作った

ホーミングのバグは
敵とミサイルの距離を計算する所が
敵と原点(自機)の距離になってた

逃げる敵機をミサイルが追い掛けてって
ドーンするのが楽しい
0223某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/13(月) 17:33:35.00ID:j7PELdzO
ロックオン可能範囲に敵の見た目の幅を加味した

ミサイルはフレアを使わない限り
ロックしたら、ほぼ確実に当たるので
ガバにしないで厳密に範囲チェックする様にした
0224某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/13(月) 22:51:27.06ID:j7PELdzO
自ビームの当たり判定作った

通路のビームの判定をコピペして
座標のスケールを調整しただけ

代入の右辺値は変数名が表示され無いで
変数番号だけなので
コピペだからと気を抜いてると
書き換えミスでバグが入り込む
0226某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/14(火) 02:29:44.38ID:sJqOQ1P7
グレネードの画像のチョイスをしたり
細かいネタ出し等をした

ミサイルを実装し終わってから
グレネードを作るか
同時並行でやるかで迷う
0227某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/14(火) 14:13:53.64ID:sJqOQ1P7
自弾のボムの画像作った
敵にダメージを与えるだけで無く
敵弾も吹き飛ばす

グレネードと言う設定だったけど
白兵戦の手榴弾のと被るし
スペックがそのまんまなので
ボムに変更した(分かり易い
0228某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/14(火) 16:29:08.53ID:sJqOQ1P7
ボムの初期化とイテレータ書いた

弾が爆風に隠れ無い様に
爆風と弾のピクチャ配列を
連番で無く別けて確保した

内部的に連射できる様に作るけど
実際は単発か、爆風が出てる間に
もう一発撃てる様に2発に設定する
0229某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/14(火) 19:14:56.33ID:sJqOQ1P7
ボムの発射と移動処理を作った

サブ・アイテム・キーを押して発射
放すと爆発する
但し発射直後の数フレームは爆発しない

まだ描画は出来て無いけど
効果音を聴く限りは、きちんと動いてるっぽい
0231某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/17(金) 13:44:52.97ID:4h+wzOfF
>>199
すっちむでVXのセールしてたので買って置いた
立ち上げて直ぐそっ閉じしたし、多分一度も使わない
素材の利用規約に従っただけ

ツクールは知り合いに
「1000枚のスプライトはこう使う」
って手本を観せるためだけにやってるので
これ1本作ったら終わりにする
0232某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/17(金) 15:43:39.48ID:4h+wzOfF
ボムの当たり判定を作った

賞金首とか依頼で稼いで
ボムとかミサイルいっぱい買えば
ボス戦とか強目の敵に仏波できる様にして
3Dシューティング苦手な人にも
救済措置を用意する
0233某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/17(金) 23:52:07.51ID:4h+wzOfF
配列に相当するものの中の構造体の様なものに
アクセスする時は、メンバーへのポインタを
列べたものを経由する

で、イテレータをインクリメントする時は
このポインタの列びのそれぞれに
構造体のサイズを加えるのだけど
列びの数だけループを回すと
めっちゃ重くなってしまう

なので変数番号の範囲を指定して
一括でサイズを加えると軽くなる
その代わり一括指定の範囲に
マジックナンバーを埋め込む事になって仕舞う
スクリプトのあちこちに散らばると
メンバーを追加/削除する時に
面倒な事になるしバグも発生しやすい

で、結局イテレータを進める時は
汎用のものでは無く、構造体毎の専用の
イベント(サブ・ルーチン)を呼ぶ様に
暫く前に変更したのだけど

今日は変更し忘れてる部分をチェックして修整した
最初からその様にして置けば良かったが
ツクールは初めてなので勝手が分からなかった
0235某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/18(土) 14:17:39.33ID:JegxHeyY
武器の切り替えキーを押した時に
所持しているアイテムの中から
自動で次を選んで装備する様にした

武器のアイテム分類を
メイン・ウェポンは武器
サブ・アイテムは楯
として扱う様に設定した
0236某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/18(土) 14:21:02.56ID:JegxHeyY
>>235
今までは装備とかしないで
アイテム番号の数値だけで取り扱っていた
0237某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/18(土) 16:12:07.88ID:JegxHeyY
衝角を実装した
装備して置くと、敵と衝突した時に
ダメージを与えられる

ゆっくり衝突すると
連続でダメージが入ってしまうので
敵を斜めに弾き飛ばす様にした
0238某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/18(土) 21:19:25.54ID:JegxHeyY
恒星系の敵のダメージ表示/爆発を作った
取り敢えず恒星系の通常戦闘は、これで暫く良し
0240某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/19(日) 16:22:36.47ID:MORom9/m
通路のミサイルの処理を作った
発射/移動/描画/衝突、全部おk
コピペ→チャンポンだし頑張れば直ぐ終わるな
0241名前は開発中のものです。
垢版 |
2018/08/19(日) 20:28:46.29ID:MORom9/m
通路のボムの処理を作った
今日の目標まであと一息
0242名前は開発中のものです。
垢版 |
2018/08/19(日) 20:33:07.20ID:ReAdtpZA
みんな、しょっぱなからデカい規模のゲーム選びすぎだよ
だから続かない。

RPGなんて典型。
すげ替えて完成させるわけじゃ無し、
素人なんかにゃ根気が続かないよ。
0244某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/19(日) 21:26:46.17ID:MORom9/m
通路の衝角の処理を作った
恒星間通路での自機の攻撃は取り敢えず良し
明日は休みにする
0245某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/19(日) 21:30:00.31ID:MORom9/m
おうっ何かかまってくれてたのかw
むしろ根気しか取り柄が無いし
0246某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/19(日) 22:16:08.60ID:MORom9/m
板違いになるがボドゲ制作いいぞ
ルール妄想して、フリー素材でカード作って
サイコロ用意すれば、対戦でもソロでもおk
ゲムマに出展すれば予算も回収できるし
0247某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/21(火) 23:53:57.02ID:jEBG4uOO
地表面のミサイルの処理を作った
生成から当たり判定までは直ぐ出来たけど
描画か座標計算が上手く行か無くて
一日中ウンウン唸ってた
今日はもう眠いので続きは明日にする
0248某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/22(水) 00:25:35.86ID:O6Q+6qaj
寝る前にデバッグの手を思い付いたので
やったら直ったワ
ミサイルは出来上がり
0249某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/22(水) 00:43:03.31ID:O6Q+6qaj
ミサイルのZ速度が速すぎてX,Yが当たる前に
遥か彼方に逝っちゃってるだけだった
遠近感が崩壊してた
0250某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/22(水) 22:47:23.65ID:O6Q+6qaj
効果音の再生ルーチン作った

SEを割り振ったりする時に
SE再生がソースの彼方此方に分散してると
面倒なので、一ヶ所にまとめた

引数でSE番号を指定して分岐する訳だけど
テーブル・ジャンプ出来る様な
switchとか関数のポインタ呼び出しに
相当する制御文が無いので
if文を大量に並べる事になる

一応、番号の範囲でザックリ分割してから
それぞれのサブ・ルーチンを呼んで
ifのチェック回数を減らす様にはしてる
変数でイベント番号を指定して呼び出せると
良いんだがな…
0252某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/23(木) 01:22:41.74ID:tNk7Mitg
>>251
まともな言語なら普通に出来るけど
ツクールなんでプログラミング
出来ない子向けの仕様になってる
仕様がない
0254某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/24(金) 18:19:10.47ID:fKFQDvWb
地表面のボムの処理を作った

一部のSEが急に鳴らなくなって
おや?って思ったけど
SE関係の変数を後ろの方に確保したのに
スタックの先頭アドレスをずらし忘れたバグだった
0255某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/24(金) 20:10:13.57ID:fKFQDvWb
地表面の衝角の処理も作った
ガンッて体当たり攻撃する

後背からドッグファイトして来る敵は
すれ違いざまにビームを撃つタイプなので
追い越させない限りは、当たら無い様にした

これで地表面はおk
0256某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/25(土) 18:31:17.74ID:apOmPphv
虚数空間の自ミサイルの処理を作った

ミサイルの座標を弄って無いのに
勝手に書き換わってて
メモリ絡みの不味いバグかなーと思ってたけど
ミサイルの各処理を呼ぶハブ・イベントで
別のサブ・ゲームのイベントを呼んでただけだった

コピペする時に変更するのを忘れてた
0259某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/25(土) 21:13:19.85ID:apOmPphv
虚空のボムも作った
横方向に画面いっぱいの当たり判定にした
元ネタ探しのオマージュゲーになってる
0260某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/25(土) 21:16:37.66ID:apOmPphv
>>258
いや普通の
良く分からん添加物いっぱいのより
砂糖入りの飲んで筋トレで燃焼させる方が
体に悪く無いかと思って
0261某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/25(土) 23:04:15.15ID:apOmPphv
虚空の敵の攻撃パターンを2種類ネタ出しした
全体で一度に一種類の攻撃をして来る

恒星系と地表面の海賊は
PCと大体同じ攻撃/防御をする
0262某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/27(月) 00:07:39.23ID:7fHupAdC
BGMをシーン毎に割り振った
朝から15時間くらいずっとやってた

手順は
・BGMファイルを一番上の階層のフォルダに全部入れる
・戦闘/移動/惑星/イベント等のフォルダを作って
 そこへBGMを大雑把に放り込む
・ピンポイントで使えそうな曲が有れば
 直接下層へ入れる
・更に下の階層のフォルダに細分化する
・余ったら上の階層へ戻して再分配する

絵や音の割り振りや動画の編集なんかの作業は
一番目くらいに楽しいので監督が独占する
0265某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/27(月) 14:07:39.61ID:7fHupAdC
>>264
自分からしたらゲーム「やる方」のモチベが
続か無くて困ってる
すぐゲームを作ってしまう
0266名前は開発中のものです。
垢版 |
2018/08/27(月) 15:17:16.68ID:/sjOiSn8
惰性で続けちゃう時が往々にしてありますし、それなりに進めようと思ったら結構時間かかっちゃうしそれぐらいがきっと丁度いいんですよ
見習いたい
0267名前は開発中のものです。
垢版 |
2018/08/27(月) 16:40:57.94ID:k7ZFUmlR
SE(効果音)に関しては自分の場合、SEの自作スキルがないから、外部リソースに頼らざるを得ないんだが、
外部の膨大な母集団の中を探し回ってローカルディスクに確保した候補の中から選ぼうとする時、なかなかイメージ通りの音が見つからなくて決められず、
また外部リソースの膨大母集団の中を探しに奔走する段階に戻ったり、その繰り返しでなかなか進捗が上がらない。
あと重ねて再生すると聞こえなくなったり、インパクトが消えるものもあるから、ボリュームの調整も面倒だな。
そんなこんなで、SE決めはどちらかというと憂鬱な作業で決して楽しくはないなw
決められない自分にも問題があるんだが
0269某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/27(月) 19:36:35.33ID:7fHupAdC
>>267
自分のイメージにピッタリ合った素材を求めると
結局自分で作るしかなくなるので
逆に既製の素材からイメージを作って膨らます
くらいのスタンスの方がいいかも
0270某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/28(火) 14:49:14.24ID:gb9Fw1Ya
虚空の自機の衝角を作った
後ろから追い越して行く敵にも当たるけど
ダメージを与える全方位バリア的なもの
と言う事にして置く
0271某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/28(火) 20:11:21.89ID:gb9Fw1Ya
ビル街の車の衝突判定を作った

流石に主人公が街中でビームドンパチ
する訳には行かないので
黒塗りの高級車を相手に
自動運転切って派手にぶつけ合う
0272某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/29(水) 22:50:38.97ID:fS9P/k8W
今日は車の衝突の火花を作ろうとしたけど
座標か何かがおかしくて描画が上手く行か無い

衝突にバグが有ったので、それは修正できたけど
時間切れなので、続きは明後日&明日はお休み
0273某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/31(金) 01:38:01.86ID:KnATV+OW
>>272
サブルーチンの引数を入れる変数の中身を
ローカル変数に退避しないまま
別のサブルーチンを呼んで
上書きされて仕舞っていたのと
衝突方向のオフセットが左右逆なのが
原因だったので、それぞれ修正した

自機の攻撃は取り敢えずここ迄して
他の作業に移る
0274某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/31(金) 17:10:42.61ID:KnATV+OW
恒星系と地表面の海賊の攻撃の
動作と描画の仕様を大体固めた

恒星系ではメイン/サブ武器を
比率に応じて使い分ける

地表面では前方から来る敵は
全てミサイルで攻撃して来て
後方に付ける敵はメイン武器を使って来る
0275某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/08/31(金) 20:05:21.00ID:KnATV+OW
海賊の武器の画像作った
ボム以外は自機と同じ武器を使うけど
画像は使い回し出来ないので作業した
0276某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/02(日) 00:16:02.38ID:i2SMMNC0
海賊の攻撃のサブ・ルーチン群の枠を確保した

昨日は家族サービスでツクール用PC取られてたので
あんまし進捗せんかった
0277某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/03(月) 02:19:55.81ID:OMruBQS8
恒星系の海賊のビームの初期化と
イテレータの処理を書いた
0278某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/04(火) 23:48:57.55ID:a5g9zlPd
恒星系の海賊のビーム作った

座標の回転だけでかなり重いので
速度ベクトルはデータに持たせ無いで
回転を省いた

d = max(x, y, z)
フレーム数 = d / 最大速度

発射時にx,y,zの内一番自機から遠い距離を
最大速度で割って、衝突予想フレーム数を
求めて、敵弾のデータに保持する

フレーム数 -= 1
xの速度 = -(xの距離 / フレーム数)
yの速度 = -(yの距離 / フレーム数)
zの速度 = -(zの距離 / フレーム数)
x座標 += xの速度
y座標 += yの速度
z座標 += zの速度

1フレーム毎に、衝突予想フレーム数の
カウントを減らしながら
距離をフレーム数で割って速度を求めて
敵弾を移動させる

今時のゲームの物理演算と比べると
色々出鱈目だが、スクリプトの実行速度との
トレードオフでこの辺りが落とし所となった
0279名前は開発中のものです。
垢版 |
2018/09/05(水) 00:27:52.51ID:Bu1V3by6
いつも見てます
「フレーム」「x,y,z」「ビーム」などかっこいい言葉が頻繁に出てくるので好きです
これからも頑張ってください
0280某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/05(水) 03:40:37.45ID:x1z3RxCE
>>279
ありがとう!
用語はスーファミとかメガドラなんかの
スプライト全盛期のを意識してます
0281某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/05(水) 20:22:02.36ID:x1z3RxCE
海賊のビームの当たり判定と
自機のダメージ・エフェクトを作った

衝突予想フレーム数が 1 より大きければ
まだ当たっていないと判断出来るので
それを真っ先にチェックして弾いてから
座標のチェックをする

ダメージ・エフェクトは画面サイズの
ベタ塗り画像を背景と敵の間に
差し挟んで表現する
色は黒→白→黄色の順にアニメさせる
0282某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/06(木) 00:17:09.10ID:vvLX/rVe
海賊のレーザーを作った

下向きで3段階の角度を付けたレーザーの画像を
拡大率100%固定で敵の見た目の座標から発射する
画面の下半分はコクピットなので
これで大体それっぽく見えると言う寸法
0283某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/08(土) 09:03:25.40ID:3+1zpgJN
レーザーの当たり判定を作った

自機を上下に動かしてる間だけ
カウンタを増加させて
それ以外なら0でリセットする
判定の所でカウンタが一定値未満なら
その時点で敵が撃っているレーザーが全て当たる

レーザーはエイム→射撃→即着弾な
当て易い武器と言う設定
0284名前は開発中のものです。
垢版 |
2018/09/08(土) 16:47:40.75ID:wWjAIewH
脱出ゲームのシナリオを書いた
0285某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/08(土) 18:22:55.66ID:3+1zpgJN
海賊のビームの当たり判定を
レーザーを参考に調整した

一定の範囲のフレーム数の間
ピッチを上げ下げし続けると
敵の攻撃を避けられる様になる

具体的にはインメルマン・ターンで
敵弾を回避したり
バレル・ロールで回避と同時に攻撃も出来る
ただしフレーム数の範囲内と限定しているので
同じ動きを続けていると効果が無くなる

偏差撃ちさせれば済む話だけど
過去から現在〜未来まで座標回転させると
処理が重くなるので、この様に実装した
AIを賢くするとその分
処理コストが上がるので
代替的な処理で近似する必要が有る
0287某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/08(土) 20:19:29.60ID:3+1zpgJN
海賊が後ろを向いてる時は
攻撃して来ない様にした

z座標が0以上(画面奥)で
ピッチが90〜270度の時と
z座標が0未満(画面より手前)で
ピッチが90度以下か270度以上の時は
武器を発射しない
発射できる角度は狭める方向で調整しても良いかも
0288某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/09(日) 01:39:25.17ID:c3LvgQTF
自機のダメージ・エフェクトが発生している最中に
追加でダメージが発生した時
エフェクト・アニメの1コマ目が
連続で描画されてしまうので調整した

エフェクト発生時に既に発生中だったら
そのままにして置いて効果音だけ処理する様にした
0289某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/10(月) 03:00:04.22ID:2HLZakh/
海賊のプラズマを作った

ビームと大体同じ処理で
発射していない時はチャージ中になる様にした
0290某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/10(月) 16:48:10.90ID:2HLZakh/
プラズマは3つの状態を遷移する
0: 未初期化、初期化したら1にする
1: チャージ中、発射したら2にする
2: 攻撃中、当たるか消えたら0にする
0291某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/10(月) 18:42:21.35ID:2HLZakh/
自機と海賊が使う主要な武器のフルネーム
・重陽子ビーム
・ハドロン・レーザー
・プラズマ・キャノン
・VTブラスター(ボム)

ハドロン・レーザーはPDSによって
強い相互作用が平行分岐した場を光子が通過する際
高エネルギー状態になる現象を応用したレーザー兵器

VTブラスターはバイドロイド・テクノロジーを利用した兵器
軍が極秘に発掘したものを主人公たちが強奪し
SSSに装備したと言う設定
0292某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/10(月) 21:59:47.28ID:2HLZakh/
>>290
修正
他の武器作り始めたら気付いた

プラズマは4つの状態を遷移する
-1: 未装備、何もしない
0: 未初期化、武器がプラズマでなければ-1にする
  初期化したら1にする
1: チャージ中、発射したら2にする
2: 攻撃中、当たるか消えたら0にする

初期状態は0
0293某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/11(火) 00:19:31.04ID:0XkFbUjd
海賊のミサイルを作った
飛んでる間は警報がビビビビ鳴る様にした
これで恒星系の戦闘は一先ず終わり
0294某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/11(火) 06:48:37.48ID:0XkFbUjd
>>292
プラズマの「-1: 未装備」の状態は
初期化ルーチンで遷移させとけば
良い様に見える

でも、データの初期化は
敵の装備の初期化→プラズマの装備確定
の順番に依存しているけど
初期化ルーチンを呼ぶ順番の方は
画面奥からスプライトを割り当てるのと
同じ順番で呼ばないといけない

なのでスプライトの割り当て順に初期化した後
サブ・ゲームが始まってから
データの残りの初期化をすると言う
一寸ややこしい構造になってる

オブジェクト指向言語なら、ファクトリ・メソッド
か何かに隠蔽しとけば良いのか知らんけど
ツクール2003はアセンブラライクなのと
サブルーチンが番号で管理されてて
並べ替えが困難で、後から色々追加すると
管理が破綻するので仕様がない
0295某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/12(水) 04:46:38.36ID:0FK+2X9s
虚空の敵弾の画像作った
・氷のスプレー
・極太レーザーの雨
・全包囲スパーク
名前の設定は無いので適当
人類側の付けた通称は後で決める

通路の敵弾はネタを練ってる最中なので
こっちを先に実装する
0296名前は開発中のものです。
垢版 |
2018/09/15(土) 05:08:59.66ID:fDyU1PTM
虚空の敵弾のイベントの領域を確保した
見込み違いで足り無くなって、連番に出来なくなって来たけど
ビル街は弾を撃た無いし、FPSは他のサブ・ゲームとは別枠で
扱いたいので良しとする

DTMやりたい病が再発して三日ほど作業中断してたけど
自分を説得して抑え込んだので、続きをする
0297某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/16(日) 05:36:21.77ID:uHo/f9mV
虚空の全包囲弾の初期化、リセット
イテレータ、発射まで作った
代表の敵をランダムに選んで
それを中心に発射する

配列の中に生きている敵が
何体いるか分からない状況で
その中からランダムに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 の確率で選ばれる
算数の問題
0298某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/17(月) 09:46:40.53ID:/sEsFby3
虚空の全包囲弾の動きと描画作った
ランダムに選ばれた敵から放射状に
スパークが画面外へ飛んで行った後
自機を取り囲む様にスパークの輪が縮んで
一点で消滅する

初期化でsin/cosを使って同心円状に
折り返し地点の座標を入れとく
弾の動きは4つの状態で管理する
未使用、拡散、待機、収束

「未使用」:
弾が発射されたら敵の座標を
中心点に入れて、拡散に移行
「拡散」:
x = 返し地点のx * 現在の半径 / 最大半径 + 中心点のx
y = 返し地点のy * 現在の半径 / 最大半径 + 中心点のy
現在の半径を最大半径まで変化させながら描画
最大になったら、待機に移行
「待機」:
設定されたフレーム数の間、待ち続ける
待ち終わったら、自機の座標を中心点に入れて
収束に移行
「収束」:
現在の半径を 0 まで変化させながら
拡散と同様に描画
半径が 0 になったら、未使用に移行

現在の半径を、拡散する時は素早く
収束する時はゆっくり目に動かす
0299某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/17(月) 10:02:03.47ID:/sEsFby3
現在の半径と最大半径は割り合いで
実際の半径は、折り返し地点の座標で決まるので
最大半径を 128、半径の変化速度を 2 や 4 とかの
2 の n 乗にして置くと「半分の半分」とか
「倍の倍」等に出来てバランス調整がやり易くなる
0300某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/18(火) 04:45:12.52ID:WPULE/f8
虚空の全包囲弾の当たり判定作った

早めに避ければ当たっても大した事無いけど
ボーっとしてたり混戦中で、全弾命中
とかしてしまうと大ダメージな攻撃
0301某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/19(水) 00:41:28.09ID:lYSOWyMT
虚空のレーザーの雨の全処理を作った

画面上の全ての敵から上方に弾を打ち上げた後
極太レーザーになって雨の様に降って来る
打ち上げ時のx座標にレーザーが降るので
事前に避け始める事が出来る

状態遷移などは全包囲弾と大体同じ
0302某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/19(水) 16:03:17.11ID:lYSOWyMT
虚空の敵の氷放射の処理を作った
移動がまだバグってる
0303某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/20(木) 03:29:52.81ID:N6p5SpZ5
虚空の氷放射できた
敵の内の一体から氷の火炎放射みたいなのが出て
自機を追い掛け回す

目標のx[0] = 敵のx
目標のx[n] = (目標のx[n - 1] + 目標のx[n + 1]) / 2
目標のx[max] = 自機のx

目標の座標を配列で持って置いて
先頭に敵、末尾に自機の座標を入れる
その中間は前後隣の座標の中間点にする

現在のx[n] += (目標のx[n] - 現在のx[n]) / 16

目標の座標が決まったら
現在の座標をそこへ向けて移動させる
目標の座標の変化が1フレームずつ
ジワジワ伝搬して行き
更に現在の座標も遅れて追尾する
これで触手の様にウネりを持った動きになる

ネットが利用出来なかった頃は
人が作ったゲームを観察して自分で考えて
技を盗むのが当たり前だったけど
今時はゲーム制作技術を共有した方が
皆で幸せになれるじゃろう
0305某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/20(木) 14:30:20.10ID:N6p5SpZ5
レゲー見ながらブレストして
敵の攻撃をいくつか思いついた
0306某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/21(金) 04:22:44.77ID:pJ/yqaso
通路の敵弾の画像全部できた

http://lnl.osdn.jp/images/Space-SSS/blog/2018/09/s/tube-vroid-cross-laser-A-003.png
この300x300ドットの画像をスプライト・シートで
縦に300分割すると、横長の直線が300本できて
シート番号を1〜300で指定すると
太さ1ドット長さが1〜300ドットの
自由に伸び縮み出来る直線になる
同じ画像を横に分割すると、縦長になる

http://lnl.osdn.jp/images/Space-SSS/blog/2018/09/s/saramanda-laser.jpg
画像のパターンを1/3ずつずらしたものを
3本束ねると「沙羅曼蛇レーザー」になる

知り合いのツクラーさんのアイデアを
拝借してアレンジしました
ありがとうございます
0307某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/23(日) 15:48:10.31ID:UgrM2BIO
通路の敵弾の十字レーザーの
当たり判定以外できた

リングが飛んで来て、手前まで来たら
上下左右に沙羅曼蛇レーザーを発射する
4つの状態を遷移する

「未使用」:
ランダムにリングを発射したら「接近」へ

「接近」:
リングが自機に近づいて来る
自機のz座標に並んだら「発射」へ

「発射」:
リングからレーザーを伸ばして行く
レーザーの長さを伸ばす
最大長まで伸びたら「名残り」へ

「名残り」:
リングを消して、レーザーを画面外まで飛ばす
レーザーの半径を拡大する
終わったら「未使用」へ戻る

スプライトのシート番号にレーザーの長さを入れる
スプライトの座標にレーザーの半径を足し引きする
0308某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/24(月) 07:05:35.12ID:Qbfgv6Nr
十字レーザーの当たり判定できた
十字の中央部分(リングの中)は判定が無い安地にした
0309某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/24(月) 10:08:55.46ID:Qbfgv6Nr
恒星系のアンチPDS(星屑)の
流れるスピード感を保ったまま
自機の移動速度を落とした

A-PDSの移動範囲を半分にして
拡大率の変化速度を倍にし
自機の速度も半分にした
海賊の移動範囲などはそのままで
速度は自機に合わせて調整した
0310某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/26(水) 11:09:53.55ID:aL5UcRS7
通路の敵弾の小型ボム作った
3つの状態を遷移する↓

「未使用」:
発射条件が揃ったら初期化して「接近」へ

「接近」:
自機の方へ向けて移動
爆発アニメの 1 コマ目を弾として描画
z座標が自機と重なったら「爆発」へ

「爆発」:
爆発アニメを描画
アニメが終わったら「未使用」へ

爆発アニメの描画手順↓

コマ数 += 1
((コマ数 / 最大コマ数) >= ループ最大数) ならアニメ終了
((コマ数 % 最大コマ数) + 1) のコマを描画

6 コマのアニメ・パターンを 2 回再生
(延べ 12 コマ)させる場合の初期値↓

コマ数 = 0
最大コマ数 = 6
ループ最大数 = 2
0311某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/28(金) 15:53:07.09ID:zuCPmfy7
通路の敵弾のスウィング・チャクラム
の当たり判定以外を作った
3つの状態を遷移する↓

「未使用」:
発射条件が揃ったら初期化して「遠巻き」へ

「遠巻き」:
通路の近い方の四隅へ向けてジワジワ移動
z座標が自機と重なったら
自機の方向へ初速度を設定して「急スウィング」へ

「急スウィング」:
z座標はそのまま固定
自機の方向へ速度を微修正しながら
高速移動する事で、緩い弧を描きながら
スウィングする様に、ぶつかって行く
緩い誘導弾ぽい感じ

「未使用」以外の時に4パターンの
円月輪のアニメをループ描画する
0314某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/29(土) 11:10:51.90ID:q9DhY0Z4
スウィング・チャクラムの当たり判定まで全部できた
速度/加速度のパラメータのバランス調整もした
取り敢えず通路の戦闘も終わり

シューティング・アルゴリズム・マニアックス
を引っ張り出して来てパラパラめくってるけど
今はもうウェブで代用できるからこう言う本は
あんまり見かけなくなって寂しい
0315某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/29(土) 18:20:34.64ID:q9DhY0Z4
続いて地表面(アフターバーナーII)の海賊の攻撃
ビームの連射画像を作った

キャラの色分け
敵はRGB
海賊    :レッド
バイドロイド:グリーン
エコー   :ブルー

自機:グリーン(バイドロイドの技術を利用しているので)

自弾はCMY
レーザー:シアン
プラズマ:マゼンダ
ビーム :イエロー
0316某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/09/30(日) 11:42:23.50ID:jVjZ8HLW
地表面の海賊のレーザーとプラズマの画像を作った

メイン武器は後方から来る敵がすれ違い様に発射する
3種ともダメージ量が違うだけで、発射した瞬間に当たる

攻撃の演出
ビーム :常に連射し続ける
レーザー:範囲内に来たら発射
プラズマ:チャージ・アニメしつつ、範囲内に来たら発射
0317某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/02(火) 20:30:02.73ID:hhmBvO20
地表面の海賊のビームを作った

敵の生成と同時に発射処理をして
敵が画面内にいる間その位置に描画して
射撃音を鳴らすだけ

当たり判定は、自機と敵の描画座標を比べる
敵の描画座標は描画処理の中で更新されるので
処理の順番的に 1 フレーム前の座標になるけど
敵は相対速度的にゆっくり近寄って来るので
実用上問題になら無いと判断した
0318某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/03(水) 19:46:42.06ID:IgkE/4T1
地表面の海賊のレーザーを作った
メイン武器3種は、自機の後方から
迫って来る敵だけが使う

見た目の座標が自機に近づいたら発射し
更に自機と重なったらダメージが発生する
範囲外なら、画像の描画と効果音を止める

x座標が発射範囲の右外側だったら
発射方向のデータを左向きにして
左外側だったら右向きにする
こうする事で、右から来た敵は
左方向にレーザーを撃って
左から来たら逆向きに撃ちながら
すれ違う様になる
0319某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/03(水) 19:59:40.61ID:IgkE/4T1
>>318
要するに、丁度真ん中に居ると
高速でプルプル震えて仕舞うのを
防止するアレと処理的には同じ
演出上、すれ違い様に向きを変えない方が
格好良い気がした
0320某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/04(木) 19:43:12.40ID:Oiohlg7r
地表面の海賊のプラズマを作った
4つの状態を遷移する

「未使用」
敵の生成直後に呼び出される
初期化したら「非表示」へ

「非表示」
敵が画面内かつ自機より後方なら
チャージ音を鳴らして「チャージ中」へ

「チャージ中」
チャージ・アニメを描画
敵が画面外か自機の前方へ出たら「非表示」へ
自機の真後ろに来たら
発射音を鳴らして「発射中」へ

「発射中」
画像を縮小しながら画面下方に移動する
弾の回転アニメを描画
一定フレーム後「チャージ中」へ

当たり判定:
「発射中」の時だけ当たり判定をする
チャージ率分のダメージを発生させて
チャージ率を5%にリセットする
こうすると一発目が大ダメージで
その後、逃げ切るまで5%ずつ
連続ダメージが入る
0321某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/05(金) 22:36:56.84ID:BYC0SIdK
今日は地表面の海賊のミサイルを作ってたけど
バグが取れないので続きは、また明日にする
0322某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/06(土) 16:37:56.29ID:xkR1zbbv
地表面の海賊のミサイルが出来た

敵の出現後、ホバリングから移動に移る時に
ミサイルを一斉発射する
乱数で微妙にタイミングをずらしたりもする
他は自機のミサイルと大体同じ処理

これで自機とザコ敵の攻撃は大体できた
次は防御と HUD 関係をやる
0323某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/07(日) 21:40:44.68ID:ZjShwBaG
切りの良い所まで終わったので
今日はネタ帳にザッと目を通して総ざらいした

ネタ帳を読む事で、別のネタがやって来る
そうやって普段、深層意識の考えていた事が
表層意識に浮かんで来るので回収する

ゲームを作ってるのは神様なので
某犬犬は只の語り部として
言われた通りに作業しているだけに過ぎ無いw
0324某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/08(月) 17:54:56.85ID:+0KVRbUH
衛星要塞の素材にNASAの画像を使ってたけど
良く見たら著作権のマーク有るし
他の天体の画像と違って
これはフリー素材じゃなさそう

代わりの3Dモデル探したので
そっちを採用する事にする
UE4版でも使えるし
0325某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/08(月) 19:39:40.35ID:+0KVRbUH
自機のダメージ4種と爆発アニメの画像を作った
絵描け無いので、素材のサイズ調整したり
色変えたり切った貼ったしてるだけ
0326某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/10(水) 00:05:30.98ID:yA3HM6Xe
自機のダメージ・エフェクト出来た
ダメージの種類でスプライト番号を変えて
自機の座標にアニメを描画するだけ

恒星系のサブ・ゲーム以外では
殆ど同じデータと処理だったので共通化した
恒星系の背景フラッシュも共通化して
他のエフェクト処理で使い回す様にした

普通のプログラミング言語では
もの凄く当たり前の事だけど
ツクールではグローバル変数しか無いので
一寸ややこしい
0329名前は開発中のものです。
垢版 |
2018/10/11(木) 17:12:50.69ID:kOlpZSXh
tipsあげながらとはなかなか見上げたやつだ
がんばれよ
0331某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/12(金) 10:52:56.25ID:znPFZDP2
自機の爆発エフェクト出来た
HPが0になったら描画し始めて
終わったらゲームオーバーの処理をする

配列でスプライトのデータを用意して置いて
一定フレーム置きに爆発アニメを開始させる
爆発がボコボコ発生する感じ
爆発を開始したら自機移動のキー入力を止めて
その他の敵や弾の移動や描画処理は続ける
0333名前は開発中のものです。
垢版 |
2018/10/13(土) 13:35:03.63ID:+dZ9PGVY
共同ツール 1
https://seleck.cc/685
https://seleck.cc/621

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://www.google.com/intl/ja_ALL/drive/
https://getpocket.com/a/queue/
https://gsuite.google.co.jp/intl/ja/products/calendar/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://ja.atlassian.com/software/jira/pricing?tab=self-hosted 千円
https://www.sketchapp.com/
ttp://photoshopvip.net/103903
ttps://goodpatch.com/blog/sketch-plugins/
trelloと他のサービスの連携 IFTTT
https://ferret-plus.com/7940
https://chrome.google.com/webstore/search/trello?_category=extensions
0334某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/13(土) 17:28:09.88ID:8cAx7mA3
自機のダメージとバリアの基本部分を作った

下の4つのバリアで順番にダメージを吸収する
・PDSシフター:一定時間無敵、アイテムを消費する
・フォース・フィールド:メインのバリア、自動で張り直す
・プラズマ・シールド:状態異常無しでステータスと同じ処理、手動で張り直す
・ステータス:一定ダメージ分ずつ状態異常が発生、修理すると直る
吸収し切れ無かったら爆発してゲーム・オーバー
0335某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/14(日) 18:33:20.94ID:EkZJ8mje
自機の爆発開始→キー入力停止→爆発終了→ゲームオーバー
の流れを実装した
画面のフェードイン/アウトの処理も作って
自機が爆発しながら画面暗転する様にした
0336某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/14(日) 18:49:18.03ID:EkZJ8mje
フェードイン/アウトは
白/黒の画像を画面の手前に置いて
透明度を100%→0%に少しずつ変化させるだけ
0337某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/14(日) 19:05:28.28ID:EkZJ8mje
透明度 = 100 - (100 * カウンタの現在値 / カウンタの最大値)

透明度はこの式で求めて
カウンタの現在値を最大値まで上げて行く
0340某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/15(月) 00:52:29.83ID:mijGJVAf
恒星系以外で自機が爆発したら
数フレーム後に自機と光跡のスプライトを消す様にした
0341某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/15(月) 23:50:08.52ID:ChwXIuG/
>>340
流石に分かるだろうけど、唐突に消えるんじゃ無くて
爆発がボコボコして見えない内に消えるやつな
0342某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/16(火) 21:40:37.54ID:jO9NySR1
今日は細かい調整だけで終わった

海賊は武器の種類が多くて
恒星系と地表面で武器データを共有してて
同じビームでも X1 X2 X4 の倍率の違いが有る
で、地表面の方の武器データに
倍率を入れて無かったので入れた

海賊以外の敵は武器の種類と処理が一致するので
定数に敵のレベルを掛けるだけでダメージが決まる

イテレータの最適化を一部やってみたけど
背景は普通に配列を舐めてるだけなので
効果はあんまし無かった
単純労働かつミスすると動かなくなるので、疲れた
今日はここ迄にして置こう
0344某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/17(水) 20:50:28.03ID:GiW2arpg
今日は昨日の続きで
自機のビームとレーザーと
敵のイテレータの最適化をやった

こんなに手間掛かってたら
そもそものイテレータの意味が無い
ケチケチしないで最初から
専用のイベント枠を確保して置けば良かった
0345某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/18(木) 03:03:51.29ID:ALdoODV/
自機の武器のイテレータ最適化ぜんぶ終わった
残りの分、もう数日掛かりそう
0347某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/21(日) 00:44:28.92ID:KOT9C7ZR
最適化終わった

イテレータが早くなったのと
元から Wait0.0(VSync待ち)を
多目に入れてた分も削って、大分軽くなった
FPSがゲームとしてギリギリ成立してる

手間を掛けた分のリターンは有った
0348某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/21(日) 23:47:49.60ID:KOT9C7ZR
敵のダメージとバリアを作った
今はHPとそれへのダメージだけで処理しているけど
後でバリアも追加できる様に組んで有る
0349某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/23(火) 03:58:40.83ID:ZAhTBR/l
自機のステータスを作った

バリアが剥がれた状態でダメージを受けると
次々にステータスのフラグが立って行く
レーダーとか攻撃力などが出来たら
それへの効果を実装する

効果音とか変数の中身を見る限りは
多分きちんと動いてるっぽい
0350某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/23(火) 04:10:17.15ID:ZAhTBR/l
>>334
バリアの各処理は
・ダメージを引数で貰う
・バリアの分を差し引いた残りのダメージを返す
となっているので、フィルタの様に順番に呼んで行ける

ステータス(プラズマ・シールド(フォース・フィールド(
  PDSシフター(ダメージ))));
0351某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/24(水) 02:13:04.29ID:LlpvxOLb
敵のステータスを作った

変数をフラグとして使うと
メモリを無駄に食うし
イテレータ関係で重くなるので
ビット・フラグを使う事にしたけど
生憎ツクールにはビット演算が無い

桁 => n
0 => 1
1 => 2
2 => 4
3 => 8

二分探索で、指定されたビットの桁数から
2のx乗の数nに変換して
bits / n % 2
で、フラグ・ビットが立ってる時は
bits -= n
で、フラグをOffにして
立って無い時は
bits += n
で、フラグをOnにする事で
フラグの反転が出来る

でも、一寸これでも重そうなので
ミサイルが当たった時だけとかなら良いけど
毎フレーム、チェックするなら
数フレームに1回とかに間引く必要が有るかも
0352某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/27(土) 06:27:25.00ID:sDYrrAkh
ミサイルにステータス異常の効果を持たせて
PCに当たったら特定の効果が発生する様にした
敵の方が出来たら一段落つくので
ブラウザ版の更新をする予定

出来てもいない内から予定の話をしたとたん
義務感が発生して萎えるし
下手したらエタりかねないので
フリーウェアとかオープンソースで
「予定」は禁句
0353某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/28(日) 03:25:51.87ID:sM30yqvJ
地表面の自機への敵ミサイルの
ステータス異常も作った
ほぼコピペ

ミサイルを撃ってくる海賊は
恒星系と地表面だけにしか
出て来ないのでこれで終わりで
次は自機の側のミサイルをやる
こちらは4つのサブ・ゲームの分
作る必要が有る
0354某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/28(日) 04:52:31.35ID:sM30yqvJ
恒星系の海賊への自ミサイルの
ステータス異常も作った
残りはコピペで出来そう
0356某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/10/30(火) 07:33:16.57ID:cr+kPLpU
昨日は20時間かけてカード70枚に
キャラ設定と全体のプロットを書き出した
TS物と宗教の色が濃く出たので
背景に下げて間接照明を当てる感じにする
0358某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/01(木) 12:41:17.07ID:FWX5xQFn
コクピットのレーダーの画像を作った

コクピットのど真ん中をくり貫いて
裏に青色▽のレーダーを敷いた

自機から上中下の高さで表示が変わる
ターゲットのドットも作った
敵が赤で、それ以外が白い点
ミサイルはx印にした
0359某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/01(木) 14:57:17.57ID:FWX5xQFn
いくつの星系が有って
自機や武器、移動、サブゲームが
何処でアンロックされて
大ボス、ラスボスのサブゲームの種類
までは決めて有るけど
シナリオは来年の夏くらいから作り始める
来年末のニコフェスに間に合うかは微妙
0360某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/02(金) 17:09:05.66ID:Wec0rMiV
恒星系の海賊をレーダーに表示できる様にした

ドットのX = レーダーの幅 * 敵のX / 最大のX
ドットのY = -(レーダーの幅 * 敵のZ / 最大のZ)
※画面奥がZ軸のプラス

自機の上から見下ろしでドットのXY座標を求めて
そこにドットを描画する
レーダーの部分をくり貫いたコクピットを
更に手前に描画して
レーダーの範囲外のドットを隠す

敵のY座標によってドットの大きさを変える
・自機と同じ位のYなら普通
・下方なら小さく
・上方なら大きく
0361某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/03(土) 07:18:55.72ID:fJf+sJ6y
自弾と敵弾のミサイルも
レーダーに表示できる様にした

高度の表示変化無しで
他の処理は敵と同じ

色覚特性に配慮して
緑と赤で色分けしない様にした
水色とピンクとかの組み合わせはNG
0362某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/03(土) 10:25:37.51ID:fJf+sJ6y
敵をホログラフィに表示できる様にした

最後にロックオンした敵の画像を
表示倍率固定でレーダーの下に表示する
半透明のライトグリーンの光の画像で
サンドイッチして、それっぽくした
0363某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/03(土) 10:46:08.78ID:fJf+sJ6y
ホログラフィの透明度を
1フレーム毎に5%上下させて
フリッカーを表現した
0364某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/04(日) 08:08:37.15ID:JWoNftBl
主人公PTのプロフィールと役割などを割り当てた

A9(Anglers9)各担当メンバー
転生DNA実験体v.0.9.1&#12316;9
A-1:ウィルザード級クラッカー、情報戦担当
A-2:元SSSの操縦士、ライバル、A9を抜けている
A-3:S-IIIの艦長、主人公の嫁、地獄耳
A-4:ガンナー、S-IIIの弾幕担当
A-5:メカニック、修理と装備担当、怪力の持ち主
A-6:シェフ/医者、針・灸・マッサージ・グルメ担当
A-7:マネージャー、交渉担当、A9のVR動画編集長、TS能力持ち
A-8:科学技術者、アイテムの合成担当
A-9:スナイパー、SSSの操縦士、元白兵戦担当だった、主人公

オーバーレア:オペレータ、UI・チュートリアル担当、A-2補欠
博士:SSSのメイン・プロセッサ、戦略担当

v.0.9.10:オメガ教団先導者
v.0.9.11:SSS#1のメカニック
v.0.9.12:SSS#1の艦長
v.0.9.13:SSS#1の砲撃手
0366某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/06(火) 11:07:25.63ID:m+dPGT/d
二日間ひたすらWikipediaで資料読んだ
疲れたので作業に戻る
0368名前は開発中のものです。
垢版 |
2018/11/07(水) 12:28:30.64ID:KixSgOCK
>>367
あえて耳慣れない言葉にしてると思ってた
(厨・・・いや、独自設定を開チンしている所をくすぐっちまったかな・・・)
0370某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/07(水) 13:02:00.56ID:J65fe+WZ
メイン武器の切り替えで
アイコンをアニメする様にした

武器を切り替えると
アイコンが横から出て来て
カチャッと止まる
0374某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/08(木) 15:31:14.11ID:EomEcxzo
残弾ゲージの変化を実装した
只のフレーバー要素で武器毎に
味付けを変えた

「ビームの残弾ゲージ」
射撃中なら
 ピクチャ番号 -= 2
 ピクチャ番号 = (ピクチャ番号 + 11) % 11
 ピクチャ番号 += 1
※ピクチャ番号1はゲージ0、番号11はゲージ10

ビームのゲージは1射撃で1メモリ減って
0未満になったらフル・ゲージに戻るのを
繰り返す

「レーザーの残弾ゲージ」
射撃中なら
 ピクチャ番号 -= 1
 (ピクチャ番号 <= 0) なら ピクチャ番号 = 2
射撃して無いなら
 ピクチャ番号 += 1
 (ピクチャ番号 > 11) なら ピクチャ番号 = 11

レーザーは射撃中はゲージが減って行って
無くなったら1と0で点滅する
射撃を中断するとゲージが増える

「プラズマの残弾ゲージ」
ピクチャ番号 = チャージ率 / 10 + 1

プラズマはチャージ率が0から100まで変化するので
ピクチャ番号1から11に変換するだけ
0375某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/08(木) 23:29:51.88ID:EomEcxzo
サブ・アイテムのアイコン表示/切り替えと
残弾ゲージを実装した
メイン武器と違ってフレーバー要素で無く
残弾数をきっちり表示する

残弾数によって
1001発以上なら、青色でフル・ゲージ
101発以上なら、100発毎に青色ゲージ1本
11発以上なら、10発毎に緑色ゲージ1本
1発以上なら、1発毎に赤色ゲージ1本
0発なら、ゲージ無し

実際はアイテムは99個までしか持て無いので
緑色か赤色のゲージしか使わない
0376某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/09(金) 16:41:12.60ID:LBUIzP/T
円形メーターの画像を作った
燃料とフォース・フィールドの
それぞれの残量表示に使う

リング状にくり抜いたレイヤーの下に
メーターの色の四角を描いて
そのレイヤーだけ自作スクリプトで
一定角度ずつ回転させると
円弧のメーターのスプライト・シートが出来上がる

http://lnl.osdn.jp/images/Space-SSS/blog/2018/11/s/hud-circular-001.png
0377某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/09(金) 18:20:48.77ID:LBUIzP/T
各サブ・ゲームの中ボスのBGMを割り当てた
曲数は足りてそう
0379某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/09(金) 23:55:44.36ID:LBUIzP/T
円形メーターの処理を実装した

円形メーターは「回復」「ダメージ」「表示」の
3つのゲージのレイヤーが重なって出来ていて
それぞれ「現在値」に向かって常に変動する

「ダメージ時」:
 現在値 = 100 * フィールド値 / フィールド最大値
 回復 = 現在値
 ダメージはそのまま
 表示 = 現在値

フォース・フィールドにダメージを受けたら
ダメージの分が赤く描画されて
ダメージが現在値まで追い掛ける

「回復時」:
 現在値 = 100 * フィールド値 / フィールド最大値
 回復 = 現在値
 ダメージはそのまま
 表示はそのまま

フォース・フィールドが回復したら
回復した分が水色で描画されて
ダメージと表示が現在値まで追い掛ける
0380某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/10(土) 13:48:56.45ID:xvTfW3Qs
HUDのステータス表示を作った

自機のシルエットをパーツ単位に切り分けて
水色に塗り潰す
下のレイヤーに赤いダメージのシルエットを
敷いて置く

ダメージを受けたら
対応する部位のパーツを非表示にして
下のダメージのレイヤーを剥き出しにする
0381某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/10(土) 16:54:29.51ID:xvTfW3Qs
HUDのシールド表示を作った

描画はステータス表示と似てるけど
パーツ単位で無くて、ゲージ状
自機のシルエットの形をしたコップに
水を注いでる様な見た目
0382某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/11(日) 16:51:18.83ID:1qXgxHgq
HUDのPDSシフターの表示を作った
デジタル数字でカウント・ダウンして
バリアの上に描画する

下の白/水色/赤/黒と重なっても
識別出来る配色に手間掛かって
濃い黄色になった
0383某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/11(日) 22:28:41.56ID:1qXgxHgq
HUDのスピード・メーターを作った

N = メーターMax * 自機の速度 / 自機の最高速 + 1

N番のスプライト・シートを描画する
特にどうと言うものでも無い
0384某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/12(月) 13:55:37.39ID:0l1f7oTV
HUDの増加タンクの表示を作った
フォース・フィールドとシールドが最大7個
燃料が最大14個まで表示できる

燃料ゲージが0になった時
タンクの残りが有ったら1つ減らして
燃料ゲージを満タンにする方式だと
ゲージとタンクの両方を見ないと
残りが把握できない

なので、燃料の合計をゲージで表示して
ゲージが減るのにつれて
タンクの表示も減らして行く方式にした
0385某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/12(月) 14:17:42.61ID:0l1f7oTV
サブ・ゲームの開始時に
HUDが順番に点灯して起動する様に作ってある

フレーム++
表示フレーム = フレーム / ウェイト
表示数 = 現在値
(表示数 > 表示フレーム) なら 表示数 = 表示フレーム

タンクの場合は、これで通常の描画も
起動時の描画も同じ処理で出来る
0386某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/14(水) 22:39:56.38ID:3LMNhfMI
HUDのロックオン・マーカーを実装した
ロックオンし直す度に
中心から外へ開くアニメを描画する

これで恒星系のHUDが大体でき上がった
同時に星間通路、地表面、虚数空間のHUDも
画面下方にずらして描画するだけで出来た
今の所、恒星系以外では
敵は自機の正面にいるので
レーダーとホログラフィは
表示し無い事にした
0387某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/15(木) 16:27:01.07ID:bYv68l/f
ビル街の自車のHPゲージを作った
円形メーターは元々50%に縮小していたので
100%に拡大描画して流用した
0388某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/15(木) 22:07:09.98ID:bYv68l/f
ビル街の目標車両のマーカーの画像を作った
四角い枠に「Target」って書いてあって
そこから直線が伸びてる絵

直線の先端が画像の中心に来る様にして
他は余白にする事で、画像の大きさが変更になっても
描画位置を再調整しなくて済む
ツクールでは画像の中心が描画の基準点になっている
0390某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/16(金) 00:21:22.01ID:yMwgiSGB
>>389
いくらおっさんでもそんな古いの知らねーよ
三国志とかサリーちゃんなら解るけど
0391弟子
垢版 |
2018/11/16(金) 00:53:53.64ID:7t5JyUgZ
古いんか!
0392名前は開発中のものです。
垢版 |
2018/11/16(金) 08:44:10.25ID:ENRxFd97
カッチンカチャリコズンバラリン
カッチンカチャリコズンバラリン
意欲が消えたらまっくらやみだ〜
0393某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/16(金) 18:14:45.30ID:yMwgiSGB
ビル街のターゲット表示できた

自車より画面奥にいる時は
敵車の座標に描画して
画面手前の描画範囲外にいる時は
Y座標は画面一番下で
X座標は道路の幅全体で
どの辺りにいるかで決める

画面奥から一番下まで
カーブに沿ってパースが付いてて
そこから下はパース無しの直線
になってるのをイメージする
まぁ実際に自分で作って見ないと
何言ってるか解らんだろうけど
0394某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/16(金) 23:26:11.30ID:yMwgiSGB
>>393
こんな形したもの見た事無いので例え憎いが
鉛筆の削った部分がパースの効いた道路で
左右に曲がる

そこから下の握る部分が
パース無しで真っ直ぐ続いてる感じか

敵がその範囲内だけに存在するイメージ
0395某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/17(土) 18:36:36.28ID:w5LoR7mH
ビル街のスピード・メーターを作った
√ルート字のゲージとデジタル数字を表示する

ゲージは赤色の上に緑色のを重ねて
緑色は巡航速度までに制限して
赤色はブースターの最大速度まで表示する様にする
こうするとブーストした時に
ゲージの緑の部分の先にレッドゾーンが
連なる感じで描画される

一枚のピクチャでやると、レベル・デザインの段階で
巡航速度とレッドゾーンのバランスを調整する度に
画像を描き直す必要が出て仕舞うので
そうなら無い様にこうした
巡航速度の定数を書き換えるだけで良い
0396某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/17(土) 19:12:46.60ID:w5LoR7mH
これでHUDも終わったので、次はアイテムをやる
思い付く端から適当に作って用意して置いて
アンロックとバランスの調整は
シナリオとレベル・デザインまで先送りする
0398某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/20(火) 15:20:36.84ID:y3YBhbeh
対ミサイル用のフレアとデコイの画像を作った
ついでにビル街のスピード・メーターの
√の角を面取りして丸くした
0399某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/21(水) 16:35:25.24ID:IufZHnTa
恒星系のフレアを実装した
自機の後方から迫るミサイルを
吸い寄せて無効にする

フレアを発射した直後に
Z座標がマイナスのミサイル全てにフラグを立てて
ミサイルの移動処理でそのフラグが立ってたら
フレアの座標に近づいて、ぶつかったら消滅する

一定フレーム置きに1発しか連射でき無いので
タイミング良くミサイルを
まとめて巻き込む必要が有る

防具のスペック一覧
VTブラスター:前方、全体、2連射
フレア   :後方、全体、単発
デコイ   :全方位、単体、単発
0400某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 05:00:25.08ID:xesun/ca
地表面のフレアを実装した
発射すると後方に食い付いてる敵に
ダメージを与える
フレアの本来の使い方とは違う設定

海賊以外のサブ・ゲームでは
敵がミサイルを撃たないので
発射できない様にした
0401某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 19:03:44.20ID:xesun/ca
恒星系のデコイを実装した
全方位から来るミサイルに
向かって行って、体当たりで破壊する

発射ボタンを押したら
ミサイルのx,y,z座標の合計が
一番小さい物をロックオンして
それへ向かって移動する

ミサイルが発射されて無ければ
デコイを発射せずにエラー音を鳴らす
0402某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 19:11:28.58ID:xesun/ca
ミサイル等の残弾数が1より
減らないバグを直した

装備中のアイテムは減らしても0になら無いので
アイテムの装備中と所持中の合計数が1だったら
装備を外してから所持数を1減らす
0403某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 19:29:28.33ID:xesun/ca
>>401
>ミサイルのx,y,z座標の合計

x,y,z座標の絶対値を足した合わせた合計な
0404某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 19:57:55.15ID:xesun/ca
メイン武器は「武器」サブ・アイテムは「楯」
としてアイテム・データを設定してあって
切り替える度に自機のキャラに装備してるので
メニューから装備する事でも
使用するアイテムを切り替えられる
0405某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/22(木) 23:28:49.04ID:xesun/ca
地表面のデコイを実装した
恒星系と地表面以外では、発射できない様にもした
0406某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/25(日) 02:50:24.16ID:Tm6S6bZc
キャラ設定のカードを幾つか追加した

利用規約でツクール専用になってるキャラ素材を
UE4で使える様に自由なやつに移行できないか
検討してる
0409某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/29(木) 22:07:35.44ID:Blw+CYHM
VTブラスターで敵弾を消せる様にした
但し虚数空間の敵弾に対しては効果無し
0410某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/11/30(金) 23:02:31.25ID:5rpjVInX
アイテムの番号を大体割り振った
頻繁に使う消費アイテムは
なるべく一覧の上の方に来る様にした
0411某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/05(水) 11:32:56.24ID:94jhuLat
アイテムのPDSシフターを実装した

アイテムを使うとツクールのシステムが
フラグを立てるので
それをトリガーにしたイベント内で
PDSシフターのタイマーをセットする

但しフラグ有りのアイテムだと装備できないし
楯にするとメニューから使用できないので
コントローラと消費アイテムに分けた

「コントローラ」
・楯として装備できる
・戦闘中Zキーで消費アイテムを使用できる

「消費アイテム」
・装備できない(しない)
・メニューから使用できる

消費アイテムは合成したり店で買ったり出来るけど
コントローラをアンロックして所持していないと
使用できない様にする
0412某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/06(木) 08:39:23.24ID:Tc02doQO
フォース・フィールドとプラズマ・シールドの
アイテムを実装した

コントローラの名称をトリガーに変更した

トリガーと消費アイテムを隣にすると
トリガーを装備する度にアイテムの並びが
変わって仕舞うので、トリガーを
アイテムの並びの後ろの方に移動した
0413某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/08(土) 06:28:28.37ID:DJ1bXRUi
ステータス修理アイテムを実装した
使うと一定時間後ステータス異常が
ランダムで3種類回復する

デザイン的に、このアイテムは
戦闘が終わってから使うもので
戦闘中に使ってる時点でゲームオーバーは間近
0414名前は開発中のものです。
垢版 |
2018/12/08(土) 08:50:41.36ID:R/phYPtS
ここも生き残っている数少ないスレだ。
頑張って下さい
0415某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/08(土) 11:52:53.86ID:DJ1bXRUi
>>414
来年の今頃は、先に動画でニコフェスのエントリー終わって
その隙にデバッグと調整してるかな
頑張ります
0416某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/13(木) 09:43:05.39ID:oKVEmYoJ
フォース・フィールドの回復と
エナジーの消費の処理を作った

一定フレーム置きに
フィールドが最大値より少なければ
エナジーを減らして、フィールドを増やす

エナジーの消費処理は、引数として
加速や回復などの消費の種類と
調整割合を渡すとエナジーを減らして
HUDの設定をし
エナジーが足りたかどうかを戻り値として返す
0417某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/13(木) 14:58:24.43ID:oKVEmYoJ
恒星系の武器発射と移動時の
エナジー消費の処理を作った

エナジーが足り無い時は
発射と移動を制限する
0418某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/15(土) 18:08:40.05ID:6zbd3aK9
ビル街と白兵戦以外の武器発射と移動時の
エナジー消費の処理を作った
0419某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/19(水) 11:20:29.57ID:mNpxybDe
燃料の補給アイテムを実装した
使うと燃料タンク1つ分回復する

効率良くギリギリまで粘ってから回復するか
安全を重視して早めに使ってしまうか
トレードオフになっている

これでエナジーとバリア関係のアイテムは出来た
0420某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/20(木) 16:09:07.43ID:ZYTkBRpj
バフの設計だけやった
これだけ有れば足りそう
デバフはステータスで扱う

・命中値
 敵への当たり判定のサイズ
・回避値
 自機の当たり判定のサイズ
・攻撃力
 敵へのダメージ
・防御力
 自機へのダメージ
・運動性
 旋回の加速度と最高速度
・機動性
 前後移動の加速度と最高速度
・燃費
 エナジーの消費率
・バリア回復速度
 バリアの回復間隔
・ドクロの旗印
 援軍要請
0421某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/22(土) 12:22:15.64ID:tfNfvqAJ
バフの基本システムが出来た
実際の効果はまだ

バフ・アイテムを使ったら
強化率 = 150% とかして、タイマーに効果時間を入れる
で、毎フレーム、タイマーをカウント・ダウンして
0 になったら 強化率 = 100% で元に戻す

消耗品で無くて装備の場合は
タイマーに 9999 を入れると、効果が無限に続く
0422某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/24(月) 18:38:04.40ID:my9EyMJ0
自機の座標と速度のベクトルをリファクタリングしてる
変数の割り当てケチって、汚いデータ構造になってる
最初からきちんとして置けば良かった

暫くかかりそうだけど、やっとか無いと
速度関係のバフが実装できないのでやる
0425某犬犬 ◆HzfAAjcl8nz1
垢版 |
2018/12/30(日) 18:30:53.92ID:JktCI3xl
ベクトルのリファクタリングの地表面の分終わった
めんどい
0426某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/17(木) 21:39:58.29ID:/C0+GpiK
あけおめ、ことよろ
ベクトルのリファクタリングの虚数空間の分終わった
モチベだだ下がりだけど、あともうちょい
0428某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/18(金) 04:08:08.25ID:Pz7j6eHR
ベクトルのリファクタリングのビル街の分終わった
後は白兵戦だけ
0429某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/18(金) 20:54:34.11ID:Pz7j6eHR
ベクトルのリファクタリング全部終わった
ようやっとアイテム作成に戻れる
0430某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/25(金) 07:29:40.44ID:+tyDSwc7
命中力と攻撃力のバフの効果を実装した

N = N * レート / 100

当たり判定の範囲やダメージの値(N)にレートを掛けるだけ
0431某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/26(土) 11:28:12.06ID:Vf7ZA8bm
恒星系で自機に敵弾が当たった時
回避率に応じて避けられる様にした

回避率 = ピッチ速度 * (マニューバ率 / 100) * (Z速度 / 最大Z速度)

Z速度を上げながらピッチを上下すると、回避率が上がる

ピッチ速度 < 50 なら、マニューバ率 = 100%
ピッチ速度 >= 50 なら、マニューバ率 -= (100 - (ロール速度 / 2))

ピッチを連続で上下し続けていると、効果が減衰する
左右にロールすると、その減衰を遅らせる事が出来る

確率で回避できるのはシューティングとしてどうなんだ
と言われるかも試練けど、一応RPGだし
ワンパターンなCPUが相手だと、すぐに攻略されて
特定のマニューバで簡単に回避できてしまうので
対策としてこうなった
0432某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/28(月) 19:30:46.84ID:jel4stBW
「性別コード」

TSモノのゲ制のキャラ設定をする上で
性別を表すコードが必要になったので作ってみた。
性別だけを表しているので人外、シチュ、フェチ等の属性は
別途付記する必要が有ります。
同人誌や動画などのタグとして使えるかも知れません。

性別を下記の身体・心情・指向の三つの組で表します。

身体:生まれつきの体の性
心情:自分の気持ちの上での性
指向:好きになる対象の性

更に各組は下記の成人・未成人の片方または両方で一組になります。

成人
A:無性
F:女性
M:男性
B:両性
N:中性
X:非公開

未成人
a:無性
f:女子
m:男子
b:両性
n:中性
x:非公開
0433某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/28(月) 19:32:03.74ID:jel4stBW
>>432
例えばこんな感じです。

MMF:一般の成人男性
FFM:一般の成人女性
MMf:ロリ専門男性
MMFf:年齢気にし無い男性
MMM:攻め
MNM:受け
FFXx:腐女子(MMM x MNM 好き)
Fff:百合
Mff:男の娘
mnf:女装子
BfMm:フタ
fmMm:ボーイッシュ
FFm:オネショのお姉さん
mmF:オネショのショタ
mmf:出会う前のショタ
mmAf:お姉さんにトラウマにされたショタ
mmAa:お姉さんもパパも友達も皆嫌いだ!なショタ
Mfn:アストルフォ、ブリジット
mnn:秀吉
MnFf:ハヤテ、白鳥隆士
FNM:オスカル
MBm:バンコラン
BnM:マライヒ
mmm:ナルキッソス
mNmAm:アッシュ・リンクス
mmf/fmf:早乙女乱馬
0434某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/28(月) 19:33:56.52ID:jel4stBW
>>433
FmFm の場合 Fm/F/m なのか F/m/Fm か曖昧になるので
前者なら FmFAm 後者なら FAmFm と表記します。

大人と子供の組は右側を優先に組になる(右結合)ので
右から読んだ方が判り易いです。

MnFf なら右端の Ff を組みとして残りは
M, n の二文字だけなので、M / n / Ff になります。
Mn / F / f にしたければ MnFaf と表記します。

既存のキャラを分析・分類すると面白いかも。
0435某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/01/28(月) 20:03:19.14ID:jel4stBW
>>434
普通の性別・血液型・星座より
キャラのパーソナリティが掴みやすいと思われます。
0436名前は開発中のものです。
垢版 |
2019/01/29(火) 10:39:02.89ID:vujHvWyz
「君の名は。」等のTSもので男女の心が入れ替わった場合は
mmf, ffm から fmf, mfm にTSし
そのままお互いを好きになった場合は
fmm, mff に変化します
異性を好きな気持ちが残って居るなら
fmb, mfb と言う事になります
しかし、好きなのは相手の体で無く心の場合は
fmf, mfm となります
0438某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/03(日) 23:35:21.37ID:YsA7lHfz
回避力と防御力のバフの効果を実装した

恒星系の回避は確率で決まるので
回避力を掛けるだけだけど
恒星系以外では見た目が当たったら当たりなので
防御力でダメージを減らした後に
さらに回避力でも減らす様にした

後でこの辺の仕様は変更するかも
0439某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/04(月) 12:15:41.36ID:s8tb2JXP
恒星系以外の回避力のバフの効果を変更した

乱数 % 回避力 >= 100 ならダメージ無し

回避力が 100% 以下なら必ずダメージ有り
回避力が 150% なら 3 回に 1 回ダメージ無し
回避力が 200% なら 2 回に 1 回ダメージ無し

各サブ・ゲームの武器毎の当たり判定から呼ばれる
共通のダメージ処理に仕込んだので
一か所書き換えるだけで済んだ
普通の言語では当たり前の事だけど
ツクールでは色々面倒だったりする
0440某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/04(月) 16:37:03.31ID:s8tb2JXP
運動性と機動性のバフの効果を変更した

運動性のバフは旋回速度の上限と加速度を150%に上げて
機動性はZ速度の上限を150%に上げる

効果時間が切れたら100%に戻す
0441某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/05(火) 16:09:06.74ID:GQmpWqzc
運動性と機動性のバフの効果を
恒星系以外にも対応させた

効果発動時と時間切れの時のSEも設定した
0442某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/05(火) 20:02:57.95ID:GQmpWqzc
燃費向上と回復向上のバフの効果を実装した
燃費と回復はシーソーになっていて
一方を上げれば他方が下がる

メニューを閉じた後に呼ばれるイベントで
バフ・アイテムを装備しているか
チェックして、フラグを立てる
フラグが立つと自動で呼ばれるイベントで
バフの処理を行う
こうするとバフ・アイテムを
装備している時だけ、バフが掛かる
0444某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/07(木) 21:17:45.00ID:/PhHG6cF
急加速するブースターを実装した
アイテムを使ったら最高速度を二倍にして急加速する

「フェーズ 0」
最高速度を通常にする
ブースターを使ったら、タイマーを設定して、フェーズ 1 にする

「フェーズ 1」
最高速度を二倍にする
倍速で加速し続ける
減速キーが入力されたら、フェーズ 2 にする

「フェーズ 2」
最高速度を二倍にする
タイマーが切れたら、フェーズ 0 にする

恒星系で敵を振り切って逃走判定に持ち込んだり
ビル街でターゲットの車両に追い付きたい時などに使う
まだサブ・ゲームよっては背景の移動に不具合が出る
0445某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/09(土) 02:23:48.26ID:3F6y1Asm
アイテムのアクセル・スロットルを実装した
装備した状態でサブ・アイテム・キーを
押すと加速、放すとゆっくり減速する
スターラスターの様な操作になる

キー入力イベントで装備しているかチェックして
・サブ・アイテム・キーがOnなら
 加速キーをOn、減速キーをOff
・サブ・アイテム・キーがOffなら
 3フレームに1回だけ ((frame % 3) == 0)
  加速キーをOff、減速キーをOn
・サブ・アイテム・キーをOff
0446某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/10(日) 01:01:52.70ID:bBiTLW7b
燃料タンクのアイテムを実装した

メニューの処理が済む度に
燃料タンク、シールド・バッテリー、
フォース・フィールド・バッテリー
のアイテム数を数えて
HP、シールド、フィールド
の最大値を設定する

燃料タンクが手に入るミッションを
クリア後に何度でも受けられる様に
燃料タンクを一つひとつ別アイテムにして
既に手に入れたフラグも兼ねる様にした
手に入るのは1種類に付き1個だけ
今の所最大14個用意してる

燃料タンク 1
燃料タンク 2
……
燃料タンク 13
燃料タンク 14
0447某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/10(日) 01:25:26.33ID:bBiTLW7b
これでアイテムは大体片付いた
合成素材とクエスト用アイテムは
後で必要になってから作る
0448某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/19(火) 11:37:14.18ID:xU/GGLcu
HUDのアイテム・アイコンの画像を作った
描画も出来る様に調整した

アクセル・スロットルの残弾数は
自機の速度%を表示する様にした
0449某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/19(火) 15:19:35.36ID:xU/GGLcu
ビル街の速度のバランス調整をした

船の装備のアクセル・スロットルは
ビル街では使わないので無効にした

ターゲットの車両のAIも実装した
道路の自機が居るのと反対の車線へ
移動して逃げようとする様にした
0451某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/19(火) 17:18:38.12ID:xU/GGLcu
age
0452某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 01:19:33.75ID:TYKI515k
FPS(白兵戦)の壁の隙間を無くした

・壁の画像からアルファ値を抜いて
輪郭をくっきりさせた(幅のテーブルも調整)

・スプライト・シート番号を
0から指定していたのを1から始まる様に修正

・壁の回転画像がパースの関係で
中央からズレていたので修正

以上の調整で、画面の端でZ座標が
マイナスになって見切れる場合を除いて
隙間が空く事が、ほぼ無くなった
0453某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 03:37:56.73ID:TYKI515k
音楽鳴ら無いと寂しいので
仮のBGMを再生する様にした

BGMファイル全部インポートすると
バックアップ時に無駄に容量増えるので後回し

フィールドや戦闘の曲は
それが最初にアンロックされる恒星系と
最後の恒星系に印象的な曲が来る様にした
ボスはボスっぽい曲
0454某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 04:02:39.78ID:TYKI515k
壁の角度を少し滑らかに繋がる様にした

画面上のX, Yの比率から角度を求める為の
テーブルの値を隣同士の中間値にした
角度の判定を緩めに設定した事になる
0455某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 05:35:01.78ID:TYKI515k
>>454
これ atan だろってなって
tan テーブル作ってそこから二分探索で
角度を求める様にして見たけど
実際のドット数からテーブル作った方が
微妙に合ってる感じになった
ドット画だからなw
0456某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 06:06:22.42ID:TYKI515k
ツクール2003では拡大率を縦横別々に
指定できないので、この辺が描画精度の
限界だろうと言うお気持ちになっている

MVだとスクリプト使えば行ける様だけど
0457某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/21(木) 10:53:16.58ID:TYKI515k
燃料が無くなったら
残弾ゲージも0になる様にした

武器発射時のHP消費チェックで
フラグを立てて、HUD描画時に
チェックして強制的に0で描画する
0458某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/22(金) 15:52:38.33ID:LXJ+SWfq
FPSの壁の押し出し処理を作った
ツクールの2Dマップを壁の生成だけで無く
当たり判定にも使っている

・(PCのX速度 > PCのY速度)の時は
 Y方向の判定を先にやってからX方向の判定をする
・逆の時は
 X方向の判定を先にやってからY方向の判定をする

こうすると上に進んでいて左肩が壁に掠った時に
右に避けつつそのまま上に進める様になる
0459某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/22(金) 15:53:15.12ID:LXJ+SWfq
「Y方向の判定」
・PCを正方形と考えて4つの角がそれぞれ
壁にめり込んでいるか調べる
角を点と考えて、マップ上のその座標の地形を
調べて判定する

・上方向の2つの角の両方がめり込んでいるなら
 上カウント = 2
・片方だけなら
 上カウント = 1
・どちらもめり込んで無ければ
 上カウント = 0
・下方向の2つの角も同様に数える

・(上カウント > 下カウント)なら
 PCを下方向に押し出す
・(下カウント > 上カウント)なら
 PCを上方向に押し出す
・それ以外ならそのまま
0460某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/22(金) 15:53:44.68ID:LXJ+SWfq
こうすると左に移動して壁に当たった時に
左上だけ当たっている時は
(上カウントが1、下カウントが0なので)
下に避けてから左へ移動し
左下も当たってる時は右に押し出されつつ
(上カウントが1、下カウントが1なので)
少し斜め向きなら微妙に上下に
移動し続ける様になる

また、部屋のL字の角に斜めにぶつかった時に
Y方向の判定で上下とも壁なので押し出し出来ず
X方向の判定も同様に出来無いので
そのまますり抜けて部屋の外に出て仕舞うので
フラグで無くてカウントにしている

この場合
Y方向は上カウントが2、下カウントが1なので
下に押し出され、その後
X方向は左カウントが2、右カウントが0になるので
右にも押し出されて、部屋の角で止まる
0462某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/23(土) 03:55:32.90ID:tr501z73
「上方向の判定」

・上カウントが1、下カウントが0の時は
上だけめり込んでるので、下へ押し出し

・上カウントが1、下カウントが1の時は
上下にめり込んでるので、押し出しは無し
(横へは押し出される)

・上カウントが1、下カウントが2の時は
L字なので、下の押し出しは無し(上は有る)


・上カウントが2、下カウントが0の時は
上だけめり込んでるので、下へ押し出し

・上カウントが2、下カウントが1の時は
L字にめり込んでるので、下へ押し出し

・上カウントが2、下カウントが2の時は
完全に壁の中なので、身動きが取れない
(特別な処理が必要)

下・左・右方向の判定も同様
0464某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/23(土) 12:16:38.98ID:tr501z73
FPSのサイコガンの画像を2種作った

ノーマル・ショットはライフルの薬莢の3Dモデルを
後ろ向きにしてFF:Uの魔銃っぽくでっち上げた

バースト・ショットはノーマルの上に
ミニガンを乗っけた
0465某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/23(土) 12:26:08.14ID:tr501z73
>>464
カメラの位置を一寸動かしてはレンダリング
の繰り返しなので、リアルタイムでプレビューしたい
0466某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/23(土) 16:09:28.88ID:tr501z73
FPSでのPCの武器

パルス・ショット:ダメージx1、三点バースト、マガジン無限
バースト・ボルト:ダメージx2、フルバースト
グレネード   :範囲ダメージx16、手榴弾、スモーク効果
ビーム・クリス :ダメージx4、近接ナイフ

武器名とダメージは未確定
0467某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/25(月) 11:36:44.87ID:Up6mr9sk
パルス・ショットとバースト・ボルトの
アニメ・パターンを作った

サイコガンがクルッと回転し
上部がパカッと開いてバースト・ボルトが出て来る
0468某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/25(月) 15:07:51.07ID:Up6mr9sk
グレネードのアニメ・パターンも作った
拳銃のモデルを投射方向に斜めに向けて
サイコガンの上面へと、くっ付けた
0470某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/25(月) 18:54:05.32ID:Up6mr9sk
サイコガンの名前は「MPG - マルチフェーズ・ガン」
辺りが良きかな
0472某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/26(火) 16:43:33.62ID:i5i+M8FM
ビーム・クリスのアニメ・パターンを作った
志村けんのアイーンの構えから
右上前方に薙ぎ払う

取り敢えずマルチガンの画像は出来た
0473某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/27(水) 14:49:38.63ID:iVT3JNgl
マルチガンの描画を実装した
武器を切り替えるとアニメする

・現在のコマ数 = 最大コマ数
 ……
・現在のコマ数 -= 1
・(現在のコマ数 == 0) なら……

武器を切り替えた時に、現在のコマ数を設定して
フレーム毎にカウント・ダウンすると
武器によって最大コマ数が違っても
アニメを終了して攻撃可能になった事が
0と比較するだけで判別できる
0474某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/27(水) 15:27:53.03ID:iVT3JNgl
>>473
コマ数をカウント・ダウンするのに合わせて
画像のアニメ・パターンも右から左に並べている
ツクールではスプライト・シートの番号を
左から右にカウント・アップする為
0475某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/27(水) 15:53:03.97ID:iVT3JNgl
ビーム・クリスの攻撃アニメを実装した

攻撃キーを入力すると専用のアニメを描画する
アニメ・パターンは、マルチガンの画像に
武器切り替えアニメと一緒に入れて有る
0476某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/28(木) 11:00:05.43ID:yCo0YeXR
メニューの後処理で
装備中の武器のIDを更新する様にした

これでキー操作だけで無く
メニューからもメイン武装やサブ・アイテムを
切り替えられる様になった
0477某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/28(木) 11:43:27.49ID:yCo0YeXR
ビル街の未使用のキーにブースターを割り当てた
Shift + Z or X で発動
0478某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/02/28(木) 15:12:43.66ID:yCo0YeXR
地表面で敵を再ロックオンした時
マーカーがアニメしていなかったのを修正

ロック/再ロック時に
アニメのコマをリセットさせた
0479某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/02(土) 16:55:55.38ID:7wuZTk1B
ビーム・クリスのビーム刃の描画を作った
攻撃モーションに合わせてアニメする
0480名前は開発中のものです。
垢版 |
2019/03/02(土) 22:19:07.64ID:7wuZTk1B
ビーム刃を反転させたコマも用意して
スパークが飛び散る様にした
透明度も周期的に上げ下げして明滅させた
0481某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/03(日) 11:58:27.89ID:ctaZXkRv
マルチガンの弾の画像を作った
幾何学模様っぽいデザイン

パルス・ショットはオレンジの▽
バースト・ボルトは青い◇が4つ
グレネードはワイヤーフレームの玉の中に
赤いクリスタルが入ってる
0482某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/04(月) 18:05:56.37ID:4gY6feVG
マルチガンの弾の描画の一部が出来た

パルス・ショットは三点バーストなので
連射回数をカウントして置いて
3以上になったら一度キーを放すまで
発射しない様にした
バースト・ボルトは制限無し

パルス・ショットがオレンジ色だと
砂漠では見難いので黄緑の▽に変更した
0485某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/05(火) 01:33:18.34ID:hU7oy9+S
主人公はロン毛の美形マッチョの予定なので整形前だな

「本当にいいんだな?」
「あぁ、思いっきりやってくれ」
  ……術後
「ヒュー。こいつは飛びっきり不細工だ」
0488某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/06(水) 17:43:59.10ID:oY46P5uX
FPSのPCの横移動とヨー旋回時の
自弾の移動を実装した

・自弾の座標はPCの視線方向に固定している
(ワールド座標系で無くて、スクリーン座標系)
・横移動は自弾のX座標を左右に移動させる
・ヨー旋回時は自弾の透視図法の消失点を
遠景のスクロールと同じ分だけ左右に移動させる

自弾は撃った瞬間に
敵との当たり判定を済ますので
弾道はフレーバー要素に過ぎ無い
こうすると座標と速度ベクトルの回転の
重い処理を省ける訳だ

この辺がポリゴン3Dゲーと違って
スプライト2.5Dゲーの狡い所である
0489某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/06(水) 20:21:44.57ID:oY46P5uX
マルチガンのリロードを実装した

マガジンが空になったら自動的にリロードする
予備のマガジンも空になったら効果音を鳴らす
武器の切り替え処理がリロードを兼ねる

「リロードでの弾数の変化」
・N = 装弾数 - 現在の弾数
・(N > 予備弾数)なら N = 予備弾数
・予備弾数 -= N
・現在の弾数 += N
0490某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/06(水) 21:05:38.34ID:oY46P5uX
パルス・ショットの予備弾数が
99,999だったら予備弾数を
減らさない条件を入れて
無限にリロード出来る様にした

グレネードの装弾数に100とか
適当に大きな数値を設定して
事実上リロード無しにした
一度の突入で数発しか
補充されないので問題無い
0491某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/08(金) 02:20:58.59ID:dEMFBso+
グレネードの変動するパラメータ多過ぎて収拾つかなくなってる
取り敢えず目標地点の描画作って、その辺に着弾すれば良いや
今日はお仕舞い
0492某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/14(木) 04:35:46.02ID:peeTxnm4
グレネードの目標地点の描画が出来た

攻撃ボタンを押している間
視点方向の手前と奥を往復する
攻撃ボタンを放したら
目標地点へ向けてグレネードを発射する

・(フレーム <= 1) なら 符号 = +1
・(フレーム >= 最大) なら 符号 = -1
・フレーム += 符号
・Z = VZ * フレーム

これで目標地点の視点方向のZ座標を往復させる
0493某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/14(木) 23:59:45.90ID:peeTxnm4
レース用の画像素材探しとBGMの割り当てをした
FPSのHUDのデザインもした
0494某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/17(日) 06:03:59.99ID:YCfg/Oct
グレネードを投げられる様にした
初速を計算して発射し、放物線を描く

初速 = 平方根((重力加速度 * 距離) / (2 * sin(45) * cos(45))

本当は地面からの武器の高さを考慮する必要が有るけど
複雑な計算の割には大して差が無いし
バランス調整が大変になる
爆発する座標は撃った瞬間に
マップ平面で計算済みなので、これで良い
0496某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/19(火) 08:27:33.46ID:RqzYy22/
グレネードの爆発を実装した

キーを押したら、照準を前後に往復させて
放したら、そこを目標地点として
座標を「照準→グレネード→爆炎」の順に
伝えて行って、そこで爆炎をアニメさせる

これで白兵戦でのPCの攻撃は大体終わった
当たり判定は敵が出来てからにする
0498某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/20(水) 09:26:49.72ID:q69fB3i7
壁のイテレータとか細かい最適化をした

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

コード読み直して、敵の描画処理の
見当をつけた
0500某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/21(木) 11:21:41.22ID:+0gLwVuf
FPSの敵の画像をレンダリングした
取り敢えず1種類だけ作って動かして見て
問題無ければ残り3種類 + ボスも作る

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

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

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

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

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

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

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

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

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

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

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

砲塔は常にPCの方向を向いていて
何時でも攻撃できる様になっている
0512某犬犬 ◆HzfAAjcl8nz1
垢版 |
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と重なっている時は、向きを変えない
0513某犬犬 ◆HzfAAjcl8nz1
垢版 |
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
 }
}
0514某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/25(月) 05:30:12.70ID:mBobaV08
戦車の攻撃パターンをネタ出しした

・自機狙い
・4Way
・緩いホーミング
・ランダムに揺れる弾幕
0515某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/25(月) 08:58:19.17ID:mBobaV08
PCが敵戦車に轢かれたらダメージを受ける様にした
ダメージと効果音の処理の一部を実装した
0516某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/26(火) 16:21:02.56ID:yQUdAvyc
戦車4種のレンダリングした
Blender が少しずつ解って来た気がするけど
たぶん気のせい
0518某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/27(水) 14:52:20.43ID:kz4Q+KiW
戦車の砲弾の画像を作って、取り敢えず
撃ったその場に描画する所までやった
PCの回転や移動もおk
0519某犬犬 ◆HzfAAjcl8nz1
垢版 |
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回分実行する事で
壁のすり抜けを防ぐ
0520某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/28(木) 15:15:10.72ID:yyMS9KtM
>>514
・自機狙い
単発で撃って来るだけ。単純に雑魚

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

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

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

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

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

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

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

こっちのは、弾の速度で割る前の値な
説明を省くと文章にバグが入り込む何時ものやつ
0523某犬犬 ◆HzfAAjcl8nz1
垢版 |
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の座標に加えた座標に向けて飛ばす
0524某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/03/30(土) 09:59:52.16ID:RzjCApdz
敵戦車のホーミング攻撃を実装した

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

自機狙いは残像拳と一緒で
当たる頃には、もうそこに居ない
「馬鹿め!何処を狙っている!わしはここだ」
0526某犬犬 ◆HzfAAjcl8nz1
垢版 |
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 の拡散波動砲
0527某犬犬 ◆HzfAAjcl8nz1
垢版 |
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にダメージ
0528某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/02(火) 16:35:36.82ID:kiYAJn+a
移動や攻撃などのキーが押されていなかったら
PCのHPを少しずつ回復する様にした
0529某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/02(火) 16:36:07.30ID:kiYAJn+a
グレネードの煙幕で敵弾を防げる様にした
当たり判定は敵弾xPC等と大体一緒
0530某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/02(火) 16:44:45.11ID:kiYAJn+a
自弾のパルス、バースト、グレネードと敵との当たり判定できた

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

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

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

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

2コマでモーションして3コマ目で戻るので
ダメージも半分ずつに分けて与える
0534某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/03(水) 09:40:46.20ID:MRhUeRMg
四捨五入ルーチン呼んでる所インライン展開したら
めっちゃ速くなったwもう別ゲー
0536某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/03(水) 14:16:52.40ID:MRhUeRMg
FPSの戦車のダメージ・エフェクト作った

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

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

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

フェードアウト処理で
赤画面のピクチャ番号が0だったら普通に描画
番号が入ってたら黒画面の下に
赤画面を透明度50%で描画する
0539某犬犬 ◆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度毎に回転させて
奥から手前の順に変換する

画像は菱形を描いて
自前スクリプトで回転コピペしたものを
上下に縮小したものを使用する
0541某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/04(木) 12:17:25.82ID:qRoOXX5a
10時間かけて作って余韻に浸ってるけど
「だから何?Unityならそんなの10分で作れるよ」
と言う目線が厳しいので後でUE4で作り直します
0542某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/04(木) 22:18:34.23ID:qRoOXX5a
三角関数の調整をした

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

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

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

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

GIMPで粗いドットの袋文字を作る手順
・普通に文字を描く
・下のレイヤーにコピペする
・色を替える
・縦横8方向に1ドットずつずらしてコピペする
0547某犬犬 ◆HzfAAjcl8nz1
垢版 |
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文字で無限
0549某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/10(水) 20:10:17.06ID:bnRj0nsh
アイテムのグレネードの画像を作った
コアになる液体が透明なカプセルに封じられてる感じ

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

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

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

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

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

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

出口を壁として描画して置いて
エリアの達成条件を充たしたらフラグを立てて
出口を出口の画像で描画する
0557名前は開発中のものです。
垢版 |
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ゲーは作れる
後は全部これの応用、難しく考えなくていい
0558某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/16(火) 20:07:33.81ID:oNitq/wd
敵を倒したら、敵が全滅したかチェックして
アリア達成フラグを立てる様にした
立ったら出口が現れる
但しコンテナは数に含めない
0560某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/16(火) 23:00:46.24ID:oNitq/wd
出口に接触したら
次のエリアにマップが進む様にした
スプライトのロード無しでマップを初期化する

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

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

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

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

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

http://lnl.osdn.jp/pukiwiki/index.php?blog
0563某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/17(水) 22:40:53.75ID:1eJW+mIp
>>562
ゲーム速度を Celeron オンボに合わせてるので
後で設定メニューから高速版も選べる様にします。
0564某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/17(水) 23:46:07.30ID:1eJW+mIp
安物のノートPCで制作始めて良かったワ
Core i7に合わせてたらCeleronでゲームになら無かった
0568某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/04/24(水) 05:19:07.90ID:f1mw/H+I
F-2003のコース外の当たり判定を作った

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

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

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

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

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

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

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

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

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

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

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

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

コースアウトしたらHPを0にする
0580某犬犬 ◆HzfAAjcl8nz1
垢版 |
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
0581某犬犬 ◆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
0582某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/05/12(日) 16:52:03.92ID:4L9OTjw7
F-2003のニトロのギミックを実装した

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

大分軽くなったし何故最初からそうしなかった?
になったけど、「早すぎる最適化」を避けて
最後にやるつもりでいたので問題無い
0598名前は開発中のものです。
垢版 |
2019/06/28(金) 21:02:06.49ID:7IFen5ib
マップ・ウィンドウの枠だけ作った

メニュー・キーを入力すると
マップの枠が画面外からスライドして来て
メイン・メニューが開く
スライド中はマップ部分に
ブロック・ノイズを描画する

>>597
ツイッターがbot状態になっててキツいが
頑張ってやって行きます
ありがとう
0600某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/06/29(土) 07:58:19.01ID:jHgSl3zW
マップ・ウィンドウの描画を作った

背景をマップ・サイズより小さくして
自動的に多重スクロールする様にさせた

デフォルトのメニュー・キーを押しても
メニューを開かない設定にして置いて
マップ上でキーを押したら
コマンドを呼んで、開く様にした
0601某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/06/30(日) 09:34:42.22ID:fASR2VIM
マップ上に太陽と惑星を配置した

1. 3D描画用の惑星をタイル・サイズに縮小
2. 公転軌道の輪をタイルで描く
3. 軌道の上に惑星を配置
4. 軌道の輪を消す

内惑星より外惑星の方が軌道半径が大きいが
そのままだとマップが大きくスカスカになるので
半径を詰めて、外惑星の角度を離して配置する事で
距離感を出した
0602某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/06/30(日) 17:08:45.96ID:fASR2VIM
マップのカーソルを作った

画像は適当にでっち上げ
パーティの先頭キャラをカーソルにして
歩行グラとして動作させる
0603某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/01(月) 05:47:22.88ID:hbSVcI0Q
恒星系の方角マーカーの画像を作って
イベントのテンプレを用意した
0604某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/02(火) 04:51:01.24ID:eXfLjSPN
恒星系の方角マーカーを作った

コクピットの外の宇宙に文字を描画して
東西南北上下の方角を示す
これの座標を基準にして
自機がマップ上を移動するのにも使う
0605某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/04(木) 22:36:00.43ID:8u3hWKTf
スレチ失礼でちょっと宣伝
7/6土曜日午前9:00からYouTubeライブで
街運営サバイバルRTS「フロストパンク」
の耐久実況やります(開場は8:45頃)

10分休憩数回はさんで16時間前後かけて
エンディングまでノンストップの予定
URLリンクは当日朝に貼ります
0606名前は開発中のものです。
垢版 |
2019/07/05(金) 03:59:28.54ID:I51+Ba7l
初めてきたんだけどウディタのRPGはもうやってないのかな?
ツクール2003でこんだけ3D組めるんだったらウディタどころかUnityで組んだ方が早いんじゃないか?w
0607某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/06(土) 07:07:03.98ID:D8dWrhK9
>>606
このスレは >>60 から乗っ取りしたので俺はイッチーとちゃうで
知り合いに「1000枚のスプライトはこう使う」
と手本を見せるためにやってるだけ
これが完成したら続編を UE4 + VR で作ろうと企んでる
0609某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/06(土) 08:29:57.98ID:D8dWrhK9
【Frostpunk】十数時間!耐久実況【サバイバルRTS】

午前9:00からYouTubeライブで
街運営サバイバルRTS「フロストパンク」の
耐久実況やります(開場は8:45頃)

10分休憩数回はさんで十数時間かけて
エンディングまでノンストップの予定

https://www.youtube.com/watch?v=gXtVAvNBh0g
0610某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/10(水) 00:26:37.67ID:0anDbpiQ
方角マーカーにサブ・マーカーを付け加えた
東西上下のマーカーの周りに
北を示す小さいサブ・マーカーが付いて回る
北南だけは上の方角

・DX = 北のX - マーカーX
・DY = 北のY - マーカーY
・DXの絶対値 >= DYの絶対値 なら
 サブ・マーカーX = 半径 * DXの符号
 サブ・マーカーY = 半径 * DY / DXの絶対値
・DXの絶対値 < DYの絶対値 なら
 サブ・マーカーX = 半径 * DX / DYの絶対値
 サブ・マーカーY = 半径 * DYの符号
・マーカーの座標 + サブ・マーカーの座標に描画

サブ・マーカーの座標からatan2で角度を求めて
sin/cosで回転とかやるとツクール2003では
重いので、この様にした
軌道が同心円で無く正方形になるが
2.5Dゲーでは、そう言うの気にしたらダメ
0611某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/11(木) 10:28:03.58ID:k6+dcJz1
マップ上の自機の描画を作った

カーソルの移動や描画にツクールのPCを使って
自機はツクールのイベント(NPC)で表す

カーソルはマップを自由に移動させて
自機は恒星系のサブ・ゲーム中で
前進した方角に応じて移動する
0612某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/12(金) 06:57:42.46ID:w/+TwDHB
マップ上の自機の移動を作った

・自機座標のバックアップを取る
・X速度 = 速度 * 東マーカーのZ率 * 自機の速度率
・Z速度 = 速度 * 南マーカーのZ率 * 自機の速度率
・ローカル座標 += X,Z速度
・ローカル座標 >= 閾値 なら
 ローカル座標 -= 閾値
 マップ座標 ±= 1
・マップ座標の地形が通行不可なら
 自機座標をバックアップに戻す
・移動したなら
 自機のイベントをマップ座標に移動

東マーカーがコクピット正面に
近ければ近い程、マップ上を東に進み
後背側に有れば西に進む
南マーカーも同様に南東に進む

上下方向のY移動はマップには影響が無い
空間が無限ループしているイメージ

ローカル座標に速度を溜めて行って
閾値を越えたら、マップ座標を1つ分動かす
以上を毎フレーム繰り返す
0613某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/15(月) 05:42:04.71ID:DsOJD58q
恒星系のサブ・ゲームで太陽を描画させた

・X,Z = 太陽のマップ座標 - 自機のマップ座標
・X,Z -= 自機のローカル座標
・座標1 = Z * 南マーカーの座標 / マップ半径
・座標2 = X * 東マーカーの座標 / マップ半径
・太陽の座標 = 座標1 + 座標2

自機から見たマップ上の太陽の相対座標を
一旦XとZの成分に分けて
南と東マーカーのベクトルに
割合として掛け算して
そのベクトルを合成して
太陽の座標を求める様にした

ワールド座標系の太陽を
自由にローリングした自機のローカル座標系に
座標変換するとか、そのままやると重いので
この様にした
0614某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/15(月) 05:56:19.24ID:DsOJD58q
他の計算法だと、前進とローリングしまくった後で
「さぁ太陽は何処へ置いたらいいでしょう?」
とか言われても正直分からない
0615某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/16(火) 15:19:05.78ID:Czip+KLl
方角マーカーの北だけ赤色にした

文字を認識している余裕が無くても
色で判別できる
簡単な事だけど、UIとして必要な機能だと思う
0616某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/17(水) 14:10:36.77ID:g/YoM5UE
恒星系サブ・ゲームの惑星の描画を作った
普通にピッチ・ロールの回転と
Z方向の移動をした後
X,YをZで割り算して描画するだけ

レーダーに惑星も描画する様にした
ドットの色を赤い敵、白い敵以外の他に
水色の惑星を追加した
0617某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/17(水) 16:49:01.43ID:g/YoM5UE
マップ上の惑星が有るマスに入ったら
惑星のオブジェクトを生成する様にした

惑星のデータは1つだけ有って
それを使いまわす
マップの地形データを見て
各惑星に切り替える
0618某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/18(木) 19:52:42.83ID:6N0bN9wp
恒星系で惑星にぶつかると
宇宙港に入港できる様にした

衝突判定用の半径のrx, ryは固定
rzは自機の速度にした
こうすると自機の速度によるすり抜け防止と
ギリギリまで近づいた時に惑星のスケール感が出せる

港内の処理は後で作る
出港すると南極上空で裏返し
(惑星がコクピット上側)になる様にした
0619某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/19(金) 18:40:05.94ID:Bw7/8cOo
太陽を惑星としても描画できる様にした

太陽:恒星系の何処に居ても見える
   マップのY座標を無視する
惑星:惑星のマスに入ると現れる
   移動やローリングで全天を動く

太陽のマスに入ると太陽オブジェクトを
非表示にして、惑星オブジェクトに
移動・描画を肩代わりさせる
0620某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/19(金) 19:07:51.20ID:Bw7/8cOo
自機が太陽にぶつかったら
爆発してゲームオーバーになる様にした
これで恒星系内の移動は出来た
0621某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/22(月) 15:03:58.85ID:OK/nm4WR
マップ・メニューのスケルトンを作った
マップを開いている状態で
決定キーを押すと開く

+マップ・メニュー
 +情報
  +調べる
  +ミッション
 +一般メニュー(ツクールのメニュー)
 +アクション
  +自動航行
  +ワープ
 +その他
  +終了

取り敢えず、今はこれだけ
0622某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/22(月) 20:32:15.93ID:OK/nm4WR
マップ・メニューを整理した
天体を「調べる」のに、キーを押す回数が多過ぎた

「情報」を取っ払って
「調べる」をトップに持って来て
「ミッション」は「その他」の下に入れた
062360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/22(月) 21:45:48.32ID:OK/nm4WR
RPGツクール2003用3DシューティングRPG
「スペースSSS」がブラウザ上でテスト・プレイ出来る様になりました。

ダウンロードもインストールも要りません。
操作方法を良く読んでからプレイして下さい。
7つのサブ・ゲームから選んでテスト出来ます。

http://lnl.osdn.jp/pukiwiki/index.php?blog
062460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/22(月) 21:50:23.24ID:OK/nm4WR
>>623
夏なんで宣伝
七つ目のサブ・ゲームは夏休み中に
メニューが出来てからテスト公開する

>>60 から乗っ取りな
0625名前は開発中のものです。
垢版 |
2019/07/22(月) 21:51:25.95ID:OK/nm4WR
age
0626名前は開発中のものです。
垢版 |
2019/07/23(火) 03:51:54.06ID:TY4C7UqP
センスねーなあ。
そんだけあってもどれも遊ぶ気が湧かんわ
ゲームのシステム自体がしょぼくても、
グラフィックで誤魔化すくらいしろや

システムも気を惹かない、グラフィックも気を惹かない
それで誰が試遊するんじゃ、
テストプレイヤーで雇われてるわけでもないのに。
0627名前は開発中のものです。
垢版 |
2019/07/23(火) 04:09:52.44ID:TY4C7UqP
あと、どうでもいいけど
お前のブログに貼ってるゲーム紹介の動画な、
どれもBGMがデカいんだよ。
耳がいかれてんのか?

例えば、クリア動画だの、ゲーム実況だのの動画を観ながら
自分の心地よい音量にPCやyoutubeのボリュームレバーをいじって合わせた後に、
そのままお前のゲーム紹介の動画に飛んでみろよ。
音がうるせーだろ?耳が痛くて聴いてられないだろ?
ならその時に自分が音量下げればいいじゃんってな、
いちいちお前の動画を視聴するときだけ音量いじる気にならんわけよ、
みんな。わかるか?
で、BGMが五月蝿いから、誰もお前のゲーム動画をずっと観る気にもならんわけよ。

で、そーいうところにもお前のセンスってのが出てるんだよ。わかるか?
センスの無さが。
動画を観る側、ゲームを遊ぶ側に立ってモノを考える
そんな気遣いもできないところで
如何にお前が人生でモテてることなく生きてきた人間だってことが
わかるわけよ。
0628名前は開発中のものです。
垢版 |
2019/07/23(火) 04:10:56.67ID:TY4C7UqP
ゲーム作る前に、てめーの汚いブログのフォーマットを
整理しろや、ほんま見辛いわ。

そりゃ人が来ないわけだ。
つか、覗いてもそれじゃ皆すぐ閉じるって。
063060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/23(火) 17:41:45.12ID:iMz6M32k
宇宙港メニューのスケルトンを作った
ここを拠点に、酒場で依頼を受けたり
アイテム買ったり、惑星に降下したり出来る

メニューとか画コンテなんかの
並べ替えしながら考えるやつは
KJ法が使える
063160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/25(木) 20:36:44.28ID:9uFEzgMM
宇宙港メニューに出入り出来る様にした
惑星に衝突したら入って
メニューから「出港」を選ぶと出られる

ループの中に選択肢が有って
選ぶと子メニューを呼んで
キャンセルするか、終了フラグが
立っていたら、ループから抜ける
「出港」を選んだら、終了フラグを立てる
063260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/25(木) 20:47:08.54ID:9uFEzgMM
メニューからマップを開ける様にした

・「恒星系からマップを呼んだ時」
 イベントをパラレルにして
 ツクールのシステムに移動を任せる
・「宇宙港メニューから呼んだ時」
 自前で移動させる

PCの座標を直接指定すると
画面遷移のエフェクトが出て仕舞うので
移動ルートを指定して、1歩ずつ動かす

ツクールは初めてだし
この辺は手探りでやってるので
もう少しリファクタリングが必要っぽい
063360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 00:06:16.15ID:E+mWS4dl
マップのOnで、PCとカーソルを表示
マップのOffで、非表示にした

カーソルを表示する為に専用のPCを
使うのを止めて、マップを表示する時だけ
先頭のPCの画像をカーソルに挿げ替える様に
仕様変更
063460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 00:43:42.15ID:E+mWS4dl
マップでカーソルを中心にスクロールさせる為に
下記のような仕様にした

表示上のカーソル → 中身はPC
表示上の自機 → 中身はイベントNPC
063560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 14:16:56.33ID:E+mWS4dl
ゲーム中のマップと港のマップの処理を統合した
カーソルの移動処理を自前でやって
イベントをパラレルにするのも止めた
063760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 16:37:32.40ID:E+mWS4dl
アイテム・ショップと燃料補給所を作った
宇宙港メニューから装備の売買と
燃料補給&修理が出来る

ツクールのシステムのショップと宿屋を
利用してるけど
補給所は自前で作った方が良いかも
063860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 18:06:05.53ID:E+mWS4dl
宇宙港メニューから各サブ・ゲームを
開始できる様にした

目的に応じて、メニュー項目を
戦闘と探索の二つに分けた
同じサブ・ゲームでも
依頼やミッションの時と資源採掘の時で
初期条件を変える
063960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 18:18:43.26ID:E+mWS4dl
>>638
ミサイルが必要な依頼を受けた状態で
ミサイルを合成する為の資源を
採掘できないと詰むので、別けた
064060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/26(金) 19:03:29.99ID:E+mWS4dl
Wikiに「テストプレイ」って書いたら
デバカークレクレと勘違いするし
「アルファ版」と書くと「OBあくしろ!(エタれ!)」
とかうるさいので「進捗版」と書き直して置いた

この板が本来何の目的で存在してるか
少しは思いを巡らしてみて欲しいものだな
064360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/27(土) 14:53:01.01ID:7aMy6Tf6
自動航行用のターゲット・マーカーの画像を作った
四角いカーソルと重なっても見分けられる様に
十字マークにして上に「AUTO」の文字を入れた
064460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/27(土) 19:31:26.48ID:7aMy6Tf6
メニューからターゲット・マーカーを
マップ上に打てる様にした
トグルでOn/Off出来る
064560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/27(土) 23:21:34.54ID:7aMy6Tf6
カーソル下のイベントIDを調べて
ターゲット・マーカーだったらトグルOn/Offして
イベントが無ければ、そこへマーカーを打つ様にした
064660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/28(日) 14:50:22.78ID:qdJig/vm
マーキングした惑星まで自動航行できる様にした

・目標がY-Z平面に乗る様にローリング
・目標がX-Z平面に乗る様にピッチ上げ下げ
・速度を上げる

カクカクした動きになら無い様に
目標が遠ければ速く動いて、近ければゆっくり
誤差の範囲内なら止める様に調整した
064760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/28(日) 22:19:11.44ID:qdJig/vm
自動航行で直接速度を操作せずに
キー入力で間接的に扱う様にした
機体を制御するので無く
操縦桿を操作するイメージ
手動操作と処理を共有できる

ロール/ピッチを操作したらブレーキ
しなければアクセルを掛ける様にした
明後日を向いていたら一旦停止させるのと
接近して微調整が増えると微速前進になって
惑星が大きく見える等の効果が有る
064860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/28(日) 22:25:04.54ID:qdJig/vm
イベント同士は重ねられない様なので
ターゲット・マーカーをイベントでは無く
ピクチャとして扱う様に仕様変更した

マーカーが邪魔で自機が目的のマスに
入れないと言う……
064960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/28(日) 23:16:44.08ID:qdJig/vm
自動航行で目標のマスに入ると
惑星を正面に生成できる様にしたけど
高速で突っ込むから
微速によるスケール感が出ないので
設定フラグでオミットして置いた
065160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/30(火) 19:27:25.11ID:VtSdPRWi
恒星系での起動シーケンスの演出を作った

1.真っ暗なコクピットに宇宙だけ見える
2.コクピットの輪郭線が浮かび上がる
3.コクピットがフェードインしながら
4.計器類が点灯して行く

普通の描画処理の中で、黒塗りと輪郭線の
コクピットを透明度を変えながら描画する
輪郭線の画像はGIMPのラプラス・フィルタで生成
計器類の点灯処理は以前作ったもの
065260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/07/31(水) 21:55:42.56ID:QEwp7zIe
恒星系の星間通路ステーションを作った
入港すると宇宙港のメニューが出る
出撃と探索の選択肢だけ
通路のものに置き換わる
065360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/01(木) 23:31:06.16ID:99cR1ORk
シナリオ用の背景イラストを見繕った

色々探して結局、前から目を付けていた
素材屋さんから、まとめてダウンロードした
素材サイトは油断してると、閉鎖して
それっきりになったりするので
手に入る内に落として置く様にしている

素材を使うかどうかは、集める時では無く
使う時に決める
ネタとかもそうだけど、創作は大体
取り敢えず必要そうなものを全部盛ってから
余分なものを削ぎ落として行くのが基本
065460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/02(金) 06:46:47.34ID:FXOZ1yTo
恒星系のワープを実装した

「危険度の判定」
・dx = 絶対値(目的地X - 自機X)
・dz = 絶対値(目的地Z - 自機Z)
・ワープ・レベル = (dx + dz) / ワープ性能
・ワープ・レベル < 1 なら 安全
・ワープ・レベル < 2 なら 危険
・ワープ・レベル < 3 なら 致命的
・ワープ・レベル >= 3 なら ワープ不能

「ワープ処理」
・距離に応じて危険度を判定して
 メッセージを表示後、ワープするか確認する
・Yes ならワープ・フラグを立てる
・恒星系のメイン・ループでフラグを見て
 ワープのデモを開始する
・ワープ・アウトしたら、自機を目的地へ移動
0655名前は開発中のものです。
垢版 |
2019/08/02(金) 16:09:09.66ID:gRE7sawW
見てるから開発中の画像も載せてほしいな
065860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/03(土) 10:49:47.84ID:MqqnrY9w
http://lnl.osdn.jp/images/Space-SSS/blog/2019/08/l/sss-2019-08-03-002.png
http://lnl.osdn.jp/images/Space-SSS/blog/2019/08/l/sss-2019-08-03-003.png
>>617-618 >>652
地球と星間通路ステーション

http://lnl.osdn.jp/images/Space-SSS/blog/2019/08/l/sss-2019-08-03-004.png
http://lnl.osdn.jp/images/Space-SSS/blog/2019/08/l/sss-2019-08-03-005.png
>>600 >>643-649 >>611-612 >>633-634
マップは右から迫り出して来る

マップ画像中央の木星の周りの左から
黄色十字の上に赤色AUTOが、自動航行のターゲット
緑の宇宙船が自機で、上に赤逆三角が付いてる
白い枠がカーソル

森と草原のマップチップで
惑星の軌道を描いてるけど
後で消すので気にしない
065960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/03(土) 11:04:59.21ID:MqqnrY9w
>>655
うpローダの類を使いたく無かったので
画像ほとんど上げて来なかったけど
一日の作業が終わる度に
ドーズから Linux に戻る事にしたので解決

9月まではマップ大量生産だけど
そこからボスラッシュなので
観れるSSが撮れるかも
066060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/03(土) 11:17:21.50ID:MqqnrY9w
>>656
スチーム版 RPGツクール2003なので
言語とかスクリプトは無し

日本語表示できないから
どうするか困ってる
ユーザパッチが有るにはあるけど
魔改造すぎて互換性が怪しいし
まさかローマ字って訳にも行かんし
066160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/06(火) 07:15:29.88ID:V6t3ONFC
ワープ中のマップ・メニューに制限を設けた
自動航行とワープはエラー・メッセージを出して
使え無い様にした

自前でカーソル(PC)を動かすと
ワンテンポ遅れて、ツクールのシステム側も
PCを移動させて来るので
十字キーを押してい無い時は
移動中止コマンドを呼んで置く様にした
066260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/06(火) 08:57:28.14ID:V6t3ONFC
ワープ中の敵とのエンカ処理を作った
ワープ・レベルに応じた確率で
虚数空間のサブ・ゲームを始める

ワープ発動で燃料を消費する様にした
燃料が足りなければ、エラーを出して中止する
066360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/07(水) 10:38:09.62ID:ZRuoJdFq
星間通路、虚数空間、ビル街、白兵戦の
メニューを作った
シーン遷移によって、システムのメニューを呼ぶ
066560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/07(水) 14:31:27.00ID:ZRuoJdFq
F-2003のメニューを作った

・メニューを閉じてレースを続ける
・ランキング(仮のスタブ)
・レースのリトライ
・リタイアして宇宙港に戻る

サブ・ゲームを切り替えた後
元の恒星系に戻って来れる様になった
066660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/07(水) 15:48:10.63ID:ZRuoJdFq
サブ・ゲームの切り替え手順

1. メニュー以外のピクチャを削除する
2. シーンを切り替える
3. リセット・フラグを立てる
4. シーンによってメイン処理が切り替わる
5. メイン処理でフラグを見てリセット

シーン遷移は、シーン毎のフラグを用意して
立っているフラグを見て分岐する事で切り替わる

例えば、恒星系でマップを開く場合は
1. 恒星系のシーン・フラグが立っている状態で
2. マップ・フラグとオープン・フラグを立てる
3. マップを開いたら、オープン・フラグを伏せて
 マップ中フラグを立てる
4. キャンセルしたら、マップ中フラグを伏せて
 クローズ・フラグを立てる
5. 閉じたらクローズ・フラグと
 マップ・フラグを伏せる
6. 恒星系のシーンに戻る
066760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/08(木) 04:51:11.41ID:Ou4EDymF
レティクル・パネルをコクピット画像から
切り離して、半透明にした
066860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/08(木) 05:28:49.45ID:Ou4EDymF
FPSのHUDの弾数のマガジン弾数をオミットして
装弾数と残弾合計だけ表示するフラグを用意した
066960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/08(木) 06:26:53.75ID:Ou4EDymF
ステータスの起動シーケンスを作った
ステータスだけ、まだ出来ていなかった

1. n = 0
2. ステータス種類数だけループ
3. n += ステータス種類数 - 2
4. n %= ステータス種類数
5. n < 起動閾値 なら 通常のステータス描画
6. n >= 起動閾値 なら ステータス消灯
7. ループ終端
8. 起動閾値 += 乱数(0...1)

通常のステータス描画と処理を共有している
ステータスが順番では無くて
あちこち無作為に点灯して行く
067160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/08(木) 08:12:41.84ID:Ou4EDymF
オレンジっぽい赤と水色の組み合わせだと
見分けにくい人もいるだろうか?
067260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/10(土) 00:44:19.06ID:S1uGQzYF
http://lnl.osdn.jp/images/Space-SSS/blog/2019/08/l/sss-2019-08-09-001.png
マップにエンカウンタのチップを配置した

敵のグループとレベルを1から12に分けた
デバッグ用に判り易く数字が書かれているが
リリース時にはタイルを透明なものに
まるごと挿げ替える

危険地帯のアステロイドの内側からスタートして
装備を揃えたら外側に出て行く導線になっている
惑星の周囲は敵のレベルが下がる
安全な地中海貿易から始めて
危険な大西洋へ大航海に出るイメージ

土星と冥王星だけ他から離れた辺境で
敵も太陽系内では最強になるし
たぶん大ボスもその辺に配置する
067460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/10(土) 13:35:30.56ID:S1uGQzYF
恒星系のエンカ処理を作った
マップのマスを移動する度に判定する

遭遇率、敵の最小・最大数、種類毎の比率、
武器毎の比率、武器のグレード、ミサイルの種類
を設定して判定する
遭遇したら、設定に応じてランダムに敵を生成する
067560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/10(土) 15:13:47.70ID:S1uGQzYF
マップ開閉のノイズを拡大描画するのを止めた
モニタのノイズ画像を拡大するとゴミが出るので
等倍で描画する様に変更した
067660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/11(日) 07:15:37.56ID:kxMsCYNC
戦闘領域の隔離を実装した

敵とエンカしたら、フラグを立てて
マップ移動を一時的に停止する
戦闘している間、その領域がマップ上で
隔離されている様な感覚になる

理由としては
・プレイヤーが戦闘に集中できる
・戦闘中に別の敵とエンカしない
・雑魚敵を泳がせながら、強敵を避けて
 マップ移動するのを防ぐ
067760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/11(日) 07:21:10.58ID:kxMsCYNC
戦闘の警告音などのSEを鳴らす様にした
・敵とエンカした時
・敵を全滅させた時
・敵を振り切って、逃げた時
067860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/12(月) 08:40:45.97ID:r3Xhdad1
恒星間通路のエンカ処理を作った

サブ・ゲーム開始時に判定をして、遭遇したら
少し間を置いてから警告音を鳴らした後
一機ずつランダムなタイミングで生成する

敵を一度にまとめて出さずに
ばらけて出現させる為
エンカ判定は開始前に、敵生成はプレイ中にと
二段階に別けて処理する様にした
067960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/13(火) 15:15:04.25ID:z+gP/i7x
通路のエンカでHPを設定する様にした

サブ・ゲーム開始時に
敵の種類毎の値を設定して置いて
敵生成時にその値で初期化する
068060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/13(火) 16:23:04.38ID:z+gP/i7x
ワープ開始時に敵を削除して
戦闘を終了する様にした

ワープ直後のマスでは
エンカしない様にした
068160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/15(木) 15:38:44.74ID:sqmzVYIb
恒星間通路を一定距離だけ走破したら
逃走成功にした
通路を止めて画面奥に自機を移動させる
攻撃キーとメニュー・キーも無効にする
068260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/16(金) 17:50:19.33ID:70HV1Eob
通路で戦闘終了するか逃走成功したら
星間通路ステーションに到着する様にした

これで恒星系と通路のサブ・ゲームを
行ったり来たり出来る様になった
068360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/17(土) 16:07:21.76ID:u9d63qnU
恒星系の港から通路のゲームを呼んで
その終了処理から港を呼んで
更にそこから通路を呼ぶ……
とやると無限に再帰してしまう

なので、通路の終了処理や港の衝突判定では
フラグを立てるだけにして置いて
メイン処理の中でフラグを見て
港のメニューを呼ぶ様に、リファクタリングした
068460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/17(土) 19:49:15.29ID:u9d63qnU
地表面のエンカ処理を作った
通路と大体同じ手順だけど
敵単体で無く、編隊単位で生成する
>>678-679
068560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/18(日) 16:53:38.80ID:i6Gn4hqm
地表面で戦闘終了するか逃走成功したら
宇宙港に戻って来る様にした
068660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/20(火) 10:13:28.21ID:GGqSAPVa
昨日は画コンテのネタ出しやって
今日は一日がかりで病院行くので
明日から本気出す
068760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/21(水) 18:44:17.23ID:nkS+b8ih
虚数空間のエンカ処理を作った

編隊単位で生成する
戦闘終了するか逃走成功したら
恒星系のワープ目標地点に移動する
068960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/22(木) 22:53:41.45ID:xoDQAezj
ビル街のエンカ処理を作った
終わったら宇宙港に戻って来れる様にした
069060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/22(木) 23:27:53.71ID:xoDQAezj
メニューとか弄ってるだけだから
暫くの間特にうpる画像は無いぽ
069160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/23(金) 15:35:17.66ID:udiyh9VF
FPSのエンカ処理を作った

敵のHPと移動タイプを設定するだけで
残りはそのままマップ生成処理に任せる
全エリアを制圧したら、宇宙港に戻って来る
069260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/24(土) 21:37:00.95ID:R+etYf2W
F-2003のスタート・メニューを作った

レース開始とランキングから開始を選ぶと
マシンを選択してレースが始まる
選んだマシンによってスタート位置が変わって
他のマシンをAIが担当する
今はまだマシンの性能差を付けて無い状態
069360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/24(土) 21:41:13.91ID:R+etYf2W
初期化時にマップ全体を舐めて
スタート位置の地形が有ったら
AIのマシンをそこに生成する
但しプレイヤーが選んだマシンだったら
自車の座標をそこにする
069660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/28(水) 10:31:17.82ID:ZqXBltEo
ゲートから星間通路への突入シーンを作った

「突入シーンの流れ」
暗闇
 ↓
ライトが順に点灯
 ↓
カタパルト高速発進
 ↓
ゲート接近
 ↓
ゲート通過
 ↓
通路のサブ・ゲーム開始

切りが良いので、近日中にウェブで進捗版を更新する
069760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/28(水) 16:25:05.85ID:ZqXBltEo
各サブ・ゲームのエンカ処理で
敵の攻撃頻度を設定できる様にした
069860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/28(水) 16:47:29.99ID:ZqXBltEo
起動シーケンスでスピード・メーターが
隠れていたので、画像をくり貫いた
069960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/08/28(水) 18:10:45.95ID:ZqXBltEo
武器弾数の起動シーケンスも作った

・フェーズが 0 なら 普通に描画
・フェーズが 2 なら
 ・弾数番号--
 ・弾数番号 < 1 なら
  ・フェーズ = 0
・フェーズが 1 なら
 ・弾数番号++
 ・弾数番号 > 11 なら
  ・フェーズ = 2
  ・弾数番号 = 11

弾数番号のスプライトを表示する
0 の分も入れて 1 から 11 番
始める時は

・フェーズ = 1
・弾数番号 = 0
0701名前は開発中のものです。
垢版 |
2019/09/02(月) 02:02:28.16ID:yt+o5Fdm
チームが育つ「先生型マネジメント」とは?
https://www.youtube.com/watch?v=laxsLWoaQ6g
鍵はコミュニケーション|やる気のないスタッフの育て方
https://www.youtube.com/watch?v=wD-WaSx_z24&;t=840s
どうにもならない深い悩みを抱えた人との接し方
https://www.youtube.com/watch?v=_dooD5GXUd0
【叱り方大全】管理職なら絶対知っておくべき指導者の心得
https://www.youtube.com/watch?v=y2GKOGILnhc
仕事ができる人ほど陰口の天才!
https://www.youtube.com/watch?v=EVGbAC7F7q8
【叱ることから逃げちゃダメ!】部下を伸ばす上手な叱り方
https://www.youtube.com/watch?v=oPSCCbSrotw
最強「出世」マニュアル【再現可能】
https://www.youtube.com/watch?v=VrApuxBfJxI
070260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/02(月) 23:22:08.96ID:o5aDIoKl
Wikipediaで惑星系関連のページを只管読んだ
読めば読むほど未読ページが増えて行くので
今日はここまでにして、続きは気が向いたらにする
070360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/05(木) 01:04:32.84ID:S4aKiZ7P
太陽を含む4つの恒星系の内
ケンタウルス・アルファ(旧アルファ・ケンタウリ)は
三重連星だけど、距離の近いABをマップにすると
惑星の配置や恒星の描画が問題になるので
少し離れたC(数十万年周期で周っているとされる)
プロキシマの方を舞台にする事にした

テラフォーミング技術は太陽系で練習済みなので
多少難易度が高い環境でも、地球から一番近い方に
移民した方がコスパが良かったと言う設定にする
膨大な回数のワープを繰り返すので
その度に電磁甲殻体エコーとの交戦の危険が有るし
星間通路の存在が発見されるまでは
二度と戻れない覚悟で旅立った

UE4版の続編では物理計算で惑星を公転させるけど
ツクールだと色々都合が悪い
070560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/06(金) 05:55:28.25ID:+cJbiqEV
マップ・ツリーの並べ替えをした
間違えるとそこから先全部やり直しの
激しい単純労働なのでつらみ
070660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/08(日) 02:33:54.25ID:xBxc39J2
バーナード星系のマップを作った

最初の星系の太陽系では
恒星系とビル街のサブ・ゲームのみから始まる
移動装備のブースターを手に入れて
アステロイド・ベルトを越えられる

次のバーナード星系では
サブ・ゲームの通路と地表面が追加される
Aベルトが無くて自由に飛び回れる
自機の S-I が S-II と合体できて
貨物積載量が増え、交易商人プレイも出来る
と言うレベル・デザイン

自機の SSS 級二番艦スペース SSS は
S-I, S-II, S-III が戦況に合わせて合体分離できる
・揚陸戦闘機 S-I スティール・スラッグ
・機動駆逐艇 S-II シルバー・スネイル
・強襲制圧艦 S-III プラチナ・スクイッド
ボス戦などでドクロの旗を立てると
一番艦ステラ SSS が支援に駆け付ける
070760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/13(金) 09:40:24.89ID:DDUkRrlI
プロキシマ星系のマップを作った

虚数空間とF-2003のサブ・ゲームが
アンロックされる
移動系装備のワープが手に入り
それによって虚数空間で
新しい敵のエコーが加わる
アステロイド・ベルトが二重に有って
終盤まではワープによって飛び越えて往来する
S-III と合体できて戦力も増強
070860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/09/19(木) 21:17:38.15ID:FPXivmkh
終盤4番目の恒星系シリウスが
白色矮星との連星と知って
マップ作る前に調べないといけなくなって
Wikipedia読んでる内にドンドン脱線してるので
目に見える進捗は暫くありませんごめんなさい
マップのテンプレはコピペ済みだから
準備だけはおk
070960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/01(火) 14:26:08.58ID:DOJjdojR
シリウス星系のマップを作った

白兵戦(FPS)のサブ・ゲームがアンロックされて
グ連や同盟の基地を強襲し、軍とも戦う
SSS一番艦の援護を受けられる

シリウスは恒星Aと白色矮星Bとの連星で
太陽と天王星くらいの微妙な距離なので
Aを恒星、Bを特殊な惑星として
内部で処理する事にした
(Bに衝突するとゲームオーバー)

惑星系は全てA-Bのラグランジュ点に配置した
Aを挟んだB軌道の反対側のL3は2つの惑星が
お互いに公転し合っているので
惑星の数は全部で6つ

Bが超新星爆発を起こす前はAよりも重く
惑星も現在より多くて複雑な軌道だったが
爆発でBの質量がAの半分になった事で
バランスが崩れ、一部は恒星に飲み込まれたり
系外に弾き飛ばされた事が
考古探究者によるシミュレーションや
バイドロイドの白化石の分析で分かっている

と言う設定
071060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/01(火) 14:43:28.25ID:DOJjdojR
マップを一気に作るとキツイので
他のサブ・ゲームの分は、シナリオを作りながら
一寸ずつ進める事にする
071160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/01(火) 17:16:09.17ID:DOJjdojR
宇宙港メニューを整理した

惑星への「突入」と「探索」を一つにまとめて
突入するミッション一覧の中から「探索」を
選べる事にした(実装は後で)

酒場で「酒を飲む」の下に追加
・「噂話を聞く」情報収集と名声
・「打ち合わせ」メンバーの意見
・「曲をリクエスト」BGM選曲
071260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/01(火) 17:37:51.39ID:DOJjdojR
突入ミッション一覧に、他の惑星で受けた
お遣いクエスト等も出るので
依頼/ミッションを受ける所と実行する所を
メニューの別の部分に別けた
MOよりもMMO寄りのシステムになる
071360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/03(木) 04:08:34.00ID:PCwDIcDi
恒星系の中ボスを1種類レンダリングした
海賊の大型艦で無限遠に描画する

・中ボス:大型艦 x 1
・大ボス:大型艦 x 3
くらいにする予定だったけど
最初の太陽系でそんな強そうなの出すと
その後のボスがインパクト薄くなるので
最初の大ボスと3番目の恒星系以降の中ボスに
1艦ずつ出す事にする
071460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/08(火) 10:21:09.98ID:wNBcb3zw
恒星系中ボスの海賊大型艦の描画を作った

無限遠に座標固定で、ボス自体の移動は無し
自機のローリングで、描画座標は普通に動く
0717某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/14(月) 05:10:31.56ID:4kACRSO9
モチベ高揚のため脱線して
衛星軌道のデモを作る
取り敢えず画像を仕込んだ
071860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/15(火) 09:25:52.10ID:BZQ6RcG5
http://lnl.osdn.jp/images/Space-SSS/blog/2019/10/l/sss-2019-10-15-001.png
衛星軌道のデモを作った
後で動画をうpる

「画像」
・惑星の画像を縦にループ加工する
・サイズは画面の縦横x2倍
・縮小描画するので
 ドットを縦にx2倍拡大して置く
・メモリ節約の為
 縦60ドットx16にファイル分割

「描画」
・描画範囲の縦サイズ分
 ライン毎にピクチャを用意
・画面下端から上にx2からx0.5倍で
 遠近感を付けてラインを描画
・↓惑星の奥行きの丸味を付ける
・N^2 / MaxN + 100% で拡大率を指定
・(N^2 / MaxN)^2 / MaxN で
 画像の読み込み元ラインをずらして
 描画先ピクチャへ送る
・円弧状の宇宙と大気を
 手前に重ねて丸く見せる
・描画元をずらして衛星軌道上を移動
071960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/18(金) 14:44:27.03ID:jdY4UHlE
https://www.youtube.com/watch?v=zKnkQwoaelo
>>718 の動いてる所

16ビット時代によく使われていた
円弧で半分隠してスクロールさせるだけ
のとは違って、これには球面パースが付いている

「だから何?」って言う人はゲームとか
無理して作らないで遊んでればいいよ
072060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/18(金) 14:51:52.42ID:jdY4UHlE
ボスのイベントのエディタ配置を決めて
自弾の当たり判定をコピペして準備した
072160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/19(土) 04:44:19.12ID:Uuy+5Vor
「音量とパンを変数指定させる方法」
・音量を小さく設定して
 鳴らすイベントを用意
・大きくする時は↑を連続で呼ぶ
やり過ぎるとビブラートみたくなるけど
爆発音とかノイズっぽいのならイケる
パンも左右別々に鳴らすイベントを
連続で呼べば良い
L, LR, R, LL, LLRR, RR
072260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/19(土) 12:42:34.24ID:Uuy+5Vor
SEの音量とパンを実装した

SE処理を呼ぶ時に変数へ
音量とパンの値を入れて渡す
再生後に自動でデフォルト値に戻るので
今迄の呼び出しコードは書き換えなくて良い

基準の音量を70%にして
x2回同時再生で大体100%相当になった
(指定できるなら75%が良いのかも)

L <- LR -> R
だとセンターだけ煩いので
下記の様にした

音量:50
LL <- LR -> RR

音量:100
LLLL <- LLRR -> RRRR
072360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/19(土) 13:58:04.21ID:Uuy+5Vor
音量とパンがデフォルト値の時は
SE合成無し版の処理を呼ぶ様にした
072460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/19(土) 14:10:34.29ID:Uuy+5Vor
>>723
細かい設定はSEコマンドの中で
既に個別に指定して有るので
殆んどの呼び出しはデフォルトになるし
処理は出来るだけ軽い方が良いから
072560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/19(土) 14:38:43.14ID:Uuy+5Vor
メニューのコンフィグに
スピーカー・テストを追加した
・音量:100 デフォルト -> 左 -> 中央 -> 右
・音量: 50 デフォルト -> 左 -> 中央 -> 右
の順に同じSEを鳴らす
072760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/24(木) 12:44:17.02ID:nQOAvDdQ
https://osdn.net/projects/lnl/releases/p16449
ソース読まないと解った感じがしない人向けに
パッケージを公開しました。
RPG Maker 2003を持ってればプレイも出来るはずです。

ソース・コードはBSDライセンスにしますので
煮るなり焼くなり好きにして下さい。
ソース以外はそれぞれの作者に著作権が有ります。
072960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/10/29(火) 01:07:46.15ID:hilSXyp0
黒/白のピクチャ描画処理を作った
ローディング中の画面書き換えを隠すのに使う
ゲートのデモに入る時にフェードインさせた

虚数空間の終了で自機が画面奥へ飛び去る時に
自機の光跡が縮小していなかったのを修正した
073060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/05(火) 02:07:17.59ID:7+vdQ7wR
中ボス用の当たり判定を作った
当たるとボス全体が点滅する様にした
取り敢えずビームとレーザーだけ
073160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/05(火) 02:19:15.53ID:7+vdQ7wR
ゲ制以外の方面で手を広げ過ぎて
色々中途半端になって来てるので
集中して一つずつこなす事にする
073260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/05(火) 02:26:42.05ID:7+vdQ7wR
作りたいサブ・ゲームが2つ増えたけど
これを入れると来年末には間に合わないので
もう一年延長戦になりそう
073560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/10(日) 20:12:32.12ID:E7AyrBA7
レーザーの当たり半径が小さいのを修正

ボスのループの外でボスの半径を
参照していたのでイテレータが
何処か変な所を指していたミス

一晩寝て起きたら速攻で直るバグだし
コピペ・コーディングする時は
大体元のコードにあんまり考えずに
付け加えた部分が問題を起こす
073660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/10(日) 21:30:10.11ID:E7AyrBA7
>>733
プログラミングと言うものを
始めた頃からずっと
数か月周期のやる気の波が有って
引き潮の間は放置して
他の事に集中するのだけど
今回はスレ乗っ取りの手前も有って
2年くらい持続させてます
ちょと息切れしててるね

「アスペ=ゲーム作れる人 定型=作れない人」スレ
http://peace.5ch.net/test/read.cgi/gamedev/1409165402/
073960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/12(火) 22:12:56.27ID:RVrN6ozE
プラズマとボスの当たり判定を作った

ビームとプラズマのZ軸の二分探索に
バグが隠れてたのがHPが多いボスで
明らかになったので直しとく
074160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/12(火) 22:34:30.98ID:RVrN6ozE
>>738
ツクール2003はGUIで1行ずつ組み立てる
専用のスクリプト言語を使う
アセンブラライク x BASICな感じ

Cより低レベルな処理をしている様な気分だけど
スクリプトなので高級言語と言う感覚
0742名前は開発中のものです。
垢版 |
2019/11/13(水) 20:56:25.83ID:8c1rupru
さすがにBASICって言うならウディタくらいの自由度がないと無理がないかw
ExcelのVBAで無理やりテトリス作ってるのが近いと思う
074360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/13(水) 23:32:07.40ID:ji5Jy4vZ
>>742
8/16bit時代のBASICよりは自由度に溢れてるぞ
ニコ動はオワコンかも知れんが
ニコフェスで職人wとか謎の技術wって
弾幕貼られるのを目指してはいる
まぁ現実は鳴かず飛ばずじゃろう

ブログに日に3人もアクセス有れば燃料として十分だし
モチベの燃費については良い性格してると思う
0744名前は開発中のものです。
垢版 |
2019/11/13(水) 23:42:22.63ID:8c1rupru
俺も2003で謎技術やってたからわかるw
DBの存在や変数操作のやりやすさ、何より同じことやっても軽いってので俺はウディタに移行したが応援してるぜ!
074660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/15(金) 00:05:52.36ID:O3yIpSQO
自ミサイルとボスの当たり判定を作った

ミサイルに目標のボスのイテレータを追加して
雑魚のイテレータを優先で、目標へ向けて
ロックオン、発射、移動、当たり判定
を実行する処理を追加した
074760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/15(金) 23:03:45.36ID:O3yIpSQO
自ブラスターとボスの当たり判定を作った
ラム衝突のダメージも実装したけど
今のボスは無限遠にいるので
テストは動き回るボスが出来てからにする
074860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/17(日) 03:56:15.47ID:gTLgSfna
>>739
ビームかプラズマを1発だけ撃つと
連続で当たり続けるバグを修正した

二分探索は問題無くて
ポインタの参照外しのミスだった
074960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/22(金) 01:57:32.19ID:4PXBWt8O
ボスのパーツのスケルトンを作った
変数とイベントの領域を確保したので
肉付けして行く
先を見据えて予約して行かないと
後で修整効かなくなって詰む

激しく単純労働の上
ツクールの編集機能の弱さに氏ぬ
マウスだけ or キーボードだけで
操作できると良いのだが
ツクールはキーボード見ながら
一本指打法する人向け
075060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/25(月) 07:43:15.30ID:8cUkMcKw
ボスのパーツの処理を実装した
生成、移動、仮の描画、当たり判定
まで作った
今のはキャラ表示無しのパーツなので
適当に雑魚キャラを仮描画して
座標と当たりを確認してる

ボスとパーツの生成座標を即値で無く
視点との角度から求める様にした
脳内で三角比とか計算しないで済む
075160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/27(水) 12:33:57.55ID:DZOH0y96
ボスがレーザー砲を発射できる様にした
砲塔の部位オブジェクトで管理する

フレーム数をカウント・アップして
一定値になったら発射する
砲塔が画面外にいる時は
カウンタを0に戻す
075260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/28(木) 05:33:33.94ID:QgLaEhK3
ボスのミサイル・ポッドを実装した
レーザーと同様に
砲塔の部位オブジェクトで管理する

砲塔が画面外にいる時はカウンタを1
画面内にいる時は2ずつ増やして
一定値になったら発射する
レーザーより間隔を長く取った
075360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/11/29(金) 03:46:53.44ID:DkdXvi8m
ボスの部位ダメージを実装した
ダメージと破壊のエフェクトも
描画できる様にした

ボスのミサイル・ポッドを
2つに増やした
075460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/05(木) 06:39:29.77ID:vhbgjkdW
ボスの武器の領域を確保した

ボスの関連イベント一式を予約
変数は種類毎に用意すると
多過ぎるので、全部共有にする
075560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/13(金) 15:55:14.78ID:fQHc9uWN
ボスの武器の変数関連を一式揃えた
ボス共通の構造体と
それのイテレータ等
075660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/13(金) 23:02:44.10ID:fQHc9uWN
ボスのロケット・ランチャを実装した
放射状に広がってから
収束しつつホーミングする

「発射」
・半径 = 0
・半径速度 = 200
・Z速度 = 0

「移動」
・半径速度 -= 20
・半径速度 < 0
 ・半径 < 500 なら
  ・半径速度 = 半径速度 * 2 / 3
 ・半径 < 30 なら
  ・半径 = 30
  ・半径速度 = 0
・半径 += 半径速度

ミサイルの個数と角度を
指定して発射する

中心の座標を通常のミサイルと
同様に移動させながら
中心から半径分離れた位置に
ミサイルを複数描画する
075760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/13(金) 23:04:23.21ID:fQHc9uWN
・Z > 0 なら
 ・Z速度 -= 5
・Z <= 0 なら
 ・Z速度 += 5
・Z速度 < -50 なら
 ・Z速度 = -50
・Z速度 > 110 なら
 ・Z速度 = 110
・Z += Z速度

前方から来る時は
Z速度を遅めにする
一定フレーム追尾後、消滅する
075860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/14(土) 15:52:24.34ID:G2I+cy/Z
ボス攻撃のスプライトのチラつきを実装した

ボス攻撃のピクチャの最大数を
「ピクチャ数 = Nウェイ攻撃 x ボス最大数」
にすると滅多に使い切れ無いのに
無駄に確保して仕舞うので
「ピクチャ数 = 32」
とか適当に設定して
この中で遣り繰りする

するとピーク時にピクチャが
足り無くなる事が有り得るので
ピクチャを複数のキャラで共有して
フレーム毎に交代で描画する様にした

「描画開始」
・フリッカーN = 1

「描画ループ」
・ピクチャN >= ピクチャMax なら
 ・フリッカーN++
 ・N = (現在フレーム % フリッカーN + 1)
 ・N == フリッカーN なら
  ・描画フラグ = On
 ・違うなら
  ・描画フラグ = Off
 ・ピクチャN %= ピクチャMax
 ・垂直同期待ち
・描画フラグ == On なら 描画
075960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/14(土) 15:53:42.73ID:G2I+cy/Z
ファミコンの横16ドットのスプライトが
水平に4個を超えて並ぶとチラつくのと
原理的に同じ技術を使ってる
何にも考えて無いとスプライトが
チラつくどころか消えて
見え無い敵が襲って来る事になる
チラつきには文句言わずに感謝すべき
076060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/14(土) 16:19:58.66ID:G2I+cy/Z
ツクールの場合は
ピクチャ数が最大を超える度に

・ピクチャN %= ピクチャMax
・垂直同期待ち

とするだけでも1フレームの
チラつき表示が出来る

逆に、狙って無いのに
ピクチャが勝手にチラつく時は
ピクチャ番号が被ってるバグを
疑うと良い
076160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/15(日) 17:55:01.82ID:sv5UVbwj
「夜間着陸」のサブ・ゲームの
スケルトンを用意した
特別なイベント時のみプレイ出来る

大型艦は大気圏内では
現代の旅客機程度の機動力しか無く
無防備なので、夜間に熱光音電波重力
ネット等の全てのステルスを駆使して
着陸する必要が有ると設定した

揚力は、PDS物理学を使って
高次元で折り畳まれた宇宙の
何処か遠くに有る天体の重力を
艦の上方に透過させ、惑星重力と
釣り合いを取って発生させる
地球以外の惑星上も
同様の重力制御で1Gに保たれている

ボスは行き成り大量生産は無理ゲー
なのでネタが降りて来る度に
一つずつ追加します
シナリオの量産は
特別な手法を開発済み
076260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/18(水) 20:45:05.20ID:EbqUSCJ1
夜間着陸の夜景の描画を作った
取り敢えずランダムに
街の灯りを配置して
前進と上昇下降できる様にした
076360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/19(木) 23:37:37.28ID:xB7rodAs
夜間着陸の旋回移動を作った

・まず機体をロールで傾けて
 X-Y回転した後
・そのロール角に応じてヨーの
 X-Z回転で進行方向を転回する
・そしてヨーの分だけX移動
076460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/22(日) 01:20:34.16ID:62atMCRt
座標を実数から整数に変更した
固定小数点を無くしたので
繰り上がりのシンクロによる
プルプル振動が無くなった
076560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/24(火) 04:37:59.09ID:y0irDSzS
着陸地点とガイド・ビーコンを実装した

着陸の目標地点から複数の四角い枠を
一定の間隔と角度で配置する様にした

線の細い枠の画像を縮小すると
潰れて見えたり消えたりするので
沙羅曼蛇レーザーの時と
同じ仕組みで線を描いた

ローリングによる回転は省いた
076760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/25(水) 03:29:47.29ID:neaAzoKf
夜間着陸の終了チェックを作った

各終了条件を満たしたら
フラグを立てる
・着陸地点に接近で成功フラグ
・着陸地点を通り過ぎたら
 オーバーラン・フラグ
・地面に衝突したら衝突フラグ

各フラグの処理
・フレーム・カウンタ == 0 なら
 ・対応する効果音を鳴らす
 ・キー入力無効化フラグを立てる
・フレーム・カウンタ >= 20 なら
 ・終了/リトライ/ゲームオーバー
・フレーム・カウンタを
 インクリメントする
076960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/26(木) 00:02:22.12ID:KYDo60Ky
>>768
ツクール2003にenumは無いし
ポインタの代わりに変数番号の変数とかは有るけど
スイッチ番号の変数も無いからしゃーない
使った事の無い環境について
あんまし意見しない方がいい
077060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/26(木) 00:43:21.27ID:KYDo60Ky
説明の都合で共通処理の様に書いてるけど
それぞれ別イベントで異なった処理をする
成功なら自動操縦の処理をして着陸させる
オーバーランならメッセージを出して
最初からやり直す
衝突だったら爆発する

>・フレーム・カウンタ >= 20 なら
> ・終了/リトライ/ゲームオーバー

暫定的に20としてるけど
終了は自動操縦が終わってからだし
ゲームオーバーは40位まで爆発させる

書籍の様に完成したコードを
解説してる訳じゃ無く
作りながらの進捗報告と言う体で
進めてるので、弄ってる最中の部分への
意見はしなくてえぇよ

つうかワイがツクール先生で
おまいさんらが生徒だからな
勘違いすると単位やらんぞ
077160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/26(木) 02:38:40.66ID:KYDo60Ky
墜落後の爆発を作った
恒星系の処理からコピペして
ダメージの部分を取り除いた
爆発中は自機の移動をキャンセル
爆発が止んだらゲームオーバー

未使用のガイドの消去を追加
間違って描画されていたので修正
077260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/27(金) 05:56:02.73ID:GhGUwzRL
着陸成功後の自動操縦を実装した

着陸地点に到着したら
自動操縦で下記の方向へ
微調整して接地する
・ロール、ピッチ、ヨーを正面
・X,Y座標を着陸地点(Zは停止)

接地直後にピッチを上下して
画面を縦揺れさせる

成功フラグ等は実際には
状態遷移を表す整数になっている
・開始
 ↓
・接近、効果音
 ↓
・自動操縦
 ↓
・画面振動
 ↓
・完了、フェードアウト
077360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/28(土) 22:32:01.64ID:MSF0br0h
自機のプラズマ球が一つだけ
点滅するバグを修正した

ボスの部位の攻撃が画面に
ゴミとして残るバグを修正した

何方もピクチャ番号の計算が
間違っていただけ
077460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/29(日) 00:45:19.76ID:ig6nZgh8
ガイドの通過判定を入れた

ガイド・ビーコンを
潜り抜けた時と外した時に
其々の効果音鳴らす様にした

自機に一番近いガイドの
イテレータを保持して置いて
それ限定で当たり判定を
する事で最適化した
077560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/30(月) 01:58:32.50ID:9MHHNgfE
夜間着陸のマップを作った

20x20サイズのマップを
左上から1タイルずつ舐めて行き
タイルのIDに応じて
500x500の座標範囲に
ビルや道路等の灯りを配置する
全体でX,Z座標が-5000から+5000の
領域に収まる

スタート地点や着陸地点の
タイルIDが有ったら
変数に座標を入れて置く

余った灯りのピクチャは
ランダムに配置する

http://lnl.osdn.jp/images/Space-SSS/blog/2019/12/l/sss-2019-12-30-001.png
077660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/31(火) 03:45:00.66ID:LnEPoFcy
灯りのマップ配置に道路を追加した
残りは滑走路

街灯りと着陸地点の画像を作った
仮当てしてたものと挿げ替えた
077760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2019/12/31(火) 06:23:15.81ID:LnEPoFcy
夜間着陸のHUDを作った

ビル街の速度のHUD処理を呼ぶ
最高速度とブーストの設定を弄って
速度メーターをレッドゾーン無しにした

自動接地時に速度を
0まで落とす様にした
077960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/01/15(水) 08:09:16.23ID:rOvcYbNu
あけおめ、ことよろ

着陸が成功した時と
着地点を通り越してオーバーランした時に
それのメッセージを描画する様にした

墜落時は空の画像にして置いたので
仕様変更で描画する事になったら
画像を差し替えるだけで対応できる
078060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/01/16(木) 02:51:52.31ID:yJKk7MsJ
街灯りのマップ配置処理に
滑走路の分を追加した

これで夜間着陸は一通り出来た
後はS-IIIのパワーアップを
受け取れる惑星の数だけマップを作る
多分あんまし考えずに
フィーリングで量産できる
078160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/01/16(木) 04:50:32.70ID:yJKk7MsJ
細かく手を入れた

着地点の直前で艦首を
水平まで持ち上げる様に
ガイド・ビーコンを設定した
Y座標を地面の下から始めて
半径より下に有る時は
半径分の高さに描画する
          |
        |
      |
_ | |
真横から見るとこんな感じ

着地後、ガイドを潜れた数によって
得点とメッセージを表示する様にした
100%:パーフェクト!
80%以上:グレート
50%以上:グッド
10%以上:バッド
0%以上:クレイジー!!
078260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/01/16(木) 05:06:52.90ID:yJKk7MsJ
去年末は先生ぶってイキって仕舞い大変スマンコ
たまに来るケチを付ける奴と勘違いしますた
三次大戦を前におまいらと和解せよする等した
078360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/01/17(金) 05:57:28.14ID:PnY//fJ0
https://www.youtube.com/watch?v=a9VBHAsIqlg

「スペースSSS」RPGツクール2003用3DシューティングRPG 進捗動画 #014
夜間着陸のサブ・ゲームが出来ました。
緑のガイド枠を潜り抜けて、戦艦を滑走路に着地させます。
ブログ、Twitter、5chで毎日進捗と技術解説をしているので見に来てね。

制作:某犬犬
Web: http://lnl.osdn.jp/pukiwiki/index.php?works
Twitter: https://twitter.com/schrochan

BGM素材は「サイバーレインフォース」さんの提供です
著作者:Cyber-Rainforce
HP:3104式
URL:http://cyber-rainforce.net/
https://twitter.com/5chan_nel (5ch newer account)
078560 某犬犬 ◆m6HUWv.YwMNd
垢版 |
2020/10/10(土) 13:47:17.77ID:O4TZOpDd
今年は図書館でクエスト量産する予定だったが
この世界情勢なので放置してたスマンコ

ネットで図書館の代用できそうなのだが
その前に2件ほど別プロジェクトを割り込ませる事にした

取りあえず、昔誰かが作った戦車のフリゲをリメイクする
078660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/10(土) 14:21:58.92ID:O4TZOpDd
トリップ違ったな これか?
Linux版ツクールMV用にJavaScriptでプラグイン書いた
スタック管理、構造体、文字列、スプライト等の
個人的便利ライブラリになった

MVはスーファミ時代のアセンブラ風味で
ゲーム職人気分が味わえるので良い

http://lnl.osdn.jp/images/BankerKiller/blog/2020/10/l/bk-2020-10-10-001.png
ミニゲームだから多分そんなに時間かからんじゃろう
078760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/11(日) 08:05:52.37ID:GUOUnJKr
全戦車の座標の最小値と最大値を求めて
最小値が画面の左端、最大値が右端になる様に拡大率%を計算する
キャラがはみ出ない様に、X,Y方向の拡大率の小さい方を優先する

拡大率 = 100 * マップ幅 / (最大値 - 最小値)

最小値と最大値の平均を画面の中央にする

描画X = ((X - 平均X) * 拡大率 / 100) + 画面中央X

スマブラみたいにキャラが接近すると、画面がズームインする
078860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/13(火) 21:44:10.21ID:XF7fjAAi
戦車は直ぐ下に地面が無ければ落下して
地面より下にいるなら、地面の表面に瞬間移動する
地面が坂道なら、戦車も斜めに移動する

斜め移動用Y = 戦車X % タイル幅 * 地面の傾斜正負
MaxY = 地面Y + 斜め移動用Y - 地面からの高さ
戦車Y < MaxY なら 戦車Y += 重力の速度
戦車Y > MaxY なら 戦車Y = MaxY

スプライトゲーなのでY座標は
画面上がマイナス、下がプラス
ゲームなので定速度運動させるため
重力加速度でなくて「重力の速度」を使ってる
地面の傾斜は45度にしているので
「戦車X % タイル幅」から「斜め移動用Y」が出てくる
078960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/14(水) 00:01:13.11ID:IG25C6ZR
地形に合わせて戦車の車体の角度を変える

着地回転率 = タイル高さ - (MaxY - 戦車Y)
着地回転率 < 0 なら 着地回転率 = 0
角度 = 戦車の右端の地面の角度 - 戦車の左端の地面の角度
角度 = 角度 * (戦車の左端X % タイル幅) / タイル幅
角度 += 戦車の左端の地面の角度
角度 = 角度 * 着地回転率 / タイル高さ

戦車が移動しながら
「戦車の右端の地面の角度」と「戦車の左端の地面の角度」の
差の分だけ車体が回転する

降下中は水平で、着地の寸前に「着地回転率」で
地形に角度を合わせ始める
0790名前は開発中のものです。
垢版 |
2020/10/14(水) 17:36:12.42ID:pBSMkFVM
ウディタって何が楽しいの?
技術力が上がるわけでもないし。
079260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/15(木) 23:38:08.82ID:BBzmqpLY
ラウンド開始時に地面を自動生成する
適当な初期値を入れた後、下記をループする

連続カウントが0になる度に
_上下符号に-1から+1の乱数を入れる
_連続カウントに1から3の乱数を入れる
Yが天井なら
_上下符号に0から+1の乱数を入れる
Yが底なら
_上下符号に-1から0の乱数を入れる
地面X = X
地面Y = Y
X++
Y += 上下符号
連続カウント--

-45度、0度、+45度の何れかの坂道が、1から3の長さで続く

ループ終了後、そのまま逆順にendからbeginへループして
上下符号を地面配列の各要素に入れて行く
1つ先と現在の地面の高さの差で上下符号が決まるけど
それだとイテレータが1つ先に進んで仕舞っているので
endから逆に舐める必要が有る
079360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/16(金) 10:18:55.32ID:KbkqyE7G
上下キーで、砲身の角度が0から90度に変えられて
目押しの溜め撃ちで、弾の初速が調整できる

「溜め撃ちの処理」
発射キーが押されてるなら
_チャージ率 <= 0 なら
__チャージ開始音SE
_チャージ率 < 100% なら
__チャージ率 += チャージ速度
__チャージ率 >= 100% なら
___フルチャージ音SE
発射キーが押されて無いなら
_チャージ率 > 0 なら
__チャージ率 < 30% なら
___チャージ率 += チャージ速度
__チャージ率 >= 30% なら
___発射処理
___発射音SE
___チャージ率 = 0%

チャージ率が30%未満の時は、自爆しない様に発射を見送る
発射角に応じて、初速にcos/sinしてX,Yの速度を決める
079460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/21(水) 04:33:14.68ID:RUOoQd+z
JSプラグインで、変数番号の変数にアクセス出来る様にした
変数番号をアドレス、変数番号の変数をポインタ外し、として扱った

getEfxAdr nDst nSrc:
 nDst = &nSrc;
 nSrcの変数番号をnDstに入れる

getIndVar nDst pSrc:
 nDst = *pSrc;
 pSrcの変数番号が指す変数の値をnDstに入れる

setIndVar pDst nSrc:
 *pDst = nSrc;
 nSrcの値をpDstの変数番号が指す変数に入れる

getEfxAdrSwitch bDst pSrc:
 bDst = &pSrc;
 pSrcのスイッチ番号をbDstに入れる

getIndSwitch bDst pSrc:
 bDst = *pSrc;
 pSrcの変数番号が指すスイッチのOn/OffをbDstに入れる

setIndSwitch pDst bSrc:
 *pDst = bSrc;
 bSrcのOn/OffをpDstの変数番号が指すスイッチに入れる
079560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/21(水) 04:33:45.07ID:RUOoQd+z
プラグインの引数に変数番号では無く、変数の名前を与える事で
変数の並びを変えた時の修正ミスや手間が省ける

「変数名から変数番号(アドレス)を得る方法」
・キャッシュ[変数名] に値が入っているなら
 ・キャッシュ[変数名] を変数番号として返す
・ループ
 ・$dataSystem.variables[i] == 変数名 なら
  ・キャッシュ[変数名] = i
  ・i を変数番号として返す

「$dataSystem.variables[]」に
ツクールの変数が変数番号順に入っている
079660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/25(日) 06:44:52.05ID:Gy2RzjYB
構造体の配列をプラグインで管理した

&foo は変数名 foo を指定する参照渡し
struct は、プラグインのサブ・コマンド
struct iter は、サブ・コマンドのサブ・コマンド

BkkSprite struct init &ctrlHead &iterHead &iterTail &max
BkkSprite struct alloc &ctrlHead

init で管理領域を設定して
alloc で実際にスタック上にデータ領域を確保する

BkkSprite struct iter isBegin &ctrlHead &result
BkkSprite struct iter isEnd &ctrlHead &result
BkkSprite struct iter begin &ctrlHead
BkkSprite struct iter end &ctrlHead

イテレータの終了チェックと、イテレートの開始/終了

BkkSprite struct iter at &ctrlHead &idx

イテレータの値を直接指定して、そこへ飛ぶ

BkkSprite struct iter ++ &ctrlHead
BkkSprite struct iter -- &ctrlHead

イテレータを進める

基本的に要素の削除は無くて
代わりに使用中フラグをメンバーに入れて置くか
またはスタックごと開放して、リセットで最確保する
079760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/10/25(日) 07:20:07.14ID:Gy2RzjYB
データへのポインタを列べたイテレート領域を使って
構造体のメンバーにアクセスする(管理領域とは別物)

「構造体 Tank のイテレート領域」
Tank.type
Tank.x
Tank.y

BkkSprite getIndVar n Tank.type

で Tank のメンバー type を変数 n に読み込む
Tank.type はイテレート領域のポインタ変数名

BkkSprite setIndVar Tank.type n

は、逆に変数 n の値をメンバー Tank.type に書き出す

要するに、スタック上のデータ配列に対して
メンバー名でアクセスする為の仕組み

モトローラの680x0系アセンブラが分かる人なら
「ディスプレースメント付きアドレスレジスタ間接アドレッシングモード」
見たいなものと言えば伝わるだろう

ツクール2003では、コモンイベントのコマンドで実装してたけど
MVは「変数番号の変数」が使え無いのでプラグインにした
079860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/06(金) 04:44:38.28ID:R9EDHC1C
被弾時の爆発が何処かを弄ってる内に描画できなくなったけど
MVの変数は設定した上限を超えるとアクセス出来ない様だ
2003ではおkだけど、多分変数番号の変数で扱える為なのだろう
見た感じコードには何処にも間違いが無さげで数日ハマった
079960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/11(水) 13:37:00.53ID:0pHfwJIV
爆発はテクスチャ・アニメの種類毎に
「けむり」「閃光」「炎」に別けて画像をロードする
構造体の配列は共有してるので
描画する時は種類を見て別々に処理する

「けむり」のアニメをゆっくり目に描画しながら
始めに「閃光」を一度だけ生成して
一定フレーム毎に「炎」も生成する

「けむり」のアニメが終わったら
マップや戦車を再生成して次の対戦に遷移する
080060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/11(水) 13:44:12.99ID:0pHfwJIV
砲弾のチャージ・ゲージは、飾りの付いた外枠と
上下にグラデーションが掛かったゲージを組み合わせる
ゲージをチャージ率に応じて横方向に縮小表示する
080160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/11(水) 13:56:28.65ID:0pHfwJIV
対戦開始時の「Ready」表示中は
射撃禁止/移動おkで、間合いを取れる
「GO!」で射撃禁止フラグをOffにする

爆発中は射撃と移動の両方を禁止にする
080260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/13(金) 16:00:33.71ID:Ne4OzMjC
砲弾四種

「スタンダード」単発、高速、早チャージ
 通常弾

「バースト」二連発、高速、遅チャージ
 通常弾を発射後、チャージ率x90%で最発射

「スプレッド」三分裂、低速、遅チャージ
 発射後カウンタが0になったら
 通常弾二つ生成とそれ自身を通常弾に変える

「サイト」着弾地点表示、フェイント
 発射後、予想地点にレティクル描画
 左右の移動で速度微調整
080360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/13(金) 16:18:50.25ID:Ne4OzMjC
マップ選択と障害物の生成をやった

キャラ名を[x][ ]か(x)( )に変更して
メニューから「\N[1]」で表示して
チェックボックスとラジオボタンにした
マップの選択はチェックボックスで選んだ中から
ランダムに選ばれる

マップの種類に応じて、障害物を描画
効果はまだ未実装
080460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2020/11/14(土) 08:40:21.32ID:HwzKAcsU
マップと障害物の三種を実装した
「草原」「林」視覚的に隠れられる
「岩地」「岩」水平方向の弾除け
「砂漠」「流砂」移動速度を半減
080560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/10(水) 15:48:50.83ID:YnlIq0em
「草原」の「林」だけ戦車より手前に描画した
スプライトのZ座標を使って実装しようとしたが
ツクールのプライオリティ処理が
機能していないっぽいので
別のスプライトを手前に確保して回避した
080660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/10(水) 16:41:51.38ID:YnlIq0em
AIを実装し始めた
・AI
 ・行動トリガー
 ・行動
 ・学習トリガー

・弾避け
 ・敵が射撃
 ・左、中、右に移動
 ・敵の着弾

・射線外し
 ・ランダム
 ・左、中、右の山の裏へ移動
 ・敵の着弾

・ランダム移動
 ・ランダム
 ・左、中、右に移動
 ・敵の着弾
080760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/10(水) 16:42:17.43ID:YnlIq0em
・チャージ
 ・AIがチャージ開始
 ・敵の左、中、右を狙う
 ・AIの着弾

・発射
 ・敵が射線上に入る
 ・発射
 ・無し

・山越え
 ・AIの着弾
 ・砲身を上下
 ・無し

「行動トリガー」で行動が発生して
「学習データ」を元に「行動データ」を設定する
「行動データ」によって毎フレームの行動を決める

「学習トリガー」で学習が発生して
「学習データ」を調整する
080860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/10(水) 17:00:53.00ID:YnlIq0em
学習の例として「弾避け」の場合

・敵が射撃したら
左、中(移動無し)、右の比率に応じて
乱数で移動先を決める

・敵の着弾で当たらなければ
選んだ行動の比率を+2して
それ以外の比率を-1する

・当たった場合は
選んだ行動を-20して
それ以外を+10する
080960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/10(水) 17:10:35.93ID:YnlIq0em
・正しい選択をしたっぽいなら
微妙に正の強化学習をして
・間違っていたなら
ペナルティとして多めに
負の強化学習をする

ゲームを繰り返すにつれて
どんどん強くなって行く(と良いなー)
リセットするか終了すると初期化
081160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/11(木) 18:58:12.18ID:0LtU3bBr
SE はデフォ素材のを再生速度変えたりして使ってる
BGM はフリー素材
作曲は時々やりたい病になるけど、出来無い
0812名前は開発中のものです。
垢版 |
2021/02/12(金) 22:53:35.52ID:1LHSZjPr
再生速度、変えるってのがあるのか

商用にする場合、フリーでも著作権問題になる場合あったかも
081360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/17(水) 18:06:12.79ID:PoSk5NNh
チャージ、発射、山越えを仮実装した

・常にチャージし続けて、弾道計算が当たりなら発射
・目標に当たらなければ、砲身角度を上げて
 ロフテッド軌道で山越えを狙う
・当たるかランダムで角度を多めに下げる
081460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/17(水) 18:13:33.80ID:PoSk5NNh
弾避けを仮実装した

・敵弾が発射されたら
 左、中(その場)、右のステップ座標を指定する
・移動処理で指定座標へ向けて移動する
081560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/02/21(日) 15:39:42.09ID:/QexS5oq
AIが敵の方向を向く様にした

移動の指示が無い時か、画面端にいる時に
前方に敵が居なければ、振り向く様に
移動先を一歩後ろへと指示する
081660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/03/13(土) 16:46:17.16ID:nG7hvE7Y
ランダム移動を実装した

乱数 % ランダム・フレーム数
が 0 ならランダムにステップ移動
移動距離は弾避けの値を流用

学習は、敵の弾が外れる度に
ランダム・フレーム数 += 1
当たったら
ランダム・フレーム数 -= 10
081760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/03/21(日) 14:05:52.87ID:IeCjnlr6
「射線外し」を実装した
敵から見て、山頂の1ブロック向こう側は
ロフテッド軌道でないと当て憎いので
そこに隠れる様に移動する

乱数 % フレーム数
が 0 なら隣の山陰まで移動

学習は、敵の弾が外れる度に
 移動先 += 2%
 移動先以外 -= 1%
 フレーム数 += 1
当たったら
 移動先 -= 20%
 移動先以外 += 10%
 フレーム数 -= 10
081860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/03/21(日) 15:35:19.02ID:IeCjnlr6
CPU 同士で対戦させてみた
強い順に
1.ノーマル
2.バースト
3.スプレッド
4.サイト

サイトは AI にフェイントは逆効果
スプレッドは溜めと弾速遅すぎ
バーストは溜め遅い割に奮闘
ノーマルは普通が一番強いっぽい

負けると、チョコマカ動く様になるし
動き過ぎると、狙える弾数が減って
更に負ける傾向が有る
082060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2021/05/20(木) 18:17:33.45ID:fb4MItLz
プレイヤー2をテンキーで動かせる様にした
スクリプトでテンキーのキーの名前を
変えて初期化した

Input.keyMapper[98] = 'down_numpad'

デフォだとカーソルとテンキーに
同じ名前が付けられてるので
語尾に '_numpad' を加えた

内部的には4人同時プレイ出来る様に
作ってあるので、2番目のCPU以外の
プレイヤーに割り当ててる
082260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:44:35.53ID:4tyLFpBf
生存報告(ガチで)

ツクール2003がサポート終了したので
心機一転MSX3に移植する
PyGameで作ってるのでLinuxでも動く

解説は2chでレス開始するより前の一番最初からになる
082360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:44:45.76ID:4tyLFpBf
生存報告(ガチで)

ツクール2003がサポート終了したので
心機一転MSX3に移植する
PyGameで作ってるのでLinuxでも動く

解説は2chでレス開始するより前の一番最初からになる
082460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:46:20.77ID:4tyLFpBf
pygameのブログ見た
放ったらかしになってたpythonの
オライリー本の続きを読んでる
082560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:47:09.79ID:4tyLFpBf
今時のゲーム開発は、工場のライン工と変わらない
職人の腕を発揮する要素が無いし詰まらない
ツクールでもやってる方がまし

オールドスクールのスプライトゲーが作ってて一番楽しい
082660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:47:40.26ID:4tyLFpBf
モジュール関連まで読んだ
082760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:48:11.52ID:4tyLFpBf
久し振りにSSS起動したけど、もの凄い重くて、
どうしようか思案中
082860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:48:46.27ID:4tyLFpBf
初めてのPythonの22章まで読んだ
PyGame版と2003版を同時進行で作りたい
082960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:49:12.96ID:4tyLFpBf
pygame版の推奨スペックは、ラズパイ以上にしとけば、
問題ないだろう

今年の小遣いで、MSX3が買えるかは微妙
083060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:50:31.16ID:4tyLFpBf
爆速のdragonballを並列で128個くらい繋いだ
近代化改修X68kなら弄りたいと妄想してたけど
ただ復刻しただけだと、今からまたやるの?
もう思いでの中でいいよってなってる

MSX3のスーパーリッチなスプライトで
スーファミ時代の業務用ゲームみたいなの作る方が楽しそう
083160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:50:49.04ID:4tyLFpBf
pygameのリファレンス読んでる
083260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:51:10.65ID:4tyLFpBf
続くかどうかは知らね
083360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:51:38.10ID:4tyLFpBf
PyGameのリファレンス全部読んだ
MSXまだだけど、見切り発車するかも
083460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:52:22.63ID:4tyLFpBf
PyGameインスコして、メインルーチン作った
取り敢えず、スクリーンを明滅させて、EscキーかXボタンで終了する
0835名前は開発中のものです。
垢版 |
2023/09/24(日) 23:58:31.73ID:Iwqz8dU2
なんか、さらーっと流し読みした程度なんだけど、そこまで凝りたいんだったら、ウディタじゃなくてDXライブラリ使った方がいいんじゃない?
ウディタめんどいよ。
083660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/24(日) 23:59:15.58ID:4tyLFpBf
宇宙の背景の座標のロール・ピッチ回転を実装
スプライトはまだ無いので、赤い四角を描画
カーソル・キーで操作する

clock.tick(60)でFPSを指定して
clock.get_time()で実際に経過したミリ秒数に応じて、
加速度と速度を調整するので、
フレームレートが落ちても、移動が安定する
083760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:00:08.78ID:9zDWpNON
調整は、加速度と速度に「clock.get_time() / 基準時間」をかけて、移動させるだけ

経過時間に上限を設定しているので、
それを越えた場合は、処理落ちが発生して、動きが重くなるはず
083860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:07:49.11ID:9zDWpNON
>>835

>>60 から下を読めば分かるけど、俺は >>1 じゃ無い
RPGツクール2003用に作ってたけど、残念ながらディスコン

謎の技術を詰め込んだオーパーツなので
便利なエンジンとか特にいらんのだわ
083960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:08:52.11ID:9zDWpNON
整えて、リファクタリング
084060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:18:53.80ID:9zDWpNON
スプライトとPCGを実装した

subsurfaceで画像を切り分けて
スプライト・シートを使える様にした

transform.scaleの拡大で
元画像のサイズを画面の解像度に合わせる様にした

sprite.DirtySpriteで
スプライトのグループを管理して
自動でupdateとdrawをする
084160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:19:44.34ID:9zDWpNON
背景の宇宙をスプライトで描画した

自機が移動しても距離が変わらない、無限遠に置いた
初期化時に6面に置いて
そのサイコロの中がゲーム・エリアになる

ピッチとロールで座標を回転して
ロールの時だけ画像を回転
084260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:20:46.80ID:9zDWpNON
Z軸のロール回転
x = x * cos - y * sin
y = y * cos + x * sin

X軸のピッチ回転
z = z * cos - y * sin
y = y * cos + z * sin
084360 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:21:17.55ID:9zDWpNON
星屑を取り敢えず描画した
ロールとピッチだけ実装して、移動と拡大縮小はまだ
084460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:21:48.66ID:9zDWpNON
星屑の移動を実装した

加速や減速のキーが押されてたら、加速度を設定する
加速度を速度に加えて、その速度を座標に加える
avz = +10
vz += avz
z -= vz

描画位置はx, y座標をzで割って、描画半径をかけるだけ
draw_x = x * r / z
draw_y = y * r / z
084560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:22:09.87ID:9zDWpNON
描画半径が視野角に相当する
084660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:23:15.60ID:9zDWpNON
星屑を距離に応じて縮小描画できる様にした

Surface.subsurface(column * width, row * height, width, height)
でスプライト・シートを切り出し
pygame.transform.rotate で回転
pygame.transform.scale で拡大縮小して
画像の三次元配列を生成して置いて
描画時に画像を切り替える
084760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:29:41.50ID:9zDWpNON
星雲の移動と描画を作った

宇宙の背景とだいたい同じ
無限遠に張り付いて、ローリングする
初期配置だけ、ダイスの各面のランダムな座標にする
084860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:30:27.51ID:9zDWpNON
画面サイズの変更に対応した

倍率 = screen.height / 基準サイズ.height

で倍率を求めて、スプライトの初期化時に
スプライト・シートを拡大する
描画時も、視野角に倍率を掛ける

キャラクタの座標等のデータは、そのままで良い
084960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:31:03.44ID:9zDWpNON
コクピットを実装した

ロールとピッチの加速で、視点が若干移動する
上に回転してる時は、パイロットの頭が下を向くので、
コクピットが上に移動する
下はその逆

HUD類は、まだ後回し
085060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:31:47.20ID:9zDWpNON
DirtySpriteのvisibleが機能しないと思ったら、
LayeredUpdatesのグループじゃなくて
LayeredDirtyの方に入れないといけなかった
085260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/25(月) 00:33:44.60ID:9zDWpNON
取り敢えず過去の分まで連投終わり

あらためて、よろしくお願いします
085560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/29(金) 03:18:18.42ID:OTM2o5z5
・スプライトの回転、拡大縮小を
事前にスプライト・シートを生成してやるか
リアルタイムでやるかを選べる様にした
085660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/29(金) 03:18:27.71ID:OTM2o5z5
・スプライトの回転、拡大縮小を
事前にスプライト・シートを生成してやるか
リアルタイムでやるかを選べる様にした
085760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/29(金) 03:18:57.83ID:OTM2o5z5
・ビームの発射、移動、描画を作った

・回転はスプライト・シート
拡大縮小はリアルタイムでやる様にした
085860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/09/29(金) 03:19:59.35ID:OTM2o5z5
・ビーム発射の累積時間に
前フレームからの経過時間を足して
発射間隔を越えた分だけ発射処理をする様にした

累積時間 += 経過時間
ビーム・データの最大数まで繰り返し
 if 累積時間 > 発射間隔
  発射処理
  累積時間 -= 発射間隔

・Z座標の初期値は

発射間隔 * 速度
085960 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/10(火) 22:39:18.65ID:CQtEAaUT
スプライトの拡大率100%のパターンが
生成されていなかったのを修正

ビームのZ速度を落として、逆に発射間隔を広げた

ロール時に、ビームが逆回転していたのを修正
086060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/13(金) 07:05:00.38ID:h5H/rMiZ
レーザーの描画を実装した
まだ透明度の設定が、上手く行って無い
086160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/13(金) 07:05:06.98ID:h5H/rMiZ
レーザーの描画を実装した
まだ透明度の設定が、上手く行って無い
086260 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/16(月) 10:35:33.42ID:O8te+ED8
スプライトの画像全体の透明度を指定できる様にした

画像にアルファ値が有ると指定できないので
透過色を設定する
ロード時に特定の座標の色を透過色にする
デフォルトは左上の角

これでレーザーを半透明に出来た
0863名前は開発中のものです。
垢版 |
2023/10/16(月) 10:36:44.55ID:O8te+ED8
画像に修正を掛ける度に.convertを呼んでいたけど
ロード直後だけで良かった
086460 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/16(月) 10:37:28.62ID:O8te+ED8
武器を選択できる様にした
Sキーで順切り替え
Wキーで逆切り替え

武器の管理用コントローラ・クラスを用意した
086560 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/17(火) 16:53:27.32ID:aGtW+Iun
キー入力の制御クラスを作った

左キーを押してる時に、右キーも押したら
右キーを優先する
逆や上下も同じ
086660 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/10/17(火) 16:57:58.88ID:aGtW+Iun
・左右同時押しか?
_・左が押されたばかりか?
__・左優先フラグOn
_・右が押されたばかりか?
__・右優先フラグOn
_・左優先フラグがOnか?
__・左入力
_・右優先フラグがOnか?
__・右入力
・同時押しでない?
_・左右の優先フラグOff
_・普通に左右入力
086760 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/11/10(金) 22:27:11.57ID:Kv+5yxJn
プラズマのリングの描画を実装した

上下を半分に分けて
チャージ玉を手前と奥のサンドイッチにする
086860 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/11/10(金) 22:27:15.38ID:Kv+5yxJn
プラズマのリングの描画を実装した

上下を半分に分けて
チャージ玉を手前と奥のサンドイッチにする
087060 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/11/11(土) 04:57:13.30ID:slhkB/DF
プラズマの玉を、チャージで大きく出来る様にした

2個以上の玉を一枚絵にすると
拡大した時に画面に収まらないので
個別のスプライトにした
087160 某犬犬 ◆HzfAAjcl8nz1
垢版 |
2023/11/13(月) 03:17:54.97ID:EBWPJsfi
チャージしたプラズマを発射できる様にした

チャージ玉の座標を、そのまま初期座標として入れて
チャージ率を、画像の拡大率にして
使用中フラグをTrueにして発射

画像の拡大率は以下で求める
100 * チャージ率 / Z座標

大きさやダメージ量を表すチャージ率は、最小で20%
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2569日 2時間 25分 54秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はUPLIFT会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《UPLIFT会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
4 USD/mon. から匿名でご購入いただけます。

▼ UPLIFT会員登録はこちら ▼
https://uplift.5ch.net/

▼ UPLIFTログインはこちら ▼
https://uplift.5ch.net/login
レス数が1000を超えています。これ以上書き込みはできません。

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