Grand Theft Auto V(GTAV)の警察プレイスクリプトMODであるLSPDFRの情報を日本語でまとめたものです。LSPDFRの導入、プレイ方法、関連プラグイン及びスクリプトなどについて解説していきます。

.metaファイルの編集にはnotepad++などのプログラム用テキストエディタを使用の事

vehicles.metaは、車両の各設定を総合的に纏めるデータが記されたファイル。
ゲーム中に登場する各車両がどのような仕様になるか、それを規定しているのである。
車両の細部は別々のファイルで設定されており、例えば車の動きや駆動方式の規定はhandling.metaで、各車名の字幕はglobal.gxt2で、という具合。
これを一つに纏め「どの3Dモデル、どのテクスチャ、どのハンドリング、どの車名表示で…この車は動くのか」を定めるのがvehicles.meta。
またこの車を使うNPCのタイプ、車に乗りこんだ時に得られるアイテムなどもvehicles.metaで設定している。
言い換えればここの設定を変更すれば、ハンドリングを変えて見たり、効果音を変えて見たりといった事が簡単に行えるのだ。

車両MODを導入していく上では変更した方が良い場合も少なくない。
特にMOD制作者が想定した車種とは異なるものと入れ換える場合には、これを編集しないと車の挙動がおかしくなる事にもなり兼ねない。
また車両の追加を行う場合には、必然的に最適の設定を自分で考える事にもなるだろう。

ここでは車両MODを使いこなす上で重要なvehicles.metaについて 分かる範囲で 解説していく。

記述例 "hwaycar2"

とりあえず各車の設定としてどんなことが書いてあるのかを見てみよう。
ここで例示するのは管理人がhwaycar2として追加したもの。
車両MODは2017 California Highway Patrol Mega Pack - ELSというパックに入っていた、CHP仕様のフォード・ポリスインターセプター・ユーティリティ(FPIU)である。



なるほど、わからん。
いきなりこれだけ見てもチンプンカンプンであるのだが、こう言うのが各車の分だけ延々と続いている。
ただ当然だが、意味があるからこそこの表記になっている。
逆に言えば意味を理解しないと構文の改変をしくじり、思うように動かせず、悪い場合は起動不能になる書き方をするかもしれない。
なので要点を掻い摘んで説明していこう。

目次に戻る

始まりと終わり 〜<Item>と</Item>〜

まず大事なのはこの部分。

    <Item>
      (設定構文)
    </Item>
    <Item>
      (設定構文)
    </Item>
    (以下繰り返し)

多少でもhtmlや何かしらのプログラムをいじった人にはお馴染みだが、"<○○>""</○○>"で囲まれた範囲の構文で、その"○○"に関して設定されている。
この場合は"Item"なわけだが、ここで言うItemとは各車両のこと。
つまりハンドリングだのサウンドだのカメラだの、様々な設定構文が<Item>の中で記述されている。
各車設定項目の前後を"<Item>""</Item>"で囲むようにしよう。
また設定項目の構文は前後の"<Item>〜</Item>"よりもインデント(字下げ)を下げておく。
多分そうしておかないと上手く動かない気がする、少なくとも見辛い。

一方でダメな記述例はこういうものである。

    <Item>
      (設定構文)
    </Item>
    <Item>
    <Item>
      (設定構文)
    </Item>

なぜか"<Item>"が二つ続いている。
新たな車両設定を追加する為に、既存の構文をコピペして冒頭に貼り付けたのであろう。
その際にコピーする範囲設定をしくじり、"<Item>"が二つ続く事になってしまったと。
この状態ではゲームシステムがファイルを正常に読み込む事ができず、起動している途中でクラッシュしてしまう。
なぜそんなことを知っているか?前に自分がやらかしたからである。

目次に戻る

基本的な部分 〜3Dモデルやらテクスチャやらハンドリングやら〜

では設定構文の各部を見ていこう。
まずはその車が使用する3Dモデルやテクスチャ、ハンドリングなどの設定について。

      <modelName>hwaycar2</modelName>
      <txdName>hwaycar2</txdName>
      <handlingId>POLICE3</handlingId>
      <gameName>POLICE4</gameName>

