Choosing Player Models
- Siehe KeyValues für das Dateiformat.
In Counter-Strike: Global Offensive, Benutzerdefinierte Karten können so konfiguriert werden, dass verschiedene Spielermodelle oder eine Vielzahl von Spielermodellen für die Terroristen- und Anti-Terroristen-Teams verwendet werden. Diese Modelle sind in einer <mapname>.kv
-Datei angegeben, die sich im csgo/maps/
-Verzeichnis befindet.
Erstellen einer .kv-Datei
"de_example" { "t_models" { "tm_anarchist" "" "tm_anarchist_variantA" "" "tm_anarchist_variantB" "" "tm_anarchist_variantC" "" "tm_anarchist_variantD" "" } "ct_models" { "ctm_swat" "" "ctm_swat_variantA" "" "ctm_swat_variantB" "" "ctm_swat_variantC" "" "ctm_swat_variantD" "" } }Wenn dies der Inhalt von csgo/maps/de_example.kv ist, dann verwendet de_example.bsp anarchistische und Swat-Spielermodelle .
|
Die .kv-Datei ist einfach eine Textdatei, die einen Namen mit der Karte teilt, wobei die Erweiterung .txt
in .kv
geändert wurde.Wenn es zum Beispiel eine benutzerdefinierte Karte namens de_example.bsp
im Ordner Counter-Strike Global Offensive/csgo/maps/
gibt, dann sollte dort eine Datei namens de_example.kv
im selben Ordner.
Die .kv-Datei enthält eine Liste von Schlüssel/Wert-Paaren, die ähnlich wie andere Textdateien formatiert sind, die von der Source-Engine verwendet werden, z. B. VMT -Dateien für Materialien.
Wie im Beispiel rechts zu sehen ist, ist es möglich, eine Karte so zu konfigurieren, dass sie für jedes Team eine Vielzahl von Weltspielermodellen verwendet. Anders als in früheren Counter-Strike-Spielen wird das Modell des Spielers zufällig aus dieser Liste ausgewählt, anstatt dem Spieler die Wahl zu lassen.
Syntax
Siehe Beispiel rechts. Das erste Wort in Anführungszeichen muss der Dateiname der map sein.
Der Schlüssel jedes Schlüsselwerts in "t_models"
und/oder "ct_models"
soll der Pfad zu einem Spielermodell sein. Wenn <model>
ein solcher Schlüssel ist, versucht das Spiel, das erste der folgenden vorhandenen Modelle zu verwenden:
csgo/models/player/custom_player/legacy/<model>.mdl
csgo/models/player/<model>.mdl
csgo/models/error.mdl
Der Wert jedes dieser Schlüsselwet wird ignoriert und kann daher leer gelassen werden.
- Model List|below]] für Listen zum Kopieren und Einfügen.
Beziehung zu Gamemodes.txt
Die Informationen dieser Datei werden teilweise mit csgo/gamemodes.txt
zusammengeführt. Die offiziellen Karten haben keine csgo/maps/<mapname>.kv
-Datei, da sich ihr Inhalt bereits in gamemodes.txt
befindet. Die Kartenliste in dieser Datei kann mit gamemodes_server.txt
gemäß dem folgenden Beispiel erweitert werden.
csgo/maps/<mapname>.kv
-Datei!"GameModes_Server.txt" { { "gameTypes" { // ... } "mapgroups" { // ... } "maps" { "<mapname1>" { "t_models" { "tm_professional""" // ... } "ct_models" { "ctm_fbi""" // ... } } "<mapname2>" { "t_models" { "tm_professional""" // ... } "ct_models" { "ctm_sas""" // ... } } // ... } }
t_models
und ct_models
. Anscheinend bestimmt die nameID
den angezeigten Kartennamen im Ladebildschirm, aber diese KV scheint in <mapname>.kv
nicht zu funktionieren? Wo wird also die kartenspezifische Datei <mapname>.kv
im Code eingelesen? Ideen:
void GameTypes::AddMapKVs( KeyValues* pKVMaps, const char* curMap )
void GameTypes::CheckShouldSetDefaultGameModeAndType( const char* szMapNameFull )
gametypes.cpp
. In beiden Fällen sollte es eigentlich möglich sein, mehr KVs mit dieser Datei zu versenden, aber anscheinend ist das nicht der Fall.[Why?]Modellliste
Diese Auszüge sind so aufgebaut, dass ein Block eine häufig verwendete Gruppe von Modellen darstellt.
Die anderen benutzerdefinierten Player-Modelle können ebenfalls verwendet werden. In den folgenden Listen sind sie benannt, aber auskommentiert (//
), um eine häufig verwendete Gruppe von Modellen beizubehalten.
Anti-Terror-Modelle
|
Terroristische Modelle
|
Andere Modelle
Heavy Phoenix | { "tm_phoenix_heavy""" } |
Heavy CT | { "ctm_heavy""" } |
Jumpsuit ( Gefahrenzone) | { "tm_jumpsuit_variantA""" "tm_jumpsuit_variantB""" "tm_jumpsuit_variantC""" } |
Diver (Operation Riptide) | { "ctm_diver_variantA""" "ctm_diver_variantB""" "ctm_diver_variantC""" } |
Gendarmerie (Operation Riptide) | { "ctm_gendarmerie_variantA""" "ctm_gendarmerie_variantB""" "ctm_gendarmerie_variantC""" "ctm_gendarmerie_variantD""" "ctm_gendarmerie_variantE""" } |
Guerrilla Warfare (Operation Riptide) | { "tm_jungle_raider_variantA""" "tm_jungle_raider_variantB""" "tm_jungle_raider_variantB2""" "tm_jungle_raider_variantC""" "tm_jungle_raider_variantD""" "tm_jungle_raider_variantE""" "tm_jungle_raider_variantF""" "tm_jungle_raider_variantF2""" } |
Zombie | { "zombie""" } |
Machen CT vs CT oder T vs T
Die .kv-Datei kann so eingerichtet werden, dass Modelle für das falsche Team verwendet werden, z. SWAT gegen FBI.
"name_von_der_Map" { "name" "name_von_der_Map" "t_models" { "ctm_swat" "" "ctm_swat_varianta" "" "ctm_swat_variantb" "" "ctm_swat_variantc" "" "ctm_swat_variantd" "" } "ct_models" { "ctm_gign" "" "ctm_gign_varianta" "" "ctm_gign_variantb" "" "ctm_gign_variantc" "" "ctm_gign_variantd" "" } }
Externe Links
KV File Writer: Ein GUI-Tool, das das Einrichten und Speichern einer CT vs. T .kv rationalisiert
Webbasierter KV-Dateigenerator: Ein webbasiertes Dienstprogramm, das basierend auf Benutzereingaben eine .kv-Datei generiert.