ニートが頑張るブログ

ニートが現実逃避するために創作活動など色々とカオスに頑張ってみる
ニートが頑張るブログ TOP  >  自作ゲーム開発 >  リアルタイム大きさ変更システム

リアルタイム大きさ変更システム

 
すんごい久しぶりのゲームエンジン作りの進捗報告です。
内部的にはかなり色々変わったつもりです。




swf直接・右クリックで保存とか・全画面表示とか


◆基本操作
方向キー: 歩く    スペースキー: ダッシュ 
シフトキー: ロックオンor並行移動 (ロック対象がいるときはオンオフ、無いときは押しっぱなし)


Zキー: 武器振り
Xキー: ちょい押しでジャンプ 長押しでしゃがむ
Cキー: 吐血 エフェクト出力テスト
Vキー: 箱と自キャラの操作切り替え
Bキー: 爆発四散
Nキー: 時間停止  Mキー: コマ送り 
Dキー: キャラを追加
Fキー: 箱を追加



◆やったこと

メインとしては、

・キャラの大きさをリアルタイム変更可!

・地形以外のマップの編集 エディットとテストプレイ

・攻撃系を色々


この3つが大きいですね。

これについて詳しく語っていきます。

カマキリ大小



 

◆キャラの大きさ変更

キャラの大きさを変えられるようになりました。


編集モードで
胴体をクリックすることで、リアルタイムにキャラの大きさを弄る事ができます。
(今のところ50%~150%まで)


まぁこのアニマルメーカー由来のシステムなら
キャラの大きさを変えたところで、これまでどおり問題なく地形を歩けるのは当然なのですが、
(足が実際に個別に地面を蹴って、その反作用で歩くようにしているエンジンなので)
問題は「リアルタイムに」大きさを変えるということです。


最初に発生させるときに倍率をかけとくだけなら今まででも出来ただろうけど、
これをリアルタイムに変えられるようにするとなるとちょっと面倒です。

(表示する太さとかもそうだけど、
 イチイチ全てのパーツで変数の掛け算をしたりするのは宜しくない)

まぁそういうことを頑張ったということです。


そもそも、「キャラの大きさがリアルタイムに変化するアクションゲーム」など、あったでしょうか?


例えば、「キングダムハーツ」の「不思議の国のアリス」のワールドでは
まさに「アリス」のように、薬を飲んで体の大きさを変えて
謎解きアクションをする要素がありました、が。

でも、それにしたって、
結局大きさが変わるときにムービーは入るし、「読み込み」は入るので、
「結局、予め大きさを変えた別モノのステージ間にワープしている」というのは
バレる人にはバレてしまうわけです。


「塊魂」にしたって、結局この問題を解決できてない気がする。
ある程度塊がデカくなると、別のステージに移動してるだけという奴。
本当にシームレスにデカくなれてる気がしない問題。


キャラメイクでの背の高さがアクションに変化を与えるゲーム自体も、まぁあるでしょう。
例えば「ドラゴンズドグマ」とか、背の小さいキャラでないと通れないマップとか、あった。
でもそれは最初に大きさを決め打っているだけの話。


つまり、リアルタイムにキャラの足の長さが変わっていって
リアルタイムに踏みしめる地面との反応が変わっていくゲーム
なんて、
全然存在していないのではないかと思ったりします。

このエンジンはその辺も可能にするということです。


自分のこのシステムなら、「ガリバートンネル」みたいなことも出来るはず。
ジョジョ6部の緑色の赤ん坊のスタンドみたいな
「足がどんどん短くなっていくので永遠に到達できない」現象
とかも出来るはず。

・・・
で、まぁそんなこんなで
キャラの大きさを変えられるようになることで
実際問題ゲーム的にはどんなことが出来るようになるかというと、


主人公視点としては、
まさに「背の高さ要素を絡めた謎解き」が出来るようになります。
それもリアルタイムに。

「大きくなる薬」とか「小さくなる薬」とか。
やはり不思議の国のアリスのような謎解きを作ったり遊んだり出来るようになるわけです。

今回、サンプルのステージ1で
空中に浮いた箱を使ったトンネルみたいなのを用意してあります。
しゃがむことで丁度通りぬけられるキャラと、通りぬけられないキャラが出てきています。
(アマ公とかは、姿勢が低いので普通にトンネルの下を走り抜けることが出来たりします)


あと、敵視点で考えてみると、
「敵キャラ」の大きさを弄ることで多様性を持たせることが出来るというのが嬉しいですね。

本当に、「バイオリベ」をやってて思ったこと。
・バーサーカー
・ローグ
・タンク
・冠

という、見た目的には4種類の「キャラのデカさと早さのバリエーション」だけで
あれだけのステージの多様性を用意していたことを考えると、
こういうのはワリと使えるように思えてきます。


当然自分のこのシステムでは
「キャラクターの歩く周波数」もリアルタイムに変化させることができるので、
ローグみたいに「小さくてシャカシャカ動く小さい敵」とかもちゃんと作れるワケです。


