<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://hlds.pl/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl">
		<id>http://hlds.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Klin</id>
		<title>HLDS.pl - Wkład użytkownika [pl]</title>
		<link rel="self" type="application/atom+xml" href="http://hlds.pl/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Klin"/>
		<link rel="alternate" type="text/html" href="http://hlds.pl/Specjalna:Wk%C5%82ad/Klin"/>
		<updated>2026-04-26T09:50:43Z</updated>
		<subtitle>Wkład użytkownika</subtitle>
		<generator>MediaWiki 1.18.1</generator>

	<entry>
		<id>http://hlds.pl/ResGen</id>
		<title>ResGen</title>
		<link rel="alternate" type="text/html" href="http://hlds.pl/ResGen"/>
				<updated>2011-04-05T17:57:06Z</updated>
		
		<summary type="html">&lt;p&gt;Klin: skrypt resgen: resource + mapconfig dla dużej ilości map&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Opis==&lt;br /&gt;
ResGen to program do tworzenia plików .res, które są wykorzystywane w [[HLDS]].&lt;br /&gt;
&lt;br /&gt;
Pliki .res zawierają listę zasobów potrzebnych do prawidłowego odpalenia mapki przez serwer jak i klienta. Jest to w rzeczywistości plik tekstowy, można go edytować notepadem albo stworzyć od zera innym edytorem tekstu. Jednak po co się męczyć - do tworzenia plików .res stosujemy program resgen, który za nas odwali kawał roboty.&lt;br /&gt;
&lt;br /&gt;
== Komendy ==&lt;br /&gt;
&lt;br /&gt;
Podstawowa komenda i słownik angielskiego podają nam informacje jak używać aplikacji (z konsoli)&lt;br /&gt;
 resgen --help&lt;br /&gt;
&lt;br /&gt;
(tłumaczenie)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RESGen version 2.0 BETA 2, Copyright (C) 2000-2003 Jeroen Bogers&lt;br /&gt;
RESGen comes with ABSOLUTELY NO WARRANTY; for details&lt;br /&gt;
use the command line switch '-w'.  This is free software,&lt;br /&gt;
and you are welcome to redistribute it under certain&lt;br /&gt;
conditions; see the 'gpl.txt' file for details.&lt;br /&gt;
&lt;br /&gt;
Parametry:&lt;br /&gt;
-h           wyświetla help (po angielsku)&lt;br /&gt;
-c           wyświetla listę autorów&lt;br /&gt;
-w           pokazuje rozszerzony ekran z prawami autorskimi&lt;br /&gt;
-v           uruchamia tzw. silent mode czyli bardzo mało wyników na ekranie się będzie pojawiać&lt;br /&gt;
-s           nie wyświetla linii statusu&lt;br /&gt;
-i           nie wyświetla aktualnego folderu podczas poszukiwania plików z mapami&lt;br /&gt;
-j           nie wyświetla listy znalezionych zasobów podczas przetwarzania mapy&lt;br /&gt;
-d [folder]  przetwarzaj cały folder (z mapami)&lt;br /&gt;
-r [folder]  tak jak -d, ale schodzi do podkatalogów (np przy generowaniu plików .res dla wszystkich map wszystkich modów)&lt;br /&gt;
-f [nazwa]   przetwarzaj mapę o nazwie 'nazwa'&lt;br /&gt;
[map]        tak samo jak -f&lt;br /&gt;
-x [nazwa]   nie przetwarzaj mapy o nazwie 'nazwa', użyteczne przy parametrach -d i -r&lt;br /&gt;
-o           nadpisz istniejące pliki .res&lt;br /&gt;
-a [rfafile] dodaj zawartość pliku .rfa o pliku .res (przy dodawaniu np dźwięków multikill)&lt;br /&gt;
-l           nie przetwarzaj nazw plików na małe litery (teoretycznie ważne na linuksie szczególnie przy użyciu sv_dowloadurl, ale aktualnie naprawione)&lt;br /&gt;
-e [modpath] sprawdź ścieżkę 'modpath' w poszukiwaniu zasobów&lt;br /&gt;
-p           nie szukaj zasobów w plikach .pak (z czasów cs 1.5)&lt;br /&gt;
-t           ignoruj linki symboliczne podczas szukania zasobów (linux only)&lt;br /&gt;
&lt;br /&gt;
Przykład:&lt;br /&gt;
   resgen -f boot_camp -d . -r ../mappack -e hlds_l/cstrike&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Przed uruchomieniem pliku resgen z mapami najlepiej jeśli zrobicie sobie gdzieś kopie plików .res (np w podkatalogu maps/bak)&lt;br /&gt;
