Ja/Gameinfo.txt: Difference between revisions
No edit summary |
No edit summary |
||
(25 intermediate revisions by 11 users not shown) | |||
Line 1: | Line 1: | ||
[[Category: | {{LanguageBar}} | ||
{{Source topicon}} | |||
<center style=color:white;font-size:20px;font-weight:bold;padding:5px>Game Definition Files</center> | |||
{{TabsBar|main=Gameinfo.txt}} | |||
{{seealso|[[:Category:Gameinfo]]}} | |||
GameInfo.txtのファイル構造 | GameInfo.txtのファイル構造 | ||
Line 18: | Line 23: | ||
type singleplayer_only //シングルプレイのみの場合、他にmultiplayer_only(マルチプレイのみ)の指定も可能 | type singleplayer_only //シングルプレイのみの場合、他にmultiplayer_only(マルチプレイのみ)の指定も可能 | ||
//様々なUI要素とゲームルールの定義 | //様々なUI要素とゲームルールの定義 | ||
// | //{{L|MP}}、{{L|SP}}両方のModの場合は省略 | ||
nocrosshair | nocrosshair boolean //オプションのマルチプレイヤータブでの照準選択メニューを隠します。 | ||
nohimodel | nohimodel boolean //不明 | ||
nomodels | nomodels boolean //不明 | ||
developer "Team name(チーム名)" //開発したチームの名前(もしくは個人名) | developer "Team name(チーム名)" //開発したチームの名前(もしくは個人名) | ||
Line 40: | Line 45: | ||
最初に新しいMODを作成するときには、gameinfo.txtにtitle(ゲームタイトル)とtype(シングル・マルチ)のキーがないので、それらの追加を忘れないようにしてください。 | 最初に新しいMODを作成するときには、gameinfo.txtにtitle(ゲームタイトル)とtype(シングル・マルチ)のキーがないので、それらの追加を忘れないようにしてください。 | ||
{{ | {{Note|resource/clientscheme.resファイルを編集してタイトルフォントを変更しないとタイトルが正しく表示されないでしょう。{{L|Half-Life 2}}のタイトルは一部のキャラクタだけを持つ特別のフォントを使っているので、ほとんどの他のテキストを正しく表示できません。}} | ||
=GameInfo.txtの使用の基本= | =GameInfo.txtの使用の基本= | ||
Line 52: | Line 57: | ||
<code>GameInfo.txt</code>での<code>SteamAppId</code>の値が、このゲームではどのゲームコンテント (Steam .GCF files) を利用するかを指定しています。 | <code>GameInfo.txt</code>での<code>SteamAppId</code>の値が、このゲームではどのゲームコンテント (Steam .GCF files) を利用するかを指定しています。 | ||
Source Engineの主要ゲームの<code>SteamAppId</code>の値は | Source Engineの主要ゲームの<code>SteamAppId</code>の値は{{L|Steam Application IDs|ここ}}に説明があります。 | ||
さらにSteam UIから見えるように開発者名やURLの情報を追加することもできます。 | さらにSteam UIから見えるように開発者名やURLの情報を追加することもできます。 {{L|Steam 3rd Party Mod Support|SteamサードパーティModサポート}}を参照してください。 | ||
=GameInfo.txtの応用トピック= | =GameInfo.txtの応用トピック= | ||
Line 72: | Line 77: | ||
==SearchPaths== | ==SearchPaths== | ||
<code>GameInfo.txt</code>内の<code>SearchPaths</code>セクションはどこでコンテンツが見つかるか、ハードドライブもしくはSteamキャッシュファイル内部を指定しています。 この部分を理解するには、まずプログラマがどのようにSource Engineのゲームファイルアクセスを使用しているかを回り道して説明する必要があります。 コード内でプログラマがアクセスするファイル全ては | <code>GameInfo.txt</code>内の<code>SearchPaths</code>セクションはどこでコンテンツが見つかるか、ハードドライブもしくはSteamキャッシュファイル内部を指定しています。 この部分を理解するには、まずプログラマがどのようにSource Engineのゲームファイルアクセスを使用しているかを回り道して説明する必要があります。 コード内でプログラマがアクセスするファイル全ては''path ID''の下の存在する必要があります。 path IDはハードディスク、もしくはSteamの仮想ファイルシステム内部の1つ以上の場所を指定しています。 | ||
例として、スクリプト、音、モデルファイル、そしてマテリアルといったほとんどのゲームマテリアルは<code>"Game"</code>というpath IDを使ってアクセスされます。 プログラマは「<code>'Game'</code>path IDの中の<code>scripts\weapon_m4a1.txt</code>というファイルを開く」などと言います。 もしModを<code>C:\MyMod\Blasters</code>で実行し、Counter-Strike: Sourceのコンテントを読み込む<code>SteamAppId 240</code>を使用していたのなら、以下の場所でファイルを探すことになるでしょう: | 例として、スクリプト、音、モデルファイル、そしてマテリアルといったほとんどのゲームマテリアルは<code>"Game"</code>というpath IDを使ってアクセスされます。 プログラマは「<code>'Game'</code>path IDの中の<code>scripts\weapon_m4a1.txt</code>というファイルを開く」などと言います。 もしModを<code>C:\MyMod\Blasters</code>で実行し、Counter-Strike: Sourceのコンテントを読み込む<code>SteamAppId 240</code>を使用していたのなら、以下の場所でファイルを探すことになるでしょう: | ||
Line 86: | Line 91: | ||
それぞれの行の最初の部分はpath IDの名前で、次の部分はそのpath IDが使用されたときにファイルを探す場所を指定しています。 解説のためで実際には使用しない(ドライブ名も含んだ絶対パスを使っているため、ユーザマシンにあると仮定できない)簡単な例は以下のようになります: | それぞれの行の最初の部分はpath IDの名前で、次の部分はそのpath IDが使用されたときにファイルを探す場所を指定しています。 解説のためで実際には使用しない(ドライブ名も含んだ絶対パスを使っているため、ユーザマシンにあると仮定できない)簡単な例は以下のようになります: | ||
{| | {| class=standard-table | ||
| <code>TestPathID</code> || <code>C:\TestMod1</code> | | <code>TestPathID</code> || <code>C:\TestMod1</code> | ||
|- | |- | ||
Line 118: | Line 123: | ||
</pre> | </pre> | ||
通常の場合、パスの指定(右側の部分)は<code>hl2.exe</code>があるベースディレクトリに相対になります。 もし<code>|gameinfo_path|</code>がパスの前にある場合は、<code>GameInfo.txt</code>があるディレクトリからの相対パスになります。 例えば、<code>GameInfo.txt</code>が<code>C:\MyMod\Blasters</code>にある場合に、path IDが<code> | 通常の場合、パスの指定(右側の部分)は<code>hl2.exe</code>があるベースディレクトリに相対になります。 もし<code>|gameinfo_path|</code>がパスの前にある場合は、<code>GameInfo.txt</code>があるディレクトリからの相対パスになります。 例えば、<code>GameInfo.txt</code>が<code>C:\MyMod\Blasters</code>にある場合に、path IDが<code>''|gameinfo_path|SomeTestDirectory''</code>というパスを指定していると: | ||
<code>C:\MyMod\Blasters\SomeTestDirectory</code> | <code>C:\MyMod\Blasters\SomeTestDirectory</code> | ||
Line 132: | Line 137: | ||
* <code>C:\Program Files\Valve\Steam\SteamApps\username\Counter-Strike Source\hl2</code> | * <code>C:\Program Files\Valve\Steam\SteamApps\username\Counter-Strike Source\hl2</code> | ||
これはSteamの仮想ファイルシステムのみに存在しています。 | これはSteamの仮想ファイルシステムのみに存在しています。 | ||
{{ACategory|File formats}} | |||
{{ACategory|Modding}} | |||
{{ACategory|Source SDK FAQ}} |
Latest revision as of 12:26, 6 April 2025

You can help by updating the translation.
Also, please make sure the article complies with the alternate languages guide.
This notice is put here by LanguageBar template and if you want to remove it after updating the translation you can do so on this page.
GameInfo.txtのファイル構造
GameInfo.txt
は特定のMODやゲームにどのコンテントが必要なのかをSDKツールやSourceEngine向けに記述するファイルです。 これを使うことによってMODのゲームディレクトリ内でツールやエンジンを実行してもHalf-Life 2、 Counter-Strike、もしくはHalf-Life 2: Deathmatchのコンテントを読み込むことができます。 またこれはツールがゲームディレクトリを見つけるためのマーカーでもあります。
注意: このファイルを編集する必要があるのはMODプロジェクトを最初に設定するプログラマだけです。 大抵の場合において編集する必要はありませんが、Half-Life 2以外のコンテントを元にしたゲームを作りたいのなら、変更する必要があります。 自分のMOD向けの設定が完了したら、このgameinfo.txtはMODのコンテントとともにリリースされる必要があります。 MODの作業をしている全ての開発者のゲームディレクトリには同一のgameinfo.txt
があるべきです。
UI(ユーザインタフェース)設定
ゲームのタイトルを含む多くのUI(ユーザインタフェース)設定はgameinfo.txtによって指定されます。 以下のキーがあります:
game "Game Title(ゲームのタイトル)" // これがSteamのゲームメニューで表示されます title "Game Title(ゲームのタイトル)" // これが実際のゲームメニューで表示されるタイトルです title2 "..." //省略可能 title3 "..." //省略可能(2つ以上のタイトルのテストはされていません) title# "..." //省略可能(2つ以上のタイトルのテストはされていません) type singleplayer_only //シングルプレイのみの場合、他にmultiplayer_only(マルチプレイのみ)の指定も可能 //様々なUI要素とゲームルールの定義 //MP 、SP 両方のModの場合は省略 nocrosshair boolean //オプションのマルチプレイヤータブでの照準選択メニューを隠します。 nohimodel boolean //不明 nomodels boolean //不明 developer "Team name(チーム名)" //開発したチームの名前(もしくは個人名) developer_url "Webアドレス" //チームのホームページ http://から始まる必要があります icon "path/to/icon" //アイコンは非圧縮の16x16ピクセルのTGA //MODのインストールディレクトリからの相対パス //(GameInfo.txtのあるディレクトリ)で、TGAのファイル拡張子は不要
hidden_maps //指定したマップはインタフェースに表示されませんが { //アクセスは可能です "mapname" 1 "mapname" 1 }
最初に新しいMODを作成するときには、gameinfo.txtにtitle(ゲームタイトル)とtype(シングル・マルチ)のキーがないので、それらの追加を忘れないようにしてください。

GameInfo.txtの使用の基本
GameInfo.txt
で重要なのはSteamAppId
変数です。 GameInfo.txtの内部を見ると、以下のようなセクションがあるはずです:
SteamAppId 220 // 必要なGCFをマウントします(240=CS:S, 220=HL2)
GameInfo.txt
でのSteamAppId
の値が、このゲームではどのゲームコンテント (Steam .GCF files) を利用するかを指定しています。
Source Engineの主要ゲームのSteamAppId
の値はここ に説明があります。
さらにSteam UIから見えるように開発者名やURLの情報を追加することもできます。 SteamサードパーティModサポート を参照してください。
GameInfo.txtの応用トピック
このセクションではGameInfo.txt
の様々な要素についての詳細を説明します。
ToolsAppId
全てのGameInfo.txt
には以下のような行が含まれる必要があります:
ToolsAppId 211
これはゲームでは使用されないがツールでのみ使われるコンテントがある特別な場合です。
SearchPaths
GameInfo.txt
内のSearchPaths
セクションはどこでコンテンツが見つかるか、ハードドライブもしくはSteamキャッシュファイル内部を指定しています。 この部分を理解するには、まずプログラマがどのようにSource Engineのゲームファイルアクセスを使用しているかを回り道して説明する必要があります。 コード内でプログラマがアクセスするファイル全てはpath IDの下の存在する必要があります。 path IDはハードディスク、もしくはSteamの仮想ファイルシステム内部の1つ以上の場所を指定しています。
例として、スクリプト、音、モデルファイル、そしてマテリアルといったほとんどのゲームマテリアルは"Game"
というpath IDを使ってアクセスされます。 プログラマは「'Game'
path IDの中のscripts\weapon_m4a1.txt
というファイルを開く」などと言います。 もしModをC:\MyMod\Blasters
で実行し、Counter-Strike: Sourceのコンテントを読み込むSteamAppId 240
を使用していたのなら、以下の場所でファイルを探すことになるでしょう:
C:\MyMod\Blasters\scripts\weapon_m4a1.txt
<Steamインストールディレクトリ>\Steam\SteamApps\username\Counter-Strike Source\cstrike\scripts\weapon_m4a1.txt
<Steam仮想ファイルシステム内部>\cstrike\scripts\weapon_m4a1.txt
path IDを使ってファイルを指定することで、プログラマやアーティストがこれらの違うディレクトリの心配をする必要がなくなります。 ゲームディレクトリからの相対でのファイル位置(例えばscripts\weapon_m4a1.txt
やmaterials\brick\brickwall001a.vmt
)を使えば、GameInfo.txt
が"Game"
path IDの指定をしている限り、エンジンやツールはファイルが存在する場所をフルパスで見つけ出します。
GameInfo.txt
ファイルの内部にはpath IDを指定する"SearchPaths"
セクションがあります。 大抵のModにおいてはSDKランチャーのCreate a Modで作成されたものから編集する必要はないでしょう。
それぞれの行の最初の部分はpath IDの名前で、次の部分はそのpath IDが使用されたときにファイルを探す場所を指定しています。 解説のためで実際には使用しない(ドライブ名も含んだ絶対パスを使っているため、ユーザマシンにあると仮定できない)簡単な例は以下のようになります:
TestPathID |
C:\TestMod1
|
TestPathID |
C:\TestMod2
|
TestPathID |
C:\TestMod3
|
ここでプログラマがpath IDを"TestPathID"に指定してscripts\weapon_m4a1.txtを呼び出すコードを書いたとしたら、エンジンは以下の場所でファイルを探します:
C:\TestMod1\scripts\weapon_m4a1.txt
C:\TestMod2\scripts\weapon_m4a1.txt
C:\TestMod3\scripts\weapon_m4a1.txt
Source Engineのゲームはほとんどのコンテントを"Game"
path IDを使ってアクセスしているため、"Game"
という名前のpath IDがあると上と同じようなことが自動的に実行されます。 "Game"
というpath IDのエントリーそれぞれに対して:
<dir>\bin
に"GameBin"
という名前のpath IDを追加します- 後ろに
_<language>
が追加されたパスも"Game"
に追加します 例えば:
c:\hl2\cstrike
と指定した場合にはフランス語のマシンでの実行時にc:\hl2\cstrike_french
パスも追加されます。
最初の"Game"
サーチパスに対しては:
"MOD"
というサーチパスを同一のフォルダに設定します"DEAULT_WRITE_PATH"
というサーチパスを同一のフォルダに設定します
ほとんどのMODで使用されるデフォルトのSearchPaths
は以下のようになります:
Game |gameinfo_path|. Game hl2
通常の場合、パスの指定(右側の部分)はhl2.exe
があるベースディレクトリに相対になります。 もし|gameinfo_path|
がパスの前にある場合は、GameInfo.txt
があるディレクトリからの相対パスになります。 例えば、GameInfo.txt
がC:\MyMod\Blasters
にある場合に、path IDが|gameinfo_path|SomeTestDirectory
というパスを指定していると:
C:\MyMod\Blasters\SomeTestDirectory
Counter-Strike: SourceのGameInfo.txt
では上のようなSearchPaths
セクションがあります。 もしあなたのCounter-Strikeのディレクトリが:
C:\Program Files\Valve\Steam\SteamApps\username\Counter-Strike Source
だったとすると、次の2つのディレクトリを見ることになります:
C:\Program Files\Valve\Steam\SteamApps\username\Counter-Strike Source\cstrike
GameInfo.txtがここにあるからです。
C:\Program Files\Valve\Steam\SteamApps\username\Counter-Strike Source\hl2
これはSteamの仮想ファイルシステムのみに存在しています。