設定構文の最初の4行は、上から3Dモデルファイル名、テクスチャファイル名、ハンドリング名、ゲーム中の表示名の順。
この車の設定をする上での最も基本的な部分となる。

<modelName>と<txdName> 〜3Dモデルとテクスチャ〜

"modelName"とは使用する.yftファイルの名前、"txdName"とは"ytd"ファイルの名前。
前者が3Dモデル、後者はテクスチャ(画像)のデータが入ったファイルである。
この場合は新規追加したhwaycar2の設定であり、"modelName""txdName"は何れも"hwaycar2"になっている。
つまりそれと同じ名前の.yftファイルと.ytdファイルがインストールされているということ。
hwaycar2のように新たな車両を追加する場合であれば、モデル名やテクスチャ名は何でもよい。
他の物と被らないこと、自分が分かりやすいことが重要となる。
既存のものと置き換える(replace)する場合は、置き換え先の名前にしておく。

<handlingID> 〜ハンドリング〜

乗り物を動かした時の動き方(ハンドリング)は"handling.meta"というファイルで設定されており、何種類ものハンドリング設定が登録されている。
その各設定ごとに固有のIDが割り振られているのだが、"<handlingID>"に記述するのはその固有IDとなる。
つまり「この車にはこのIDのハンドリングを使いますよ」という意味。
ハンドリングは導入する車両MODにとって最も都合のよいものにしよう。
hwaycar2はpolice3に設定してあるが、元々のファイル名もpolice3であった。
つまりpolice3との置き換えを前提にしているだろうということで、ハンドリングもpolice3となっている。

もしMODを導入して車が容易に横転するような現象があった場合、それは導入した3Dモデルとハンドリングが合ってない証左。
そのMODは本来どこに導入するものだったか、MOD制作者が説明書などで設定変更を指示していないか、よく確認しよう。
なぜ「容易に横転する」と言えるのか?前に自分がやらかしたからである。

<gameName> 〜ゲーム中の表示名〜

"<gameName>"はゲーム中に車に乗りこんだ時、画面右下に出てくる車の名前の設定である。
車の名前そのものは各言語毎に用意された"global.gxt2"という字幕データのファイルに登録されており、<gameName>で設定された車種の名前を字幕データから選んで表示する仕組み。
hwaycar2の設定は"police4"になっているわけだが、これは本来なら"覆面クルーザー"という名前が表示される。
管理人は車種を実名化しているので、police4だと"フォード・ポリスインターセプター"と表示される。

目次に戻る

サウンド設定 〜<aduioNameHash>〜

上記四つから少し下の方を見ていくと、次のような構文がある。

      <audioNameHash>police3</audioNameHash>

これはその車が使用する乗り物効果音の設定で、この場合は"police3"の効果音が使用される。
hwaycar2はこのように設定したが、元から入っている車の場合は次のような記述になっている。

      <audioNameHash />

これは簡略した記述であり、元から入っている車で特段の設定を必要としないものはこうなっている(gameNameかmodelNameの音が割り当てられるのかも?)。
ここを上記のように"<audioNameHash>〜</audioNameHash>"で囲む構文に書きなおすと、その車種の音が適用されて鳴る仕組み。
車を置き換えるにしても追加するにしても、気になる場合はこの方法で音を設定しておく。

目次に戻る

ダークガラスか否か 〜<diffuseTint>〜

構文の真ん中あたりに"<diffuseTint value="0x00FFFFFF" />"というのがある。
"difffuseTint"とはその車の窓ガラスの色、平たく言えばダークガラスにするかどうかの設定。
"value="の後ろにカラーコードを記述し設定を行い、その下6桁は一般的な16進数カラーコードと同じだ。
例示したものだとガラスは白色になり、ゲームでは無色透明のガラスになる。
一般的なカラーコードの"#FFFFFF"と同じというわけだ。

