<?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/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=95.24.158.131&amp;*</id>
		<title>S.T.A.L.K.E.R. Inside Wiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://stalkerin.gameru.net/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=95.24.158.131&amp;*"/>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/95.24.158.131"/>
		<updated>2026-04-29T13:41:15Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=DB-%D0%B0%D1%80%D1%85%D0%B8%D0%B2%D1%8B</id>
		<title>DB-архивы</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=DB-%D0%B0%D1%80%D1%85%D0%B8%D0%B2%D1%8B"/>
				<updated>2010-02-23T20:55:42Z</updated>
		
		<summary type="html">&lt;p&gt;95.24.158.131: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Формат .db архивов финальной версии игры==&lt;br /&gt;
&lt;br /&gt;
'''Формат блока хидера следующий:'''&lt;br /&gt;
&lt;br /&gt;
'''Длина имени''' - беззнаковое 2 байт&lt;br /&gt;
&lt;br /&gt;
'''Размер файла''' - беззнаковое 4 байт&lt;br /&gt;
&lt;br /&gt;
'''Размер сжатого''' - беззнаковое 4 байт&lt;br /&gt;
&lt;br /&gt;
'''crc файла''' - беззнаковое 4 байт&lt;br /&gt;
&lt;br /&gt;
Далее идёт имя файла размер = Длине имени(смотрим выше)&lt;br /&gt;
&lt;br /&gt;
'''Смещение в файле''' - беззнаковое 4 байт&lt;br /&gt;
&lt;br /&gt;
+ все это повторяется для всех фаилов&lt;br /&gt;
&lt;br /&gt;
===Как найти нужный чанк(блоки данных в файле):===&lt;br /&gt;
&lt;br /&gt;
С начала файла читаем 4 байта - id блока, след. 4 байта - размер блока.&lt;br /&gt;
&lt;br /&gt;
Ну, а дальше не проблема пропустить блоки с ненужным id&lt;br /&gt;
&lt;br /&gt;
====Автор: Neo====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Дополнение:''&lt;br /&gt;
&lt;br /&gt;
Вообще файл состоит из индекса и данных. Индекс содержит названия файлов, смещения, и размеры. &lt;br /&gt;
В ТЧ индекс зашифрован разными ключами для разных версий игры. В ЧН он не зашифрован,&lt;br /&gt;
разница между англ и рус версиями архивов исключительно в коде которым зашифрован индекс.&lt;br /&gt;
В начале файла лежит таблица с путями. Она сжата и зашифрована, наподобии зипа, но только более быстрым алгоритмом.&lt;br /&gt;
&lt;br /&gt;
''Простой и быстрый шифр + быстрое сжатие по Хаффману'' - [http://smartmodmanager.codeplex.com/SourceControl/changeset/view/24173#122648]&lt;br /&gt;
&lt;br /&gt;
Код Хаффмана - общий алгоритм сжатия. Он слабый, но простой и быстрый. Есть туча разных реализаций. Одна из них используется в Сталкере. Для того, чтобы получить таблицу с путями нужна именна та же реализация.&lt;br /&gt;
&lt;br /&gt;
====Автор: Don Reba====&lt;br /&gt;
&lt;br /&gt;
''Для русской версии:''&lt;br /&gt;
&lt;br /&gt;
http://img301.imageshack.us/img301/5596/dbarchivesn.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ЗЫЫ:&lt;br /&gt;
&lt;br /&gt;
Для архивов 2002-2005 xrp/xp0 года юзался более упрощенный метод компрессии '''LZW''' - [http://www.compression.ru/arctest/descript/lzwcomp.htm]&lt;br /&gt;
&lt;br /&gt;
====Автор: Anonymous====&lt;br /&gt;
[[Категория:Форматы файлов]]&lt;/div&gt;</summary>
		<author><name>95.24.158.131</name></author>	</entry>

	</feed>