当然デカイボスキャラも作れる! これはワクワクしてきます。


◆地形以外のマップ要素の編集が可能に

アホマップ

箱とかアイテムを配置したり編集したり出来るようになりました。
今までは地形しか弄れませんでしたが。


編集したマップデータはちゃんと保存することが出来ます。
まぁそんだけなのですが、
まず箱の編集内容について説明。


箱の色んな属性を編集できるようになっています。

「攻撃したときに壊せるかどうか」を、6段階ほどの要素に分類してみました。

・キャラが頭突きしただけで壊れる (氷)
・落下した衝撃だけで壊れる (氷)
・武器で攻撃すると壊れる (箱)
・武器で攻撃しても壊れない。押すことは出来る (木箱)
・武器で攻撃したら弾かれる。押すことが出来ない (鉄箱)
・武器で攻撃したら武器を弾かれる。 (石箱)


更に、
「重力」と「上下方向」の動作変数を弄ることで、その組み合わせで
様々な挙動をさせることが出来るようになっています。

・空中に浮いている箱
・空中から落下してくる箱
・上下運動を繰り返す箱
・ドッスンドッスン動く箱

などなど

更に更に、
・押せるかどうか
・壊した時にアイテムを出すかどうか
・頭をぶつけた時にダメージを食らうか 即死するか (未実装)

なども編集できます。


これらの要素を組み合わせて、
謎解きやら何やらを作っていくのです。

泳ぐサメ

あと箱が水に浮いたりとか出来るようになりましたね。
つまり水中判定と重力の変化をやっています。

サメとかのヒレを持った生き物は、
地上じゃピチピチするしかないけど水中じゃスイーと泳げるようになりました。
まだまだ調整が必要だけど。


◆攻撃系色々

前回からの続き。
攻撃系をちまちま固めています。

結局、動作からの「技の派生」というのを色々作ってしまいました。
今、こんな感じになっています。

・通常攻撃からの3コンボ

・しゃがみからの斬り上げ
・しゃがみジャンプからの斬り上げジャンプ

・斬り上げ攻撃からの兜割り攻撃

・ダッシュからの突き攻撃

・左右の平行移動からの薙ぎ払い攻撃

・回転からの回転攻撃


・・・
まぁこんだけなのですが、
十字キーと2ボタンだけの超シンプルな操作系だというワリには、
自分としてはかなり気持ちいい斬撃アクションが出来そうな予感がしています。


いやほんとに。
(基本は、DMCみたいなアクションを「R1ロック」なしに出せるようなのを目指しています)
(敵をシフトキーでロックしてからの前後左右の平行移動で、技がそのまま派生するようになっています)


今回つくった奴としては
「回転攻撃」がかなりお気に入りです。
なんか安定して出せると嬉しいです。


◆箱を攻撃したときの触感

箱ハイタイム斬り上げ

で、例えばこんなふうに、箱にしゃがみからの「斬り上げ攻撃」を当てると、
ちゃんと箱を持ち上げることが出来るようになっています。

これは本当に、攻撃技の「斬撃の先端の軌道に応じた加速」をさせるようにしています。

つまり、
「なんとなくこの技を当てたらこう動かそう」という風に技ごとに決め打ちで設定しているのではなくて、
「こういう軌道の技なのだから当てたらこう動く」としているのです。

よって
回転攻撃とか薙ぎ払い攻撃を当てると、姿勢に応じて箱を左右に押すことが出来るのです。
これを使えば、通常の「倉庫番ゲーム」だと積んでしまうような場所に移動した箱も復帰できますね。
だから「そういうの込み」の謎解きも作れるのです。


で、このエンジンは前回言ったように
リアルタイムに攻撃の軌道をカスタマイズすることも出来るわけなので、
それを利用して、
攻撃が敵とか箱とかに衝突したときに、斬撃のスピードが減速するようにしてみました。


この、「ヒットストップ」みたいなのは、まぁ色んなゲームが実装してる奴だと思います。
これをすると、なんか「モノを本当に殴っているような触感」が出るのですね。


でもあんまこれをやり過ぎると、
さっき言った通り、このエンジンは「軌道に応じて実際に加速度が発生する」ようにしているので
その効果自体が弱くなってしまいます。

目に見えるほど減速しすぎると、
箱を持ちあげられなくなってしまったりするということ。
だからこの効果はほんの隠し味程度にしているのです。


隠し味程度の要素と言えば、
今回は攻撃モーションの「補間」のようなことを一応しています。

前回はテキトーに振りっぱなしだったけど、
今回は武器振りの「振り始め」「振り終わり」の数フレームで、
武器の軌跡をちょっとだけ繋げるようにしています。

つっても全然分からんですけどね。
でも一応前回のと比べると分かる程度。

(一番わかり易いのはハイタイムジャンプからの兜割りで、
 兜割りの最初の軌道がちょっと曲がってるのが分かるかな、くらい)


