Dies soll euch einen Überblick geben wie ihr Models recompilieren könnt, damit diese serverseitig nutzbar gemacht werden. Diese Anleitung ist ausgerichtet auf komplette Models (mit einer eigenen .mdl Datei), es ist nicht möglich Reskins zu recompilieren. Mit dem befremdlichen Wort "Materials" hab ich die Texturen (.vmt .vtf) gemeint, damit man später nicht verwirrt ist.
Was muß installiert sein:
A) Ein Texteditor (entweder einen vorinstallierten oder
bei Windows: Textpad oder
für Linux: Bluefish)
B) Source SDK Tool von Valve (Download via Steam unter Anzeige - Tools -> Source SDK, das SDK kann meines Wissens nach nur dann heruntergeladen werden, wenn ihr nicht nur das Multiplayer Pack erworben habt)
C)
Cannonfodders MDL Decompiler oder Studiocompiler installiert nach LocalInstallPath\SteamApps\Accountname\sourcesdk\bin\ep1\bin
*Anmerkung 1*
|
Quellcode
|
1
|
Wenn die Fehlermeldung "Extra AppID set to 211 but no SteamAppID" erscheint wenn du den Decompiler öffnest, mußt du einen Eintrag in deiner Gameinfo.txt (Datei liegt unter Installationsverzeichnis\steamapps\accountname\modverzeichnis\mod) anpassen. Öffne deine Gameinfo.txt und entferne das Wort "Tools" am Anfang des Eintrages ToolsAppId, speichere die Datei und starte den Decompiler erneut. Denk daran das Wort Tools wieder hinzuzufügen, wenn du mit dem HLMV (Half Life Model Viewer) arbeiten möchtest
|
*Anmerkung 2*
|
Quellcode
|
1
|
Wenn der Fehler "Could not find filesystem_steam.dll" auftritt, starte das einmal das SDK und lade die Modkonfiguration für welchen das Model recompiliert werden soll damit diese Datei erstellt wird
|
Vorbereitungen:
1) Erstelle ein Verzeichnis mit dem Namen
|
Quellcode
|
1
|
modding
|
als dein Wurzelverzeichnis, direkt unter C:\
2) Erstelle ein Verzeichnis mit dem Namen
|
Quellcode
|
1
|
mdltmp
|
als Untervezeichnis im Verzeichnis modding
3) Erstelle ein Verzeichnis mit dem Namen
|
Quellcode
|
1
|
decompiled
|
als Untervezeichnis im Verzeichnis modding
4) Erstelle im Verzeichnis modding eine Verknüpfung mit der Datei GameInfo.txt (Installationsverzeichnis\steamapps\accountname\modverzeichnis\mod), da hier das ToolsAppId evtl. geändert werden muß
5) Erstelle im Verzeichnis modding eine Verknüpfung mit der Datei hlmv.exe (Der Half Life Model Viewer liegt unter Installationsvezeichnis\steamapps\accountname\sourcesdk\bin)
6) Erstelle im Verzeichnis modding eine Verknüpfung mit der Datei mdldecompiler.exe (Installationsvezeichnis\steamapps\accountname\sourcesdk\bin)
7) Starte Steam
Um ein Model zu recompilieren müssen 3 Schritte vorgenommen werden:
Part A) Die mdldecompiler.qc erstellen und anpassen
Part B) Die Verzeichnispfade des Models und der Matierals in den .vmt's etc. anpassen
Part C) Das Model via Console recompilieren
(Part D) Eine .txt erstellen, mit allen Dateien die das Model verwendet, abhängig nach Art des Plug-ins)
Part A) Die mdldecompiler.qc erstellen und anpassen
1) Lade die das Model herunter das du recompilieren willst
2) Entpacke das Model in das Verzeichnis mdltmp
3) Suche nach der *.mdl Datei deines Models, im Normalfall unter models\player
4) Starte den Modeldecompiler von Cannonfodder und kopiere den kompletten Pfad zur *.mdl Datei hinein, bspw.
|
Quellcode
|
1
|
C:\modding\mdltmp\modelname\models\player\ct_gsg9.mdl
|
,wähle dann dein Verzeichnis wohin die mdldecompiler.qc Datei erstellt werden soll, bspw.
|
Quellcode
|
1
|
C:\modding\decompiled
|
und klicke auf "Extract". Nach der Meldung
|
Quellcode
|
1
|
Completed Dumping Model
|
kannst du den Decompiler schließen. Die mdldecompiler.qc Datei ist somit erstellt worden und kann nun angepasst werden
5) Öffne die mdldecompiler.qc in deinem decompiled Verzeichnis mit deinem Texteditor, 3 Einstellungen müssen angepasst werden, der Modelname, der Materialspfad und ein kleiner Fix um Probleme mit den Eye_angles zu beheben
Überblick
5.1) $modelname "player/ct_gsg9.mdl" (der Teil vor der .mdl ist der Name, den dein Model trägt)
5.2) $cdmaterials "models\player\combine_super\" (dies ist der Verzeichnispfad zum Materials Verzeichnis, wo die Matierials deines Models liegen)
5.3) Der Fix für die Eye_angles
5.1) ändere $modelname "player/ct_gsg9.mdl" in
|
Quellcode
|
1
|
$modelname "player/DeinNickname/Fraktion(CT oder T)/EinzigartigerVerzeichnisName/NameWieDeinModelSpäterHeißenSoll.mdl"
|
5.2) ändere $cdmaterials "models\player\combine_super\" in
|
Quellcode
|
1
|
$cdmaterials "models\player\DeinNickname\Fraktion(CT oder T)\EinzigartigerVerzeichnisName"
|
5.3) Füge
|
Quellcode
|
1
2
3
4
|
$bonemerge "ValveBiped.Bip01_R_Hand"
$bonemerge "ValveBiped.Bip01_L_Hand"
$bonemerge "ValveBiped.weapon_bone"
$bonemerge "ValveBiped.weapon_bone_Clip"
|
nach den Eintrag von $cdmaterials hinzu
Part A ist damit abgeschlossen
Part B) Die Verzeichnispfade des Models und der Matierals in den .vmt's etc. anpassen
Öffne die .vmt Dateien mit deinem Texteditor and aktualisiere all $baseTexture und eventuelle $bumpmap Pfade etc. die darin enthalten sind mit dem neuen Pfad den du im $cdmaterials Eintrag in der mdldecompiler.qc Datei festgelegt hast, zum Beispiel:
|
Quellcode
|
1
|
"$baseTexture" "models/player/OldModelname/NameOfTheTexture"
|
ist jetzt
|
Quellcode
|
1
|
"$baseTexture" "models\player\DeinNickname\Fraktion(CT oder T)\EinzigartigerVerzeichnisName\NameDerTexture"
|
Dies muß für alle Matierals durchexerziert werden.
Part B ist damit abgeschlossen
Part C) Das Model via Console recompilieren
1) Klicke auf Start -> Ausführen, tippe cmd, drücke dann auf Eingabe. Ein MS-Dos Befehlsfenster sollte sich öffnen
2) Tippe cd\, drücke dann auf Eingabe. Du solltest jetzt im Wurzelverzeichnis sein (C:\)
3) Tippe cd Verzeichnisname, drücke dann auf Eingabe, bis du im Verzeichnis
|
Quellcode
|
1
|
Laufwerksname:\Installationspfad\SteamApps\AccountName\sourcesdk\bin\ep1\bin
|
angelangt bist
4) Gib nun folgendes ein:
|
Quellcode
|
1
|
studiomdl.exe C:\modding\decompiled\mdldecompiler.qc
|
und drücke dann auf Eingabe, dein Model sollte nun recompiliert werden
Du findest dein neues Model nun in dem Verzeichnis, das du in $modelname in deiner mdldecompiler.qc angegeben hast. Verschiebe nun deine gesammten Materials in das Verzeichnis das du unter $cdmaterials in deiner mdldecompiler.qc angebenen hast
Öffne jetzt HLMV (den Half Life Model Viewer mittels hlmv.exe) und wähle dein neues Model aus um zu überprüfen ob alles geklappt hat.
|
Quellcode
|
1
|
*Anmerkung* Falls beim starten von hlmv.exe eine Fehlermeldnung erscheint, stelle sicher das du in deiner GameInfo.txt wieder das Wort "Tools" vor ToolsAppID gesetzt hast, wie es im Originalzustand vorhanden war
|
Teste nun die Animationen und stelle sicher das keine Texturen (Matierals) fehlen. Sollte etwas schief gelaufen sein, wird es dir hier als schwarz-lila Kästchen angezeigt, dies ist ein Beweis dafür das der Pfad den du in den .vtm's angeben hast evtl. nicht mit dem Pfad in $cdmatierals übereinstimmt. Überprüfe also deine Pfadangaben.
Part C ist damit abgeschlossen
Part D Eine .txt erstellen, mit allen Dateien die das Model verwendet, abhängig nach Art des Plug-ins
Hierzu gibt es eigentlich nicht viel zu erklären. Erstelle eine leere .txt Datei mit dem Namen modelname_fraktion.txt und füge die Pfade zu den Materials dort ein (die .vmt's und .vtf's müssen angegeben werden), bspw.
|
Quellcode
|
1
|
models\player\DeinNickName\Fraktion(Ct oder T)\DeinMaterialsVerzeichnis\DeinModelName.dx80.vtx
|
Um das ganze etwas anschaulicher zu gestalten habe ich euch eine Beispielsdatei hochgeladen, in welcher auch die mlddecompiler.qc etc. enthalten ist. Ihr könnt anhand des Beispieles nochmal alle Arbeitsschritte genau nachvollziehen. Es kann
von unserer Homepage heruntergeladen werden (merci nochmal Nux für den Space). Im Anhang findet ihr noch eine .bat für Windows, die euch das Abtippen der .vtf und .vtm Dateinamen abnimmt und die Namen automatisch in eine materials.txt schreibt.
Viel Glück und viel Spaß beim recompilieren. Bitte teilt eure Arbeit mit anderen.