<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://stalkerin.gameru.net/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://stalkerin.gameru.net/wiki/index.php?action=history&amp;feed=atom&amp;title=XrCompress.exe</id>
		<title>XrCompress.exe - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://stalkerin.gameru.net/wiki/index.php?action=history&amp;feed=atom&amp;title=XrCompress.exe"/>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=XrCompress.exe&amp;action=history"/>
		<updated>2026-04-29T07:46:19Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=XrCompress.exe&amp;diff=11627&amp;oldid=prev</id>
		<title>RedPython: небольшая методичка по использованию пакера</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=XrCompress.exe&amp;diff=11627&amp;oldid=prev"/>
				<updated>2011-10-16T14:15:30Z</updated>
		
		<summary type="html">&lt;p&gt;небольшая методичка по использованию пакера&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Справка=&lt;br /&gt;
==Паковка ресурсов==&lt;br /&gt;
&lt;br /&gt;
Команда:&lt;br /&gt;
&amp;lt;dos&amp;gt; xrCompress.exe &amp;lt;data_dir&amp;gt; -ltx &amp;lt;file_name.ltx&amp;gt; [options] &amp;lt;/dos&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Опции могут быть следующими:&lt;br /&gt;
* ''' -diff /? ''' (опция для получения информации о созданных различиях)&lt;br /&gt;
* ''' -fast '''	(быстрое сжатие)&lt;br /&gt;
* ''' -store ''' (сохранять файлы без сжатия)&lt;br /&gt;
* ''' -ltx &amp;lt;file_name.ltx&amp;gt; ''' (конфиг с путями для пакуемых файлов)&lt;br /&gt;
&lt;br /&gt;
Формат LTX:&lt;br /&gt;
&amp;lt;ini&amp;gt;[config]&lt;br /&gt;
;&amp;lt;path&amp;gt;  = &amp;lt;recurse&amp;gt;&lt;br /&gt;
.\       = false&lt;br /&gt;
textures = true &amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Получение различий (создание патча)==&lt;br /&gt;
&lt;br /&gt;
Команда:&lt;br /&gt;
&amp;lt;dos&amp;gt; xrCompress.exe -diff &amp;lt;new_data&amp;gt; &amp;lt;old_data&amp;gt; -out &amp;lt;diff_resulf&amp;gt; [options] &amp;lt;/dos&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Параметры '''&amp;lt;new_data&amp;gt;''', '''&amp;lt;old_data&amp;gt;''' и '''&amp;lt;diff_resulf&amp;gt;''' должны быть именами каталогов.&amp;lt;br /&amp;gt;&lt;br /&gt;
Опции могут быть следующими:&lt;br /&gt;
* ''' -nofileage ''' (не выполнять проверку возраста файлов)&lt;br /&gt;
* ''' -crc ''' (не выполнять проверку CRC32)&lt;br /&gt;
* ''' -nobinary ''' (не выполнять проверку бинарных файлов)&lt;br /&gt;
* ''' -nosize ''' (не выполнять проверку размера файлов)&lt;br /&gt;
&lt;br /&gt;
''Заметка: компрессором из 2215 можно было распаковывать архивы некоторых билдов; в современных версиях распаковщик не работает.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Практика=&lt;br /&gt;
==Паковка ресурсов==&lt;br /&gt;
&lt;br /&gt;
'''1.''' Создадим пакетный файл следующего вида:&lt;br /&gt;
&amp;lt;dos&amp;gt; @start /wait bin\designer\compressor\xrCompress.exe gamedata -ltx datapack.ltx&lt;br /&gt;
 move /Y X:\engine.log X:\logs\xrCompress_%username%.log&lt;br /&gt;
 move /Y X:\xrCompress_*.mdmp X:\logs\&lt;br /&gt;
 pause &amp;lt;/dos&amp;gt;&lt;br /&gt;
Разберем вкратце батник:&lt;br /&gt;
- первая строчка запускает компрессор с задержкой (параметры wait и /Y применены из-за недоработанности пакера);&lt;br /&gt;
- вторая перемещает и переименует лог-файл (опять же из-за сырости пакера - лог остается в корневой папке вместо $logs$);&lt;br /&gt;
- третья перемещает дамп в папку $logs$ по вышеуказанной причине.&lt;br /&gt;
Собственно, для создания архива необходима только первая строка, остальное только для поддержания порядка в рабочей директории.&lt;br /&gt;
&lt;br /&gt;
'''2.''' Создадим LTX примерно следующего содержания:&lt;br /&gt;
&amp;lt;ini&amp;gt;[options]&lt;br /&gt;
exclude_exts = *.ncb,*.sln,*.vcproj,*.old,*.rc,*.scc,*.vssscc,*.bmp,*.smf,*.uvm,*.prj,*.tga,*.txt,*.log,*.tmp&lt;br /&gt;
[include_folders]&lt;br /&gt;
;&amp;lt;path&amp;gt;       = &amp;lt;recurse&amp;gt;&lt;br /&gt;
.\            = false&lt;br /&gt;
configs       = true&lt;br /&gt;
[exclude_folders]&lt;br /&gt;
textures\ed   = true&lt;br /&gt;
&lt;br /&gt;
[header]&lt;br /&gt;
auto_load    = true&lt;br /&gt;
level_name   = single&lt;br /&gt;
level_ver    = 1.0&lt;br /&gt;
entry_point  = $fs_root$\gamedata\&lt;br /&gt;
creator      = &amp;quot;gsc game world&amp;quot;&lt;br /&gt;
link         = &amp;quot;www.gsc-game.com&amp;quot; &amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тут все понятно - в секциях указываются учитываемые/неучитываемые файлы и папки.&amp;lt;br /&amp;gt;&lt;br /&gt;
В заголовке указывается тип архива, версия, точка входа и возможность автозагрузки при старте игры:&amp;lt;br /&amp;gt;&lt;br /&gt;
- для одиночной игры - single, автозагрузка разрешена;&amp;lt;br /&amp;gt;&lt;br /&gt;
- для сетевой должен соответствовать имени карты, автозагрузка запрещена.&amp;lt;br /&amp;gt;&lt;br /&gt;
С вышеуказанным конфигом будет создан архив gamedata.pack_#0, содержащий *.xr-файлы и конфиги из папки gamedata. Теперь его нужно переименовать в ''gamedata.dbNN'', где NN - порядковый номер архива, и отправить в папку с игрой.&lt;br /&gt;
&lt;br /&gt;
==Создание патча==&lt;br /&gt;
Команда:&lt;br /&gt;
&amp;lt;dos&amp;gt;@start /wait bin\designer\compressor\xrCompress.exe -diff gamedata gamedata_old -out patch_%date%&lt;br /&gt;
move /Y X:\engine.log X:\logs\xrCompress_%username%.log&lt;br /&gt;
move /Y X:\xrCompress_*.mdmp X:\logs\&lt;br /&gt;
pause&amp;lt;/dos&amp;gt;&lt;br /&gt;
В ''gamedata'' лежат файлы, с которыми работает модер, в ''gamedata_old'' - оригинальные ресурсы игры. На выходе получаем папку с нашим модом/патчем (''patch_%date%''), готовую к паковке.&lt;br /&gt;
&lt;br /&gt;
[[Категория:Программы]]&lt;/div&gt;</summary>
		<author><name>RedPython</name></author>	</entry>

	</feed>