実車系のパトカーMODを導入するのであれば、この値は例示した"0X00FFFFFFF"にしておいた方が無難である。
追加する時は勿論のこと、既存車両と置き換える場合もvehicles.metaを編集した方が良いだろう。
これを勧める理由は、一部のMODでは警光灯のガラスカバーにもこの設定が反映されることから。
例えば置き換えた車両のガラス色が黒("value="0x88000000")に設定されていると、警光灯のカバーも黒になってしまうのだ。
すると警光灯表面が真っ黒になってしまい、酷い場合は点灯させても発光部が見えなくなることがある。
それを白色に設定しておけばガラス表面は透明になり、真っ黒になるのを避けられるのである。

車によっては後ろや後部座席のドア窓がダークガラスの方が格好良い場合もあるが、MOD車両であれば大抵はガラスに着色できるテクスチャが入っている。
ダークガラスはテクスチャの方で調整して行い、vehicles.metaの方では透明ガラスの設定にしておこう。
左は値が"0x88000000"の場合で、右が"0x00FFFFFF"。少し分かり難いかも知れないが、左の警光灯は表面が黒く中が見えないのに対し、右の警光灯は発光部がハッキリと見える。このMODは左の状態でも点灯すれば発光は見えるのだが、ものによっては発光すら見えないくらい真っ黒になってしまう。また後部ドア後ろの窓を見比べれば分かる通り、右の状態でも左と同程度のダークガラスになっている。これは窓ガラスのテクスチャがこういう色になっているから。diffuseTintが白(透明)に設定されていても、窓ガラスのテクスチャによってダークガラスにするのは可能なのだ。

目次に戻る

仕様指定とエクストラ要求 〜<flags>と<requiredExtra>〜

構文の中段よりやや下側にある"<flags>"
これはこの車両の性質に関して規定する部分となっている。
flagの種類はこちらに詳しいが、実に多種多様なものが用意されているのがわかるだろう。
管理人は、上記構文で書かれているflagの意味について全てを把握しているわけではないが、幾つか分かる物について説明しておく。

  • FLAG_LAW_ENFORCEMENT:警察機関の車両
  • FLAG_NO_RESPRAY:ペイントショップ(ガレージ)の利用不可
  • FLAG_EXTRAS_REQUIRE:要求されたエクストラを装着

ここで注目するのは最後の"FLAG_EXTRAS_REQUIRE"
これはその車両がマップ上に読み込まれる時に、要求されたエクストラを強制的に装着させるコマンドである。
エクストラを特に要求しない場合であれば、そのエクストラの装着はランダム、つまり装着される時もあればされない時もある。
これに対し"REQUIRE"では、任意のエクストラが必ず装着された状態で読み込まれるわけだ。

要求エクストラを指定は、そこからさらに下にある"<requiredExtras>"の部分で行う。
構文とコマンドを引用してみよう。

      <requiredExtras>EXTRA_12</requiredExtras>

エクストラの指定は"EXTRA_(数字)"というコマンドで行い、この場合はエクストラ12を要求すると言う意味。
管理人が使用しているFPIUだと、ラップアラウンド(バンパーを覆う細いバー)がエクストラ12に割り当てられている。
つまりhwaycar2(FPIU)は必ずラップアラウンドを装着して読み込まれると言うわけだ。

目次に戻る

乗員PED指定 〜<drivers>〜

サウンドからさらに下の方に目を向けると、この車を使用するNPCドライバーの設定が記述されている。

      <drivers>
        <Item>
          <driverName>S_M_Y_hwaycop_01</driverName>
          <npcName />
        </Item>
      </drivers>

"<drivers>〜</drivers>"で囲まれた範囲がNPC乗員の設定で、名称は"componentspeds_○○.rpf"に入っているモデル・テクスチャ名の物を使う。
この部分の設定された人が、街中を行き交う車に乗っているわけだ。
警察車両の場合は警察官PEDを割り当てることになる。
警察官PEDモデルは、男性はx64e"componentspeds_s_m_y.rpf"に、女性はx64v"componentspeds_s_f_y.rpf"に入っている。
車に乗せたいPEDを決め、"<driverName>〜</driverName>"の部分に書こう。

警察車両における注意点をひとつあげると、ここの乗員設定は手配時のものとは関係ない
手配時に「どの車に、どの警官が乗って、どの地域に現れるのか」を設定しているのはdispatch.metaというファイル。
既存のものと置き換えるだけなら気にする必要はないが、車両の追加をした場合はdispatchの構文に追記・修正を加える必要がある。

目次に戻る

フランクリンは じゅうを てにいれた ! 〜<rewards>〜

車に乗りこんだ時に、何かしらのアイテムを手に入れる事がある。
そのアイテムを設定しているのが以下の部分。

      <rewards>
        <Item>REWARD_WEAPON_PUMPSHOTGUN</Item>
        <Item>REWARD_AMMO_PUMPSHOTGUN_ENTER_VEHICLE</Item>
        <Item>REWARD_STAT_WEAPON</Item>
      </rewards>

"<rewards>"は獲得物という意味。
レーシングラグーンなら車の部品を手に入れるところだが、これはGTA5なので武器などを手に入れる。
上記の場合はポンプショットガンとその弾を手に入れるという意味。
獲得物そのものを規定しているのは"pickup.meta"というファイルで、それに準じてここに記述する。

目次に戻る

計器の表示を司る 〜<txdRelationships>〜

今度はずっと下の方を見てみよう。
標準のvehicles.metaで言えば34684行目以降の"<txdRelationships>"の部分。
ここは各車の内装テクスチャの使用に関して設定されている項目で、計器盤の針や指示灯の表示に関わるもの。
例として"sheriff"(シェリフクルーザー)の設定を見てみよう。

    <Item>
      <parent>vehicles_poltax_interior</parent>
      <child>sheriff</child>
    </Item>

"<parent>""<child>"、親と子という構文で何やら規定されている。
この構文が意味するのは「親」の設定を「子」に適用すると言うこと。
上記の場合は"vehicles_poltax_interior"が親で、その設定を子である"sheriff"に適用するという意味。
逆に言えばシェリフクルーザーの内装テクスチャは、vehicles_poltax_interiorという仕様に基づいて設定されているとも言える。
"txd"(テクスチャ)について、このようにして"Relationship"(関係)を付けているというわけだ。
ちなみに親の設定名に入っている"poltax"は「警察車両とタクシー」という意味で、警察車両とタクシーの内装テクスチャは同一カテゴリで仕様が定められている*1

実はこの項目は設定をしなくても動作上はなんら問題は無い。
読み込みは元からある車と同じように行われるし、手配時の出現LSPDFRの応援部隊でも使用される。
ただここを編集しておかないと計器盤の針や指示灯が表示されないので、一人称視点の時にいささか寂しい状態になるだろう。
その点から言えば編集しておいて損はない。

hwaycar2として導入するFPIUは警察車両なので、vehicles_poltax_interiorの設定を用いて編集した。
以下が構文である。

	<Item>
		<parent>vehicles_poltax_interior</parent>
		<child>hwaycar2</child>
	</Item>

先のsheriffの構文をhwaycar2に置き換えたようなもの。
これを"<txdRelationships>"の最後の方に付け足しておく。
管理人は同様のやり方でhwaycarsheriff3についても編集し、計器盤が表示されるようにした。

hwaycar2の一人称視点。計器盤にはスピードメーターやヘッドライト点灯の指示灯が表示されている。hwaycar2.ytdには計器盤のテクスチャが入っているので、メーターダイヤルなどのテクスチャは<txdRelationship>の設定に関わらず計器盤に貼られる。また動作そのものも問題はない。だが先述の編集を行わなければ、スピードメーターの針や各種指示灯が表示されない。一人称視点で遊ぶ機会があるのなら、やはりここの項目は編集しておいた方が良いだろう。

目次に戻る

Menu

航空隊になろう!


お助けツールソフト

GTA5の主な法執行機関

管理人のオススメ

管理人/副管理人のみ編集できます