MetaMod
Spis treści |
Wstęp
Ten artykuł jest niepełny i wymaga uzupełnienia. Jeżeli jesteś w stanie - postaraj się go uzupełnić.. Pamiętaj, że nawet najmniejsza zmiana jest cenna i pomocna :) |
MetaMod jest dodatkiem do serwerów HLDS, dzieki któremu mozemy doistalować jescze inne dodatki, unikajć podmiany plików głównych moda w grze (chodzi o np mp.dll).
Dzięki niemu możmey dodać takie dodatki do serwera jak:
ora jeszcze parę innych
Aktualnie istnieją dwa projeky - MetaMod oraz MetaMod-p. Ten drugi napisany został w czasie keidy Valve wprwadziło ważne zmiany do gier, i wymagana była aktualzacja metamoda, a oficjalna strona nie dawała zycia. Aktualnie w wersji 1.19 oba projekty wykonują to samo. MetaMod-p jest torchę lepiej zoptymalizowany.
Linki
Instalacja
Przykład dla serwera z modem Counter-Strike, czyli mamy nazwę moda cstrike. Jak uzywacie innego moda, odpowiednio zmieńcie cstrike na nazwę, np dod, czero, tfc
Linux
Wszekie komendy wykonujemy w konsoli
- Ściągamy metamoda (Linux binary):
wget http://voxel.dl.sourceforge.net/sourceforge/metamod-p/metamod-1.19p28-linux-i586.tar.gz
- W katalogu "cstrike":
- tworzymy podkatalog addons
- wchodzimy do addons i tworzymy metamod
- wchodzimy do metamod, tworzymy dlls
Czyli powinno to wyglądać następująco: cstrike/addons/metamod/dlls
addons `-- metamod `-- dlls
- Przechodzimy do katalogu ze ściągniętym metamodem i rozpakowujemy go:
tar -zxvf metamod-1.19p28-linux-i586.tar.gz
Otrzymujemy plik: metamod_i386.so Przenosimy go do cstrike/addons/metamod/dlls
mv metamod_i386.so /home/homedir/hlds_l/cstrike/addons/metamod/dlls/
ścieżka domyślna, trzeba zmienić na własną lokacje
- Przechodzimy do cstrike/addons/metamod i tworzymy plik plugins.ini:
touch plugins.ini
Wpisujemy do niego ścieżki do modów, takich jak amx, amxx, hlguard...itd (opisy w artach dotyczących poszczególnych modow)
- Przechodzimy do katalogu cstrike, odnajdujemy plik liblist.gam, a w nim linie zaczynające sie od:
gamedll_linux "dlls/cs_i386.so"
Wtedy dajemy na początku linii znaczek # i niżej dodajemy zmodyfikowana linię aby ładować MetaModa.
#gamedll_linux "dlls/cs_i386.so" gamedll_linux "addons/metamod/dlls/metamod_i386.so"
I startujemy nasz server, jeśli otrzymamy:
Metamod version 1.19p28 Copyright (c) 2001-2005 Will Day
Patch: Metamod-P (mm-p) v26 Copyright (c) 2004-2005 Jussi Kivilinna Metamod comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'. This is free software, and you are welcome to redistribute it under certain conditions; type `meta gpl' for details.
/lub podobnie, zaleznie od wersji/
i dalej sie ladują (bedz nie :P ) mody, znaczy to ze metamod działa. Po co znaczek # na początku? Jak cos nie zadziała, to damy w nowo dodanej linii znaczek # i usuniemy z pierwszej, i serwer po restarcie będzie działał jak przed aktywacj a MetaModa.
Windows
- Sciągamy metamoda Windows binary
- W katalogu cstrike:
- tworzymy podkatalog addons
- wchodzimy do addons, tworzymy metamod
- wchodzimy do metamod, tworzymy dlls
- Czyli powinno to wygladac nastepująco (jak na obrazku na prawo):
cstrike\addons\metamod\dlls
Przechodzimy do katalogu ze sciągnietym metamodem i rozpakowujemy go.
Otrzymujemy plik: metamod.dll Przenosimy go do cstrike\addons\metamod\dlls
- Przechodzimy do cstrike\addons\metamod i tworzymy plik plugins.ini:
\mozemy stworzyc plik "plugins.txt" i zmienic mu rozszerzenie na "ini", ale uwaga na ukryte rozszerzenia w windowsie, czyli ma być plugins.ini, a nie plugins.ini.txt\
Wpisujemy do niego scieżki do modow, takich jak amx, amxx, hlguard...itd (opisy w artach dotyczacych poszczegolnych modow)
- Przechodzimy do katalogu "cstrike", odnajdujemy plik "liblist.gam", a w nim linie zaczynajaca sie od:
gamedll "dlls\mp.dll"
Dajemy w tej linii znak # na początku, a niżej wstawiamy nową linię, zmodyfikowaną tak aby ładować MetaModa:
#gamedll "dlls\mp.dll" gamedll "addons\metamod\dlls\metamod.dll"
i odpalamy nasz serverek. Po co znaczek # na początku? Jak cos nie zadziała, to damy w nowo dodanej linii znaczek # i usuniemy z pierwszej, i serwer po restarcie będzie działał jak przed aktywacj a MetaModa.
Komendy
Ponizsze komendy wykonujemy bezpośrednio w konsoli serwera, alo korzystając z rcona. Poniżej każdej jest podany przykładowany komunikat. Komendy w zależności od wersji działają także po stronie klienta (nie wszstkie, przeważnie tylko meta version oraz meta list).
Wersja
Wersja MetaModa - stosuj aby sprawdzić czy działa i jaka ma wersje.
meta version
Metamod v1.19 2006-04-17 (5:13) by Will Day <willday@metamod.org> http://www.metamod.org/ compiled: Apr 17 2006, 19:08:34 +0200 (optimized)
Lista pluginów
Listowanie pluginów, podaje numer ładowania pluginu, opis (description), status (RUN czyli uruchomiony, badload to znaczy że nie działa), status oczekiwania (pend), nazwa pliku (file), versja pluginu (vers), źródło ładowania (src, ini oznacza ze z pliku konfiguracyjnego, plX oznacza, że załadował go automatycznie plugin o numerze X), metode ładowania (load, ANY czyli kiedykowliek mozńa załadować, Chlvl tylko podczas zmainy mapy), metode odłączenia (unlod, czyli iedy mozna wyładwac plugin). Ostatnie dwa nie zawsze mówią prawdę :D
meta list
Currently loaded plugins: description stat pend file vers src load unlod [ 1] AMX Mod X RUN - amxmodx_mm_i386. v1.71 ini ANY ANY [ 2] POD-Bot mm RUN - podbot_mm_i386.s v3.0b12 ini Chlvl ANY [ 3] Fun RUN - fun_amxx_i386.so v1.71 pl1 ANY ANY [ 4] Engine RUN - engine_amxx_i386 v1.71 pl1 ANY ANY [ 5] FakeMeta RUN - fakemeta_amxx_i3 v1.71 pl1 ANY ANY [ 6] CStrike RUN - cstrike_amxx_i38 v1.71 pl1 ANY ANY [ 7] CSX RUN - csx_amxx_i386.so v1.71 pl1 ANY ANY 7 plugins, 7 running
Przeładowanie konfiguracji
Przeładowanie konfiguracji - odczytuje plugins.ini i ładuje/wyładowywuje dane pluginy (np nie istneijące są wyładowywane, a nowe są ładowane).
meta refresh
L 06/17/2006 - 13:51:47: [META] Refreshing the plugins on demand... L 06/17/2006 - 13:51:47: [META] ini: Begin re-reading plugins list: .../cstrike/addons/metamod/plugins.ini L 06/17/2006 - 13:51:47: [META] ini: Read plugin config for: AMX Mod X L 06/17/2006 - 13:51:47: [META] ini: Read plugin config for: POD-Bot mm L 06/17/2006 - 13:51:47: [META] ini: Finished reading plugins list: .../cstrike/addons/metamod/plugins.ini; Found 2 plugins L 06/17/2006 - 13:51:47: [META] dll: Updating plugins... L 06/17/2006 - 13:51:47: [META] dll: Finished updating 7 plugins; kept 2, loaded 0, unloaded 0, reloaded 0, delayed 0
Konfiguracja
plugins.ini
plugins.ini przetrzymuje podstawowe informacje o ładowanych pluginach podczas staru (albo zmiany) mapy. Wszelkie linie zaczynające się od średnika są traktowane jako komentarze i nie są przetwarzane przez MetaModa.