No to opisze swoj cfg.
Obecna wersja to v5.1.9 beta :>
Ogolnie zrobilem tak ze wszystko mam w wielu plikach cfg w baseq2, i odpalam je aliasami np. "exec ..\baseq2\opcje.cfg". Dzieki temu q2 wczytuje zawsze z baseq2, niezaleznie od moda, o ile mam w tym modzie autoexec.cfg z tylko jedna linia "exec ..\baseq2\autoexec.cfg".
Pierwszy uruchamiany cfg to zawsze autoexec.cfg, z baseq2. Mam w nim aliasy do innych cfg ktore odrazu sa uruchamiane (chociaz nie wszystkie, hehe). Napisze odrazu o dwuch niestandardowych:
opcje.cfg
To ustawienia opcjonalne, ktore nie laduja sie automatycznie. To na wypadek jakby config.cfg pozmienial i chcial przywrocic.
rec.cfg
To ten skrypt pomagajacy w nagrywaniu demek. Na klawiszu "*" (klawiatura numeryczna), jest bind co nagrywa kolejne demka w postaci rec001_q2dm1.dm2, rec002_q2dm2.dm2, rec003_.dm2 itd. Po wlaczeniu skryptu wyswietli sie maly help z opisem opcji i bindow:
[-------- record aliases --------]
[ * - zaczyna nagrywac
[ kp_slash - czyli "/" na numerycznych, nagrywa na tym samym numerze co ostatnio
[ kp_minus - zatrzymuje demo
[ recreset - ta komenda ustawia licznik na 000
[ reclist - wyswietla liste demek z rec*
Jesli to my zakladamy serwer, zmienna $mapname ma wartosc nazwy mapy, wiec automatycznie na koncu dopisywana jest nazwa mapy. Bierzacy numer demka (liczba po rec) jest nagrywany w bindzie do gwiazdki, wiec trzeba uwazac zeby nie stracic config.cfg bo zacznie nadpisywac. Mozna samemu ustawic sobie koncowke nazwy demka wpisujac np.
set mapname jak_xa_jedzie_tac
Wtedy demko sie nagra do pliku rec003_jak_xa_jedzie_tac.dm2 ;)
Liczba numerow jest ograniczona do 200, pozniej trzeba przeniesc swoje demka i mozna nagrywac od nowa po wpisaniu recreset.
menu_nc.cfg
To skrypcik umozliwiajacy stworzenie menu na klawiszach F1-F12. Np. jak wciskamy F5 i pokazuje nam sie takie echo:
[f9-f9] DRAW CHAT HUD 1
[f9-f10] NO CHAT CHUD
[f9-f11] netgraph i stats ON
[f9-f12] netgraph i stats OFF
Jak teraz nacisniemy od f9 do f12 to wykonaja nam sie takie komendy jakie zostaly opisane w tym menu.
Najlepiej nie zmieniac pliku fmenu.cfg jak chcemy dodac jakies menu. Lepiej go poprostu execowac w autoexecu, gdzies na poczatku, a pozniej poustawiac odpowiednie zmienne i aliasy np:
$this->bbcode_second_pass_code('', ' alias af99 "cl_drawchathud 1" ;set f99 "DRAW CHAT HUD 1" alias af910 "cl_drawchathud 0" ;set f910 "NO CHAT CHUD" alias af911 "cl_drawfps 1 ; cl_drawtime 2 ; cl_drawrate 1 ; cl_drawping 1 ; netgraph 1" ;set f911 "netgraph i stats ON" alias af912 "cl_drawfps 0 ; cl_drawtime 0 ; cl_drawrate 0 ; cl_drawping 0 ; netgraph 0" ;set f912 "netgraph i stats OFF" ') Po lewej w aliasie af99 sa komendy wykonywane dla podwojnego przycisnienia f9, a po prawej w set f99, opis widoczny w menu. Wsumie do dyspozycji mozemy miec 48 takich bindow dzialajacych nawet gdy nie mamy zaladowanej mapy. Sa jeszcze dwie osobne pary aliasow do takich menu, ktore ja mam na klawiszach 7-0. Sluza mi one do takich odzywek jak "= HF & GL =" czy "= GOOD GAME =". Ostatni mam na klawiszach numerycznych od 0 do 9, ktory zadziej uzywam. Mam tam zwykle say'ki. Ustawia sie to wszystko analogicznie jak te z f'kami, wystarczy zajrzec jak to zrobilem w players.cfg. P.S. czasami zachodzi potrzeba anulowania naszego wyboru z menu. Na f-kach wystarczy kliknac jakis spoza rzedu f'ek, np f9-f8 (f8 nie jest w rzedzie f9-12), oprocz tego mam bind na backspace "set cv menu ;echo Cancel".
aliases_nc.cfg
Wspolne aliasy to teampleya, zaczolem pisac taki wspolny cfg jak zalozylem xa, kazdy ma taki sam, ale inaczej pobindowany. Jest on najwazniejszy. Ogolnie to nie uzywam wielu modifierow, raczej tylko jeden - $mmod, ktory przyjmuje wiele wartosci. Poczatkowo na myszce mialem zbidowane tylko dwa stany mmod'a, jak wciskam prawy myszki $mmod przyjmuje wartosc "_drop", a jak puszczam "_use". Kazdy alias moge uzyc na dwa sposoby z drugim klawiszem myszki, tworzac dwa aliasy np. rg_use i rg_drop, bindujac klawisz przez "rg$mmod". Poczatkowo to sluzylo tylko do wyrzucania broni, pozniej juz w samych aliasach pododawalem zmiany modifierow, takze sa jeszcze _drop_ammo _enemy _safe _need _timer _ask _finish :) Do wlanczania ich mam rozne combosy bo by mi klawiszy nie starczylo. np kiedy kucam wykonuje +movedown_drop_ammo ktora zmienia $mmod na _drop_ammo i pozwala przy okazji wyrzucac sama amunicje jesli nacisne bron :D
automatyczne timery Wszystkie timery do quada, armorow, pentow, oraz kazdej broni z osobna (do kazdej mam stosowny wav :>), mam zbindowany na klawiszu Z. bind z "statrep$mmod" // (STATUS / REPLACE ME) - status i prosba o zmiane Wczesniej klawisz ten sluzyl do podawania pozycji (alias statrep_use), albo - komunikat "ZASTAP MNIE" (statrep_drop), z prawym myszki. W obecnej wersji rozszezylem funkcje tego klawisza tak, ze jak stoje na odpowiedniej pozycji zamiast statusu "gdzie jestem", wlancza sie timer np. "MAM YELLOW ARMOR 20s". Jak? Zrobilem alias ze "statrep_use" to "$loc_here". Jak sie normalnie w konsoli wpisze $loc_here, pokaze sie nazwa pozycji na "say". Jesli jednak zaliasujemy nazwe tej pozycji to wykona sie inny alias, np. timer. Problem w tym ze nazwy lokacji nie moga zawierac zadnych spacji, srednikow itp. wiec napisalem je od nowa. W dodatku trzeba poaliasowac WSZYSTKIE locki, nietylko te ktore tworza timery. Przy okazji dodalem klamry w nazwach, bo skladnia [$loc_here] nie jest poprawna, oraz przetlumaczylem troche na polski gdyz mialem ambicje zrobic z tego uniwersalny cfg z q2oem.
Jesli dotychczas nie rozumiesz co nabazgralem, a chcialbys zrobic to po swojemu, to to co napisalem wyzej nie jest konieczne :> Mozna to uproscic: bind z "$loc_here" - takie cos odtwaza aliasy o nazwie locka przy ktorym stoisz. Te ktore sie wiaza z timerami sa poaliasowane na poczatku aliases_nc.cfg. To te aliasy ze znakiem {} w nazwie np. alias {QUAD} "say_team $BRW MAM QUAD $TTT 60 $BRW ; play quad60" Pozostale locki nazwalem z klamrami kwadratowymi np. [WINDA]. Wszystkie one sa zaliasowane z pustym aliasem: alias REM "", by sie nie pokazywaly przeciwnikowi. Lokacje z tymi "REM" sa w osobnym cfg ..\locs\REMARK.CFG. Przyznam ze mi tez nie chcialo sie tego pisac, i zrobilem do tego program w poczciwym qbasicu ;)
player.cfg To prywatne bindy i rozne patenty pomagajace w graniu. Na poczatku zrobilem sobie kilka nowych komend PRZElaczajacych wspolnie statystyki nocheata na ekranie: toggle_hud i toggle_chathud. Zaliasowalem sobie tez pikanie i kikanie moich m8tes z xa, na rownych wariantach ich nickow :P Alias poprzedzajacy to zwany "cap" zabiera capitana :) Jest on w aliases_nc.cfg: alias cap "captain a $name ; captain b $name" Zrobilem tez sobie skrot do pikania i kikania innych graczy. Ustawilem ze zmienna $n ma wartosc "a". Od tego momentu gdy wpisze w konsoli np. "n gracz", to zmienna n zmieni sie na "gracz". Wystarczy wtedy wykonac alias pik zeby piknac goscia z tym nickiem, lub kik, by go wywalic. Nie trzeba wpisywac calego "pickplayer". Dodatkowo sobie to zbindowalem pod jednym klawiszem z modifierem (bind kp_plus "pik$mmod"). Wysoki skok: $this->bbcode_second_pass_code('', ' set max_fps 120 set min_fps 90 cl_maxfps 120 alias +jumphi "set cl_maxfps $max_fps ; +moveup ; WAIT ; -moveup; WAIT ; +moveup" alias -jumphi "set cl_maxfps $min_fps ; -moveup ; WAIT ; +moveup; WAIT ; -moveup" alias const "set max_fps $min_fps" ')
To maly skrypcik ktorym mozna ustawic inny sposob skokow. Normalnie masz maksymalne fps ustawione na min_fps=90. Jesli wcisniesz bind "+jumphi", fpsy sie zmienia na tyle ile masz w max_fps. Dzieki temu sie nie kleisz przez to ze masz wiecej niz 100fps, a jednoczesnie mozna wskakiwac na skrzynki na q2dm8 i wykonywac inne triki ktore przy mniej niz 100fps nie wychodza. Niestety na niektorych serwerach zbyt czeste korzystanie z tego jumpa moze zostac uznane jako proba zfloodowania serwera, i mozna dostac kicka. Wtedy trzeba wpisac alias const, ktory zrownuje max_fps z minimalnym :)
Najciekawsze juz napisalem, reszte skoncze pisac jutro, zedytuje wtedy ten post.
|