NEWSY
ARTYKUŁY
QUAKE3:ARENA
PODSTAWY GRY
MAPY VQ3
MODY
 
A-H
I-Q
R-Z
CPM & CPMA
POINT RELEASE'Y
CONFIG
KONSOLA
OSP
 
KLIENT
SERWER
MAPY
PUNKBUSTER
SERWERY
PLIKI
LINKI
CZY WIESZ, ŻE
SŁOWNIK
KONTAKT
GUESTBOOK
CREDITS
KLAN




* rvg.prv.pl *





 
.    O s p    .


Część I - Podstawowe informacje

Część II - Opcje klienta

Część III - Opcje serwera

Część IV - Mapy osp


Osp - opcje serwera


Jeśli wiemy już jak postępować z osp będąc klientem to dowiemy się teraz jak założyć i skofigurować serwer na osp.
Samo założenie nie jest problemem, mamy te same rodzaje serwera co w vq3, czyli serwer listen i dedicated:
  • serwer listen, czyli taki który zakładamy np. komendą map pro-q3dm6 i jednocześnie na nim gramy
  • serwer dedicated, czyli taki który może sobie stać bez aktywnych graczy. Wszystkie serwery publiczne to serwery dedicated. Są one stawiane dla większej stabilności na systemach unixowych, głównie linuxach, ale dla potrzeb tej strony będziemy rozważali jedynie serwer dla windowsa. Jeśli postawimy taki serwer na własnym komputerze, możemy się do niego bez przeszkód dołączyć, odpalając po prostu drugą kopię gry i wyszukując go w zakładce Local.
    Istnieją dwa rodzaje serwera dedykowanego - lan i internet. Ten podział nie jest najtrafniejszy, ponieważ główna różnica między nimi polega na tym, że serwer typu internet wymienia informacje z master serverem, czego skutkiem jest jego obecność w zakładce internet. Serwer lan tego nie robi, ale obydwa typy mogą zarówno działać w sieci lokalnej (lanie) jak i w całym internecie (o ile komputer posiada zewnętrzny adres ip). Serwer dedicacted uruchamia się takim wierszem poleceń:

    quake3.exe +set dedicated 1 +set fs_game osp +exec server.cfg (serwer lan)
    quake3.exe +set dedicated 2 +set fs_game osp +exec server.cfg (serwer internet)

    Linię poleceń można zastąpić plikiem .bat dla większej wygody. Powinna ona też być rozbudowana o kilka innych poleceń, np. +set com_hunkmegs 32 (ilość pamięci), +set net_port 27960 (jeśli chcemy użyć innego portu) czy +set sv_pure 0 (jeśli chcemy wyłączyć pure server). Te polecenia muszą wystąpić w wierszu polecenia, natomiast wszystkie pozostałe ustawienia będą ładowane z konfiga o nazwie server.cfg.


Ogólna konfiguracja serwera osp. Osp oferuje bardzo rozbudowane ustawienia konfiguracyjne serwera, jednak spora część z nich zasadniczo nie jest istotna i mogłaby być pominięta. Nie zaleca się jednak tego, ponieważ jeśli config serwera nie będzie zawierał wszystkich komend a ktoś będzie eksperymentował z konsolą, to nie będzie można przywrócić wartości początkowych ustawień serwera exec'ując główny config.
Poniżej są omawiane jedynie własne komendy osp, do pliku konfiguracyjnego serwera należałoby dodać jeszcze niektóre komendy vq3, głównie zaczynające się od sv i g (np. sv_hostname, sv_maxclients, g_warmup, g_gametype itd.). Całą ten część należy traktować jako wygodne uzupełnienie ustawień serwera z vq3, bez których jednak stawianie serwera nie miało by sensu.
  • admin_log [filename] - włącza dodatkowe logowanie adresów IP graczy, komend referee i innych.
  • armor_q2style [0/1] 0 - włącza alternatywny system armoru - ya max 100, raq max 200, shardy 5, armor nie spada.
  • bot_autoload [bot1 bot2] - określa boty, który zostaną załadowane automatycznie na serwer; nazwy botów są oddzielone spacją i mogą stanowić dowolne nazwy, niekoniecznie zdefiniowanych botów; osp wybierze bota najbardziej zbliżonego do zadanej nazwy; ilość botów powinna odpowiadać wartości bot_minplayers.
  • bot_checktime [] 10 - określa ilość sekund, jaka upłynie od założenia serwera do wejścia na niego botów, zgodnie z bot_minplayers.
  • dmflags [bitmask] - to nie jest opcja osp, ale zwykłego vq3 - 8 wyłącza falling damage, 16 blokuje fov, 32 wyłącza kroki; można sumować.
  • g_inactivity [] 0 - określa czas nieaktywności w sekundach, jaki musi upłynąć żeby aktywny gracz został usunięty z serwera.
  • g_spectatorinactivity [] 0 - określa czas nieaktywności w sekundach, po którym spect zostanie usunięty z serwera; wartość ujemna spowoduje, że na serwerze nie będą się mogli znajdować spectatorzy.
  • g_weaponteamrespawn [] 30 - określa czas spawnawania broni w grach tdm w sekundach.
  • g_weaponrespawn [] 5 - określa czas spawnawania broni dla pozostałych trybów (z wyj. promap 1v1, gdzie czas ten wynosi 15s).
  • hook_enable [0/1] 0 - włącza rzadko używaną wyciągarkę; pozostałe komendy sterujące hookiem z wartościami domyślnymi: hook_delaytime 750[ms], hook_holdtime 3[s], hook_sky 0, hook_speed 1200 [ms], hook_speedpull 9500[ms].
  • instagib_reload [] 1500 - określa czas ładowania raila w trybie instagib (ms).
  • match_dropitems [0/1] 0 - włącza możliwość upuszczania przedmiotów w trybie tdm i flagi w ctf (u klienta np. drop flag)
  • match_hurtself [0/1] 1 - wyłącza zadawanie sobie obrażeń.
  • match_instagib [0/1] 0 - włącza tryb instagib.
  • match_latejoin [0/1] 0 - włącza możliwość dołączania się do gier drużynowych w każdej chwili, czyli też po rozpoczęciu gry; domyślna wartość 0 powoduje, że po rozpoczęciu gry nie można się dołączyć do drużyny, chyba, że ktoś z teamu użyje komendy unlock; komenda nie działa jeśli g_dowarmup jest 0.
  • match_maxsuicides [] 5 - określa ilość samobójstw na mapie, która pomnożona przez dwa da liczbę, po której przekroczeniu gracz zostanie usunięty z serwera.
  • match_minplayers [] 2 - określa ilość graczy potrzebnych do rozpoczęcia rozgrywki; liczba graczy poniżej tej wartości będzie mogła grać tylko w trybie rozgrzewki.
  • match_mutespecs [0/1] 0 - wyłącza widoczność tekstów spectów dla aktywnych graczy w trybach drużynowych.
  • match_overtime [0-3] 0 - określa sposób rozstrzygania remisów: 0 - sudden death, 1 - pewna ilość dodatkowych rund, po czym sudden death (zob. niżej), 2 - brak dogrywki, mecz kończy się remisem, 3 - pewna ilość dodatkowych rund, po czym mecz kończy się remisem.
  • match_overtimecount [] 0 - określa ilość dodatkowych rund gry, następujących w przypadku remisu; wartość 0 określa nieskończoną ilość rund, czyli mecz nie będzie mógł się skończyć remisem.
  • match_overtimelength [>1] 5 - określa długość dodatkowych rund gry; musi być większa od 1min.
  • match_readypercent [1-100] 51 - określa procent graczy jaki musi być 'ready', żeby można było rozpocząć grę.
  • match_timeoutlength [] 60 - określa długość przerwy jaka przysługuje graczom w sekundach (timeout/timein).
  • match_winbyscore [] 0 - określa rozpiętość fragów dla trybu 1v1, po której osiągnięciu mecz się zakończy.
  • mode_start [] -1 - składa się na zaawansowany system zarządzania trybami rozgrywki, na chwilę obecną nie jestem go w stanie jednak przedstawić; wartość domyślna -1 dezaktywuje ten parametr; dla określenia początkowego trybu zaleca się użycie g_gametype z vq3.
  • osp_gamename [0/1] 1 - wyłącza wyświetlanie w przeglądarce serwerów typu gry jako 'osp' i zastępuje je aktualnym trybem gry (1v1, tdm, itd.).
  • pmove_fixed [0/1] 0 - włącza omawiany w części II pmove; ściślej aktywuje możliwość użycia pmove przez klientów.
  • server_availmodes [bitmask] 63 - określa które tryby gry są dozwolone na serwerze: 0 - ffa, 2 - 1v1, 4 - ffa competition, 8 - tdm, 16 - ctf, 32 - clan arena; wartość się sumuje.
  • server_customclient [bitmask] 15 - określa niektóre opcje, które mogą lub nie być używane przez klientów: 1 - możliwość użycia pmove, 2 - możliwość użycia truelightning, 4 - możliwość użycia cg_altplasma, itd., 8 - możliwość użycia własnych hudów, 16 - wyłącza timer u klientów. Wartość 2 jest raczej przestarzała, ponieważ truelightning został 'zalegalizowany' w PR 1.29.
  • server_fastrail [0/1] 0 - włącza szybsze (1s) przeładowanie raila, tylko w Promode.
  • server_lgcooldown [0/1] 0 - włącza opóźnienie przy przełączaniu lg, tylko w Promode.
  • server_motd# [] #=1..8 - ustawia motd w liniach tesktu, który w postaci wjeżdżającej od lewej strony ekranu ramki będzie ukazywał się klientom po wejściu na serwer. Można ustawić do ośmiu linii, kolory i inne efekty dozwolone. Motd zamyka pierwsza pusta linia, czyli np. server_motd5 "".
  • server_ospauth [0/1/2] 0 - włącza dodatkową autoryzację klienta (sprawdzenie zgodności wersji i plików); wartość 1 włącza autoryzację i sprawdzanie zbotów, 2 tylko autoryzację.
  • server_promode [0/1] 0 - włącza Promode na serwerze.
  • server_realping [0/1] 0 - wartość 1 powoduje, że spectator będzie widział swój własny ping, a nie ping gracza, którego obserwuje.
  • server_record [bitmask] 0 - wymusza pewne akcje u klientów: 1 - wymusza nagrywanie dema u klientów, 2 - wymusza zrzut końcowego screenshotu, 4 - zawiera nazwę serwera w pliku dema, 8 - zawiera czas odbycia się gry w nazwie pliku dema, 16 - alternatywne nazewnictwo pliku typu servername-playername-#.
  • server_thrufloors [0/1] 0 - włącza zadawanie obrażeń przez cienkie platformy; opcja ta była obecna tylko w PR 1.17.
  • team_allcaptain [0/1] 0 - włącza przywileje kapitana dla wszystkich członków drużyny (zapraszanie spectów, branie czasu, itd.).
  • team_maxplayers [] 0 - określa górny limit wielkości drużyny.
  • team_nocontrols [0/1] 0 - wyłącza wszystkie przywileje i komendy drużynowe.
  • team_noteamready [0/1] 0 - wyłącza możliwość użycia komendy teamready.
  • warmup_armor [] 0 - określa ilość armoru, jaką będzie miał gracz w czasie rozgrzewki.


Zarządzanie środowiskiem mapy. Istnieje kilka komend, które umożliwiają wyłączenie dowolnego przedmiotu, zastąpienie go innym, manipulację startowym poziomem healtha i amunicji czy siły niektórych broni. W profesjonalnej rozgrywce ma znaczenie jedynie wyłączenie powerupów i bfg, ale komendy te są bardzo przydatne przy tworzeniu nowych quasi-trybów gry typu Rocket Wars, BFG Madness, Last Man Standing, Flying Instagib itd. Możliwości ich wykorzystania zależą niemal tylko od wyobraźni autora.
  • gauntlet_disable [0/1] 0 - wyłącza gauntlet.
  • item_disable [bitmask] 0 - komenda pozwala wyłączyć dowolny przedmiot na mapie (z wyj. powerupów, zob. powerup_disable).
    • 1 - cały armor
    • 2 - cały health
    • 4 - BFG
    • 8 - machinegun
    • 16 - shotgun
    • 32 - grenade launcher
    • 64 - rocket launcher
    • 128 - ligthning
    • 256 - plasmagun
    • 512 - railgun
    Wartości można oczywiście sumować, np. 1+4+512=517 usunie armor, bfg i raila (nie ma to akurat sensu, ale to tylko przykład). Amunicja do broni jest usuwana automatycznie z usuniętą bronią. Właśnie na tej komendzie opiera się instagib (item_disable 511).
  • powerup-disable [bitmask] 0 - komenda steruje obecnością powerupów na mapie; przydaje się do tworzenia własnych trybów gry. Możliwości:
    • 1 - quad
    • 2 - battle suit
    • 4 - haste (speed, boost)
    • 8 - regeneration
    • 16 - invisibility
    • 32 - flight
    • 64 - teleporter
    • 128 - medkit
    Przykład - powerup_disable 255 usunie wszystkie powerupy z mapy.
  • replace_* [] - ciekawy zestaw komend umożliwiający zamianę przedmiotów na mapie na inne. Możliwości:
    replace_machinegun
    replace_shotgun
    replace_glauncher
    replace_rlauncher
    replace_lightning
    replace_railgun
    replace_plasmagun
    replace_bfg
    replace_invis
    replace_quad
    replace_battlesuit
    replace_haste
    replace_regen
    replace_flight
    1 - Machinegun
    2 - Shotgun
    4 - GrenadeLauncher
    8 - RocketLauncher
    16 - LightningGun
    32 - Railgun
    64 - PlasmaGun
    128 - BFG
    256 - Invisibility
    512 - Quad Damage
    1024 - BattleSuit
    2048 - Haste
    4096 - Regeneration
    8192 - Flight
    Z jej pomocą można zastąpić np. niektóre bronie powerupami, a także w profesjonalnej rozgrywce zastąpić np. bfg machinegunem.
  • start_* [] - służy do określenia początkowego wyposażenia. Możliwości:
    start_armor [] 0
    start_health [] 125
    start_bullets [] 100/tdm 50
    start_shells [] 0
    start_rockets [] 0
    start_grenades [] 0
    start_lightning [] 0
    start_slugs [] 0
    start_cells [] 0
    start_bfg [] 0
  • weapon_deaddrop [0/1] 1 - wyłącza zostawianie broni przez sfragowanych graczy.
  • weapon_have [bitmask] 1 - określa bronie z którymi spawnuje gracz po wejściu na mapę lub po sfragowaniu:
    • 1 - machinegun
    • 2 - shotgun
    • 4 - grenade launcher
    • 8 - rocket launcher
    • 16 - lightning
    • 32 - railgun
    • 64 - plasmagun
    • 128 - bfg
    • 256 - gauntlet
    Przykładowo ustawienie 18(2+16) spowoduje, że gracz będzie wyposażony na starcie w shotgun i lg (i gauntlet, który jest tu niejako poza klasyfikacją).
  • weapon_start [bitmask] 257 - określa z którą bronią w ręku będzie spawnował gracz. 257 oznacza najlepszą z posiadanych. Ustawienie np. 32 spowoduje spawnowanie z railgunem w ręku, o ile railgun został uwzględniony w weapon_have.
  • gauntlet_damage [] 50 - określa wielkość uszkodzeń gauntleta.
  • mg_damage [] 7 - określa siłę machineguna, pomocne przy tworzeniu własnych trybów gry (7 to default z vq3).
  • mg_damageteamplay [] 5 - określa siłę machineguna w trybie tdm (5 to default z vq3).
  • railgun_damage [] 100 - określa siłę raila; w trybie instagib wynosi ona 400.