&lt;br /&gt;
Najlepiej program resgen umieścić w katalogu ''cstrike'' i uruchamiamy z [[konsoli]].&lt;br /&gt;
 resgen -t -d maps -o -e&lt;br /&gt;
Wtedy przemieli wszystkie mapki i stworzy dla każdej plik .res,&lt;br /&gt;
''Uwaga'' ten proces może być czasochłonny!&lt;br /&gt;
&lt;br /&gt;
Dlatego lepiej dla jednej mapy wpisać:&lt;br /&gt;
 resgen -t -f nazwa_mapy -o -e&lt;br /&gt;
&lt;br /&gt;
Dla naszej mapki de_biochem komenda wiec będzie wyglądać tak:&lt;br /&gt;
 resgen -t -f maps/de_biochem -o -e&lt;br /&gt;
&lt;br /&gt;
Wtedy pojawi się na ekranie cos w rodzaju poniższego tekstu:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Added &amp;quot;maps/de_biochem.bsp&amp;quot; to map list&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creating .res file for maps/de_biochem.bsp [1/1]:&lt;br /&gt;
halflife.wad&lt;br /&gt;
decals.wad&lt;br /&gt;
gfx/env/dashdesert256_up.tga&lt;br /&gt;
gfx/env/dashdesert256_dn.tga&lt;br /&gt;
gfx/env/dashdesert256_lf.tga&lt;br /&gt;
gfx/env/dashdesert256_rt.tga&lt;br /&gt;
gfx/env/dashdesert256_ft.tga&lt;br /&gt;
gfx/env/dashdesert256_bk.tga&lt;br /&gt;
models/tnt.mdl&lt;br /&gt;
maps/de_biochem.txt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Done creating res file(s)! 1 file(s) were generated.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
W efekcie powinien powstać plik maps/de_biochem.res o poniższej zawartości&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// de_biochem.res - created with RESGen v2.0 BETA 2.&lt;br /&gt;
// RESGen is made by Jeroen &amp;quot;ShadowLord&amp;quot; Bogers.&lt;br /&gt;
// For more info go to http://resgen.hltools.com&lt;br /&gt;
// or E-mail me at resgen@hltools.com.&lt;br /&gt;
&lt;br /&gt;
// .res entries (10):&lt;br /&gt;
halflife.wad&lt;br /&gt;
decals.wad&lt;br /&gt;
gfx/env/dashdesert256_up.tga&lt;br /&gt;
gfx/env/dashdesert256_dn.tga&lt;br /&gt;
gfx/env/dashdesert256_lf.tga&lt;br /&gt;
gfx/env/dashdesert256_rt.tga&lt;br /&gt;
gfx/env/dashdesert256_ft.tga&lt;br /&gt;
gfx/env/dashdesert256_bk.tga&lt;br /&gt;
models/tnt.mdl&lt;br /&gt;
maps/de_biochem.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Jeśli mamy dźwięki w katalogu sound/misc/ multikill, hedshot i chcemy aby były ściągane przez graczy na przykład:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sound/misc/headshot.wav&lt;br /&gt;
sound/misc/holyshit.wav&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
oraz widok mapy z góry:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
overviews/de_biochem.txt&lt;br /&gt;
overviews/de_biochem.bmp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to możemy do tego pliku je dodać ręcznie, uzyskując w efekcie końcowym taki plik:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// de_biochem.res - created with RESGen v2.0 BETA 2.&lt;br /&gt;
// RESGen is made by Jeroen &amp;quot;ShadowLord&amp;quot; Bogers.&lt;br /&gt;
// For more info go to http://resgen.hltools.com&lt;br /&gt;
// or E-mail me at resgen@hltools.com.&lt;br /&gt;
&lt;br /&gt;
// .res entries (10):&lt;br /&gt;
halflife.wad&lt;br /&gt;
decals.wad&lt;br /&gt;
gfx/env/dashdesert256_up.tga&lt;br /&gt;
gfx/env/dashdesert256_dn.tga&lt;br /&gt;
gfx/env/dashdesert256_lf.tga&lt;br /&gt;
gfx/env/dashdesert256_rt.tga&lt;br /&gt;
gfx/env/dashdesert256_ft.tga&lt;br /&gt;
gfx/env/dashdesert256_bk.tga&lt;br /&gt;
models/tnt.mdl&lt;br /&gt;
maps/de_biochem.txt&lt;br /&gt;
&lt;br /&gt;
sound/misc/headshot.wav&lt;br /&gt;
sound/misc/holyshit.wav&lt;br /&gt;
&lt;br /&gt;
overviews/de_biochem.txt&lt;br /&gt;
overviews/de_biochem.bmp&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Uwaga''', nie należy dodawać za dużo dźwięków, bo może się nie załadować mapka - serwer się wyłoży, szczególnie jest to zauważalne przy mapach typu de_aztec, de_oimec i innych, gdzie jest dużo ekstra modeli, tekstur, efektów itp, i wtedy limit 512 obiektów jest przekraczany i serwer się wykłada. Wtedy trzeba ręcznie usunąć nadmiarową ilość wpisów z pliku .res i spróbować załadować mapkę jeszce raz.&lt;br /&gt;
&lt;br /&gt;
'''NIE NALEŻY''' dodawać plików .wav typu multikill i headshot, jeśli używamy pluginów do AMX Mod czy AMX Mod X, które robią to za nas, np sank sounds, czy psycho sounds i temu podobne.&lt;br /&gt;
&lt;br /&gt;
== Dodawanie masowe plików ==&lt;br /&gt;
Masowe dodawanie plików .wav do zassania. Czyli mamy własne dźwięki i chcemy dodać do wszelkich map na jakich gramy aby na pewno były ściągalne.&lt;br /&gt;
&lt;br /&gt;
Dodajemy listę plików do pliku lista.rfa&lt;br /&gt;
na przykład&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sound/misc/dominating.wav&lt;br /&gt;
sound/misc/firstblood.wav&lt;br /&gt;
sound/misc/headshot.wav&lt;br /&gt;
sound/misc/holyshit.wav&lt;br /&gt;
sound/misc/holyshit_q3.wav&lt;br /&gt;
sound/misc/humiliation.wav&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Odpalamy resgen z dodatkowym parametrem -a lista.rfa, aby stworzyć pliki .res oraz aby zawierały naszą listę dodatkowych zasobów:&lt;br /&gt;
&lt;br /&gt;
 resgen -t -d maps -o -e -a lista.rfa&lt;br /&gt;
&lt;br /&gt;
Od tego momentu wszelkie pliki .res powinny mieć dodatkowo nasze dźwięki (i inne rzeczy) dodane, i powinnny się ściągać z serwera, jeśli klient na to pozwala.&lt;br /&gt;
&lt;br /&gt;
== Problemy ==&lt;br /&gt;
Resgen nie dodaje overview&lt;br /&gt;
Wiem, że poprzednie wersje resgen'a mialy błąd i w ogóle nie dodawały plików overview, wtedy trzeba dorwać nowsza wersje resgen'a, albo obejść problem - można overview dodać ręczne, nie mówiąc o tym ze najpierw trzeba dostać/zrobić pliki overview, ale i tak z tego trybu pewnie korzysta maks 5% graczy i to tylko wtedy gdy widok mapki nie jest zablokowany.&lt;br /&gt;
&lt;br /&gt;
== Skrypt multiRes (win) ==&lt;br /&gt;
Przy 20 mapach utworzenie ręcznie plików resource troszkę czasu zajmuje, ale jest to osiągalne, ale w przypadku 100, 200 lub ~1700 map jest to awykonalne. Poniżej prezentuje dwa proste skrypty do utworzenia plików resource (res), także plików konfiguracji mapconfig, dla wszystkich posiadanych map, włączenie z overviews.&lt;br /&gt;
Pliki należy zapisać/utworzyć w wraz z programem ResGen.exe w katalogu cstrike. Działanie jest proste:&lt;br /&gt;
1.cmd tworzy listę map z katalogu /maps zapisuje je odpowiednio przetworzone w pliku 2.cmd&lt;br /&gt;
res.cmd tworzy pliki resource (.res), [http://wiki.alliedmods.net/Configuring_AMX_Mod_X#Map_Specific_Plugins AMXModX mapconfig dla pluginów] (.ini) oraz [http://wiki.alliedmods.net/Configuring_AMX_Mod_X#Map_Config_Files AMXModX mapconfig dla cvarów] (.cfg), sprawdza czy istnieją podglądy mapy w katalogu overviews&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
zawartość pliku 1.cmd&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off &amp;gt; newfile &amp;amp; setLocal enableDELAYedexpansion &lt;br /&gt;
&lt;br /&gt;
dir maps\*.bsp /B &amp;gt;&amp;gt; 2.cmd&lt;br /&gt;
for /f &amp;quot;tokens=* delims= &amp;quot; %%a in ('echo 2.cmd') do ( &lt;br /&gt;
for /f &amp;quot;tokens=* delims= &amp;quot; %%t in (%%a) do ( &lt;br /&gt;
set S=%%t &lt;br /&gt;
&lt;br /&gt;
set S=!S:.bsp =! &lt;br /&gt;
&amp;gt;&amp;gt; newfile echo @call res.cmd !S! &lt;br /&gt;
) &lt;br /&gt;
copy newfile &amp;quot;%%a&amp;quot; &amp;gt; nul &lt;br /&gt;
) &lt;br /&gt;
del newfile &lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
zawartość pliku res.cmd&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
@echo off &amp;gt; newfile &amp;amp; setLocal enableDELAYedexpansion &lt;br /&gt;
&lt;br /&gt;
IF NOT EXIST maps\%1.bsp (&lt;br /&gt;
ECHO [ BLAD ] NIE MA TAKIEJ MAPY LUB UZYJ NAZWY MAPY BEZ ROZSZERZENIA &lt;br /&gt;
GOTO end&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
@echo RESOURCE DLA MAPY [ %1.bsp ] &amp;gt;&amp;gt; _lista&lt;br /&gt;
@resgen.exe -v -o -f maps\%1.bsp &amp;gt;&amp;gt; _lista&lt;br /&gt;
&lt;br /&gt;
cd maps&lt;br /&gt;
for /f &amp;quot;tokens=* delims= &amp;quot; %%a in ('echo %1.res') do ( &lt;br /&gt;
for /f &amp;quot;tokens=* delims= &amp;quot; %%t in (%%a) do ( &lt;br /&gt;
set S=%%t &lt;br /&gt;
&lt;br /&gt;
REM nie ma sensu by w pliku resource sprawdzało standardowe pliki tekstur w hl i cs16&lt;br /&gt;
&lt;br /&gt;
set S=!S:models/player=//-! &lt;br /&gt;
set S=!S:ajawad.wad=//-! &lt;br /&gt;
set S=!S:cached.wad=//-! &lt;br /&gt;
set S=!S:chateau.wad=//-!&lt;br /&gt;
set S=!S:cs_747.wad=//-!&lt;br /&gt;
set S=!S:cs_assault.wad=//-!&lt;br /&gt;
set S=!S:cs_bdog.wad=//-!&lt;br /&gt;
set S=!S:cs_cbble.wad=//-!&lt;br /&gt;
set S=!S:cs_dust.wad=//-!&lt;br /&gt;
set S=!S:cs_havana.WAD=//-!&lt;br /&gt;
set S=!S:cs_office.wad=//-!&lt;br /&gt;
set S=!S:cstraining.wad=//-!&lt;br /&gt;
set S=!S:cstrike.wad=//-!&lt;br /&gt;
set S=!S:de_airstrip.wad=//-!&lt;br /&gt;
set S=!S:de_aztec.wad=//-!&lt;br /&gt;
set S=!S:de_piranesi.wad=//-!&lt;br /&gt;
set S=!S:de_storm.wad=//-!&lt;br /&gt;
set S=!S:de_vertigo.wad=//-!&lt;br /&gt;
set S=!S:decals.wad=//-!&lt;br /&gt;
set S=!S:iga_static.wad=//-!&lt;br /&gt;
set S=!S:itsitaly.wad=//-!&lt;br /&gt;
set S=!S:n0th1ng.wad=//-!&lt;br /&gt;
set S=!S:prodigy.wad=//-!&lt;br /&gt;
set S=!S:torntextures.wad=//-!&lt;br /&gt;
set S=!S:tswad.wad=//-!&lt;br /&gt;
set S=!S:gfx.wad=//-!&lt;br /&gt;
set S=!S:halflife.wad=//-!&lt;br /&gt;
set S=!S:liquids.wad=//-!&lt;br /&gt;
set S=!S:spraypaint.wad=//-!&lt;br /&gt;
set S=!S:xeno.wad=//-!&lt;br /&gt;
&amp;gt;&amp;gt; newfile echo !S! &lt;br /&gt;
) &lt;br /&gt;
copy newfile &amp;quot;%%a&amp;quot; &amp;gt; nul &lt;br /&gt;
&lt;br /&gt;
) &lt;br /&gt;
&lt;br /&gt;
rem dodawanie widoków&lt;br /&gt;
IF EXIST ..\overviews\%1.bmp ECHO overviews/%1.bmp &amp;gt;&amp;gt; %1.res&lt;br /&gt;
IF EXIST ..\overviews\%1.tga ECHO overviews/%1.tga &amp;gt;&amp;gt; %1.res&lt;br /&gt;
IF EXIST ..\overviews\%1.txt ECHO overviews/%1.txt &amp;gt;&amp;gt; %1.res&lt;br /&gt;
&lt;br /&gt;
rem sprawdzanie poprawności oryginalnych plików np smoke&lt;br /&gt;
ECHO sprites/gas_puff_01.spr &amp;gt;&amp;gt; %1.res&lt;br /&gt;
ECHO sprites/smokepuff.spr &amp;gt;&amp;gt; %1.res&lt;br /&gt;
del newfile &lt;br /&gt;
cd ..&lt;br /&gt;
del newfile &lt;br /&gt;
&lt;br /&gt;
rem mapconfig pluginy on off&lt;br /&gt;
IF NOT EXIST addons\nul md addons\amxmodx\configs\maps\&lt;br /&gt;
echo MAPCONFIG [%1.BSP]&lt;br /&gt;
cd addons\amxmodx\configs\maps\&lt;br /&gt;
echo ;; MAPCONFIG PLUGINS INI [%1.BSP] &amp;gt;&amp;gt; plugins-%1.ini&lt;br /&gt;
echo ;; http://wiki.alliedmods.net/Configuring_AMX_Mod_X#Map_Specific_Plugins &amp;gt;&amp;gt; plugins-%1.ini&lt;br /&gt;
&lt;br /&gt;
rem mapconfig cvar&lt;br /&gt;
echo ;; MAPCONFIG CVAR CFG [%1.BSP] &amp;gt;&amp;gt; %1.cfg&lt;br /&gt;
echo ;; http://wiki.alliedmods.net/Configuring_AMX_Mod_X#Map_Config_Files &amp;gt;&amp;gt; %1.cfg&lt;br /&gt;
echo amx_restrict on shield &amp;gt;&amp;gt; %1.cfg&lt;br /&gt;
echo amx_pausecfg stop M_Antirusher_2.6.amxx &amp;gt;&amp;gt; %1.cfg&lt;br /&gt;
cd ..&lt;br /&gt;
cd ..&lt;br /&gt;
cd ..&lt;br /&gt;
cd ..&lt;br /&gt;
&lt;br /&gt;
:end &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
kolejność uruchamiana:&lt;br /&gt;
1.cmd po zakończeniu&lt;br /&gt;
2.cmd&lt;br /&gt;
&lt;br /&gt;
dla pojedynczej mapy można użyć polecenia res.cmd &amp;lt;nazwamapy&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[kategoria:HLDS]]&lt;br /&gt;
[[kategoria:Oprogramowanie]]&lt;/div&gt;</summary>
		<author><name>Klin</name></author>	</entry>

	</feed>