第16章 自作ツールの開発


解析が進むに連れて謎が浮かんでは消えていくといった感じである。
謎を一つ解くと新たに謎が浮上してくるのである。
今のところキリがないが、ある程度のところまでツールを作り込むことができた。

開発中の自作ツールは、こんな感じである。


開発中のツールは、カメラワークを変更するに当たって生じる問題を解決していくためのツールである。
つまり、問題点を整理し、その問題を一つ一つ解決していく必要がある。


問題の概略 解決方法の概略
現状の
進捗
1
カメラワークを変更するには、各シナリオの各エリアに該当するRDTファイル(バイナリ形式)を編集する必要がある。バイナリデータであるため、その構造を理解し、わかり易い10進数などに変換し、編集しやすい形式にする必要がある。 Dchaps氏が作成したツールを使用することにより、ゲーム画面を確認しながらその場で変更することができる。
しかし、一部の座標変更が対応されていない。
(INDEX領域の変更およびカメラ焦点2の変更ができない)
このため、不足部分をサポートするツールが必要となる。
ほぼ開発完了。
微調整が必要。
2
Dchap氏が作成したツールは、数値を変更することによってカメラ位置、カメラの焦点を変更できるが、その数値が加減が難しい。
数値は、座標データであるため、X,Yの方向と位置関係が理解しにくく、距離感もつかみにくい。
Dchaps氏が作成したツールをサポートするために、座標データを2次元に描画し、INDEXの形を正確に表し、カメラの位置とカメラの焦点をマーク表示し、方眼紙のような破線を描き、そのサイズ(距離感)をつかみやすく表示する。 ほぼ開発完了。
微調整が必要。
3
未使用INDEXがかなりある。
開発中のツールでINDEXを描画すると未使用のINDEXも描画されるため、上部からみた平面図が重なり、ごちゃごちゃとした形になりがちである。
未使用INDEXをツールのデータベースに登録することにより、描画を除外する機能を追加する。 描画除外機能は実現済み。
データベースの登録がまだ少ない。
4
Z値(高さ)を含めた平面図が足りていない。
カメラの高さとカメラの焦点の高さの描画が現状ではできない。
Z値(高さ)の調整については、X,Yに比較すると理解しやすいので、後回しにする。
余裕があれば、Z値をビジュアル的に描画する機能を追加したい。
とりあえず保留
5
開発中のツールは、上から平面図を描画するが、同じエリアに1Fと2Fなどがあると、INDEX描画が重なり、ごちゃごちゃと表示され理解しにくい。
例えば死守のホールや決意のホール。異界の排気塔である。
各INDEXのZ値を分類し、閾値を設けることにより、例えば1Fと2Fを区分けする機能を追加する。 ほぼ開発完了。
微調整が必要。
6
カメラタイプの分析・解析が完全にできていない。カメラタイプは8種類あり、それぞれカメラの動きが異なる。
ある程度は解析できているが、まだ全容が掴めていない。
現状理解てぎているカメラタイプについては、明確に描画できるが、まだ不明なタイプについては更なる調査が必要である。 半分対応済み。
7
未だこのツールではRDTファイルの書き換えが対応できていない。
現状RDTファイルの読み込みをし、データを分析し、それをビジュアル的に表示する仕組みに対応しつつあるが、そのデータの値を変更し、その結果を描画し、RDTファイルを書き換える機能が対応できていない。
これから作り込む 対応予定

上記表の問題と開発中の自作ツールの概略は、動画でわかると思うが、もう少し問題点と解決方法の補足が必要である。

補足1 正確なINDEXの形(座標)とそのサイズ(距離感)を理解しやすいように破線の方眼紙のような形式で描画する。これによって座標とそのサイズ感をわかりやすくする。

初心のバー見取り図

補足2 未使用INDEXを描画対象外にするため、未使用INDEXを登録する。未使用INDEXを除外することにより見やすくする。

例えば下記は、初心のバー2Fのスタッフルームである。初心は発生のMAPと同じであるが、発生で定義されている釘打ちのカットシーンやボブの様子が変なことに気づくカットシーンのINDEXがある。
また、定義されてはいるが実際は未使用のINDEXもある。(恐らく調整中に結局不要となったものと思われる)
初心スタッフルーム

上記のように未使用INDEXが一緒に描画されるとイメージがごちゃごちゃとして見にくくなる。
そこで、未使用INDEXをデータベースに登録することによって、未使用INDEXの描画を除外する機能を追加した。
これによって、下記のように描画イメージのごちゃごちゃ表示を解消できる。
初心スタッフルーム

補足3 高さ(Z値)の閾値を自動的に検出し、例えば死守や決意のホールなどで1Fと2Fに分かれるような複雑なエリアも、描画の高さを切り替えることによって、分離して描画を可能とする。

例えば下記は、決意や対峙1,対峙3,殲滅1の大学のホールである。
1Fと中階段と2Fの描画と、未使用INDEXが全て描画されてしまうと、ごちゃごちゃしてなにがなんだかわからない。
大学のホール

上記は、まだましである。
最悪なのは、異界の排気塔である。排気塔は縦に長い巨大なMAPである。
それを単純に上から見た平面図で描画すると、下記のような絶望的に意味不明な図形になる。
排気塔

これらの「ごちゃごちゃ表示」を解決するために、各INDEXの高さを自動的に判別し、高さ「A以上、B以下を描画する」といった形で描画を切り分けることと、未使用INDEXを除外することによりスッキリと表示することが可能となった。

決意や対峙1,対峙3,殲滅1の大学ホール1Fを描画
大学のホール
決意や対峙1,対峙3,殲滅1の大学ホール2Fを描画
大学のホール
最悪な異界の排気塔も例えば最下層のみ描画するといったこともできる
大学のホール


このように問題を一つ一つ解消していく必要がある。
次は、謎が多い「カメラタイプ」の分析が必要である。


そもそもカメラタイプてなんだ??


次章に続く