こういうのはハッキリと効果が分かるくらいやり過ぎるとモッサリになってしまう。

モーヒュームを導入してるアクションゲームとかあるけど、
それ本当にモーション補間してるのかよ!?と思うことが多いです。

とにかく30fpsのアクションゲームでそんなに効果が分かるほどそういうことはやれないってことですね。


ところで自分はヒットストップの「触感」についてだけで延々と語れるけど、
どうだろうか。


「忍道戒」ってゲームで人を斬った時の触感がほんと好きでした。
刀で人体をショリショリしてる感じが伝わってくる。 重みがある。


「DmC」ってゲームは、3つの武器毎に
このヒットストップとかの具合を全く変えていて、
それが爽快感の多様性になってた気がする。

・アービターは、ハイパーアーマーで
敵に問答無用で攻撃をブチ込む。
敵は完全に吹き飛ぶ。

・オシリスはもう完全に敵にあたろうが一切ヒットストップが無く、
敵をすり抜けるような触感で攻撃を与える。

・で、リベリオン。
このリベリオンの一部の攻撃で、
攻撃を当てた時と当たってない時で明らかにモーションに差が出ている技があると思います。
たしか、空中でディレイ攻撃あてた時の3段目とか。
それが、「敵に剣が引っかかってる感じ」がして、すっごい気持ちよかったのです。


◆敵を攻撃したときの触感

でまぁそのような感じで
「箱」だけでなく「敵」を斬った時の挙動とかも詰めていっています。


通常のゲームにおいても
敵を斬った時とか、
敵に衝突した時、
「敵の位置のスライド」が発生すると思います。


当然このゲームは、足が実際に個別に動いて地面を蹴っているゲームですから
その辺をもっとリアルに作れるワケです。


通常のゲームは、
敵に攻撃を当てた時、
とりあえずの「被ダメモーション」を再生して、
敵が「その攻撃の方向」にむかってノックバックする、

・・・未だにそんな次元のことしかしてないゲームが多いんじゃないかと思います。


攻撃時は被ダメモーションが派手に発生するからまだ誤魔化せるとして、
敵にただぶつかった時の押し出しの処理は、
更にテキトーなのがバレバレなゲームが多いです。

例えば
「デモンズ」でルーラーをあてて
モブ敵を移動させる時とか。

とりあえず「ススーっ」とスライドさせるしかないのです。

例えば
「アフリカ」というゲームが発売される前の出来事。
ゾウとシマウマが衝突したとき、
押されたゾウが足も動かずに「ススーっ」とスライドするシーンがあるのを動画で指摘され、
「PS3のゲームだというのに未だにこんな次元のことも実現出来ないのか!」
さんざ言われていた気がします。


自分が今作ってるこのエンジンでは、
その辺のこともちゃんとしているつもりなのです。


敵と衝突したときも、
敵に斬撃を与えた時も、
そのときに発生した加速度というのは
ちゃんと敵の「足にキテ」「おっとっと」てな感じで敵がその方向によろめいて行くようにしています。

bigdogをつつく

だから例えば↑こんなふうに、敵として「BIG DOG」を発生させて、
横から突き攻撃を当てると、
まさにあの、「BIG DOGを横から蹴り飛ばしたときのような感じ」が出ます。 一応。


一応、
そういうのを目指しているのです。


主人公以外をちゃんと「押せる」マジなゲーム、というのは結構少ない気がしますね。


「ヘビーレイン」の雑踏とか、
「アサクリ」の雑踏とかか。

この2つのゲームは、「モブキャラの押し出し表現」に力を入れていたと思います。

このゲームは、
ある意味、そういう「雑踏のテックデモ」みたいなところがあると思う。
明らかにそういうのを見せたいだけのシーンがある。


まぁそんな感じでした。


ちゃんと敵も落ちてる武器を拾えるようになってますし、
武器を拾うと攻撃を出せるようになっています。

ミクさん殺し合い

だから現時点でも、こんな感じのチャンバラが出来るようになっています。
シフトキーでロックオンして、
自動走行モードにすると、それっぽく斬り合います。



本当はここに更に!

体の各パーツ毎に当たり判定をつけて!

手がもげたり足がもげたり、足を引きずったり!

手が弱体化したり足が弱体化して、ビッコを引くようになったり!

首が飛んだり!!

そういうことがリアルタイムに発生するようになる予定なのです。



ここまで酷いゲームは、
酷さについてマジなゲームは、中々ないだろう。



次の予定としてはフラグ系を固めていくと思います。


スイッチとか、
ドアとか、
そういうギミック系ですね。


そしたら、今度こそ、
ちょっとした面クリア型のミニゲームが作れるようになるはず、です。

関連記事
[ 2015/06/08 15:49 ] 自作ゲーム開発 | TB(0) | CM(0)
コメントの投稿












管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL

月別カレンダー
09 ≪│2017/10│≫ 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -