SourceMod

Od HLDS.pl
(Różnice między wersjami)
Skocz do: nawigacji, wyszukiwania
(Tłumaczenie)
(Komendy Admina)
 
(Nie pokazano 23 wersji utworzonych przez 4 użytkowników)
Linia 1: Linia 1:
=Opis=
+
{{stub}}
'''SourceMod''' jest dodatkiem do serwerów [[Source]], którego funkcjonalność ma być podobna jak [[AMX Mod X]] pod serwery [[Half-Life]]. Czyli umożliwia pisanie skryptów bazujących na języku [[Small|Small/PAWN]] podobnie jak [[AMX Mod X]]. Jednakże nie będzie to [[AMX Mod X]], tylko coś działającego na tej zasadzie.
+
  
Na dzień dzisiejszy projekt jest w fazie mocno raczkującej.
+
 
 +
=Opis=
 +
'''SourceMod''' jest dodatkiem do serwera [[SRCDS]], którego podstawową funkcja jest administracja serwerem. Jednakże można go dosłownie napchać masą dodatków zmieniając prawie wszystkie aspekty w grze - od rozszerzenia i uproszczenia komend w administracji, poprzez restrykcje broni, kończąc na totalnych konwersjach, gdzie ostateczny wygląd gry zupełnie nie przypomina oryginalnej rozgrywki.
  
 
=Wymagania=
 
=Wymagania=
*SourceMod wymaga do działania zainstalowanego [[SourceMM|Metamod:Source]] w wersji co najmniej 1.4 lub wyższej.
+
*SourceMod wymaga do działania zainstalowanego [[Metamod:Source]] w wersji co najmniej 1.4.2 lub wyższej.
  
 
=Instalacja=
 
=Instalacja=
==Na lokalnym komputerze==
 
Aby zainstalować SourceMod'a na lokalnym komputerze po prostu trzeba wypakować archiwa <tt>.zip</tt> (Windows) lub <tt>.tar.gz</tt> (Linux) do folderu z grą (np. <tt>cstrike</tt> dla [[Counter-Strike: Source]], <tt>dod</tt> dla [[Day of Defeat: Source]], itp.).
 
  
Następnie otwórz <tt>addons/metamod/metaplugins.ini</tt> ze swojego ulubionego edytora tekstu (może być notatnik).  Teraz dodaj tą linijkę:
+
Właściwie to cały proces instalacji sprowadza się do wrzucenia zawartości ściągniętego archiwum (trzeba pamiętać że archiwum ''.zip'' jest przeznaczone dla [[Windows]] a archiwum ''.tar.gz'' dla [[Linux]]a)  do folderu z grą, <tt>cstrike</tt> dla [[Counter-Strike: Source]], <tt>dod</tt> dla [[Day of Defeat: Source]], <tt>orangebox/tf</tt> dla [[Team Fortress 2]] itp. itd.
<pre>addons/sourcemod/bin/sourcemod_mm</pre>
+
 
+
Zapisz zmiany w pliku i zamknij go.
+
 
+
==Na zdalnym serwerze==
+
Aby zainstalować SourceMod na zdalnym komputerze musisz wpierw wypakować archiwum <tt>.zip</tt> (Windows) lub <tt>.tar.gz</tt> (Linux) na swoim komputerze (dla przykładu, na Pulpit).  Po rozpakowaniu pojawi się folder <tt>addons</tt>. 
+
 
+
Używając  jakiegoś klienta [[FTP]] znajdź folder z grą (no. <tt>cstrike</tt> for [[Counter-Strike: Source]], <tt>dod</tt> dla [[Day of Defeat: Source]], itp.).  Teraz prześlij na serwer cały katalog <tt>addons</tt>.
+
 
+
Następnie wejdź do katalogu <tt>addons/metamod/</tt> (jeśli nie masz takiego oznacza to że [[SourceMM|Metamod:Source]] nie jest zainstalowany, musisz go zainstalować) i ściągnij plik <tt>metaplugins.ini</tt> na swój komputer. Otwórz ściągnięty plik np. notatnikiem i dodaj w nim następującą linijkę:
+
<pre>addons/sourcemod/bin/sourcemod_mm</pre>
+
Zapisz zmiany w pliku, zamknij go i wyślij z powrotem na serwer nadpisując starszą wersję.
+
  
 
==Sprawdzanie Instalacji==
 
==Sprawdzanie Instalacji==
Linia 30: Linia 17:
 
**<tt>addons</tt>
 
**<tt>addons</tt>
 
***<tt>metamod</tt> - [[Metamod:Source]]
 
***<tt>metamod</tt> - [[Metamod:Source]]
 +
****<tt>sourcemod.vdf</tt>
 
***<tt>sourcemod</tt> - SourceMod
 
***<tt>sourcemod</tt> - SourceMod
 +
****<tt>bin</tt>
 +
****<tt>configs</tt>
 +
****<tt>data</tt>
 +
****<tt>extensions</tt>
 +
****<tt>gamedata</tt>
 +
****<tt>logs</tt>
 +
****<tt>plugins</tt>
 +
****<tt>scripting</tt>
 +
****<tt>translations</tt>
 
***<tt>...</tt> - Ewentualne inne mody
 
***<tt>...</tt> - Ewentualne inne mody
  
Linia 41: Linia 38:
 
<pre>] meta list
 
<pre>] meta list
 
-Id- Name                  Version    Author          Status   
 
-Id- Name                  Version    Author          Status   
[01] SourceMod             1.0.0.571  AlliedModders,  RUN    </pre>
+
[01] SourceMod (1.1.0.2004) by AlliedModders LLC</pre>
  
 
Teraz będzie można używać  głównych komend SourceModa, które można zobaczyć wpisując:
 
Teraz będzie można używać  głównych komend SourceModa, które można zobaczyć wpisując:
Linia 48: Linia 45:
 
Dla przykładu:
 
Dla przykładu:
 
<pre>] sm version
 
<pre>] sm version
SourceMod Version Information:
+
SourceMod Version Information:
    SourceMod Version: 1.0.0.571
+
SourceMod Version: 1.1.0.2004
    JIT Version: JIT (x86), 1.0.0.431
+
JIT Version: JIT (x86), 1.1.0.1997
    JIT Settings: Generic 80486
+
JIT Settings: Generic i686
    http://www.sourcemod.net/
+
http://www.sourcemod.net/
 
</pre>
 
</pre>
 +
 +
=Aktualizacja=
 +
Przy aktualizacji SourceModa kompatybilność z poprzednimi wersjami jest zachowana, no może poza bardzo rzadkimi wyjątkami.
 +
 +
* Jeśli aktualizujesz do wersji stabilnej (nie do nocnych zrzutów) sprawdź informację o wydaniu w celu znalezienia dokładnych instrukcji.
 +
*Zaktualizuj wszystkie pliki typu <tt>.so</tt>/<tt>.dll</tt> w poniższych folderach:
 +
**<tt>sourcemod/bin</tt>
 +
**<tt>sourcemod/extensions</tt>
 +
* Zaktualizuj wszystkie pliki <tt>.txt</tt> w folderze <tt>sourcemod/gamedata</tt>.
 +
* Zaktualizuj wszystkie pliki <tt>.txt</tt> w folderze <tt>sourcemod/translations</tt>.
 +
* Zaktualizuj wszystkie standardowe pliki <tt>.smx</tt> w folderze <tt>sourcemod/plugins</tt>.
 +
* Przeczytaj informację o wydaniu aby dowiedzieć się czy jakieś pliki konfiguracyjne zostały zmienione. Jeśli tak, trzeba sprawdzić jaki co się zmieniło aby to poprawnie ustawić.
 +
 +
 +
'''Nota:''' Jeśli jakiś plugin przestał działać po aktualizacji SourceModa wyślij informacje do twórców, oni zajmą się tym.
 +
 +
'''Nota:''' jest niezwykle ważne aby uaktualnić wszystkie pliki w folderze <tt>gamedata</tt>, pliki te odpowiadają za współpracę z konkretnymi modami na których działa SourceMod.
 +
 +
=Konfiguracja=
 +
==Dodawanie Adminów==
 +
SourceMod posiada szczegółowy oraz skalowalny system administracji, który na pierwszy rzut oka może być nieco przerażający. Jednakże jakby mu się dokładniej przyjrzeć jest bardzo prosty i logiczny. Wszystko opiera się na "flagach" dostępu, dzięki którym można nadać specyficzne przywileje administratorom.
 +
 +
