Poradnik opisuje tworzenie własnego GameMenu w Counter-Strike 1.6. Wbrew pozorom nie jest to takie trudne.
Przykładowe GameMenu:
Na początek znajdujemy plik który odpowiada za wygląd GameMenu
Steam:
<ŚCIEŻKA DO FOLDERU STEAM>\Steam\steamapps\common\Half-life\cstrike\resource
Non Steam:
<ŚCIEŻKA DO FOLDERU CS>\cstrike\resource
Szukamy pliku GameMenu.res lub samo GameMenu jeśli mamy wyłączone pokazywanie rozszerzeń.
Klikamy na plik prawym przyciskiem myszy , odznaczamy opcje „Tylko do Odczytu” klikamy zastosuj i zamykamy okno właściwości.
Otwieramy go edytorem tekstowym np. Notepad++.
Przykładowy wygląd takiego pliku
"GameMenu"
{
"1"
{
"label" "#GameUI_GameMenu_ResumeGame"
"command" "ResumeGame"
"OnlyInGame" "1"
}
"2"
{
"label" "#GameUI_GameMenu_Disconnect"
"command" "Disconnect"
"OnlyInGame" "1"
"notsingle" "1"
}
"4"
{
"label" "#GameUI_GameMenu_PlayerList"
"command" "OpenPlayerListDialog"
"OnlyInGame" "1"
"notsingle" "1"
}
"8"
{
"label" ""
"command" ""
"OnlyInGame" "1"
}
"9"
{
"label" "#GameUI_GameMenu_NewGame"
"command" "OpenCreateMultiplayerGameDialog"
}
"10"
{
"label" "#GameUI_GameMenu_FindServers"
"command" "OpenServerBrowser"
}
"11"
{
"label" "#GameUI_GameMenu_Options"
"command" "OpenOptionsDialog"
}
"12"
{
"label" "#GameUI_GameMenu_Quit"
"command" "Quit"
}
}
Teraz dodajemy do menu nowy wpis.
"99"
{
"label" ""
"command" "engine connect "
}
Powinno to wyglądać w ten sposób
"GameMenu"
{
"1"
{
"label" "DarkGL Test Server"
"command" "engine connect 144.76.110.231:27015"
}
"2"
{
"label" ""
"command" ""
}
"3"
{
"label" "#GameUI_GameMenu_ResumeGame"
"command" "ResumeGame"
"OnlyInGame" "1"
}
"4"
{
"label" "#GameUI_GameMenu_Disconnect"
"command" "Disconnect"
"OnlyInGame" "1"
"notsingle" "1"
}
"5"
{
"label" "#GameUI_GameMenu_PlayerList"
"command" "OpenPlayerListDialog"
"OnlyInGame" "1"
"notsingle" "1"
}
"6"
{
"label" ""
"command" ""
"OnlyInGame" "1"
}
"7"
{
"label" "#GameUI_GameMenu_NewGame"
"command" "OpenCreateMultiplayerGameDialog"
}
"8"
{
"label" "#GameUI_GameMenu_FindServers"
"command" "OpenServerBrowser"
}
"9"
{
"label" "#GameUI_GameMenu_Options"
"command" "OpenOptionsDialog"
}
"10"
{
"label" "#GameUI_GameMenu_Quit"
"command" "Quit"
}
}
Pamiętajmy o tym aby nie powtarzać liczb w kolejnych wpisach pomiędzy cudzysłowami np. „12”.
To wszystko zapisujemy plik i przywracamy właściwość tylko do odczytu którą przed chwilą usuneliśmy. Dzięki temu nasz plik nie zostanie nadpisany a my nie stracimy naszej pracy.
Jeszcze krótki opis parametrów których możemy używać
"99" //Numer w menu odpowiadając za kolejność
{
"label" "" //Nazwa pokazywana w menu
"command" "" //Tutaj podajemy komendę do wykonania po kliknięciu w napis
"OnlyInGame" "1" // Ustawia że menu pokazuje się tylko wtedy kiedy jesteśmy w trakcie gry tzn. na serwerze
"notsingle" "1" // Podobnie jak wyżej
}
Można dać komenda taką, by wchodzić na jakiś serwer i wczytywało wybrany cfg?
Przykładowo: „engine connect xxx.xx.xxx.xxx:xxxxx; engine exec nazwa.cfg” nie działa.
Nie
Dlaczego na NS (CSSetti.pl) NIE CHCE DZIAŁAĆ :/
CSSetti nadpisuje własnym game menu 🙂
Dokładnie to samo stosuję i nic, cały czas to nadpisuje…
Musiałbyś wywalić ich pliki tracker.dll, ponieważ on cały czas pobiera Ci GameMenu.res na nowo