Zarządzanie głosowaniem. W poprzednim akapicie zostały omówione własności domyślne serwera osp, czyli ustawienia początkowe. Dzięki rozbudowanemu systemowi głosowania (callvote) klienci mogą zmienić prawie każde z tych ustawień według własnych preferencji. Często nie chcemy z różnych powodów, żeby klienci mieli tak duży wpływ na ustawienia serwera, dlatego trzeba na serwerze określić, które z opcji mogą być poddawane pod głosowanie klientom. Służy do tego poniższy zestaw komend. Nadrzędnie głosowanie na serwerze włącza komenda z vq3 - g_allowvote 1. W przypadku próby głosowania nad zablokowanym elementem klient otrzyma wiadomość, że nie głosowanie nad tym elementem jest niedozwolone na serwerze.

vote_allow_altgraphics 1
vote_allow_allcaptain 1
vote_allow_armordamage 1
vote_allow_capturelimit 1
vote_allow_ca_startrespawn 1
vote_allow_ca_warmupfire 1
vote_allow_dropitems 1
vote_allow_falling 1
vote_allow_fastrail 1
vote_allow_fraglimit 1
vote_allow_hook 0
vote_allow_instagib 1
vote_allow_items 1023
vote_allow_kick 1
vote_allow_lgcooldown 1
vote_allow_map 1
vote_allow_machinegun 1
vote_allow_maxpackets 1
vote_allow_mutespecs 1
vote_allow_osphud 1
vote_allow_overtime 1
vote_allow_pmove 1
vote_allow_poweruprespawn 1
vote_allow_powerups 255
vote_allow_promode 1
vote_allow_referee 0
vote_allow_reload 1
vote_allow_respawn 1
vote_allow_roundlimit 1
vote_allow_teamdamage 1
vote_allow_thrufloors 1
vote_allow_timelimit 1
vote_allow_timenudge 1
vote_allow_weaponrespawn 1


Niektóre z nich mogą wymagać szerszego omówienia.
Altgraphics zezwala na głosowanie nad możliwością używania cg_altplasma, cg_altgrenades i cg_altlightning (zob. część II) przez klientów.
Armordamage, ca_startrespawn, ca_warmupfire i roundlimit dotyczą tylko trybu Clan Arena.
Fastrail, lgcooldown i poweruprespawn dotyczą tylko ProMode.
Reload dotyczy czasu ładowania raila tylko dla instagib.
Items określa możliwość wyłączenia przedmiotów na mapie, jednak można głosować tylko nad bfg (por. item_disable).
Machinegun dotyczy głosowania nad jego siłą, overtime nad sposobami rozstrzygania remisu (zob. match_overtime).
Powerups określa które powerupy klient może usunąć z mapy poprzez głosowanie (zob. powerup_disable).
Promode decyduje, czy na serwerze można go uaktywnić.
Głosowanie nad referee dawałoby uprawnienia sędziego, czyli dostęp do prawie wszystkich ustawień serwera, co byłoby w konflikcie z rolą administratora, dlatego zwykle ta opcja jest wyłączona.
Ustawienie cl_timenudge z wartością ujemną na komputerze klienta włącza pewien rodzaj predykcji, co może obniżać ping (zob. Artykuły, Więcej o komendach połączenia), a vote_allow_timenudge zezwala klientom na głosowanie nad minimalnym i maksymalnym limitem cl_timenudge (callvote timenudge_min, callvote timenudge_max).
Teamdamage zezwala na głosowanie nad friendlyfire, czyli możliwością zadawania obrażeń członkom własnej drużyny.
Weaponrespawn zezwala na głosowanie nad czasem pojawiania się broni (zob. g_weaponteamrespawn, g_weaponrespawn).
Są jeszcze dwie ważne komendy związane z głosowaniem:
  • vote_limit [] 5 - określa maksymalny limit głosowań dla jednego klienta podczas jednej mapy.
  • vote_percent [] 51 - określa procent graczy, którzy muszą odpowiedzieć na głosowanie, żeby doszło do skutku.


Zdalna administracja. Występuje ona już w baseq3, a osp jak zwykle tylko dodaje nowe możliwości. Administracja w vq3 polega na użyciu komendy rcon po wcześniejszej autoryzacji. Na serwerze musi być ustawione rconpassword np. "adminek10". Jeśli znamy takie hasło, to wpisując w konsoli /rconpassword adminek10 (lub ładując je z własnego configa dla wygody) otrzymamy uprawnienia administratorskie. Wtedy będziemy mogli zmieniać wszystkie ustawienia (poprzedzając je rcon), tak jak by to był nasz serwer, np.:
  • rcon fraglimit 10
  • rcon kick someone , itd.
Tym sposobem nie będziemy mieli jednak wpływu na komendy osp. Potrzebna tu jest dodatkowa autoryzacja - na serwerze musi być ustawione ref_password, np. adminek11 i podobnie jak wcześniej, znając hasło i wpisując w konsoli /ref adminek11 (nie działa z configa) otrzymamy dostęp do ustawień osp. Ustawienia, które możemy wtedy kontrolować są następujące i można je wprowadzać na dwa sposoby:
  • ref abort lub r_abort - przerywa mecz.
  • ref allcaptain lub allcaptain - daje wszystkim członkom drużyny uprawnienia kapitana (zob. część II).
  • ref allready lub r_allready - wymusza rozpoczęcie meczu.
  • ref ban [id] lub r_ban [id] - usuwa i zabrania dostępu do serwera graczowi o danym id (wziętym z /players).
  • ref help lub ... - wyświetla spis możliwych opcji.
  • ref lock / lockblue / lockred - zamyka drużynę, tak że nikt nie może się do niej dołączyć.
  • ref unlock / unlockblue / unlockred - ponownie otwiera drużynę.
  • ref map [map] - ładuje mapę.
  • ref mutespecs - włącza/wyłącza wyswietlanie tesktów spectów do graczy tdm.
  • ref pause - pauzuje mecz.
  • ref promote [id] - nadaje graczowi uprawnienia kapitana.
  • ref putblue / putred [id] - wymusza przerzucenie gracza do drugiej drużyny.
  • ref remove [id] - usuwa gracza z drużyny.
  • ref restart - restartuje mecz.
  • ref speclock / specunlock - wyłącza i włącza możliwość spectowania.
  • ref speclockblue / speclockred - wyłącza możliwość spectowania określonej drużyny
    (z powrotem r_specunlockblue i r_specunlockred).
Jeszcze więcej opcji kontroli oferuje głosowanie callvote - dla gracza z uprawnieniami referee zawsze zakończy się ono sukcesem.




Przykładowe configi. Na zakończenie zamieszczę kilka configów, które mogą być pomocne przy określaniu swoich własnych ustawień:
  • - konfig zawiera większość ustawień z części II, dotyczących klienta; wystarczy wstawić własne wartości. Konfig ten nie zawiera ustawień z vq3, dlatego najlepiej wkleić go do swojego configa z vq3.

  • - uniwersalny konfig do stawiania serwera pod osp - zawiera komendy zarówno vq3 jak i osp z przypisanymi wartościami; ostatnie linie sets określają informacje, które będą widoczne po wybraniu z menu Server Info lub wpisaniu /serverinfo przez klientów, a także w programach typu GameSpy.

  • - Przykładowy config z własnym trybem gry - RailWars; odmiana instagib, ale zachowująca wszystkie przedmioty (prócz innych broni), co pozwala na normalne kontrolowanie mapy.

  • - Drugi config z przykładowym trybem gry - RocketWars; jak wyżej, tylko gra na same rakiety.

Możliwości pisania takich configów są prawie nieograniczone.




Do części II << >> Do części IV








Tekst, PHP, HTML: (c) 2000-2003 Rozz
Grafika: (c) 2002 Master
Wszystkie prawa zastrzeżone. Żadna część tej strony nie może być kopiowana
w całości lub w częściach i publikowana elektronicznie bez zgody autorów.
 
Dodaj do Ulubionych

NAWIGATOR

    # Osp - serwer

POLECAMY

* Kurs OSP - tajniki osp dla początkujących i zaawansowanych!
* Konsola Q3 - 40% komend quake3 z krótkim opisem - dla każdego!
* Serwery Q3 - zawsze aktualny spis najlepszych polskich serwerów!

W CO SIĘ GRA

  1v1
- pro-q3dm6
- ztn3tourney1
- pro-q3tourney4
- q3tourney2
  tdm
- pro-q3dm6
- ospdm6
- ospdm5
- q3dm14tmp
- cpm4
- q3dm7tmp
- q3dm12tmp
- poq3dm5