Created
August 15, 2010 02:04
-
-
Save kimoto/524968 to your computer and use it in GitHub Desktop.
L4D2のHUD改造方法
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//-------------------------------------------- | |
// Subject: L4D2のHUD改造方法 | |
// Author: KIMOTO | |
// Updated At: 2011/03/22 | |
// Created At: 2010/08/15 | |
//-------------------------------------------- | |
■概要 | |
Left4Dead2のHUD(Head Up Display)についての変更、カスタマイズ方法についてまとめた資料です | |
まず資料ですが日本人であんまやってる人がいないので英語が多いです | |
SourceEngineなだけあって過去作品と構造がほとんど一緒なので、L4Dで検索するよりもTF2とかHL2で検索したほうがヒットします | |
これはカスタムマップ作成するときとかも同じ感じです | |
■有用な資料とかツールについて | |
-------- | |
参考文献1(TF2のHUD弄り): http://nemtha.blog83.fc2.com/blog-entry-21.html (日本語) | |
参考文献2(TF2のFrameHUDについての解説): http://flamehud.googlecode.com/files/FlameHUD.pdf (英語) | |
↑これ読めば大体わかります | |
GCFScape | |
vpkを展開できるツール | |
C:\Program Files (x86)\Steam\steamapps\common\left 4 dead 2\bin\vpk.exe フォルダパス | |
vpk作成ツール、コマンドラインで実行する、指定したフォルダがVPKに変換される | |
-------- | |
■SourceEngineのHUD関連のファイルについて | |
次にHUDに関連したファイルについて説明します | |
以下独自に調べたもので、間違ってる可能性あります | |
script/hudlayout.res | |
で全体のおおまかな各パーツの位置を規定してます | |
resource/ui/hud/* で、各パーツ内に存在する、より小さなパーツの配置を定義しています | |
たとえば、hud_layout.resで | |
------------------------------------------------ | |
"HealthArea" { | |
xpos: 0 // そのパーツのx座標 | |
ypos: 0 // そのパーツのy座標 | |
tall: 100 // そのパーツの高さ | |
wide: 100 // そのパーツの幅 | |
} | |
------------------------------------------------ | |
みたいになってたら、対応するresファイルがresource/ui/hudの下に大抵あります | |
この場合はHealthArea.resみたいな感じです | |
hud_layout.resでHealthAreaというパーツの位置を決定して | |
resource/ui/hud/HealthArea.resでそのHealthAreaパーツに含まれる各部位の配置を行う感じです | |
resource/clientscheme.res | |
で使用しているフォントの大きさとか規定しています | |
条件分岐でxbox360版のも同時に規定してます | |
■簡単にHUDいじって、修正を繰り返す方法 | |
SourceEngineのファイル読み込みの優先順位は、 | |
------------------------------------------------ | |
addonsフォルダ内のVPKに含まれるファイル > pak_dir01.vpkに含まれるファイル > 実際にローカルにおいてあるファイル | |
------------------------------------------------ | |
です。この順番でファイルが読み込まれます | |
上の優先順位で最初に読み込まれたファイルがそのまま使用されてしまいます | |
毎回addon作るのが確実ではありますがそれは非常にめんどくさいので、実際にscript/hudlayout.resみたいな感じで | |
ローカルにそのまま配置して、ゲーム内にて再読込み出来るようにします。 | |
やり方は、以下です。 | |
------------------------------------------------ | |
1. pak_dir01.vpkを展開し、ローカルに配置する | |
GCFScapeでpak_dir01.vpkを展開し、scriptフォルダとresourceフォルダをコピペして | |
ローカルのscript、resourceにそれぞれそのままコピペしてください | |
2. ローカルのファイルが読み込まれるようにpak_dir01.vpkを修正する | |
バイナリエディタでpak_dir01.vpkをいじります | |
たとえばhudlayout.resをrudlayout.resとか適当に名前を変更してしまいます | |
もちろん、事前にpak_dir01.vpkをバックアップしておいたほうが良いです。 | |
------------------------------------------------ | |
こうすることで、pak_dir01.vpkがまず最初に読み込まれたときに、vpk内にscript/hudlayout.resが存在しないため | |
L4Dは、ローカルのscript/hudlayout.resを探しに行き、読み込みます。 | |
以上で作業は終わりです、この状態になればあとはL4D起動中にHUDをリアルタイムに変更可能です | |
具体的には、ローカルのファイルを修正した後に | |
consoleにhud_reloadschemeと入力するとscript/hud_layout.resと、resource/ui/hud/以下がリロードされ反映されます | |
このコマンドを適当なキーにバインドしておくと非常にラクです | |
■FAQ | |
Q1. ~のHUDを変更するためのresファイルはどこにあるの? | |
A1. 自分がやりたいようなことを実現してるaddonを、FPSBANANAで探してみてください、もし見つかればそのvpkをGCFScopeで解凍して | |
そのプラグインがどのようなことをしているか確認してみてください。これはSouceModやカスタムマップ作るときなんかもそうです。 | |
先人の知恵を借りた方が楽です | |
Q2. プレイヤーの装備品の部分をいじるにはどうしたらよいか(右側のプライマリ武器などの位置とか) | |
A2. 別の記事に詳細を書いた | |
hudlayout.res - HudWeaponSelection詳細 | |
https://gist.github.com/880705 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment