Trénink v Counter-Strike 2 obnáší zhruba patnáct příkazů do konzole a soukromé 5v5 dalších deset. Pro trénink: sv_cheats 1, pak nekonečné náboje, nákup kdekoli, dlouhé kolo bez freeze time, dráhy granátů a boti vyhození nebo zmrazení. Pro soukromý zápas: počet kol, overtime, poločas a restart, plus dva příkazy na pauzu pro případ, že někomu vypoví router. Každou sadu stačí jednou uložit do souboru .cfg a místo patnácti řádků pokaždé napíšeš exec prac.
Většina toho, co najdeš při hledání „csgo practice server commands“, pořád funguje, protože CS2 zachovalo pojmenování ze Source. Něco ale ne a pár hodnot se změnilo - nejvíc délka zápasu. Tento článek ukazuje verze pro CS2, říká, kde se od starých příkazů z CS:GO liší, a vysvětluje, kam se který příkaz musí psát, což je právě to, o co lidé na dedikovaném serveru nejčastěji zakopnou. Úplný přehled serveru najdeš v příkazech a cvarech serveru CS2, večer s pluginy pro zápasy pak v competitive match serveru pro CS2.
Kde se příkazy spouštějí: ve tvé hře, nebo na serveru#
Každý příkaz níže se píše do konzole, ale konzole mohou být tři a nechovají se stejně.
| Kde | Kdo je server | Kdo může nastavovat cvary sv_ a mp_ |
|---|---|---|
| Tréninková mapa z menu | Tvoje vlastní hra | Ty, ve své konzoli |
| Párty na workshopové nebo tréninkové mapě | Hra vedoucího party | Jen vedoucí |
| Dedikovaný server | Samostatný proces | Konzole serveru nebo RCON |
První případ je ten snadný. Hraj, vyber Practice, zvol mapu a hra spustí lokální server, na kterém jsi ty. Cokoli napíšeš, ovlivní ten server přímo, protože jím jsi.
Třetí případ je ten, kde lidé uvíznou. Na dedikovaném serveru patří cvary začínající sv_, mp_, bot_ a ammo_ serveru. Když do vlastní klientské konzole napíšeš sv_infinite_ammo 1, zatímco jsi připojený k cizímu serveru, nestane se nic a konzole to ne vždy řekne. Tyto řádky musí projít konzolí serveru - u hostingu s panelem záložkou konzole - nebo přes rcon z tvého klienta. Hráč si sám může napsat jen malou sadu cheatových příkazů, které působí na jeho vlastní postavu: noclip, give, setpos. Fungují jen proto, že server má sv_cheats 1, a proto je právě tento řádek první.
Zapnutí konzole a sv_cheats#
Vývojářská konzole je ve výchozím stavu vypnutá. V CS2 ji najdeš v Settings, Game, „Enable Developer Console (~)“. Nastav Yes a klávesa vlevo od 1 ji otevře. Na některých rozloženích klávesnice ta klávesa posílá jiný znak; když se nic neděje, přiřaď konzoli jinou klávesu v nastavení klávesnice, místo abys s tím bojoval.
Pak, na mapě, kterou hostuješ:
sv_cheats 1sv_cheats je cvar serveru, takže na dedikovaném serveru patří do konzole serveru. Restart serveru nepřežije a žádný z herních režimových configů od Valve ho nenastavuje, což je dobře: tréninkový server, který se přes noc restartuje, naběhne čistý. Když načteš novou mapu příkazem map, zkontroluj hodnotu znovu - samotné sv_cheats vypíše aktuální stav.
Na dedikovaném serveru záleží na pořadí ještě z jednoho důvodu. Několik tréninkových cvarů je označeno jako cheaty a pokud je nastavíš dřív, odmítnou se hláškou o sv_cheats. Když config „funguje jen napůl“, bývá to obvykle tohle.
Tréninkový config řádek po řádku#
Tady je kompletní tréninkový config pro samostatné nebo týmové házení granátů. Na tvé vlastní hře i na dedikovaném serveru běží stejně.
sv_cheats 1mp_limitteams 0mp_autoteambalance 0mp_ignore_round_win_conditions 1mp_roundtime 60mp_roundtime_defuse 60mp_roundtime_hostage 60mp_freezetime 0mp_buy_anywhere 1mp_buytime 9999mp_maxmoney 60000mp_startmoney 60000mp_afterroundmoney 60000mp_respawn_on_death_t 1mp_respawn_on_death_ct 1sv_infinite_ammo 1ammo_grenade_limit_total 5sv_grenade_trajectory_prac_pipreview 1sv_grenade_trajectory_prac_trailtime 8sv_showimpacts 1sv_showimpacts_time 8bot_kickmp_warmup_endmp_restartgame 1Co která skupina dělá:
| Cvar | Hodnota | Proč |
|---|---|---|
sv_cheats | 1 | Odemkne vše, co je označeno jako cheat |
mp_ignore_round_win_conditions | 1 | Kolo nikdy neskončí, ani když nikdo nežije |
mp_roundtime a dvě varianty | 60 | Minuty. 60 je strop |
mp_freezetime | 0 | Žádný zmrazený start po restartu |
mp_buy_anywhere | 1 | Nákupní menu i mimo spawn |
mp_buytime | 9999 | Sekundy. V praxi navždy |
mp_maxmoney / mp_startmoney | 60000 | Uprostřed session ti nikdy nedojdou peníze |
mp_respawn_on_death_* | 1 | Umřeš a hned jsi zpátky |
sv_infinite_ammo | 1 | Žádné přebíjení, granáty se nespotřebují |
ammo_grenade_limit_total | 5 | Neseš od každého typu granátu jeden |
sv_showimpacts | 1 | Kreslí zásahy kulek |
bot_kick | - | Odstraní všechny boty |
sv_infinite_ammo má dvě nenulové hodnoty a nejsou stejné. 1 znamená, že zásobník se nikdy nevyprázdní a hozený granát zůstane v ruce, takže stejný smoke můžeš hodit dvacetkrát bez nového nákupu. 2 znamená, že rezerva je nekonečná, ale přebíjet musíš pořád, což je nastavení pro trénink sprayů, protože přebíjení je součástí sprayu.
mp_roundtime platí pro mapy bez konkrétního cíle; mp_roundtime_defuse a mp_roundtime_hostage platí na typech map, které jmenují. Když nastavíš jen první, mapa s bombou pořád skončí v competitive čase, což je nejčastější dotaz typu „kolo mi pořád končí“. Spolu s mp_ignore_round_win_conditions 1 kolo neskončí ani zabitím všech, ani bombou.
ammo_grenade_limit_total je celkový počet granátů, které hráč unese. V competitive je limit čtyři. S pěti máš najednou HE, flash, smoke, molotov nebo incendiary a decoy. Flashbangy mají vlastní limit dvou na hráče v ammo_grenade_limit_flashbang, takže na trénink dvojitého flashe není nutné zvyšovat celkový limit dál.
mp_warmup_end a mp_restartgame 1 stojí dole schválně. Warm-up na čerstvé mapě má vlastní pravidla a některé cvary se projeví až na začátku kola. Ukončení warm-upu a jeden restart zařídí, že se celý soubor uplatní naráz.
Příkazy pro trénink granátů#
Čtyři cvary výše dělají server shovívavý. Tyto tě něco naučí.
sv_grenade_trajectory_prac_pipreview 1 ukáže malý náhled, kam granát dopadne, zatímco ho držíš, ještě před hodem. Je to funkce CS2 a je to nejužitečnější tréninkový cvar, jaký hra má: zamíříš, sleduješ, jak se náhled usadí na správném pixelu, a teprve pak pustíš. Je to nastavení serveru, takže na dedikovaném serveru ho mají všichni.
sv_grenade_trajectory_prac_trailtime 8 nakreslí dráhu hozeného granátu a nechá ji na obrazovce tolik sekund. Když náhled ukazuje, kam dopadne, a stopa, kudy letěl, přesně uvidíš, jak se jump-throw liší od hodu ze stoje.
sv_showimpacts 1 označuje zásahy kulek, sv_showimpacts_time je drží viditelné tolik sekund. Značky mají dvě barvy, jednu z klienta a jednu ze serveru, a rozdíl mezi nimi je tvoje chyba v pohybu v okamžiku výstřelu. 2 ukazuje jen značky klienta a 3 jen serverové.
Pak příkazy, které hráč píše do vlastní konzole:
sv_rethrow_last_grenadenoclipcl_showpos 1getpossetpos 1200 -560 64give weapon_smokegrenadebot_add_tbot_placebot_stop 1sv_rethrow_last_grenade hodí tvůj poslední granát znovu přesně z místa, odkud jsi ho hodil, aniž byses hnul. Přiřaď ho na klávesu a můžeš stát na místě dopadu a sledovat, jak se smoke opakuje. noclip ti umožní létat; takhle dojdeš na konec smoku, aniž bys byl na druhé straně.
getpos vypíše hotový řádek setpos ... ; setang ... s tvou aktuální pozicí a úhlem pohledu. Zkopíruj ho do configu vedle názvu line-upu a máš teleport zpátky na místo, odkud jsi házel. cl_showpos 1 ukazuje stejné souřadnice živě v rohu obrazovky.
bot_add_t (nebo bot_add_ct) přidá jednoho bota, bot_place přesune naposledy přidaného bota tam, kam se díváš, a bot_stop 1 zastaví všechny boty, aby se nehýbali ani nereagovali. Dohromady postaví cíl přesně tam, kde stojí nepřítel při peeku, a tak ověříš, jestli flash úhel opravdu oslepí, nebo jen vypadá efektně. bot_kick je na konci odstraní všechny.
Uložení jako .cfg a spuštění přes exec#
Config je prostý textový soubor s řádky pro konzoli, jeden příkaz na řádek, uložený s příponou .cfg. Řádky začínající // jsou komentáře.
Pro tvou vlastní hru je složka uvnitř instalace Steamu, která pořád používá starý název složky:
Steam/steamapps/common/Counter-Strike Global Offensive/game/csgo/cfg/Na dedikovaném serveru je to stejná relativní cesta, game/csgo/cfg/, uvnitř adresáře serveru. U hostingu s panelem soubor vytvoříš ve správci souborů nebo ho nahraješ přes SFTP. Pak:
exec pracPřípona .cfg je volitelná. exec čte ze složky cfg; funguje i podsložka, třeba exec practice/mirage.
Dva návyky dělají z tréninkových configů příjemnou věc místo snesitelné. Za prvé odpovídající prac_off.cfg, který vrátí všechno zpátky, takže konec session je jeden příkaz místo restartu serveru:
sv_infinite_ammo 0sv_grenade_trajectory_prac_pipreview 0sv_showimpacts 0mp_ignore_round_win_conditions 0mp_buy_anywhere 0mp_respawn_on_death_t 0mp_respawn_on_death_ct 0sv_cheats 0mp_restartgame 1Za druhé bindy na příkazy, které používáš s granátem v ruce. Ty patří do klientského configu, ne serverového:
bind "mouse4" "sv_rethrow_last_grenade"bind "mouse5" "noclip"bind "kp_enter" "getpos"Zda CS2 spouští autoexec.cfg samo, bylo napříč aktualizacemi nekonzistentní. Spolehlivá cesta je přidat +exec autoexec do spouštěcích voleb hry ve Steamu, takže se spustí pokaždé. Teleporty na line-upy můžeš dát do souborů pro jednotlivé mapy - exec lineups_mirage s jedním řádkem setpos na každý smoke - což je celé, co dělá spousta placených tréninkových nástrojů.
Příkazy pro soukromé 5v5#
U soukromé hry deseti lidí už jsou výchozí hodnoty competitive režimu blízko správným. Ručně nastavuješ délku, overtime a poločas, a pak restartuješ, aby se všechno uplatnilo.
sv_cheats 0mp_maxrounds 24mp_halftime 1mp_halftime_duration 15mp_overtime_enable 1mp_overtime_maxrounds 6mp_overtime_startmoney 12500mp_match_can_clinch 1mp_freezetime 15mp_roundtime_defuse 1.92mp_buytime 20mp_buy_anywhere 0mp_startmoney 800mp_maxmoney 16000mp_autoteambalance 0mp_limitteams 0mp_autokick 0mp_warmup_endmp_restartgame 3| Cvar | O čem rozhoduje |
|---|---|
mp_maxrounds | Délka základní hry. 24 je MR12, první na 13 |
mp_halftime | Výměna stran po polovině kol |
mp_halftime_duration | Sekundy přestávky v poločase |
mp_overtime_enable | Hrát overtime při 12:12, nebo povolit remízu |
mp_overtime_maxrounds | Počet kol v jednom overtime. 6 je MR3 |
mp_overtime_startmoney | Peníze na začátku každé poloviny overtime |
mp_match_can_clinch | Skončit na 13, místo abys dohrál všech 24 |
mp_autokick | 0 zabrání kickům za nečinnost při dlouhé pauze |
mp_match_can_clinch si zaslouží větu, protože ho lidé vypínají omylem. Když je zapnutý, zápas při stavu 13:3 skončí na 13:3. Když je vypnutý, server odehraje všech 24 kol, což chceš jen tehdy, když záměrně trénuješ celou ekonomiku. mp_overtime_enable 0 dovolí, aby základní hra skončila 12:12, což je pro scrim v pořádku a pro cokoli s výsledkem špatně.
mp_restartgame 3 restartuje po třech sekundách; funguje jakékoli číslo a 1 je v pořádku. Nejdřív spusť config, potom restartuj. Když nejdřív restartuješ a pak teprve spustíš config, zůstanou v prvním kole staré peníze a počet kol a skóre je pokřivené dřív, než si toho kdo všimne.
Pár dalších si na večer drž po ruce. mp_warmup_start vrátí server do warm-upu a mp_warmup_pausetimer 1 nechá warm-up běžet, dokud ho neukončíš, což je způsob, jak počkat na desátého hráče, aniž by o tom rozhodovaly hodiny. mp_swapteams prohodí všechny mezi stranami a restartuje hru, takže patří před začátek ostré hry, ne po něm. mp_teamname_1 a mp_teamname_2 nastaví jména týmů na tabuli výsledků. changelevel de_nuke přejde na jinou mapu a všichni zůstanou připojení; map de_nuke dělá totéž, ale každého klienta odpojí a znovu připojí.
Pamatuj, kam tohle na dedikovaném serveru patří. scrim.cfg, který nastavuje hodnoty mp_, je bezpečné spustit za běhu, ale pokud chceš, aby tyto hodnoty byly výchozí při každém načtení mapy, patří do gamemode_competitive_server.cfg, protože režimový config od Valve běží po server.cfg na každé mapě a přepíše ho. Příkazy a cvary serveru CS2 vysvětlují toto pořadí celé.
Pauzy, timeouty a oprava kola#
Zápas zastavují dva příkazy:
mp_pause_matchmp_unpause_matchmp_pause_match nezmrazí hru uprostřed přestřelky. Pozastaví ji při příštím freeze time, takže rozehrané kolo doběhne a další čeká na nákupní obrazovce. Je to záměr - pauza uprostřed kola by změnila výsledek. mp_unpause_match pokračuje ve hře. Oba jsou serverové příkazy, takže v soukromé hře je spouští hostitel nebo ten, kdo má RCON.
Taktické timeouty jsou něco jiného. mp_team_timeout_time nastavuje jejich délku v sekundách a mp_team_timeout_max, kolik jich má každý tým; hráči je vyvolávají přes hlasovací menu během freeze time. Admin může timeout týmu spustit také příkazem timeout_terrorist_start nebo timeout_ct_start. Pokud je tvoje verze nezná, find timeout vypíše, jak se jmenují v aktuální verzi.
Když se kolo musí odehrát znovu - pád během nákupu, hráč, který se odpojil v nejhorší chvíli - je nástrojem záloha kol v enginu. mp_backup_round_auto 1 zapisuje malý soubor za každé kolo a mp_backup_restore_load_file jeden z nich načte zpátky i s penězi a skóre. Pomůže to jen tehdy, když to bylo zapnuté před problémem, takže to přidej do scrim configu. Podrobnosti a také to, jak MatchZy stejný mechanismus obaluje příkazem .stop, s nímž musí souhlasit oba týmy, najdeš v článku o competitive match serveru.
Co se změnilo oproti CS:GO#
Většina tréninkových a zápasových configů z CS:GO se v CS2 načte, jen pár řádků selže. Tohle stojí za to znát.
| CS:GO | CS2 |
|---|---|
mp_maxrounds 30 (MR15) | mp_maxrounds 24 (MR12) |
Peníze v overtime 10000 | mp_overtime_startmoney 12500 |
csgo/cfg/ | game/csgo/cfg/ |
cl_grenadepreview 1 | sv_grenade_trajectory_prac_pipreview 1 |
sv_grenade_trajectory 1 | sv_grenade_trajectory_prac_trailtime |
| 128 tick pro trénink | 64 tick se sub-tick vstupem |
Nejvíc bolí změna délky zápasu. Scrim config z CS:GO nastavuje mp_maxrounds 30 a CS2 s ním klidně hraje třicet kol - nic nehlásí chybu, je to jen jiná hra, než jakou všichni hrají ve frontě. Změň to na 24.
Cvary pro dráhu granátů byly přepracovány, ne přejmenovány jedna ku jedné. Starší návody používají sv_grenade_trajectory 1 se sv_grenade_trajectory_time; tréninkové cvary CS2 mají v názvu _prac_. Spusť na své verzi find grenade_trajectory, abys viděl, které přesně existují, protože Valve tuto skupinu upravilo víckrát. Klientský náhled z CS:GO je pryč; náhled v ruce je nyní serverové nastavení pipreview.
Otázka 128 ticků se také změnila. V CS:GO se při tréninku smoků na 64 ticích daly naučit line-upy, které na serverech FACEIT s 128 ticky selhaly, takže všichni trénovali na 128. Servery CS2 běží ve výchozím stavu na 64 ticích a vstup vyhodnocují mezi ticky, což rozdíl zmenšuje, ale fyzika granátů se pořád simuluje po tickách. Pokud trénuješ na dedikovaném serveru, nech ho běžet na tick rate, na kterém budeš hrát - proč na tom záleží, vysvětluje co tick rate doopravdy znamená.
Beze změny a bezpečné k přenesení: sv_cheats, sv_infinite_ammo, sv_showimpacts, sv_rethrow_last_grenade, mp_buy_anywhere, mp_buytime, mp_roundtime a jeho varianty, mp_freezetime, mp_warmup_end, mp_restartgame, mp_halftime, mp_match_can_clinch, mp_pause_match, bot_kick, bot_place, noclip, getpos a setpos. Když řádek ve starém configu selže, konzole vypíše „Unknown command“ a find s částí názvu ti řekne, jestli se přesunul, nebo zmizel.
Trénink na serveru místo ve vlastní hře#
Lokální tréninková mapa je v pořádku, když jsi sám. Přestane stačit, když chce pět lidí házet společně: na listen serveru je serverem hra hostitele, takže jeho snímková frekvence a připojení jsou pro všechny a session skončí, když hostitel odejde.
Malý dedikovaný server to řeší. Drží tréninkový config, když na něm nikdo není, běží na tick rate, který zvolíš, a tým se připojí adresou a heslem. Deset hráčů při tréninku nebo 5v5 na 64 ticích je malá zátěž, zhruba 1 GB paměti a jedno jádro pro vanilla CS2, víc s pluginy nebo 128 tick. Zprovoznění od nuly, včetně tokenu Steam game serveru, je v nastavení serveru Counter-Strike 2. Soukromý server, na který se připojuješ adresou, token vůbec nepotřebuje; důležitý je jen pro veřejný seznam.
Na RE:NODE se tréninkové a scrim configy nahrávají do game/csgo/cfg/ přes správce souborů a konzole v panelu přijímá exec prac nebo mp_pause_match přímo, takže nikdo nepotřebuje heslo k RCON. Tuto obrazovku popisuje průvodce konzolí v panelu. Pokud chce skupina trénovat a hrát zápasy současně, jsou to dva servery, protože na jednom je sv_cheats 1 a na druhém být nesmí.
Řešení potíží#
Konzole odmítne příkaz a zmiňuje sv_cheats. Znamená to přesně to, co říká. Nejdřív nastav na serveru sv_cheats 1 a pak config spusť znovu. Na dedikovaném serveru nastavení ve vlastní klientské konzoli nic neudělá.
Tréninkové příkazy nedělají nic na kamarádově nebo dedikovaném serveru. Napsal jsi serverové cvary do klientské konzole. Použij konzoli serveru nebo před každý řádek dej rcon. Na tvého hráče působí jen noclip, give, setpos a podobné.
Kolo pořád končí po dvou minutách. Není nastaveno mp_roundtime_defuse, nebo je mp_ignore_round_win_conditions na 0 a kolo skončilo bombou či zabitími. Nastav obojí a pak mp_restartgame 1.
`exec` hlásí, že soubor nebyl nalezen. Špatná složka nebo skrytá přípona .txt. Windows ve výchozím stavu přípony skrývá, takže prac.cfg bývá ve skutečnosti prac.cfg.txt. Soubor musí ležet v game/csgo/cfg/, ne ve starším csgo/cfg/.
Nastavení se po změně mapy resetuje. Režimový config běží při každém načtení mapy. Spusť svůj config znovu po načtení mapy, nebo na dedikovaném serveru dej hodnoty do gamemode_competitive_server.cfg.
Zápas skončil na 16 výher, nebo neskončil nikdy. Config z CS:GO s mp_maxrounds 30 nebo mp_match_can_clinch 0. Nastav 24 a 1.
Pauza nenastala. Nastala; čeká na příští freeze time. Pokud se přesto neprojeví, zkontroluj, že jsi ji poslal serveru, a ne svému klientovi.
FAQ#
Fungují tréninkové příkazy z CS:GO v CS2?
Většina ano. sv_cheats, sv_infinite_ammo, sv_showimpacts, mp_buy_anywhere, noclip, bot_kick a zbytek běžné sady jsou beze změny. Cvary pro náhled a dráhu granátů byly přepracovány a délka zápasu se změnila z 30 kol na 24, takže config z CS:GO potřebuje tyto řádky nahradit.
Kam dát tréninkový config v CS2?
Do game/csgo/cfg/ ve složce Counter-Strike Global Offensive ve tvé knihovně Steamu, nebo na stejnou cestu v adresáři dedikovaného serveru. Spusť ho příkazem exec a názvem souboru, s .cfg nebo bez.
Jak si v CS2 dám nekonečné granáty?
sv_cheats 1, pak sv_infinite_ammo 1. Hozený granát zůstane v ruce, takže stejný smoke můžeš házet pořád dokola. Přidej ammo_grenade_limit_total 5, abys nesl od každého typu jeden.
Můžou se kamarádi připojit na moji tréninkovou mapu?
Ano, jako party na hře vedoucího, jenže jeho počítač je server pro všechny a cvary může měnit jen on. Pro pravidelný týmový trénink je stabilnější dedikovaný server s heslem, který běží dál, i když se vedoucí odhlásí.
Jak odehraju soukromé 5v5 se skutečnými competitive pravidly?
Spusť config s mp_maxrounds 24, mp_halftime 1, mp_overtime_enable 1 a mp_overtime_maxrounds 6, pak mp_warmup_end a mp_restartgame 1. Ujisti se, že sv_cheats je 0, a nastav sv_password, aby se mohlo připojit jen vy deset.
Proč mp_pause_match nepozastaví hru hned?
Z návrhu pozastavuje na začátku freeze time dalšího kola, takže rozehrané kolo doběhne normálně. mp_unpause_match hru obnoví.