W tej chwili są trzy sposoby przechowywania adminów. Pierwszy sposób to "płaski" plik (tak jak w [[AMX]] i [[AMXX]], drugi, bardziej kompleksowy, za pomocą pliku ze strukturą drzewa (tak jak w [[Mani Admin Plugin]]) oraz ostatni sposób, baza SQL (patrz [[SourceBans]]).
 +
 +
SourceMod wspiera standardowo trzy metody autoryzacji adminów:
 +
*''[[SteamID]]'' (unikatowy dla kont Steam)
 +
*''[[IP|Adres IP]]'' (pół unikatowy, najlepszy dla sieci LAN)
 +
*''Nick'' (wymaga ustawiania hasła)
 +
 +
===Poziomy===
 +
Wpierw zobaczmy jak wyglądają flagi dostępu:
 +
:{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
|Nazwa
 +
|Flaga
 +
| Cel użycia
 +
|- class="t2td"
 +
| rezerwacja
 +
| a
 +
| Zapewnia dostęp do zarezerwowanego slotu.
 +
|- class="t2td"
 +
| Ogólna
 +
| b
 +
| Admin ogólny; flaga wymagana aby mieć admina.
 +
|- class="t2td"
 +
| kopanie
 +
| c
 +
| Można kopać innych graczy.
 +
|- class="t2td"
 +
| banowanie
 +
| d
 +
| Można banować innych graczy.
 +
|- class="t2td"
 +
| odbanowanie
 +
| e
 +
| Usuwanie banów.
 +
|- class="t2td"
 +
| zgładzenie
 +
| f
 +
| Natychmiastowe zabicie innych graczy.
 +
|- class="t2td"
 +
| zmiana mapy
 +
| g
 +
| Możliwość zmiany mapy i niektórych opcji gry.
 +
|- class="t2td"
 +
| cvar (zmienna)
 +
| h
 +
| Możliwość zmiany większości cvarów (zmiennych).
 +
|- class="t2td"
 +
| konfigi
 +
| i
 +
| Możliwość wczytywania plików konfiguracyjnych (konfigów).
 +
|- class="t2td"
 +
| chat
 +
| j
 +
| Możliwość używania pisania na środku ekranu itp.
 +
|- class="t2td"
 +
| głosowania
 +
| k
 +
| Rozpoczynanie i tworzenie głosowań.
 +
|- class="t2td"
 +
| hasło
 +
| l
 +
| Możliwość ustawienia hasła na serwer.
 +
|- class="t2td"
 +
| rcon
 +
| m
 +
| Możliwość użycia komend [[RCON]].
 +
|- class="t2td"
 +
| oszustwa
 +
| n
 +
| Możliwość zmiany wartości opcji sv_cheats.
 +
|- class="t2td"
 +
| root
 +
| z
 +
| W magiczny sposób zawiera wszystkie powyższe flagi dostępu.
 +
|}
 +
 +
===Immunitet===
 +
W SourceMod, system immunitetów bazowany jest na ''poziomach immunitetów''. Każdy admin może mieć przypisany różny poziom immunitetu. Admin z wyższym poziomem immunitetu nie może byc celem admina o niższym poziomie.
 +
 +
Obrazowo można to przedstawić w następujący sposób. Admin #1 ma poziom immunitetu ustawiony na "3", Admin #2 ma immunitet ustawiony na "10. Admin #2 może wykopać/zbanować/zgładzić bez najmniejszych problemów Admina #1. Natomiast Admin #1 nie może nic zrobić adminowi #2. Liczby jakie są stosowane w poziomach immunitetu muszą być większe lub równe zeru, przy czym zero oznacza zawsze brak immunitetu.
 +
 +
Standardowo admini z tym samym poziomem immunitetu nie mogą sobie na wzajem nic zrobić. Opcja ta może zostać zmieniona za pomocą <tt>sm_immunity_mode</tt> w <tt>cfg/sourcemod.cfg</tt>.
 +
 +
 +
===Hasła===
 +
Aby hasła działały administrator serwera musi najpierw ustawić "PassInfoVar" w <tt>addons/sourcemod/configs/core.cfg</tt>. Na przykład:
 +
<pre>"PassInfoVar" "_sm1337"</pre>
 +
 +
Następnie jeśli admin posiada hasło musi je ustawić za pomocą ''setinfo''w konsoli. Na przykład, używając przykładu znajdującego się nieco niżej, <tt>BAILOPAN</tt> będzie musiał wpisać: <pre>setinfo "_sm1337" "Gab3n"</pre>
 +
 +
Aby nie trzeba było nic wpisywać w konsoli gry przed połączeniem się do serwera można stworzyć plik "autoexec.cfg" w folderze gry. Plik powinien się znaleźć w katalogu <tt>SteamApps\Nazwa Konta\Nazwa Gry\Skrócona nazwa gry\cfg</tt>, czyli na przykład:
 +
*<tt>C:\program files\steam\steamapps\bailopan\counter-strike source\cstrike\cfg</tt>
 +
 +
===Prości admini (Sposób "płaski")===
 +
Najprostszą drogą dodania administratorów prowadzi przez plik <tt>configs/admins_simple.ini</tt>. Wpis do "płaskiego" pliku jest o tyle prosty że wymaga on podania tylko dwóch parametrów na admina: informacji o autoryzacji oraz flag. Wpis z flagami jest na pewien sposób skalowalny i może wyglądać na jeden z poniższych sposobów:
 +
*Opcjonalna wartość poziomu immunitetu, poprzedzona znakiem dwukropka (':');
 +
*Ciąg liter z flagami;
 +
'''lub'''
 +
*Nazwa grupy, poprzedzona symbolem '@'.
 +
 +
Poniżej kila przykładów:
 +
<pre>
 +
"STEAM_0:1:16" "bce" //kop, ban, zgładzenie. bez immunitetu
 +
"!127.0.0.1" "5:z" //wszystkie flagi dla tego IP, poziom immunitetu 5.
 +
"BAILOPAN" "abc" "Gab3n" //Nick BAILOPAN, hasło "Gab3n" (patrz rozdział Hasła): dostaje rezerwacje, kopy i bany.
 +
</pre>
 +
 +
 +
===Dokładni admini (plik  ze strukturą drzewa)===
 +
Drugim sposobem jest dodanie adminów za pomocą pliku <tt>configs/admins.cfg</tt>, który jest bardziej zaawansowanym sposobem przechowywania kont administratorów. Każdy admin posiada tutaj swój blok wewnątrz głównego bloku "Admin". Format taki prezentuje się następująco:
 +
 +
<pre>Admins
 +
{
 +
"Nazwa Admina"
 +
{
 +
"auth" "[steam|nick|ip]"
 +
"identity" "[unikalne id]"
 +
"[opcja1]" "[wartość1]"
 +
"[opcja2]" "[wartość2]"
 +
/* .... */
 +
}
 +
}</pre>
 +
 +
Dostępne są następujące opcje:
 +
*<tt>auth</tt>: Wymagane.  musi być jednym z następujących typów <tt>steam</tt>, <tt>name</tt> lub <tt>ip</tt> które mówią SourceMod jak ma interpretować wartość <tt>identity</tt>.
 +
*<tt>identity</tt>: Wymagane. Unikalna wartość pozwalająca nadać uprawnienia admina danej osobie.
 +
*<tt>password</tt>: Opcjonalne. Ustawia jakie hasło będzie wymagane aby nadać admina.
 +
*<tt>group</tt>: Opcjonalne. Precyzuje do jakiej grupy należny admin. Admin może należeć do kilku grup jednocześnie. Przed nazwą grup nie może być już symbol '@'.
 +
*<tt>flags</tt>: Opcjonalna. Domyslne flagi jakie otrzyma admin.
 +
*<tt>immunity</tt>: Opcjonalna.  Domyslny poziom immunitetu jaki otrzyma admin.
 +
 +
Przykład:
 +
<pre>Admins
 +
{
 +
"BAILOPAN"
 +
{
 +
"auth" "steam"
 +
"identity" "STEAM_0:1:2345"
 +
"flags" "abcdef"
 +
"immunity" "5"
 +
"group" "Niesamowici Admini"
 +
}
 +
 +
"Niebieski Krab"
 +
{
 +
"auth" "steam"
 +
"identity" "STEAM_0:1:666"
 +
"flags" "z"
 +
"immunity" "99"
 +
}
 +
}</pre>
 +
 +
==Rezerwacja Slotów==
 +
===Komendy===
 +
 +
*[[#Typ Rezerwacji|sm_reserve_type <0|1|2>]]
 +
*[[#Zarezerwowane Sloty|sm_reserved_slots <#>]]
 +
*[[#Ukryte Sloty|sm_hide_slots <0|1>]]
 +
*[[#Ilość Adminów|sm_reserve_maxadmins <#>]]
 +
*[[#Sposób Usuwania z Serwera|sm_reserve_kicktype <0|1|2>]]
 +
 +
===Typ Rezerwacji===
 +
 +
sm_reserve_type <0|1>
 +
 +
Ta zmienna kontroluje w jaki sposób rezerwacja slotów działa na serwerze (standardowo ustawiona jest na 0).
 +
 +
* <tt>sm_reserve_type 0</tt>
 +
 +
Sloty publiczne będą zajmowane przed slotami zarezerwowanymi, natomiast sloty zarezerwowane będą zwalniane jako pierwsze.
 +
Raz zajęty slot będzie "okupowany" przez gracza póki nie wyjdzie on z gry, nikt na serwerze nie będzie dostawał kopów aby zrobić miejsce.
 +
Jeśli serwer jest pełny i wszystkie sloty zarezerwowane zajęte to osoba która mimo posiadania rezerwacji slota nie połączy się.
 +
 +
* <tt>sm_reserve_type 1</tt>
 +
 +
Jeśli ktoś z rezerwacją slota połączy się, gracz z najwyższym pingiem i bez rezerwacji slota zostanie wykopany (na pierwszy ogień idą obserwatorzy) aby zwolnić miejsce. W tym wypadku zarezerwowane sloty są zawsze wolne, dzięki temu na serwer w każdej chwili może wejść osoba z rezerwacją slota.
 +
 +
* <tt>sm_reserve_type 2</tt> - Dostępne w SourceMod 1.1 i wyższych.
 +
 +
W zasadzie to samo co sm_reserve_type 1 za wyjątkiem tego, że jeśli wyczerpie się ilość slotów (patrz sm_reserve_maxadmins), plugin przestanie wykopywać graczy i zacznie się zachowywać jak sm_reserve_type 0.
 +
 +
===Zarezerwowane Sloty===
 +
 +
sm_reserved_slots <#>
 +
 +
Ta zmienna kontroluje ile slotów ma być zarezerwowanych (standardowo 0)
 +
 +
W użyciu z sm_reserve_type 0 ustawia ile osób może podłączyć się z serwerem gdy będą zapełnione sloty publiczne.
 +
W użyciu z sm_reserve_type 1 ustawia ile slotów jest zarezerwowanych dla przełączania adminów (możesz potrzebować więcej niż jednego).
 +
 +
===Ukryte Sloty===
 +
 +
sm_hide_slots <0|1>
 +
 +
Kontroluje czy plugin ma ukrywać zarezerwowane sloty (standardowo 0).
 +
 +
Jeśli ukrywanie slotów jest włączone to sloty ukryte nie są widoczne w przeglądarce serwerów. Na przykład jeśli serwer ma 24 sloty, z czego są 2 zarezerwowane to w przeglądarce serwerów będzie widoczny jak by miał 22 sloty.
 +
Aby połączyć się z takim serwerem trzeba w konsoli wpisać 'connect ip:port' (np. 'connect 192.168.1.100:27015')
 +
 +
Niestety nie ma możliwość zrobienia aby slot był ukryty dla zwykłego gracza a widoczny dla admina. Autoryzacja admina odbywa się dopiero gdy ten się w pełni połączy z serwerem i SourceMod może sprawdzić SteamID. Z tego powodu lepiej jest ukrywać sloty, zapobiegnie to łączeniu się a później wykopaniu zwykłych graczy oraz umożliwi w pełni używanie funkcji ‘autojoin’.
 +
 +
===Ilość Adminów===
 +
 +
sm_reserve_maxadmins <#> - Dostępne w SourceMod 1.1 i wyższych.
 +
 +
Ta zmienna kontroluje ile adminów może się połączyć na zarezerwowany slot (tylko w przypadku ustawienia sm_reserve_type 2).
 +
 +
===Sposób Usuwania z Serwera===
 +
 +
sm_reserve_kicktype <0|1|2> - Dostępne w SourceMod 1.1 i wyższych.
 +
 +
Ta zmienna kontroluje na jakiej podstawie gracze będą usuwani z serwera (tylko dla sm_reserve_type 1 i 2).
 +
 +
0 - Najwyższy Ping
 +
1 - Najdłużej Grający
 +
2 - Losowy Gracz
 +
 +
Gracze z rezerwacją slota oraz gracze posiadający 'sm_reskick_immunity' nie mogą zostać wykopani. Obserwatorzy są wykopywani zawsze przed grającymi.
 +
 +
===Immunitet===
 +
 +
 +
Aby uniemożliwić wykopanie gracza z powodu rezerwacji slotów trzeba my nadać/nadpisać dostęp do 'sm_reskick_immunity' (użytkownicy z flagą 'root' i rezerwacją slotów są już "odporni").
 +
 +
Notka: Ma to zastosowanie tylko przy sm_reserve_type 1 i 2.
 +
 +
Można bardzo łatwo nadpisać dostęp używając admin_overrides.cfg (np. "sm_reskick_immunity" "o" - aby dać wszystkim użytkownikom z flagą 'o' (własna flaga 1) immunitet na rezerwacje slota).
 +
 +
Lub
 +
 +
Nadać dostęp grupie przez dopisanie w admin_groups.cfg (np. "sm_reskick_immunity" "allow")
 +
 +
==Lista Pluginów==
 +
Poniżej jest przedstawiona lista standardowych pluginów jakie oferuje SourceMod.
 +
 +
Pluginy z '''wytłuszczoną''' nazwą nie myszą być wyłączane podczas trwania meczy, nie przeszkadzają w niczym ani nie dają przewagi.
 +
 +
===Standardowe Pluginy===
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
|Plugin
 +
|Opis Pluginu
 +
|- class="t2td"
 +
| '''admin-flatfile'''
 +
| Ładuje listę adminów z pliku konfiguracyjnego.
 +
|- class="t2td"
 +
| '''adminhelp'''
 +
| Udostępnia komendę sm_help (lista wszystkich komend wraz z opisem).
 +
|- class="t2td"
 +
| '''adminmenu'''
 +
| Zapewnia menu admina oraz główne funkcje.
 +
|- class="t2td"
 +
| antiflood
 +
| Zapobiega spamowaniu na chacie w grze przez graczy.
 +
|- class="t2td"
 +
| '''basebans'''
 +
| Zapewnia podstawowe komendy banowania oraz menu banowania.
 +
|- class="t2td"
 +
| basechat
 +
| Zapewnia komendy do pisania na ekranie.
 +
|- class="t2td"
 +
| basecomm
 +
| Umożliwia zarządzanie komunikacją głosową graczy.
 +
|- class="t2td"
 +
| '''basecommands'''
 +
| Zapewnia podstawowe komendy administracyjne (np. zmianę mapy, zmianę ustawień, kopanie graczy).
 +
|- class="t2td"
 +
| basetriggers
 +
| Odpowiada za obsłygę zdarzeń na chacie takich jak "nextmap", "thetime" i "timeleft".
 +
|- class="t2td"
 +
| basevotes
 +
| Zapewnia podstawowe komendy do głosowania (np na zmianę mapy).
 +
|- class="t2td"
 +
| funcommands
 +
| Zapewnia "śmieszne" komendy np. slapowanie.
 +
|- class="t2td"
 +
| funvotes
 +
| Zapewnia głosowania na "śmieszne" dla zabawy.
 +
|- class="t2td"
 +
| '''nextmap'''
 +
| Pozwala adminom lub innym pluginom na dynamiczne zarządzanie mapcyklem.
 +
|- class="t2td"
 +
| reservedslots
 +
| Udostępnia zarezerwowane sloty dla adminów (lub uprzywilejowanych graczy).
 +
|}
 +
 +
===Ekstra Pluginy===
 +
Poniższe pluginy są standardowo wyłączone i znajdują się w <tt>addons/sourcemod/plugins/disabled</tt>, aby ich użyć trzeba je wkleić do folderu z pluginami.
 +
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
|Plugin
 +
|Opis Pluginu
 +
|- class="t2td"
 +
| '''admin-sql-prefetch'''
 +
| Ładuje adminów z bazy SQL podczas zmiany mapy.  Jeśli ten plugin jest włączony to <tt>admin-sql-threaded</tt> musi być wyłączony.
 +
|- class="t2td"
 +
| '''admin-sql-threaded'''
 +
| Ładuje adminów z bazy SQL dynamicznie, podczas połączenia się gracza z serwerem. Jeśli ten plugin jest włączony to <tt>admin-sql-prefetch</tt> musi być wyłączony.
 +
|- class="t2td"
 +
| mapchooser
 +
| Zapewnia automatyczny system głosowań na następną mapę.
 +
|- class="t2td"
 +
| randomcycle
 +
| Losuje nastepną mapę z mapcyklu.
 +
|- class="t2td"
 +
| rockthevote
 +
| Zapewnia system głosowań na mapę zainicjowany przez graczy.
 +
|}
 +
 +
 +
=Komendy w SourceModzie=
 +
W tej części znajduje się lista najważniejszych komend admina jakie dostarcza SourceMod.
 +
 +
'''Komendy na chacie''': Należy pamiętać, że nie wszystkie komendy muszą być wpisywane w konsoli; mają swój skrót, który można wpisać na chacie. Na przykład przez wpisanie na chacie !ban bail da ten sam efekt co wykonanie komendy "sm_ban bail" i wyświetlenie informacji o banie na chacie. Można także używać przedrostka "/" zamiast "!" aby nie było widać komendy wpisanej na chacie.
 +
 +
==Jak wybrać cel==
 +
 +
'''Cele ogólne''':
 +
<ul>
 +
<li>name - Dokładna nazwa (nick) gracza lub też unikalna część jego nazwy.</li>
 +
<li>#userid - Numer użytkownika na serwerze (można go wyszukać za pomocą komendy "users").</li>
 +
<li>#steamid - Po prostu [[SteamID]]. Jeśli wpisując SteamID używasz dwukropków (:) musisz całe ID umieścić w cudzysłowach ewentualnie możesz także użyć podkreśleń (_). Przykłady:<tt>"#STEAM_0:1:4433"</tt>, <tt>#STEAM_0_1_4433</tt></li>
 +
<li>#&lt;name&gt; - Dokładna nazwa poprzedzona znakiem #.
 +
<li>@all - Wszyscy gracze an serwerze (dostępne dla większości komend).</li>
 +
<li>@bots - Wszystkie boty na serwerze (dostępne dla większości komend).</li>
 +
<li>@alive - Wszyscy żywi gracze (dostępne dla większości komend akceptujących żywych graczy).</li>
 +
<li>@dead - Wszyscy martwi gracze (dostępne dla większości komend akceptujących martwych graczy).</li>
 +
<li>@humans - Wszyscy użytkownicy "nie boty" (dostępne dla większości komend).</li>
 +
<li>@aim - Osoba będąca w tej chwili na celowniku.</li>
 +
<li>@me - Osoba wpisująca komende.</li>
 +
<li>@!me - Wszyscy oprócz osoby wpisującej komendę.</li>
 +
</ul>
 +
 +
Trzeba pamiętać, że cele zaczynające się od # i @ są uprzywilejowane. Oznacza to, że jeśli ktoś będzie miał nicka "@all" i w konsoli wpisane zostanie np. sm_slay @all to zginą wszyscy gracze na serwerze a nie tylko ten gracz. W takim wypadku trzeba użyć polecenia sm_slay "#@all".
 +
 +
'''Tylko dla [[Counter-Strike: Source]]''':
 +
<ul>
 +
<li>@ct lub @cts - Wszyscy antyterroryści</li>
 +
<li>@t lub @ts - Wszyscy terroryści</li>
 +
</ul>
 +
 +
'''Tylko dla [[Team Fortress 2]]''':
 +
<ul>
 +
<li>@red - Wszyscy w drużynie RED</li>
 +
<li>@blue - Wszyscy w drużynie BLU</li>
 +
</ul>
 +
 +
 +
==Podstawowe komendy==
 +
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
| Komenda
 +
| Plugin
 +
| Dostęp
 +
| Format
 +
| Opis
 +
|- class="t2td"
 +
| sm_addban
 +
| basebans
 +
| rcon
 +
| <czas> <steamid> [przyczyna]
 +
| Dodaje SteamID do listy banów.
 +
|- class="t2td"
 +
| sm_admin
 +
| adminmenu
 +
| admin
 +
|
 +
| Wyświetla menu admin.
 +
|- class="t2td"
 +
| sm_ban
 +
| basebans
 +
| ban
 +
| <nowiki><#userid|name> <minuty|0> </nowiki>[przyczyna]
 +
| Bans a client.
 +
|- class="t2td"
 +
| sm_banip
 +
| basebans
 +
| rcon
 +
| <nowiki><ip|#userid|name> <czas></nowiki> [przyczyna]
 +
| Dodaje bana na adres IP.
 +
|- class="t2td"
 +
| sm_cancelvote
 +
| basecommands
 +
| vote
 +
|
 +
| Anuluje każde głosowanie będące aktualnie w toku.
 +
|- class="t2td"
 +
| sm_cvar
 +
| basecommands
 +
| cvar
 +
| <cvar> [wartość]
 +
| Zwraca obecną wartość zmiennych lub nadaje im pożądaną wartość. Chronione zmienne mogą być ustawiane tylko dostępem rcon, sv_cheats może byc ustawiony tylko z dostępem "cheat access:.
 +
|- class="t2td"
 +
| sm_execcfg
 +
| basecommands
 +
| config
 +
| <nazwa pliku>
 +
| Wykonuje plik konfiguracyjny (ścieżka nie jest potrzebna, rozszerzenie już tak).
 +
|- class="t2td"
 +
| sm_help
 +
| adminhelp
 +
| admin
 +
| <nowiki>[strona|szukana komenda]</nowiki>
 +
| Wyświetla wszystkie komendy admina raz z opisami. Wyświetlana pomoc jest podzielona na strony. Można także wyszukiwać jakiejś komendy.
 +
|- class="t2td"
 +
| sm_kick
 +
| basecommands
 +
| kick
 +
| <nowiki><#userid|name></nowiki> [przyczyna]
 +
| Kopie wybranego gracza.
 +
|- class="t2td"
 +
| sm_map
 +
| basecommands
 +
| map
 +
| <map>
 +
| Zmienia obecna mapę.
 +
|- class="t2td"
 +
| sm_rcon
 +
| basecommands
 +
| rcon
 +
| <argumenty>
 +
| Wykonuje komendę na serwerze jak za pomocą [[RCON]]a. Z powodu ograniczeń silnika [[Source]] nie można zobaczyć danych zwróconych za pomocą tej komendy.
 +
|- class="t2td"
 +
| sm_reloadadmins
 +
| basecommands
 +
| config
 +
|
 +
| Odświeża listę administratorów.
 +
|- class="t2td"
 +
| sm_unban
 +
| basebans
 +
| unban
 +
| <steamid>
 +
| Odbanowuje SteamID.
 +
|- class="t2td"
 +
| sm_who
 +
| basecommands
 +
| admin
 +
| <nowiki>[#userid|name]</nowiki>
 +
| Wyświetla wszystkich użytkowników i ich prawa na serwerze.
 +
|}
 +
 +
==Rozszerzone komendy==
 +
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
| Komenda
 +
| Plugin
 +
| Dostęp
 +
| Format
 +
| Opis
 +
|- class="t2td"
 +
| sm_beacon
 +
| funcommands
 +
| slay
 +
| &lt;cel>
 +
| Dodaje łatwy do zauważenia pierścień wokół gracza.
 +
|- class="t2td"
 +
| sm_burn
 +
| funcommands
 +
| slay
 +
| &lt;cel> [czas]
 +
| Ustawia gracza w ogniu na pewien okres czasu (nie dłużej niż do śmierci). Może nie działać w niektórych grach, np. w TF2 brakuje spritea ognia ale gracze tracą życie.
 +
|- class="t2td"
 +
| sm_chat
 +
| basechat
 +
| chat
 +
| &lt;wiadomość>
 +
| Wysyła wiadomość na chacie tylko do adminów.
 +
|- class="t2td"
 +
| sm_csay
 +
| basechat
 +
| chat
 +
| &lt;wiadomość>
 +
| Wysyła wiadomość na środku ekranu do wszystkich graczy.
 +
|- class="t2td"
 +
| sm_gag
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Uniemożliwia graczowi pisanie na chacie.
 +
|- class="t2td"
 +
| sm_hsay
 +
| basechat
 +
| chat
 +
| &lt;wiadomość>
 +
| Wysyła wiadomość do wszystkich graczy w specjalnej otoczce.
 +
|- class="t2td"
 +
| sm_msay
 +
| basechat
 +
| chat
 +
| &lt;wiadomość>
 +
| Wysyła wiadomość do graczy jako menu w grze (tylko dla gier obsługujących to menu).
 +
|- class="t2td"
 +
| sm_mute
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Uniemożliwia graczowi mówienie do mikrofonu.
 +
|- class="t2td"
 +
| sm_play
 +
| sounds
 +
| admin
 +
| &lt;cel> &lt;plik>
 +
| Odtwarza na serwerze dźwięk dla wszystkich graczy.
 +
|- class="t2td"
 +
| sm_psay
 +
| basechat
 +
| chat
 +
| &lt;cel> <wiadomość>
 +
| Wysyła prywatną wiadomość do pojedynczego gracza.
 +
|- class="t2td"
 +
| sm_rename
 +
| playercommands
 +
| slay
 +
| <nowiki><#userid|name></nowiki>
 +
| Zmienia nazwę graczowi.
 +
|- class="t2td"
 +
| sm_resetcvar
 +
| basecommands
 +
| cvar
 +
| <nowiki><cvar></nowiki>
 +
| Ustawia wartość zmiennej na domyślną.
 +
|- class="t2td"
 +
| sm_say
 +
| basechat
 +
| chat
 +
| &lt;wiadomość>
 +
| Wysyła wiadomość na chacie do wszystkich graczy.
 +
|- class="t2td"
 +
| sm_silence
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Uniemożliwia pisanie na chacie i komunikację głosową graczowi.
 +
|- class="t2td"
 +
| sm_slap
 +
| playercommands
 +
| slay
 +
| &lt;cel> [obrażenia]
 +
| Daje klapsa graczowi za zadaną ilość obrażeń.
 +
|- class="t2td"
 +
| sm_slay
 +
| playercommands
 +
| slay
 +
| &lt;cel>
 +
| Zabija gracza.
 +
|- class="t2td"
 +
| sm_tsay
 +
| basechat
 +
| chat
 +
| [color] &lt;wiadomość>
 +
| Wysyła kolorową wiadomość do wszystkich graczy. Jeśli kolor nie jest sprecyzowany wiadomość będzie biała. Lista kolorów: white, red, green, blue, yellow, purple, cyan, orange, pink, olive, lime, violet, lightblue.
 +
|- class="t2td"
 +
| sm_ungag
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Pozwala graczowi znów pisać na chacie.
 +
|- class="t2td"
 +
| sm_unmute
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Pozwala graczowi znów rozmawiać przez mikrofon.
 +
|- class="t2td"
 +
| sm_unsilence
 +
| basecomm
 +
| chat
 +
| &lt;cel>
 +
| Pozwala graczowi znów pisać na chacie i używać komunikacji głosowej.
 +
|}
 +
 +
==Komendy do głosowań==
 +
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
| Komenda
 +
| Plugin
 +
| Dostęp
 +
| Format
 +
| Opis
 +
|- class="t2td"
 +
| sm_vote
 +
| basevotes
 +
| vote
 +
| &lt;pytanie> [odpoweidź1] [odpoweidź2] [odpoweidź3] ...
 +
| Zaczyna głosowanie na zadeklarowane odpowiedzi.
 +
|- class="t2td"
 +
| sm_votealltalk
 +
| funvotes
 +
| vote
 +
|
 +
| Rozpoczyna głosowanie czy zmienić wartość sv_alltalk.
 +
|- class="t2td"
 +
| sm_voteban
 +
| basevotes
 +
| vote, ban
 +
| &lt;cel> [przyczyna]
 +
| Rozpoczyna głosowanie o bana na 30 minut dla danego gracza.
 +
|- class="t2td"
 +
| sm_voteburn
 +
| funvotes
 +
| vote, slay
 +
| &lt;cel>
 +
| Rozpoczyna głosowanie czy podpalić gracza.
 +
|- class="t2td"
 +
| sm_voteff
 +
| funvotes
 +
| vote
 +
|
 +
| Rozpoczyna głosowanie czy zmienić wartość mp_friendlyfire.
 +
|- class="t2td"
 +
| sm_votegravity
 +
| funvotes
 +
| vote
 +
| &lt;wartość> [wartość2] [wartość3] ...
 +
| Rozpoczyna głosowanie czy zmienić wartość sv_gravity.
 +
|- class="t2td"
 +
| sm_votekick
 +
| basevotes
 +
| vote, kick
 +
| &lt;cel> [przyczyna]
 +
| Rozpoczyna głosowanie czy wykopać gracza.
 +
|- class="t2td"
 +
| sm_votemap
 +
| basevotes
 +
| vote, map
 +
| &lt;mapa> [mapa2] [mapa3] ...
 +
| Rozpoczyna głosowanie czy zmienić mapę.
 +
|- class="t2td"
 +
| sm_voteslay
 +
| funvotes
 +
| vote, slay
 +
| &lt;cel>
 +
| Rozpoczyna głosowanie czy zgładzić gracza.
 +
|}
 +
 +
==Komendy publiczne==
 +
{| {{Szablon:Tabelka}}
 +
|- {{Szablon:TabelkaNaglowek}}
 +
| Komenda
 +
| Plugin
 +
| Format
 +
| Opis
 +
|- class="t2td"
 +
| currentmap
 +
| basetriggers.smx
 +
|
 +
| Wyświetla nazwę obecnej mapy.
 +
|- class="t2td"
 +
| ff
 +
| basetriggers.smx
 +
|
 +
| Wyświetla status ognia przyjacielskiego.
 +
|- class="t2td"
 +
| motd
 +
| basetriggers.smx
 +
|
 +
| Wyświetla okienko [[MOTD]].
 +
|- class="t2td"
 +
| nextmap
 +
| nextmap.smx
 +
|
 +
| Wyświetla następną mapę w mapcyklu.
 +
|- class="t2td"
 +
| nominate
 +
| rockthevote.smx
 +
| &lt;mapa&gt;
 +
| Nominates a map for rtv.
 +
|- class="t2td"
 +
| rtv lub rockthevote
 +
| rockthevote.smx
 +
|
 +
| Wysyła żądanie rozpoczęcia głosowania na zmianę mapy.
 +
|- class="t2td"
 +
| thetime
 +
| basetriggers.smx
 +
|
 +
| Wyświetla aktualny czas na serwerze.
 +
|- class="t2td"
 +
| timeleft
 +
| basetriggers.smx
 +
|
 +
| Wyświetla czas/ilość rund do końca mapy.
 +
|- class="t2td"
 +
| sm_settings
 +
| clientprefs.smx
 +
|
 +
| Wyświetla menu ustawień gracza.
 +
|- class="t2td"
 +
| sm_cookies
 +
| clientprefs.smx
 +
| <nazwa> [wartość]
 +
| Bez argumentu wyświetla listę nazw zapisanych "ciasteczek". Z konkretną nazwą wyświetla wartości, z nazwą i wartością ustawia wartość dla danego ciasteczka.
 +
|}
  
 
=Tłumaczenie=
 
=Tłumaczenie=
Niekompletne tłumaczenie SourceModa wykonane przez '''Zuko''' i '''jihad_trawa'''.
 
  
[[adminhelp.phrases.txt]]
+
<strike>Tłumaczenie SourceModa wykonane przez [[Zuko]] i [[Trawiator]]a znajduje się w oficjalne bazie językowej SourceModa, ma ono zostać dodane do finalnej wersji SourceMod 1.1.
[[Media:]]
+
 
 +
Niekompletne tłumaczenie jest tutaj: [[SourceMod tlumaczenie]]</strike>
 +
 
 +
Tłumaczenie zostało oficjalnie dodane do SourceMod'a 1.1!
 +
Autorzy: [[Zuko]] / [[Trawiator]]
  
 
=Linki=
 
=Linki=
 +
 
*[http://sourcemod.net Oficjalna Strona]
 
*[http://sourcemod.net Oficjalna Strona]
 
*[http://www.sourcemod.net/devlog/ Developer Log]
 
*[http://www.sourcemod.net/devlog/ Developer Log]
 
[[kategoria:SRCDS]]
 
[[kategoria:SRCDS]]

Aktualna wersja na dzień 11:54, 9 gru 2009

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 :)



Spis treści

Opis

SourceMod jest dodatkiem do serwera SRCDS, którego podstawową funkcja jest administracja serwerem. Jednakże można go dosłownie napchać masą dodatków zmieniając prawie wszystkie aspekty w grze - od rozszerzenia i uproszczenia komend w administracji, poprzez restrykcje broni, kończąc na totalnych konwersjach, gdzie ostateczny wygląd gry zupełnie nie przypomina oryginalnej rozgrywki.

Wymagania

  • SourceMod wymaga do działania zainstalowanego Metamod:Source w wersji co najmniej 1.4.2 lub wyższej.

Instalacja

Właściwie to cały proces instalacji sprowadza się do wrzucenia zawartości ściągniętego archiwum (trzeba pamiętać że archiwum .zip jest przeznaczone dla Windows a archiwum .tar.gz dla Linuxa) do folderu z grą, cstrike dla Counter-Strike: Source, dod dla Day of Defeat: Source, orangebox/tf dla Team Fortress 2 itp. itd.

Sprawdzanie Instalacji

Struktura folderów na serwerze powinna wyglądać mniej więcej tak:

  • [mod] - Folder twojego moda (cstrike, dod, itp.)
    • addons
      • metamod - Metamod:Source
        • sourcemod.vdf
      • sourcemod - SourceMod
        • bin
        • configs
        • data
        • extensions
        • gamedata
        • logs
        • plugins
        • scripting
        • translations
      • ... - Ewentualne inne mody

Gdy już wykonałeś(aś) poprzednie części instalacji trzeba teraz wyłączyć i włączyć serwer ponownie. Gdy serwer już się obudzi trzeba sprawdzić czy instalacja zakończyła się pomyślnie.

Po pierwsze w konsoli serwera trzeba wpisać:

meta list

Jeśli wszystko jest ok powinno wyświetlić się mniej więcej coś takiego:

] meta list
-Id- Name                  Version     Author           Status  
[01] SourceMod (1.1.0.2004) by AlliedModders LLC

Teraz będzie można używać głównych komend SourceModa, które można zobaczyć wpisując:

sm

Dla przykładu:

] sm version
SourceMod Version Information:
SourceMod Version: 1.1.0.2004
JIT Version: JIT (x86), 1.1.0.1997
JIT Settings: Generic i686
http://www.sourcemod.net/

Aktualizacja

Przy aktualizacji SourceModa kompatybilność z poprzednimi wersjami jest zachowana, no może poza bardzo rzadkimi wyjątkami.

  • Jeśli aktualizujesz do wersji stabilnej (nie do nocnych zrzutów) sprawdź informację o wydaniu w celu znalezienia dokładnych instrukcji.
  • Zaktualizuj wszystkie pliki typu .so/.dll w poniższych folderach:
    • sourcemod/bin
    • sourcemod/extensions
  • Zaktualizuj wszystkie pliki .txt w folderze sourcemod/gamedata.
  • Zaktualizuj wszystkie pliki .txt w folderze sourcemod/translations.
  • Zaktualizuj wszystkie standardowe pliki .smx w folderze sourcemod/plugins.
  • Przeczytaj informację o wydaniu aby dowiedzieć się czy jakieś pliki konfiguracyjne zostały zmienione. Jeśli tak, trzeba sprawdzić jaki co się zmieniło aby to poprawnie ustawić.


Nota: Jeśli jakiś plugin przestał działać po aktualizacji SourceModa wyślij informacje do twórców, oni zajmą się tym.

Nota: jest niezwykle ważne aby uaktualnić wszystkie pliki w folderze gamedata, pliki te odpowiadają za współpracę z konkretnymi modami na których działa SourceMod.

Konfiguracja

Dodawanie Adminów

SourceMod posiada szczegółowy oraz skalowalny system administracji, który na pierwszy rzut oka może być nieco przerażający. Jednakże jakby mu się dokładniej przyjrzeć jest bardzo prosty i logiczny. Wszystko opiera się na "flagach" dostępu, dzięki którym można nadać specyficzne przywileje administratorom.

W tej chwili są trzy sposoby przechowywania adminów. Pierwszy sposób to "płaski" plik (tak jak w AMX i AMXX, drugi, bardziej kompleksowy, za pomocą pliku ze strukturą drzewa (tak jak w Mani Admin Plugin) oraz ostatni sposób, baza SQL (patrz SourceBans).

SourceMod wspiera standardowo trzy metody autoryzacji adminów:

  • SteamID (unikatowy dla kont Steam)
  • Adres IP (pół unikatowy, najlepszy dla sieci LAN)
  • Nick (wymaga ustawiania hasła)

Poziomy

Wpierw zobaczmy jak wyglądają flagi dostępu:

Nazwa Flaga Cel użycia
rezerwacja a Zapewnia dostęp do zarezerwowanego slotu.
Ogólna b Admin ogólny; flaga wymagana aby mieć admina.
kopanie c Można kopać innych graczy.
banowanie d Można banować innych graczy.
odbanowanie e Usuwanie banów.
zgładzenie f Natychmiastowe zabicie innych graczy.
zmiana mapy g Możliwość zmiany mapy i niektórych opcji gry.
cvar (zmienna) h Możliwość zmiany większości cvarów (zmiennych).
konfigi i Możliwość wczytywania plików konfiguracyjnych (konfigów).
chat j Możliwość używania pisania na środku ekranu itp.
głosowania k Rozpoczynanie i tworzenie głosowań.
hasło l Możliwość ustawienia hasła na serwer.
rcon m Możliwość użycia komend RCON.
oszustwa n Możliwość zmiany wartości opcji sv_cheats.
root z W magiczny sposób zawiera wszystkie powyższe flagi dostępu.

Immunitet

W SourceMod, system immunitetów bazowany jest na poziomach immunitetów. Każdy admin może mieć przypisany różny poziom immunitetu. Admin z wyższym poziomem immunitetu nie może byc celem admina o niższym poziomie.

Obrazowo można to przedstawić w następujący sposób. Admin #1 ma poziom immunitetu ustawiony na "3", Admin #2 ma immunitet ustawiony na "10. Admin #2 może wykopać/zbanować/zgładzić bez najmniejszych problemów Admina #1. Natomiast Admin #1 nie może nic zrobić adminowi #2. Liczby jakie są stosowane w poziomach immunitetu muszą być większe lub równe zeru, przy czym zero oznacza zawsze brak immunitetu.

Standardowo admini z tym samym poziomem immunitetu nie mogą sobie na wzajem nic zrobić. Opcja ta może zostać zmieniona za pomocą sm_immunity_mode w cfg/sourcemod.cfg.


Hasła

Aby hasła działały administrator serwera musi najpierw ustawić "PassInfoVar" w addons/sourcemod/configs/core.cfg. Na przykład:

"PassInfoVar"			"_sm1337"
Następnie jeśli admin posiada hasło musi je ustawić za pomocą setinfow konsoli. Na przykład, używając przykładu znajdującego się nieco niżej, BAILOPAN będzie musiał wpisać:
setinfo "_sm1337" "Gab3n"

Aby nie trzeba było nic wpisywać w konsoli gry przed połączeniem się do serwera można stworzyć plik "autoexec.cfg" w folderze gry. Plik powinien się znaleźć w katalogu SteamApps\Nazwa Konta\Nazwa Gry\Skrócona nazwa gry\cfg, czyli na przykład:

  • C:\program files\steam\steamapps\bailopan\counter-strike source\cstrike\cfg

Prości admini (Sposób "płaski")

Najprostszą drogą dodania administratorów prowadzi przez plik configs/admins_simple.ini. Wpis do "płaskiego" pliku jest o tyle prosty że wymaga on podania tylko dwóch parametrów na admina: informacji o autoryzacji oraz flag. Wpis z flagami jest na pewien sposób skalowalny i może wyglądać na jeden z poniższych sposobów:

  • Opcjonalna wartość poziomu immunitetu, poprzedzona znakiem dwukropka (':');
  • Ciąg liter z flagami;

lub

  • Nazwa grupy, poprzedzona symbolem '@'.

Poniżej kila przykładów:

"STEAM_0:1:16"		"bce"			//kop, ban, zgładzenie. bez immunitetu
"!127.0.0.1"		"5:z"			//wszystkie flagi dla tego IP, poziom immunitetu 5.
"BAILOPAN"		"abc"	"Gab3n"		//Nick BAILOPAN, hasło "Gab3n" (patrz rozdział Hasła): dostaje rezerwacje, kopy i bany.


Dokładni admini (plik ze strukturą drzewa)

Drugim sposobem jest dodanie adminów za pomocą pliku configs/admins.cfg, który jest bardziej zaawansowanym sposobem przechowywania kont administratorów. Każdy admin posiada tutaj swój blok wewnątrz głównego bloku "Admin". Format taki prezentuje się następująco:

Admins
{
	"Nazwa Admina"
	{
		"auth"		"[steam|nick|ip]"
		"identity"	"[unikalne id]"
		"[opcja1]"	"[wartość1]"
		"[opcja2]"	"[wartość2]"
		/* .... */
	}
}

Dostępne są następujące opcje:

  • auth: Wymagane. musi być jednym z następujących typów steam, name lub ip które mówią SourceMod jak ma interpretować wartość identity.
  • identity: Wymagane. Unikalna wartość pozwalająca nadać uprawnienia admina danej osobie.
  • password: Opcjonalne. Ustawia jakie hasło będzie wymagane aby nadać admina.
  • group: Opcjonalne. Precyzuje do jakiej grupy należny admin. Admin może należeć do kilku grup jednocześnie. Przed nazwą grup nie może być już symbol '@'.
  • flags: Opcjonalna. Domyslne flagi jakie otrzyma admin.
  • immunity: Opcjonalna. Domyslny poziom immunitetu jaki otrzyma admin.

Przykład:

Admins
{
	"BAILOPAN"
	{
		"auth"		"steam"
		"identity"	"STEAM_0:1:2345"
		"flags"		"abcdef"
		"immunity"	"5"
		"group"		"Niesamowici Admini"
	}

	"Niebieski Krab"
	{
		"auth"		"steam"
		"identity"	"STEAM_0:1:666"
		"flags"		"z"
		"immunity"	"99"
	}
}

Rezerwacja Slotów

Komendy

Typ Rezerwacji

sm_reserve_type <0|1>

Ta zmienna kontroluje w jaki sposób rezerwacja slotów działa na serwerze (standardowo ustawiona jest na 0).

  • sm_reserve_type 0

Sloty publiczne będą zajmowane przed slotami zarezerwowanymi, natomiast sloty zarezerwowane będą zwalniane jako pierwsze. Raz zajęty slot będzie "okupowany" przez gracza póki nie wyjdzie on z gry, nikt na serwerze nie będzie dostawał kopów aby zrobić miejsce. Jeśli serwer jest pełny i wszystkie sloty zarezerwowane zajęte to osoba która mimo posiadania rezerwacji slota nie połączy się.

  • sm_reserve_type 1

Jeśli ktoś z rezerwacją slota połączy się, gracz z najwyższym pingiem i bez rezerwacji slota zostanie wykopany (na pierwszy ogień idą obserwatorzy) aby zwolnić miejsce. W tym wypadku zarezerwowane sloty są zawsze wolne, dzięki temu na serwer w każdej chwili może wejść osoba z rezerwacją slota.

  • sm_reserve_type 2 - Dostępne w SourceMod 1.1 i wyższych.

W zasadzie to samo co sm_reserve_type 1 za wyjątkiem tego, że jeśli wyczerpie się ilość slotów (patrz sm_reserve_maxadmins), plugin przestanie wykopywać graczy i zacznie się zachowywać jak sm_reserve_type 0.

Zarezerwowane Sloty

sm_reserved_slots <#>

Ta zmienna kontroluje ile slotów ma być zarezerwowanych (standardowo 0)

W użyciu z sm_reserve_type 0 ustawia ile osób może podłączyć się z serwerem gdy będą zapełnione sloty publiczne. W użyciu z sm_reserve_type 1 ustawia ile slotów jest zarezerwowanych dla przełączania adminów (możesz potrzebować więcej niż jednego).

Ukryte Sloty

sm_hide_slots <0|1>

Kontroluje czy plugin ma ukrywać zarezerwowane sloty (standardowo 0).

Jeśli ukrywanie slotów jest włączone to sloty ukryte nie są widoczne w przeglądarce serwerów. Na przykład jeśli serwer ma 24 sloty, z czego są 2 zarezerwowane to w przeglądarce serwerów będzie widoczny jak by miał 22 sloty. Aby połączyć się z takim serwerem trzeba w konsoli wpisać 'connect ip:port' (np. 'connect 192.168.1.100:27015')

Niestety nie ma możliwość zrobienia aby slot był ukryty dla zwykłego gracza a widoczny dla admina. Autoryzacja admina odbywa się dopiero gdy ten się w pełni połączy z serwerem i SourceMod może sprawdzić SteamID. Z tego powodu lepiej jest ukrywać sloty, zapobiegnie to łączeniu się a później wykopaniu zwykłych graczy oraz umożliwi w pełni używanie funkcji ‘autojoin’.

Ilość Adminów

sm_reserve_maxadmins <#> - Dostępne w SourceMod 1.1 i wyższych.

Ta zmienna kontroluje ile adminów może się połączyć na zarezerwowany slot (tylko w przypadku ustawienia sm_reserve_type 2).

Sposób Usuwania z Serwera

sm_reserve_kicktype <0|1|2> - Dostępne w SourceMod 1.1 i wyższych.

Ta zmienna kontroluje na jakiej podstawie gracze będą usuwani z serwera (tylko dla sm_reserve_type 1 i 2).

0 - Najwyższy Ping 1 - Najdłużej Grający 2 - Losowy Gracz

Gracze z rezerwacją slota oraz gracze posiadający 'sm_reskick_immunity' nie mogą zostać wykopani. Obserwatorzy są wykopywani zawsze przed grającymi.

Immunitet

Aby uniemożliwić wykopanie gracza z powodu rezerwacji slotów trzeba my nadać/nadpisać dostęp do 'sm_reskick_immunity' (użytkownicy z flagą 'root' i rezerwacją slotów są już "odporni").

Notka: Ma to zastosowanie tylko przy sm_reserve_type 1 i 2.

Można bardzo łatwo nadpisać dostęp używając admin_overrides.cfg (np. "sm_reskick_immunity" "o" - aby dać wszystkim użytkownikom z flagą 'o' (własna flaga 1) immunitet na rezerwacje slota).

Lub

Nadać dostęp grupie przez dopisanie w admin_groups.cfg (np. "sm_reskick_immunity" "allow")

Lista Pluginów

Poniżej jest przedstawiona lista standardowych pluginów jakie oferuje SourceMod.

Pluginy z wytłuszczoną nazwą nie myszą być wyłączane podczas trwania meczy, nie przeszkadzają w niczym ani nie dają przewagi.

Standardowe Pluginy

Plugin Opis Pluginu
admin-flatfile Ładuje listę adminów z pliku konfiguracyjnego.
adminhelp Udostępnia komendę sm_help (lista wszystkich komend wraz z opisem).
adminmenu Zapewnia menu admina oraz główne funkcje.
antiflood Zapobiega spamowaniu na chacie w grze przez graczy.
basebans Zapewnia podstawowe komendy banowania oraz menu banowania.
basechat Zapewnia komendy do pisania na ekranie.
basecomm Umożliwia zarządzanie komunikacją głosową graczy.
basecommands Zapewnia podstawowe komendy administracyjne (np. zmianę mapy, zmianę ustawień, kopanie graczy).
basetriggers Odpowiada za obsłygę zdarzeń na chacie takich jak "nextmap", "thetime" i "timeleft".
basevotes Zapewnia podstawowe komendy do głosowania (np na zmianę mapy).
funcommands Zapewnia "śmieszne" komendy np. slapowanie.
funvotes Zapewnia głosowania na "śmieszne" dla zabawy.
nextmap Pozwala adminom lub innym pluginom na dynamiczne zarządzanie mapcyklem.
reservedslots Udostępnia zarezerwowane sloty dla adminów (lub uprzywilejowanych graczy).

Ekstra Pluginy

Poniższe pluginy są standardowo wyłączone i znajdują się w addons/sourcemod/plugins/disabled, aby ich użyć trzeba je wkleić do folderu z pluginami.

Plugin Opis Pluginu
admin-sql-prefetch Ładuje adminów z bazy SQL podczas zmiany mapy. Jeśli ten plugin jest włączony to admin-sql-threaded musi być wyłączony.
admin-sql-threaded Ładuje adminów z bazy SQL dynamicznie, podczas połączenia się gracza z serwerem. Jeśli ten plugin jest włączony to admin-sql-prefetch musi być wyłączony.
mapchooser Zapewnia automatyczny system głosowań na następną mapę.
randomcycle Losuje nastepną mapę z mapcyklu.
rockthevote Zapewnia system głosowań na mapę zainicjowany przez graczy.


Komendy w SourceModzie

W tej części znajduje się lista najważniejszych komend admina jakie dostarcza SourceMod.

Komendy na chacie: Należy pamiętać, że nie wszystkie komendy muszą być wpisywane w konsoli; mają swój skrót, który można wpisać na chacie. Na przykład przez wpisanie na chacie !ban bail da ten sam efekt co wykonanie komendy "sm_ban bail" i wyświetlenie informacji o banie na chacie. Można także używać przedrostka "/" zamiast "!" aby nie było widać komendy wpisanej na chacie.

Jak wybrać cel

Cele ogólne:

  • name - Dokładna nazwa (nick) gracza lub też unikalna część jego nazwy.
  • #userid - Numer użytkownika na serwerze (można go wyszukać za pomocą komendy "users").
  • #steamid - Po prostu SteamID. Jeśli wpisując SteamID używasz dwukropków (:) musisz całe ID umieścić w cudzysłowach ewentualnie możesz także użyć podkreśleń (_). Przykłady:"#STEAM_0:1:4433", #STEAM_0_1_4433
  • #<name> - Dokładna nazwa poprzedzona znakiem #.
  • @all - Wszyscy gracze an serwerze (dostępne dla większości komend).
  • @bots - Wszystkie boty na serwerze (dostępne dla większości komend).
  • @alive - Wszyscy żywi gracze (dostępne dla większości komend akceptujących żywych graczy).
  • @dead - Wszyscy martwi gracze (dostępne dla większości komend akceptujących martwych graczy).
  • @humans - Wszyscy użytkownicy "nie boty" (dostępne dla większości komend).
  • @aim - Osoba będąca w tej chwili na celowniku.
  • @me - Osoba wpisująca komende.
  • @!me - Wszyscy oprócz osoby wpisującej komendę.

Trzeba pamiętać, że cele zaczynające się od # i @ są uprzywilejowane. Oznacza to, że jeśli ktoś będzie miał nicka "@all" i w konsoli wpisane zostanie np. sm_slay @all to zginą wszyscy gracze na serwerze a nie tylko ten gracz. W takim wypadku trzeba użyć polecenia sm_slay "#@all".

Tylko dla Counter-Strike: Source:

  • @ct lub @cts - Wszyscy antyterroryści
  • @t lub @ts - Wszyscy terroryści

Tylko dla Team Fortress 2:

  • @red - Wszyscy w drużynie RED
  • @blue - Wszyscy w drużynie BLU


Podstawowe komendy

Komenda Plugin Dostęp Format Opis
sm_addban basebans rcon <czas> <steamid> [przyczyna] Dodaje SteamID do listy banów.
sm_admin adminmenu admin Wyświetla menu admin.
sm_ban basebans ban <#userid|name> <minuty|0> [przyczyna] Bans a client.
sm_banip basebans rcon <ip|#userid|name> <czas> [przyczyna] Dodaje bana na adres IP.
sm_cancelvote basecommands vote Anuluje każde głosowanie będące aktualnie w toku.
sm_cvar basecommands cvar <cvar> [wartość] Zwraca obecną wartość zmiennych lub nadaje im pożądaną wartość. Chronione zmienne mogą być ustawiane tylko dostępem rcon, sv_cheats może byc ustawiony tylko z dostępem "cheat access:.
sm_execcfg basecommands config <nazwa pliku> Wykonuje plik konfiguracyjny (ścieżka nie jest potrzebna, rozszerzenie już tak).
sm_help adminhelp admin [strona|szukana komenda] Wyświetla wszystkie komendy admina raz z opisami. Wyświetlana pomoc jest podzielona na strony. Można także wyszukiwać jakiejś komendy.
sm_kick basecommands kick <#userid|name> [przyczyna] Kopie wybranego gracza.
sm_map basecommands map <map> Zmienia obecna mapę.
sm_rcon basecommands rcon <argumenty> Wykonuje komendę na serwerze jak za pomocą RCONa. Z powodu ograniczeń silnika Source nie można zobaczyć danych zwróconych za pomocą tej komendy.
sm_reloadadmins basecommands config Odświeża listę administratorów.
sm_unban basebans unban <steamid> Odbanowuje SteamID.
sm_who basecommands admin [#userid|name] Wyświetla wszystkich użytkowników i ich prawa na serwerze.

Rozszerzone komendy

Komenda Plugin Dostęp Format Opis
sm_beacon funcommands slay <cel> Dodaje łatwy do zauważenia pierścień wokół gracza.
sm_burn funcommands slay <cel> [czas] Ustawia gracza w ogniu na pewien okres czasu (nie dłużej niż do śmierci). Może nie działać w niektórych grach, np. w TF2 brakuje spritea ognia ale gracze tracą życie.
sm_chat basechat chat <wiadomość> Wysyła wiadomość na chacie tylko do adminów.
sm_csay basechat chat <wiadomość> Wysyła wiadomość na środku ekranu do wszystkich graczy.
sm_gag basecomm chat <cel> Uniemożliwia graczowi pisanie na chacie.
sm_hsay basechat chat <wiadomość> Wysyła wiadomość do wszystkich graczy w specjalnej otoczce.
sm_msay basechat chat <wiadomość> Wysyła wiadomość do graczy jako menu w grze (tylko dla gier obsługujących to menu).
sm_mute basecomm chat <cel> Uniemożliwia graczowi mówienie do mikrofonu.
sm_play sounds admin <cel> <plik> Odtwarza na serwerze dźwięk dla wszystkich graczy.
sm_psay basechat chat <cel> <wiadomość> Wysyła prywatną wiadomość do pojedynczego gracza.
sm_rename playercommands slay <#userid|name> Zmienia nazwę graczowi.
sm_resetcvar basecommands cvar <cvar> Ustawia wartość zmiennej na domyślną.
sm_say basechat chat <wiadomość> Wysyła wiadomość na chacie do wszystkich graczy.
sm_silence basecomm chat <cel> Uniemożliwia pisanie na chacie i komunikację głosową graczowi.
sm_slap playercommands slay <cel> [obrażenia] Daje klapsa graczowi za zadaną ilość obrażeń.
sm_slay playercommands slay <cel> Zabija gracza.
sm_tsay basechat chat [color] <wiadomość> Wysyła kolorową wiadomość do wszystkich graczy. Jeśli kolor nie jest sprecyzowany wiadomość będzie biała. Lista kolorów: white, red, green, blue, yellow, purple, cyan, orange, pink, olive, lime, violet, lightblue.
sm_ungag basecomm chat <cel> Pozwala graczowi znów pisać na chacie.
sm_unmute basecomm chat <cel> Pozwala graczowi znów rozmawiać przez mikrofon.
sm_unsilence basecomm chat <cel> Pozwala graczowi znów pisać na chacie i używać komunikacji głosowej.

Komendy do głosowań

Komenda Plugin Dostęp Format Opis
sm_vote basevotes vote <pytanie> [odpoweidź1] [odpoweidź2] [odpoweidź3] ... Zaczyna głosowanie na zadeklarowane odpowiedzi.
sm_votealltalk funvotes vote Rozpoczyna głosowanie czy zmienić wartość sv_alltalk.
sm_voteban basevotes vote, ban <cel> [przyczyna] Rozpoczyna głosowanie o bana na 30 minut dla danego gracza.
sm_voteburn funvotes vote, slay <cel> Rozpoczyna głosowanie czy podpalić gracza.
sm_voteff funvotes vote Rozpoczyna głosowanie czy zmienić wartość mp_friendlyfire.
sm_votegravity funvotes vote <wartość> [wartość2] [wartość3] ... Rozpoczyna głosowanie czy zmienić wartość sv_gravity.
sm_votekick basevotes vote, kick <cel> [przyczyna] Rozpoczyna głosowanie czy wykopać gracza.
sm_votemap basevotes vote, map <mapa> [mapa2] [mapa3] ... Rozpoczyna głosowanie czy zmienić mapę.
sm_voteslay funvotes vote, slay <cel> Rozpoczyna głosowanie czy zgładzić gracza.

Komendy publiczne

Komenda Plugin Format Opis
currentmap basetriggers.smx Wyświetla nazwę obecnej mapy.
ff basetriggers.smx Wyświetla status ognia przyjacielskiego.
motd basetriggers.smx Wyświetla okienko MOTD.
nextmap nextmap.smx Wyświetla następną mapę w mapcyklu.
nominate rockthevote.smx <mapa> Nominates a map for rtv.
rtv lub rockthevote rockthevote.smx Wysyła żądanie rozpoczęcia głosowania na zmianę mapy.
thetime basetriggers.smx Wyświetla aktualny czas na serwerze.
timeleft basetriggers.smx Wyświetla czas/ilość rund do końca mapy.
sm_settings clientprefs.smx Wyświetla menu ustawień gracza.
sm_cookies clientprefs.smx <nazwa> [wartość] Bez argumentu wyświetla listę nazw zapisanych "ciasteczek". Z konkretną nazwą wyświetla wartości, z nazwą i wartością ustawia wartość dla danego ciasteczka.

Tłumaczenie

Tłumaczenie SourceModa wykonane przez Zuko i Trawiatora znajduje się w oficjalne bazie językowej SourceModa, ma ono zostać dodane do finalnej wersji SourceMod 1.1.

Niekompletne tłumaczenie jest tutaj: SourceMod tlumaczenie

Tłumaczenie zostało oficjalnie dodane do SourceMod'a 1.1! Autorzy: Zuko / Trawiator

Linki

Osobiste
Przestrzenie nazw
Warianty
Działania
HLDS.pl - Menu:
Inne
IRC
Inne sekcje:
Znajomi:
Narzędzia