<?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=OlegatoR</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=OlegatoR"/>
		<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/OlegatoR"/>
		<updated>2026-06-09T16:18:06Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=Blender_X-Ray_%D0%9F%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD</id>
		<title>Blender X-Ray Плагин</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=Blender_X-Ray_%D0%9F%D0%BB%D0%B0%D0%B3%D0%B8%D0%BD"/>
				<updated>2018-07-06T14:11:54Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Описание ==&lt;br /&gt;
&lt;br /&gt;
blender-xray - плагин, реализующий импорт и экспорт различных форматов 3D моделей и анимаций движка X-Ray.&lt;br /&gt;
&lt;br /&gt;
Автор: igelbox&lt;br /&gt;
&lt;br /&gt;
Соавтор: Pavel_Blend&lt;br /&gt;
&lt;br /&gt;
Тестирование: igelbox, Pavel_Blend, ThirteenDogs, Vladimir Td&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
&lt;br /&gt;
=== Основной репозиторий на github.com ===&lt;br /&gt;
&lt;br /&gt;
Страница основного репозитория (автор igelbox): https://github.com/igelbox/blender-xray&lt;br /&gt;
&lt;br /&gt;
Скачать релиз: https://github.com/igelbox/blender-xray/releases&lt;br /&gt;
&lt;br /&gt;
Баг-трекер: https://github.com/igelbox/blender-xray/issues&lt;br /&gt;
&lt;br /&gt;
== Поддерживаемые форматы ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Расширение||Описание||Импорт||Экспорт||Замечания&lt;br /&gt;
|-&lt;br /&gt;
|.object||исходные модели||Да||Да||&lt;br /&gt;
|-&lt;br /&gt;
|.anm||анимации камеры||Да||Да||&lt;br /&gt;
|-&lt;br /&gt;
|.dm||детальные модели||Да||Да||&lt;br /&gt;
|-&lt;br /&gt;
|.details||детальные модели уровня||Да||Нет||&lt;br /&gt;
|-&lt;br /&gt;
|.skl||скелетная анимация||Да||Да||&lt;br /&gt;
|-&lt;br /&gt;
|.skls||скелетные анимации||Да||Да||&lt;br /&gt;
|-&lt;br /&gt;
|.ogf||игровые модели||Нет||Да||Чрезвычайно экспериментальный&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Установка ==&lt;br /&gt;
&lt;br /&gt;
1 - скачиваем последнюю версию плагина (файл: blender-xray-X.X.X.zip)&lt;br /&gt;
&lt;br /&gt;
2 - скачиваем, устанавливаем и запускаем свежую версию Blender&lt;br /&gt;
&lt;br /&gt;
3 - открываем окно настроек Blender User Preferences (через меню: File / User Preferences...)&lt;br /&gt;
&lt;br /&gt;
4 - переходим на вкладку Add-ons&lt;br /&gt;
&lt;br /&gt;
5 - нажимаем кнопку Install from File... (внизу окна)&lt;br /&gt;
&lt;br /&gt;
6 - и выбираем, ранее скачанный, файл blender-xray-X.X.X.zip&lt;br /&gt;
&lt;br /&gt;
7 - в строке поиска (в левой верхней части окна) вводим текст xray&lt;br /&gt;
&lt;br /&gt;
8 - в правой части окна находим плагин и ставим у него галочку (после этого его название перестанет быть серым)&lt;br /&gt;
&lt;br /&gt;
9 - раскрываем настройки плагина&lt;br /&gt;
&lt;br /&gt;
10 - задаём каталог с текстурами (это может быть каталог textures из SDK или из распакованной игры) и файлы с материалами и шейдерами&lt;br /&gt;
&lt;br /&gt;
11 - нажимаем кнопку Save User Settings (внизу окна)&lt;br /&gt;
&lt;br /&gt;
12 - Установка завершена. Пункты меню для импорта объектов и анимаций находятся в меню: File / Import.&lt;br /&gt;
&lt;br /&gt;
Если вы хотите пользоваться незарелизеной версией плагина, то скачайте zip архив нужного коммита в репозитории на GitHub.Com и скопируйте папку io_scene_xray из скачанного архива в ...\blender\2.7x\scripts\addons\ и проделайте все действия с пункта 3.&lt;br /&gt;
&lt;br /&gt;
== Возможности ==&lt;br /&gt;
&lt;br /&gt;
1 - Плагин позволяет импортировать, экспортировать и редактировать X-Ray-свойства моделей. Например, изменять тип объекта, указать User Data, Motion References, LOD References, имя и дата создателя модели, имя и дата модифицирующего модели, настройки материалов, параметры костей, параметры анимаций.&lt;br /&gt;
&lt;br /&gt;
2 - Список материалов, движковых и компиляторных шедеров читается из xr-файлов (пути к которым нужно указать в настройках плагина).&lt;br /&gt;
&lt;br /&gt;
3 - Поддерживается импорт и экспорт групп сглаживания в форматах Shadow of Chernobyl, Clear Sky / Call of Pripyat&lt;br /&gt;
&lt;br /&gt;
4 - Реализован массовый импорт и экспорт object файлов.&lt;br /&gt;
&lt;br /&gt;
5 - Возможность редактировать формы костей.&lt;br /&gt;
&lt;br /&gt;
6 - Поддерживается импорт большинства object файлов из слива исходников от GSC.&lt;br /&gt;
&lt;br /&gt;
7 - Экспорт с вложенными папками (с сохранением структуры каталогов).&lt;br /&gt;
&lt;br /&gt;
== Работа с анимациями ==&lt;br /&gt;
&lt;br /&gt;
=== Импорт ===&lt;br /&gt;
&lt;br /&gt;
Если анимации сохранены в формате skl или skls, то для их импорта нужно:&lt;br /&gt;
&lt;br /&gt;
Импортировать object файл, который использует данные анимации (File &amp;gt; Import &amp;gt; X-Ray object (.object)).&lt;br /&gt;
&lt;br /&gt;
Далее делаем активной (выбирать ПКМ) импортированную арматуру (скелет).&lt;br /&gt;
&lt;br /&gt;
И импортируем skl/skls анимации (File &amp;gt; Import &amp;gt; X-Ray skeletal animation (.skl, .skls)).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если анимации сохранены в самом object файле, то нужно импортировать данный object с включённым параметром Import Motions.&lt;br /&gt;
&lt;br /&gt;
=== Просмотр ===&lt;br /&gt;
&lt;br /&gt;
Для просмотра анимаций, нужно:&lt;br /&gt;
&lt;br /&gt;
В окне Dope Sheet переключить контекст редактирования на Action Editor.&lt;br /&gt;
&lt;br /&gt;
Выбрать арматуру (скелет), анимации которой нужно просмотреть.&lt;br /&gt;
&lt;br /&gt;
В окне Dope Sheet из выпадающего списка (рядом с кнопкой New) выбрать нужную анимацию.&lt;br /&gt;
&lt;br /&gt;
Нажать Play в окне Timeline.&lt;br /&gt;
&lt;br /&gt;
=== Видеоуроки ===&lt;br /&gt;
&lt;br /&gt;
[https://www.youtube.com/watch?v=dXaG51wC9Ts&amp;amp;t=1s  Настройка и экспорт объекта (YouTube)]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0</id>
		<title>Создание, описание особенностей и объяснение работы карт рельефа</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0"/>
				<updated>2017-03-12T11:21:40Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье я постараюсь объяснить создание правильных карт ''bump'' и ''bump#'' с помощью '''Adobe Photoshop''' и '''X-ray SDK'''. Думаю, с этими дополнительными составляющими текстурами много кто сталкивался, много кто искал пути правильного их создания. На самом деле, чтобы правильно создать бамп-карты, необходимо освоить как техническую сторону вопроса (делать, так сказать, &amp;quot;по науке&amp;quot;), так и практическую (различные методики работы в фотошопе, обработка текстуры, исправление возможных косяков и т. д.). В данной статье больше всего внимания будет уделяться именно первому пункту, ведь в любом деле лучше сначала выучить основы, а потом, в том числе, самостоятельно обучаясь, получить опыт в практике, улучшить свое мастерство.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Немного о структуре и стилистике статьи, дабы все было в дальнейшем более понятно'''&amp;lt;br&amp;gt;&lt;br /&gt;
Многие игровые текстуры (в Сталкере - все) находятся в формате ''RGB''. Если кто не знает, есть понятие &amp;quot;каналы&amp;quot;. Их вкладка в ФШ находится справа, ''&amp;quot;Слоев&amp;quot;''. В ''RGB'' это:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - red (красный)&lt;br /&gt;
G - green (зеленый)&lt;br /&gt;
B - blue (синий)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При их &amp;quot;смешивании&amp;quot;, получаем нормальную окраску изображения. В общем, указания по каналам в данной статье будут даваться в виде, как блок выше. &lt;br /&gt;
Иногда в RGB каналов больше (можете сами попробовать добавлять в фотошопе). В игре используется канал ''Альфа 1'' (его еще просто &amp;quot;Альфой&amp;quot; кличут). У него есть, разумеется, свои особые функции. Итого, вот так будут выглядеть указания по каналам:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;R - что должно быть на красном канале&lt;br /&gt;
G - что на зеленом&lt;br /&gt;
B - что на синем&lt;br /&gt;
Alpha - что на Альфе&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Статья разделена на три основные части:&amp;lt;br&amp;gt;&lt;br /&gt;
1. '''Теория'''. Здесь будут описаны сами карты ''bump'' и ''bump#'', а также некоторые другие рабочие карты и элементы (не забудьте заглянуть в подраздел ''&amp;quot;Мини-словарь терминов статьи&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
2. '''Работа в фотошопе'''. Описание действий в фотошопе, которые необходимы для подготовки элементов бампа.&amp;lt;br&amp;gt;&lt;br /&gt;
3. '''SDK'''. Завершающая часть работы по бампу. Здесь собираются, регистрируются, настраиваются составляющие бампа, а в последствии, - создаются ''bump'' и ''bump#''.&lt;br /&gt;
==Теория==&lt;br /&gt;
Для начала попытаюсь объяснить структуру основных карт и разобрать основные понятия статьи. Всё ниже написанное не обязательно верно на все 100%.&lt;br /&gt;
&lt;br /&gt;
===Height Map (карта высот)===&lt;br /&gt;
Карта высот - сугубо служебная карта в Сталкере. Как отдельная текстура не встречается, однако, если вы делаете карту нормалей в фотошопе, то для начала нужно будет создать или &amp;quot;запечь&amp;quot; в специальных программах карту высот. В карте высот все построено на белых (высоты), черных (впадины), серых (плюс-минус ровные плоскости) оттенках. В целом, в основном выходит, что основная часть изображения - серая, в выпуклых местах оно светлее, а на месте впадин - темнее.&lt;br /&gt;
&lt;br /&gt;
===Normal Map (карта нормалей)===&lt;br /&gt;
Карту нормалей можно получить следующими способами:&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с высокополигональной модели в 3д-редакторе, в роде '''3ds Max''', '''zBrush'''...&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот с помощью одного из плагинов для '''Photoshop''' (плагин NVIDIA, плагин PixPlant, плагин xNormal)&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот в спец-прогах ('''xNormal''', '''PixPlant''', '''CrazyBump''')&amp;lt;br&amp;gt;&lt;br /&gt;
Если разбирать по каналам схематически, то выглядит так:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - ось X - указывает нормали влево и вправо (горизонтальные)&lt;br /&gt;
G - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
B - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При включенном ''RGB'' на каналах, смотрится как текстура в синих, фиолетовых, сиреневых, даже иногда розовых цветах. Нормал мапу очень и очень рекомендуется создавать для бампа (тем более, если она с хай-поли модели), а не использовать сокращенный вариант с картой высот (об этом узнаете в разделе СДК ниже). Нормал мапа, собственно, и предает текстуре различных объемных черт. В дальнейшем, после сборки в СДК, карта станет частью ''bump''.&lt;br /&gt;
&lt;br /&gt;
===bump===&lt;br /&gt;
&lt;br /&gt;
Карта ''bump'' представляет собой обычную карту нормалей в формате A(BGR) (типично для формата сжатия DXT5_nm). Разработчики использовали такой порядок по очень простой причине - DXT компрессия гораздо меньше &amp;quot;портит&amp;quot; текстуру, так как альфа-канал не подвергается компресии и остается практически в исходном виде. Поясню: еще раз гляньте на каналы карты нормалей. А теперь представьте, что на пустое изображения с каналами RGBA поставили все ту же карту нормалей, только перевернутую по каналам. То есть наполнение R с карты нормалей перешло на канал Альфа (А) карты ''bump'', G перешло в B, B перешло в G. Что касается канала R в бампе, туда поставили ''Specular Map'' (карту бликов). О ней можете подробней почитать в мини-словаре терминов.&amp;lt;br&amp;gt;&lt;br /&gt;
Также хочу напомнить, что в своем полном виде карта ''bump'' создается из карты нормалей + текстурой с спекуляром на Альфе в СДК. Такая-вот текстурная солянка. Думаю, вы знаете, что она в игре делает, но если вы столкнулись с данными терминами первый раз, то все довольно просто: карта делает текстуру объекта более красивой, объемной, с выпуклостями и впадинами, добавляет или запрещает отражение текстурой света от солнца, лампы, фонарика и т. д. Вот, например, новенькому листу металла было бы неплохо придать возможность отражать блики, а кирпичной текстуре задать впадины между кирпичиками. А вот дереву, допустим, никаких отражений света не надо, хотя высоты (впадины и выпуклости) добавить таки можно. Еще замечу, что бампы не нужны для текстур партиклов, текстур интерфейса и еще ряда специфических изображений. К основной текстуре привязывается через файл '''текстура.thm'''. Но по поводу этого не беспокойтесь, ведь файлы thm появляется при создании бампа/подключении бампа к текстуре в СДК.&lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
[[Изображение:Argb.png|300px|thumb|right|Каналы в карте bump]]&lt;br /&gt;
&amp;lt;pre&amp;gt;R - Specular map - карта интенсивности блика&lt;br /&gt;
G - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
B - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
Alpha - ось X - указывает нормали влево и вправо (горизонтальные)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===bump#===&lt;br /&gt;
&lt;br /&gt;
''Bump#'' - очень интересная карта, назначение которой для многих непонятно. Так как нагуглить какую-либо информацию насчет правильного названия мне не удалось, я называю ее просто &amp;quot;Normal error map&amp;quot;. Не знаю, используются ли подобные технологии в других играх, но встретить ее где-либо, кроме сталкера, мне не удалось. Эта карта &amp;quot;фиксит&amp;quot; ошибки сжатия DXT у бампа и генерируется только с помощью СДК, поэтому всякие непонятные действия некоторых пользователей, вроде вставки вместо нее обычной или обесцвеченной карты нормалей, а также описанного в статье Argus'a заливания серым со вставкой в альфа-канал карты высот, использовать нельзя. Выглядит как серое зашумленное изображение. Еще раз напоминаю, ''bump#'' создается &amp;lt;u&amp;gt;автоматически&amp;lt;/u&amp;gt; при генерировании ''bump'' в СДК. &lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - ошибки оси X карты нормалей&lt;br /&gt;
G - ошибки оси Y карты нормалей&lt;br /&gt;
B - ошибки оси Z карты нормалей&lt;br /&gt;
Alpha - карта высот; используется для параллакса, если использование оного было включено при настройке текстуры&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для сравнения:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:W.jpg|center|250px|thumb|C bump#]]||[[Изображение:Wo.jpg|center|250px|thumb|Без bump#, заметны артефакты]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Мини-словарь терминов===&lt;br /&gt;
Здесь будет находиться описание некоторых терминов, которые встречаются в статье.&lt;br /&gt;
'''Diffuse texture ака диффузная текстура ака диффуз''' - основная исходная текстура, для которой делаются дополнительные карты.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Specular Map ака карта бликов''' - карта, которая в последствии работы в СДК станет частью бампа (на красном канале). Отвечает за отражение текстурой света. Изготавливается либо с диффуза в Фотошопе, либо параллельно с диффузом в 3д-редакторе. На карте черным (и оттенками черного) обозначаются места, которые не будут отсвечивать свет), а белым (и оттенками) - которые будут отсвечивать.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Работа в фотошопе==&lt;br /&gt;
Здесь также понадобится '''NormalMapFilter''' от '''nVidia''', полагаю, у вас он уже установлен, так как он идет в комплекте с dds-плагином или другой удобный плагин (озвучены выше, в теории карты нормалей).&lt;br /&gt;
Все файлы сохраняются в tga 24 bits/pixel (если нету альфа-канала) или 32 bits/pixel (если есть альфа-канал). Перед сохранением следует перевести изображение из 16-битного в 8-битное.  &lt;br /&gt;
&lt;br /&gt;
===Карта высот===&lt;br /&gt;
&lt;br /&gt;
На карте высот белым цветом обозначены выпуклости, черным - впадины. Если бамп делается для текстур окружения, то можно начать работу с оригинальной (диффузной) текстуры, если же бамп делается для персонажа, то такой способ обычно неприемлем, зачастую из-за камуфляжа, который никак не должен сказываться на рельефе ткани (хотя, в принципе, если есть определенный опыт работы, прямые руки и старание, то подобных косяков можно избежать). &lt;br /&gt;
По сути, создание карты высот - процесс творческий, могу дать лишь несколько советов:&lt;br /&gt;
*Над картой высот работа должна проводиться строго в 16bits, причем с самого начала до финального экспорта в SDK[[Изображение:16bits.PNG|160px|thumb|right|Перевод в 16-битное изображение]]&lt;br /&gt;
*Качественного результата не будет, если просто взять и засунуть диффузную текстуру в генератор, не делайте этого. Придется тщательно поработать над картой высот.&lt;br /&gt;
*Не обязательно пытаться показать на карте высот все детали и рельеф сразу, их можно добавить позднее, когда будет сгенерирована карта нормалей.&lt;br /&gt;
[[Изображение:Увеличение_детализации.png|300px|thumb|left|Пример добавления деталей]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#696969&amp;quot;&amp;gt;(Пример сделан прямо во время написания статьи)&amp;lt;/span&amp;gt;&lt;br /&gt;
*Для карты высот, если делаете ее с диффуза, можно взять один из каналов ''RGB'' диффузной текстуры или же взять обесцвеченную. При первом варианте, выберите желаемый канал, выделяйте изображения, копируйте, вставляйте его в новый документ. Новое изображение будет в режиме ''&amp;quot;Градация серого&amp;quot;''. Рекомендую перевести опять в ''RGB'', так как не все плагины и фильтры читают ''&amp;quot;Градацию&amp;quot;''. При втором варианте, просто создайте дубликат изображения и нажмите ''Ctrl+Shift+U'' (''&amp;quot;Обесцветить&amp;quot;'').&lt;br /&gt;
*На текстуре карты высот можно сделать слой поверх фонового, на который нужно скопировать обесцвеченную инвертированную исходную текстуру. Звучит не очень, но это все не сложно. Берем диффуз, нажимаем ''Ctrl+I'' (инвертируем). Потом обесцвечиваем, как показано выше. Копируем на новый слой карты высот. Режим наложения выставляем ''&amp;quot;Перекрытие&amp;quot;'' (''&amp;quot;Overlay&amp;quot;''). Дальше еще можно сделать слой более прозрачным. В целом, смотрите, чтоб текстура была сбалансированной в плане плоскостей. Ровная часть должна быть заполнена серым оттенком.&lt;br /&gt;
*Очень пригодятся в этом случае инструменты ''&amp;quot;Осветлитель&amp;quot;'' и ''&amp;quot;Затемнитель&amp;quot;''. &lt;br /&gt;
*Поверх всего можно добавить еще один слой, на котором будете использовать инструменты в роде &amp;quot;Кисти&amp;quot;.&lt;br /&gt;
====Metro 2033 (если кому интересно)====&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Metro_example.png|300px|thumb|left|Пример получаемой карты нормалей из Metro 2033]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
В метро вместо карт нормалей, как обычно бывает в большинстве игр, используется карта высот - файлы с постфиксом ''_bump''. Они есть только в том случае, если вы распаковывали игру самостоятельно, большая часть сборщиков &amp;quot;Архивов моделей&amp;quot; их в архив не добавляет.&lt;br /&gt;
&amp;quot;Состав&amp;quot; карты высот Метро 2033:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - пустой канал&lt;br /&gt;
G - Specular map - карта интенсивности блика&lt;br /&gt;
B - пустой канал&lt;br /&gt;
Alpha - карта высот&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
Создание происходит следующим образом: берем карту высот, открываем фильтр, задаем настройки по усмотрению. Далее получаем готовую карту нормалей. Нужно осмотреть карту, чтоб там не было мелких не нужных горбиков и прочих недостатков. Скорее всего, все можно будет решить размытием в некоторых местах. Еще, как вариант, чудесная методика размытия, при которой изображение все равно остается более четким:&amp;lt;br&amp;gt;&lt;br /&gt;
1. Дублируем фоновый слой.&amp;lt;br&amp;gt;&lt;br /&gt;
2. Дубликату выставляем режим ''&amp;quot;Перекрытие&amp;quot;''.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Применяем один из фильтров размытия (к примеру, ''&amp;quot;Размытие по гауссу&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
4. Если надо, дублируем этот слой еще пару раз.&lt;br /&gt;
&lt;br /&gt;
===Specular Map===&lt;br /&gt;
Данную карту создавать не сложно: взять обесцвеченный диффуз и обработать темным оттенком те регионы, которые не будут отражать свет, а светлым - которые будут. Чем интенсивней оттенок, тем сильнее эффект.&lt;br /&gt;
&lt;br /&gt;
==SDK==&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
&lt;br /&gt;
При наличии уже готовой карты нормалей, изготовленной вами, из другой игры, '''zBrush''' или любой другой программы высокополигонального 3d моделирования, остается только добавить ее в '''SDK'''. ДЛя чего регистрировать в СДК? Для того, чтоб потом совместить нормал мапу с заготовкой для бампа и получить бамп.&lt;br /&gt;
Параметры:&lt;br /&gt;
*'''0.4''':&lt;br /&gt;
Type: 2D Texture, Format: 32 bit (8:8:8:8), MipMap Filter: Kaiser (здесь уже по желанию, я всегда использую Kaiser)&lt;br /&gt;
[[Изображение:0.4_nmap.png|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
*'''0.5/0.6, 0.7''':&lt;br /&gt;
Type: Normal Map, MipMap Filter: Kaiser&lt;br /&gt;
[[Изображение:0.5-0.7_nmap.png‎|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
===Bump===&lt;br /&gt;
&lt;br /&gt;
С использованием отдельной карты нормалей bump карта изготавливается очень просто (заготовку для бампа лучше назвать '''текстура_bump.tga''' и поместить в '''editors/import'''):&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - залить серым цветом, RGB = 128,128,128&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Параметры добавления в SDK не зависят от версии:&amp;lt;br/&amp;gt;&lt;br /&gt;
Type: Bump Map, в Special Normal Map указываем добавленную ранее карту нормалей.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_st.png‎|150px|thumb|left|В фотошопе]]||[[Изображение:0.4_bump.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
Если же вдруг возникло желание обойтись без дополнительной карты нормалей, то добавление в SDK и каналы меняются:&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - карта высот&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Это единственный вариант, когда параметр ''Virtual height'' действительно влияет на интенсивность получаемого бампа.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_map_wo_n.png|200px|thumb|left|В фотошопе]]||[[Изображение:Bump_wo_n_sdk.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==В заключение + дополнительная информация==&lt;br /&gt;
Пара полезных ссылок.&amp;lt;br&amp;gt;&lt;br /&gt;
1. [[Файл_формата_.thm]] - статья про привязку бампа к текстуре.&amp;lt;br&amp;gt;&lt;br /&gt;
2. [https://www.youtube.com/watch?v=TrkOAIZqKTA Отличный видеоурок Андрея Непряхина (новый)]&amp;lt;br&amp;gt;&lt;br /&gt;
Всем спасибо за внимание! Успехов!&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
'''lafugix''' - создатель статьи&amp;lt;br&amp;gt;&lt;br /&gt;
'''FantomICW''' - ремейк статьи (переписал на более понятный язык, дополнил материал)&lt;br /&gt;
[[Категория:Texturing]][[Категория:SDK]][[Категория:SDK_CS]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BE%D0%BF%D1%86%D0%B8%D0%B9</id>
		<title>Добавление новых графических опций</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D0%BE%D0%BF%D1%86%D0%B8%D0%B9"/>
				<updated>2017-03-12T11:16:11Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Будем учиться добавлять новые опции в меню графики. &lt;br /&gt;
&amp;lt;br /&amp;gt;Нам понадобятся файлы:&lt;br /&gt;
&amp;lt;br /&amp;gt;'''user.ltx'''&lt;br /&gt;
&amp;lt;br /&amp;gt;'''ui_mm_opt_video.script'''&lt;br /&gt;
&amp;lt;br /&amp;gt;'''ui_mm_opt_video_adv.script'''&lt;br /&gt;
&amp;lt;br /&amp;gt;'''ui_mm_opt.xml'''&lt;br /&gt;
&amp;lt;br /&amp;gt;'''ui_st_mm.xml'''&lt;br /&gt;
&lt;br /&gt;
Для начала, идём в '''user.ltx''' и ищем там графические параметры. &lt;br /&gt;
&amp;lt;pre&amp;gt;_preset Extreme&lt;br /&gt;
ai_use_torch_dynamic_lights on&lt;br /&gt;
unbindall&lt;br /&gt;
bind left kLEFT&lt;br /&gt;
bind right kRIGHT&lt;br /&gt;
bind up kUP&lt;br /&gt;
bind down kDOWN&lt;br /&gt;
bind jump kSPACE&lt;br /&gt;
bind crouch kLCONTROL&lt;br /&gt;
bind accel kLSHIFT&lt;br /&gt;
bind sprint_toggle kX&lt;br /&gt;
bind forward kW&lt;br /&gt;
bind back kS&lt;br /&gt;
bind lstrafe kA&lt;br /&gt;
bind rstrafe kD&lt;br /&gt;
bind llookout kQ&lt;br /&gt;
bind rlookout kE&lt;br /&gt;
bind cam_zoom_in kADD&lt;br /&gt;
bind cam_zoom_out kSUBTRACT&lt;br /&gt;
bind torch kL&lt;br /&gt;
bind night_vision kN&lt;br /&gt;
bind wpn_1 k1&lt;br /&gt;
bind wpn_2 k2&lt;br /&gt;
bind wpn_3 k3&lt;br /&gt;
bind wpn_4 k4&lt;br /&gt;
bind wpn_5 k5&lt;br /&gt;
bind wpn_6 k6&lt;br /&gt;
bind artefact k7&lt;br /&gt;
bind wpn_next kY&lt;br /&gt;
bind wpn_fire mouse1&lt;br /&gt;
bind wpn_zoom mouse2&lt;br /&gt;
bind wpn_reload kR&lt;br /&gt;
bind wpn_func kV&lt;br /&gt;
bind wpn_firemode_prev k9&lt;br /&gt;
bind wpn_firemode_next k0&lt;br /&gt;
bind pause kPAUSE&lt;br /&gt;
bind drop kG&lt;br /&gt;
bind use kF&lt;br /&gt;
bind scores kTAB&lt;br /&gt;
bind chat kCOMMA&lt;br /&gt;
bind chat_team kPERIOD&lt;br /&gt;
bind screenshot kF12&lt;br /&gt;
bind quit kESCAPE&lt;br /&gt;
bind console kGRAVE&lt;br /&gt;
bind inventory kI&lt;br /&gt;
bind buy_menu kB&lt;br /&gt;
bind skin_menu kO&lt;br /&gt;
bind team_menu kU&lt;br /&gt;
bind active_jobs kP&lt;br /&gt;
bind map kM&lt;br /&gt;
bind contacts kH&lt;br /&gt;
bind vote_begin kF5&lt;br /&gt;
bind vote kF6&lt;br /&gt;
bind vote_yes kF7&lt;br /&gt;
bind vote_no kF8&lt;br /&gt;
bind speech_menu_0 kC&lt;br /&gt;
bind speech_menu_1 kZ&lt;br /&gt;
bind use_bandage kRBRACKET&lt;br /&gt;
bind use_medkit kLBRACKET&lt;br /&gt;
bind quick_save kF6&lt;br /&gt;
bind quick_load kF7&lt;br /&gt;
cam_inert 0.&lt;br /&gt;
cam_slide_inert 0.25&lt;br /&gt;
cl_cod_pickup_mode 1&lt;br /&gt;
cl_dynamiccrosshair on&lt;br /&gt;
g_always_run on&lt;br /&gt;
g_autopickup on&lt;br /&gt;
g_backrun on&lt;br /&gt;
g_corpsenum 10&lt;br /&gt;
g_eventdelay 0&lt;br /&gt;
g_game_difficulty gd_novice&lt;br /&gt;
hud_crosshair on&lt;br /&gt;
hud_crosshair_dist off&lt;br /&gt;
hud_info on&lt;br /&gt;
hud_weapon on&lt;br /&gt;
load_last_save all&lt;br /&gt;
mm_mm_net_srv_dedicated off&lt;br /&gt;
mm_net_con_publicserver off&lt;br /&gt;
mm_net_con_spectator 20&lt;br /&gt;
mm_net_con_spectator_on off&lt;br /&gt;
mm_net_filter_empty on&lt;br /&gt;
mm_net_filter_full on&lt;br /&gt;
mm_net_filter_listen on&lt;br /&gt;
mm_net_filter_pass on&lt;br /&gt;
mm_net_filter_wo_ff on&lt;br /&gt;
mm_net_filter_wo_pass on&lt;br /&gt;
mm_net_srv_gamemode st_deathmatch&lt;br /&gt;
mm_net_srv_maxplayers 32&lt;br /&gt;
mm_net_srv_name MICROSOF-80B663&lt;br /&gt;
mm_net_srv_reinforcement_type 1&lt;br /&gt;
mm_net_weather_rateofchange 1.&lt;br /&gt;
mouse_invert off&lt;br /&gt;
mouse_sens 0.12&lt;br /&gt;
net_cl_icurvesize 0&lt;br /&gt;
net_cl_icurvetype 0&lt;br /&gt;
net_cl_interpolation 0.&lt;br /&gt;
net_cl_log_data off&lt;br /&gt;
net_dbg_dump_export_obj 0&lt;br /&gt;
net_dbg_dump_import_obj 0&lt;br /&gt;
net_dbg_dump_update_read 0&lt;br /&gt;
net_dbg_dump_update_write 0&lt;br /&gt;
net_dedicated_sleep 5&lt;br /&gt;
net_sv_gpmode 0&lt;br /&gt;
net_sv_log_data off&lt;br /&gt;
net_sv_pending_lim 3&lt;br /&gt;
net_sv_update_rate 30&lt;br /&gt;
ph_frequency 100.00000&lt;br /&gt;
ph_iterations 38&lt;br /&gt;
r1_dlights on&lt;br /&gt;
r1_dlights_clip 75.&lt;br /&gt;
r1_glows_per_frame 16&lt;br /&gt;
r1_lmodel_lerp 0.1&lt;br /&gt;
r1_pps_u 0.&lt;br /&gt;
r1_pps_v 0.&lt;br /&gt;
r1_ssa_lod_a 64.&lt;br /&gt;
r1_ssa_lod_b 48.&lt;br /&gt;
r1_tf_mipbias 0.&lt;br /&gt;
r2_aa off&lt;br /&gt;
r2_aa_break 0.800000,0.500000,0.000000&lt;br /&gt;
r2_aa_kernel 0.5&lt;br /&gt;
r2_aa_weight 0.250000,0.250000,0.000000&lt;br /&gt;
r2_allow_r1_lights off&lt;br /&gt;
r2_gi off&lt;br /&gt;
r2_gi_clip 0.001&lt;br /&gt;
r2_gi_depth 1&lt;br /&gt;
r2_gi_photons 16&lt;br /&gt;
r2_gi_refl 0.9&lt;br /&gt;
r2_gloss_factor 1.5&lt;br /&gt;
r2_ls_bloom_fast off&lt;br /&gt;
r2_ls_bloom_kernel_b 0.7&lt;br /&gt;
r2_ls_bloom_kernel_g 3.&lt;br /&gt;
r2_ls_bloom_kernel_scale 0.7&lt;br /&gt;
r2_ls_bloom_speed 100.&lt;br /&gt;
r2_ls_bloom_threshold 0.001&lt;br /&gt;
r2_ls_depth_bias -0.0003&lt;br /&gt;
r2_ls_depth_scale 1.00001&lt;br /&gt;
r2_ls_dsm_kernel 0.7&lt;br /&gt;
r2_ls_psm_kernel 0.7&lt;br /&gt;
r2_ls_squality 1.&lt;br /&gt;
r2_ls_ssm_kernel 0.7&lt;br /&gt;
r2_mblur 0.&lt;br /&gt;
r2_parallax_h 0.02&lt;br /&gt;
r2_slight_fade 0.3333&lt;br /&gt;
r2_ssa_lod_a 64.&lt;br /&gt;
r2_ssa_lod_b 48.&lt;br /&gt;
r2_sun on&lt;br /&gt;
r2_sun_depth_far_bias -0.00001&lt;br /&gt;
r2_sun_depth_far_scale 1.&lt;br /&gt;
r2_sun_depth_near_bias 0.00001&lt;br /&gt;
r2_sun_depth_near_scale 1.&lt;br /&gt;
r2_sun_details off&lt;br /&gt;
r2_sun_focus on&lt;br /&gt;
r2_sun_lumscale 1.&lt;br /&gt;
r2_sun_lumscale_amb 0.5&lt;br /&gt;
r2_sun_lumscale_hemi 1.&lt;br /&gt;
r2_sun_near 12.&lt;br /&gt;
r2_sun_near_border 0.75&lt;br /&gt;
r2_sun_tsm on&lt;br /&gt;
r2_sun_tsm_bias -0.01&lt;br /&gt;
r2_sun_tsm_proj 0.3&lt;br /&gt;
r2_tf_mipbias 0.&lt;br /&gt;
r2_tonemap on&lt;br /&gt;
r2_tonemap_adaptation 1.&lt;br /&gt;
r2_tonemap_amount 0.7&lt;br /&gt;
r2_tonemap_lowlum 0.0001&lt;br /&gt;
r2_tonemap_middlegray 0.6&lt;br /&gt;
r2_wait_sleep 0&lt;br /&gt;
r2_zfill off&lt;br /&gt;
r2_zfill_depth 0.5&lt;br /&gt;
r2em 2.2&lt;br /&gt;
r__detail_density 0.2&lt;br /&gt;
r__geometry_lod 1.&lt;br /&gt;
r__supersample 2&lt;br /&gt;
r__tf_aniso 16&lt;br /&gt;
renderer renderer_r2&lt;br /&gt;
rs_c_brightness 1.&lt;br /&gt;
rs_c_contrast 1.&lt;br /&gt;
rs_c_gamma 1.&lt;br /&gt;
rs_fullscreen on&lt;br /&gt;
rs_refresh_60hz on&lt;br /&gt;
rs_stats off&lt;br /&gt;
rs_v_sync off&lt;br /&gt;
rs_vis_distance 1.&lt;br /&gt;
snd_acceleration on&lt;br /&gt;
snd_cache_size 16&lt;br /&gt;
snd_efx on&lt;br /&gt;
snd_targets 24&lt;br /&gt;
snd_volume_eff 1.&lt;br /&gt;
snd_volume_music 1.&lt;br /&gt;
sv_anomalies_enabled 1&lt;br /&gt;
sv_anomalies_length 3&lt;br /&gt;
sv_artefact_respawn_delta 30&lt;br /&gt;
sv_artefact_spawn_force 0&lt;br /&gt;
sv_artefact_stay_time 3&lt;br /&gt;
sv_artefacts_count 10&lt;br /&gt;
sv_auto_team_balance 0&lt;br /&gt;
sv_auto_team_swap 1&lt;br /&gt;
sv_bearercantsprint 1&lt;br /&gt;
sv_client_reconnect_time 60&lt;br /&gt;
sv_console_update_rate 1&lt;br /&gt;
sv_dedicated_server_update_rate 100&lt;br /&gt;
sv_dmgblockindicator 1&lt;br /&gt;
sv_dmgblocktime 0&lt;br /&gt;
sv_forcerespawn 0&lt;br /&gt;
sv_fraglimit 10&lt;br /&gt;
sv_friendly_indicators 0&lt;br /&gt;
sv_friendly_names 0&lt;br /&gt;
sv_friendlyfire 1.&lt;br /&gt;
sv_hail_to_winner_time 7&lt;br /&gt;
sv_max_ping_limit 2000&lt;br /&gt;
sv_pda_hunt 1&lt;br /&gt;
sv_reinforcement_time 0&lt;br /&gt;
sv_remove_corpse 1&lt;br /&gt;
sv_remove_weapon 1&lt;br /&gt;
sv_returnplayers 1&lt;br /&gt;
sv_rpoint_freeze_time 0&lt;br /&gt;
sv_shieldedbases 1&lt;br /&gt;
sv_spectr_firsteye 1&lt;br /&gt;
sv_spectr_freefly 0&lt;br /&gt;
sv_spectr_freelook 1&lt;br /&gt;
sv_spectr_lookat 1&lt;br /&gt;
sv_spectr_teamcamera 1&lt;br /&gt;
sv_statistic_collect 1&lt;br /&gt;
sv_statistic_save_auto 0&lt;br /&gt;
sv_teamkill_limit 3&lt;br /&gt;
sv_teamkill_punish 1&lt;br /&gt;
sv_timelimit 0&lt;br /&gt;
sv_vote_enabled 255&lt;br /&gt;
sv_vote_participants 0&lt;br /&gt;
sv_vote_quota 0.51&lt;br /&gt;
sv_vote_time 1.&lt;br /&gt;
sv_warm_up 0&lt;br /&gt;
texture_lod 0&lt;br /&gt;
vid_mode 1280x1024&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Это мой полный. &lt;br /&gt;
&amp;lt;br /&amp;gt;Возмём к примеру графический параметр '''r2_gi'''&lt;br /&gt;
&amp;lt;br /&amp;gt;Префикс r2 означает что он будет работать только на полном динамическом освещении.&lt;br /&gt;
&amp;lt;br /&amp;gt;Далее идём в файл '''ui_mm_opt_video_adv.script &lt;br /&gt;
'''&lt;br /&gt;
&amp;lt;lua&amp;gt;class &amp;quot;opt_video_adv&amp;quot; (CUIWindow)&lt;br /&gt;
&lt;br /&gt;
function opt_video_adv:__init() super()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function opt_video_adv:__finalize()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function only_2_mode(ctrl, _id)&lt;br /&gt;
	local bEnabled	= _id==2&lt;br /&gt;
	ctrl:Enable		(bEnabled)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function only_12_mode(ctrl, _id)&lt;br /&gt;
	local bEnabled	= _id==1 or _id==2&lt;br /&gt;
	ctrl:Enable		(bEnabled)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function opt_video_adv:InitControls(x, y, xml, handler)&lt;br /&gt;
	local ctl&lt;br /&gt;
	self:Init									(x,y, 738, 416)&lt;br /&gt;
	self:SetAutoDelete							(true)&lt;br /&gt;
	&lt;br /&gt;
	self.bk			= xml:InitFrame				(&amp;quot;frame_videoadv&amp;quot;, self)&lt;br /&gt;
	self.scroll_v	= xml:InitScrollView		(&amp;quot;video_adv:scroll_v&amp;quot;, self)&lt;br /&gt;
&lt;br /&gt;
	local _st		= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_vis_dist&amp;quot;,				_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_vis_dist&amp;quot;,			_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_geometry_lod&amp;quot;,			_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_geometry_lod&amp;quot;,		_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_detail_density&amp;quot;,		_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_detail_density&amp;quot;,		_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_texture_lod&amp;quot;,			_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_texture_lod&amp;quot;,			_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_aniso&amp;quot;,					_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_aniso&amp;quot;,				_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_ssample&amp;quot;,				_st)&lt;br /&gt;
	xml:InitTrackBar							(&amp;quot;video_adv:track_ssample&amp;quot;,				_st)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_r2_sun&amp;quot;,				_st)&lt;br /&gt;
	ctl			= xml:InitCheck					(&amp;quot;video_adv:check_r2_sun&amp;quot;,				_st)&lt;br /&gt;
	handler.m_preconditions[ctl]		= only_2_mode&lt;br /&gt;
	&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_r2_sun_details&amp;quot;,		_st)&lt;br /&gt;
	ctl			= xml:InitCheck		(&amp;quot;video_adv:check_r2_sun_details&amp;quot;,		_st)&lt;br /&gt;
	handler.m_preconditions[ctl]		= only_2_mode&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_light_distance&amp;quot;,		_st)&lt;br /&gt;
	ctl				= xml:InitTrackBar			(&amp;quot;video_adv:track_light_distance&amp;quot;,		_st)&lt;br /&gt;
	handler.m_preconditions[ctl]		= only_12_mode&lt;br /&gt;
&lt;br /&gt;
	_st											= xml:InitStatic						(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_npc_torch&amp;quot;,				_st)&lt;br /&gt;
	xml:InitCheck								(&amp;quot;video_adv:check_npc_torch&amp;quot;,			_st)&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_particles_distance&amp;quot;,	_st)&lt;br /&gt;
	ctl				= xml:InitTrackBar			(&amp;quot;video_adv:track_particles_distance&amp;quot;,	_st)&lt;br /&gt;
	handler.m_preconditions[ctl]		= only_12_mode&lt;br /&gt;
&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_vsync&amp;quot;,					_st)&lt;br /&gt;
	xml:InitCheck								(&amp;quot;video_adv:check_vsync&amp;quot;,				_st)&lt;br /&gt;
	&lt;br /&gt;
	_st				= xml:InitStatic			(&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
	xml:InitStatic								(&amp;quot;video_adv:cap_60hz&amp;quot;,					_st)&lt;br /&gt;
	xml:InitCheck								(&amp;quot;video_adv:check_60hz&amp;quot;,				_st)&lt;br /&gt;
&lt;br /&gt;
	btn		= xml:Init3tButton					(&amp;quot;video_adv:btn_to_simply&amp;quot;,	self)	&lt;br /&gt;
	handler:Register							(btn, &amp;quot;btn_simply_graphic&amp;quot;)	&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;Как нам хорошо видно, тут выписаны функции всех параметров в видео опциях игры. Обратите внимание, что существует два вида опции. Ползунок и кнопка. Ползунок используется для опций, где необходимо числовое вычисление. А кнопка, где функция работает &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;Копируем, вставляем с новым именем перед концом скрипта. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&amp;lt;br /&amp;gt; _st				= xml:InitStatic&lt;br /&gt;
&amp;lt;br /&amp;gt; (&amp;quot;video_adv:templ_item&amp;quot;,				self.scroll_v)&lt;br /&gt;
&amp;lt;br /&amp;gt; xml:InitStatic&lt;br /&gt;
&amp;lt;br /&amp;gt;	(&amp;quot;video_adv:cap_r2gi&amp;quot;,					_st)&lt;br /&gt;
&amp;lt;br /&amp;gt; xml:InitCheck&lt;br /&gt;
&amp;lt;br /&amp;gt; (&amp;quot;video_adv:check_r2gi&amp;quot;,				_st)&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переписываем вот так и вставляем перед&lt;br /&gt;
&amp;lt;lua&amp;gt;	btn		= xml:Init3tButton					(&amp;quot;video_adv:btn_to_simply&amp;quot;,	self)	&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Сохраняем и закрываем.&lt;br /&gt;
&amp;lt;br /&amp;gt; Идём в''' ui_mm_opt.xml'''  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt; Вписываем в любое место каркас &lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;cap_r2gi x=&amp;quot;20&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;143&amp;quot; height=&amp;quot;21&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text font=&amp;quot;letterica16&amp;quot; r=&amp;quot;215&amp;quot; g=&amp;quot;195&amp;quot; b=&amp;quot;170&amp;quot;&amp;gt;ui_mm_r2gi&amp;lt;/text&amp;gt;&lt;br /&gt;
		&amp;lt;/cap_r2gi&amp;gt;&lt;br /&gt;
		&amp;lt;check_r2gi x=&amp;quot;194&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;30&amp;quot; height=&amp;quot;21&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;options_item entry=&amp;quot;r2_gi&amp;quot; group=&amp;quot;mm_opt_video_adv&amp;quot;/&amp;gt;&lt;br /&gt;
		&amp;lt;/check_r2gi&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; Разберём подробно&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt; '''&amp;lt;cap_r2gi x=&amp;quot;20&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;143&amp;quot; height=&amp;quot;21&amp;quot;&amp;gt;'''&lt;br /&gt;
&amp;lt;br /&amp;gt; Название нашей кнопки, и кординаты её расположения&lt;br /&gt;
&amp;lt;br /&amp;gt; '''*вторая строчка*'''&lt;br /&gt;
&amp;lt;br /&amp;gt; Тут всё просто. Шрифт, и URL на текст&lt;br /&gt;
&amp;lt;br /&amp;gt; '''&amp;lt;check_r2gi x=&amp;quot;194&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;30&amp;quot; height=&amp;quot;21&amp;quot;&amp;gt;'''&lt;br /&gt;
&amp;lt;br /&amp;gt; Плохо знаю зачем нужна, но всегда нужно заполнять. Связана с проверкой&lt;br /&gt;
&amp;lt;br /&amp;gt; 	'''&amp;lt;options_item entry=&amp;quot;r2_gi&amp;quot; group=&amp;quot;mm_opt_video_adv&amp;quot;/&amp;gt;'''&lt;br /&gt;
&amp;lt;br /&amp;gt; А вот тут всё очень интересно. Первое, указан изменяемый параметр(из user.ltx) и группа(класс) скрипта, в котором записана обрабатывающая функция&lt;br /&gt;
&amp;lt;br /&amp;gt; Вот и всё. Теперь идём в '''ui_st_mm.xml'''&lt;br /&gt;
	&amp;lt;xml&amp;gt;&amp;lt;string id=&amp;quot;ui_mm_r2gi&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Продать все&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&amp;lt;/xml&amp;gt; &lt;br /&gt;
&amp;lt;br /&amp;gt; Записываем в самый конец эту тему, и всё. Функция добавлена.&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%B4%D0%B4%D0%BE%D0%BD%D0%BE%D0%B2_%D0%BD%D0%B0_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%86%D0%B8%D0%B8</id>
		<title>Добавление аддонов на оружие без редактирования анимации</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%B4%D0%B4%D0%BE%D0%BD%D0%BE%D0%B2_%D0%BD%D0%B0_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%86%D0%B8%D0%B8"/>
				<updated>2017-03-12T11:15:50Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Данная статья посвящена возможности прикрепления обвесов на оружие просто не имеющих их в модели HUD.&lt;br /&gt;
То есть при выполнении всего ниже сказанного можно будет повесить глушитель на СВД, прицел на ТОЗ-34 и т.д (Подствольник на данный момент установить не получится — как не крути понадобится новая анимация).&lt;br /&gt;
И ещё один нюанс — аддон на пушке можно будет сделать либо несъемным, либо отсутствующий (при попытке сделать обвес съемным, игра вылетает с банальным логом «stack trace»).&lt;br /&gt;
Делал с замахом на ЗП, ЧН, но подходит и к ТЧ - различия только из - за разделения мешей и анимаций - руки от оружия.&lt;br /&gt;
&lt;br /&gt;
Ну давайте собственно перейдем к делу.&lt;br /&gt;
&lt;br /&gt;
=== Необходимый минимум ===&lt;br /&gt;
&lt;br /&gt;
*'''Самое главное — прямые руки растущие из плеч и умеющая мыслить голова.'''&lt;br /&gt;
*'''Умение работать с 3D редакторами и конфигами оружия''' или желание научиться там работать и хотя бы немного времени.&lt;br /&gt;
*'''Milkshape 3D''' или любой другой редактор с нужными '''плагинами импорта\экспорта'''.&lt;br /&gt;
*'''Сталкер SDK''' не суть важно какой.&lt;br /&gt;
*'''Конвертер Бардака''' (понадобится для вытаскивания анимаций и файла .bones) и умение с ним работать.&lt;br /&gt;
*'''Распакованные архивы Сталкера.'''&lt;br /&gt;
&lt;br /&gt;
== Этап I — редактирование модели ==&lt;br /&gt;
&lt;br /&gt;
*Для начала импортируем нужную модель.&lt;br /&gt;
*Импортируете требуемые вам аддоны(если вместе с ними импортируются новые кости - удалите их), редактируете их по своему вкусу и ставите куда вам больше нравится.&lt;br /&gt;
*Далее создаете новую кость под аддон (wpn_scope - для оптики и wpn_silenser для глушителя) на том джоинте который не должен двигаться относительно обвеса. К примеру оба аддона для ТОЗ-34 будут завязаны на переламывающемся стволе - кость с названием bend_reload. Новая кость должна находиться на той же координате что и кость-основа. '''Оригинальные джоинты не двигать!!!'''&lt;br /&gt;
*Осталось прибиндидь аддоны к соответствующим костям и экспортировать в .object.&lt;br /&gt;
*А для World модели просто создаете дополнительные джоинты не суть важно где.&lt;br /&gt;
*Этап редактирования закончен.&lt;br /&gt;
&lt;br /&gt;
== Этап II — настройка модели в SDK ==&lt;br /&gt;
=== Импортирование файла .bones и анимаций ===&lt;br /&gt;
&lt;br /&gt;
Начнём с форматов.&lt;br /&gt;
.bones - это формат зон соприкосновения мешей с окружающим миром.&lt;br /&gt;
Содержится в мировой модели.&lt;br /&gt;
.skls - это формат множественной анимаций (1 файл - несколько анимаций).&lt;br /&gt;
Содержится либо в HUD'е модели (в основном ТЧ), либо в .omf файла имеющего вид wpn_(название оружия)_hud_animation.omf&lt;br /&gt;
&lt;br /&gt;
Теперь я расскажу о создании .bat файла требуемого для работы с конвертером Бардака, так как здесь погорело не мало народу.&lt;br /&gt;
Технология довольна проста - создаёте .txt файл, набиваете требуемую команду (например: converter &amp;lt;!-- закомментировано![-omf] --&amp;gt; -skls wpn_svd_hud_animation.omf) и &amp;quot;сохранить как&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Ставите вот это в соответствующих строках:&lt;br /&gt;
&lt;br /&gt;
'''Имя файла: (любое).bat'''&lt;br /&gt;
&lt;br /&gt;
'''Тип файла: все файлы'''&lt;br /&gt;
&lt;br /&gt;
И сохраняете. Готово.&lt;br /&gt;
&lt;br /&gt;
=== Настройка в SDK ===&lt;br /&gt;
Загружаете ранее созданный .object&lt;br /&gt;
Настраиваете вкладки surfaces и object по своему вкусу.&lt;br /&gt;
&lt;br /&gt;
Настройка для HUD модели - вкладка motions.&lt;br /&gt;
Импортируете вытащенный skls через edit\append (через motion reference получите вылет в игре).&lt;br /&gt;
Экспортируете на замену оригинальному wpn_(название)_hud.ogf&lt;br /&gt;
&lt;br /&gt;
Настройка для World модели - вкладка bones.&lt;br /&gt;
Загружаете .bones через file\load и настраиваете.&lt;br /&gt;
Экспортируете на замену оригинальному wpn_(название).ogf&lt;br /&gt;
&lt;br /&gt;
Более подробно о настройке в SDK можно узнать в [[3dsmax._Создание_HUD-модели_оружия|этой статье]].&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;
== Дополнение: редактирование моделей ТЧ ==&lt;br /&gt;
К сожалению, описанный выше способ не сработает при редактировании моделей '''ТЧ''' – по двум причинам:&lt;br /&gt;
*в '''Milkshape''' если просто добавить кости с помощью инструмента '''Joint''' – при просмотре анимаций модель завяжется в узел;&lt;br /&gt;
*при импорте анимаций '''SDK''' выдаст нечто наподобие «''не могу найти кость &amp;lt;bone_name&amp;gt; в анимации &amp;lt;animation_name&amp;gt;''» и, соответственно, откажется импортировать.&lt;br /&gt;
Придется действовать по-другому. Из инструментов, кроме выше перечисленного, понадобится [http://stalkerin.gameru.net/downloads/other/for_wiki_articles/ms3dhe.7z '''Ms3d Hierarchy Editor'''].&lt;br /&gt;
=== Порядок действий: ===&lt;br /&gt;
'''1.''' Создаем копию исходной модели.&amp;lt;br&amp;gt;&lt;br /&gt;
'''2.''' В копии добавляем нужные кости.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Файл:Adding_bones_001.jpg‎]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''3.''' Добавленные кости поварачиваем на '''-90''' градусов по оси Х относительно родительской кости (далее станет видно для чего). К сожалению поворот костей в '''Milkshape''' работает как-то странно – поэтому придется вручную разместить кости так, как будто всю совокупность костей повернули.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Файл:Adding bones 002.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''4.''' С помощью '''Hierarchy Editor'''’а в копии отсоединяем старшую из созданных костей от ее родителя.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Файл:Adding bones 003.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''5.''' Всю изначальную геометрию и весь изначальный скелет в копии удаляем (таким образом должны остаться только созданные кости).&amp;lt;br&amp;gt;&lt;br /&gt;
'''6.''' Открываем оригинал и подгружаем ('''Merge''') копию.&amp;lt;br&amp;gt;&lt;br /&gt;
'''7.''' В оригинале модели с помощью '''Hierarchy Editor'''’а привязываем созданные кости к нужным родителям.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Файл:Adding_bones_001.jpg‎]]&amp;lt;br&amp;gt;&lt;br /&gt;
Как видим, совокупность созданных костей повернулась на '''+90''' градусов и оказалась расположена там, где требовалось. Сохраняем (+ экспортируем в '''.object''').&amp;lt;br&amp;gt;&lt;br /&gt;
'''8.''' Поочередно импортируем и пересохраняем с измененным скелетом все анимации.&lt;br /&gt;
&lt;br /&gt;
После этого из полученных '''.object''' и '''.skl''' файлов в '''SDK''' как обычно собираем модель. Теперь к созданным костям спокойно можно присоединять аддоны – анимации будут корректны, аддоны будут одеваться/сниматься.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Пояснение:'' процесс «создание костей – отсоединение – удаление исходной геометрии и скелета – объединение моделей – присоединение костей» необходим для решения первой из указанных проблем – завязывания модели в узел. Вторая проблема решается пересохранением всех анимаций.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Важное замечание:'' для того, чтобы съемные аддоны работали корректно, созданным костям нужно дать стандартные имена:&lt;br /&gt;
*'''wpn_silencer''' – для глушителя;&amp;lt;br&amp;gt;&lt;br /&gt;
*'''wpn_scope''' – для оптического прицела;&amp;lt;br&amp;gt;&lt;br /&gt;
*'''wpn_grenade_launcher''' и '''wpn_grenade''' – для подствольного гранатомета (возможно понадобятся еще кости – для прицела и спускового крючка).&lt;br /&gt;
&lt;br /&gt;
== Авторы ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Автор:''' [[Участник:Ya.D|Ya.D]]&amp;lt;br&amp;gt;&lt;br /&gt;
'''Дополнил:''' [[Участник:Geoset|Geoset]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-03-12T11:15:01Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье мы научимся создавать новые образцы вооружения. Для начала, мы будем использовать модели из оригинальной игры. Если вы хотите создать оружие, имеющее уникальный внешний вид, ознакомьтесь с [[Создание моделей и их добавление в игру|уроком]] по созданию моделей.&lt;br /&gt;
&lt;br /&gt;
Добавим в игру '''АК101'''.&lt;br /&gt;
&lt;br /&gt;
==Внешний вид==&lt;br /&gt;
&lt;br /&gt;
Позаботимся о том, чтобы наше оружие отличалось внешне от того же '''АК74'''.&lt;br /&gt;
&lt;br /&gt;
===Текстуры===&lt;br /&gt;
&lt;br /&gt;
Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным [[Изменение текстур#Изменение текстур моделей|здесь]]. Итак, основываясь на текстуре '''АК74''', мы сделали вот такую текстуру:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 texture.jpg]]&lt;br /&gt;
&lt;br /&gt;
Файлы текстур мы назвали:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak10.dds'''&lt;br /&gt;
* '''wpn_ak10_bump#.dds'''&lt;br /&gt;
* '''wpn_ak10_bump.dds'''&lt;br /&gt;
&lt;br /&gt;
===Модели===&lt;br /&gt;
&lt;br /&gt;
Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от '''АК74'''. Скопируем папку:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\meshes\weapons\ak74\''' &lt;br /&gt;
&lt;br /&gt;
И назовем её '''ak-101'''. Содержимое, соответственно, переименуем в:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak101.ogf'''&lt;br /&gt;
* '''wpn_ak101_hud.ogf'''.&lt;br /&gt;
&lt;br /&gt;
Теперь пропишем в эти модели созданные нами текстуры. Способ описан [[Изменение текстур#Создание новых visual для использования с новыми объектами|здесь]]'''.&lt;br /&gt;
&lt;br /&gt;
P.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия.&lt;br /&gt;
Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее.&lt;br /&gt;
&lt;br /&gt;
Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно кладите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так:&lt;br /&gt;
argument:can not find section 'название вашего оружия'&lt;br /&gt;
&lt;br /&gt;
===Иконки===&lt;br /&gt;
&lt;br /&gt;
Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан [[Изменение текстур#Изменение иконок предметов|здесь]].&lt;br /&gt;
&lt;br /&gt;
Вот, что получилось в конечном итоге:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 icon.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Конфиги==&lt;br /&gt;
&lt;br /&gt;
Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим '''АК101''' на базе конфигов '''АК74'''. &lt;br /&gt;
&lt;br /&gt;
===Свойства оружия===&lt;br /&gt;
&lt;br /&gt;
Скопируем файл из папки:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\weapons\ak74.ltx'''&lt;br /&gt;
&lt;br /&gt;
Назовем его '''ak101.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Отредактируем свойства по своему усмотрению (но лучше - в соответствии с достоверной информацией о характеристиках оружия, т.к. '''АК101''' - всё-таки оружие реально существующее). Редактирование конфигов оружия подробно описано в отдельном [[Редактирование оружия|уроке]]. В данном случае конфиг был составлен таким образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
[wpn_ak101]:identity_immunities&lt;br /&gt;
GroupControlSection		= spawn_group&lt;br /&gt;
discovery_dependency	= &lt;br /&gt;
$spawn              	= &amp;quot;weapons\ak-101&amp;quot;	; name and section in level editor&lt;br /&gt;
$npc					= on				&lt;br /&gt;
$prefetch 				= 8&lt;br /&gt;
scheduled				= off               ;[] option for ALife Simulator&lt;br /&gt;
cform               	= skeleton&lt;br /&gt;
class               	= WP_AK74			; class of the weapon that corresponding to CPP class&lt;br /&gt;
min_radius          	= 30				; [] for AI&lt;br /&gt;
max_radius          	= 100				; [] for AI&lt;br /&gt;
description				= enc_weapons1_wpn-ak101&lt;br /&gt;
	&lt;br /&gt;
ef_main_weapon_type		= 2&lt;br /&gt;
ef_weapon_type			= 6&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
holder_range_modifier	= 1.0		       ; во сколько раз увеличивается eye_range &lt;br /&gt;
holder_fov_modifier		= 0.7              ; во сколько раз увеличивается eye_fov&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
cost					= 2;4000				&lt;br /&gt;
weapon_class			= assault_rifle		&lt;br /&gt;
	&lt;br /&gt;
ammo_limit				= 210				&lt;br /&gt;
ammo_elapsed			= 30				&lt;br /&gt;
	&lt;br /&gt;
ammo_mag_size			= 30				&lt;br /&gt;
fire_modes				= 1, -1&lt;br /&gt;
&lt;br /&gt;
ammo_class				= ammo_5.56x45_ss190, ammo_5.56x45_ap	  &lt;br /&gt;
grenade_class			= ammo_vog-25, ammo_vog-25p			&lt;br /&gt;
launch_speed			= 0&lt;br /&gt;
&lt;br /&gt;
hand_dependence			= 1									&lt;br /&gt;
single_handed			= 0&lt;br /&gt;
	&lt;br /&gt;
slot 					= 2									&lt;br /&gt;
animation_slot			= 2									&lt;br /&gt;
inv_name	        	= wpn-ak101								&lt;br /&gt;
inv_name_short			= wpn-ak101&lt;br /&gt;
inv_weight			= 3.3								&lt;br /&gt;
&lt;br /&gt;
inv_grid_width			= 5	 &lt;br /&gt;
inv_grid_height			= 2	    &lt;br /&gt;
inv_grid_x				= 11  &lt;br /&gt;
inv_grid_y				= 29&lt;br /&gt;
&lt;br /&gt;
kill_msg_x			= 0&lt;br /&gt;
kill_msg_y			= 28&lt;br /&gt;
kill_msg_width		= 84&lt;br /&gt;
kill_msg_height		= 28&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
;params of weapon recoil&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_base			= 0.15;0.2		&lt;br /&gt;
control_inertion_factor			= 1.1f;1.25f&lt;br /&gt;
&lt;br /&gt;
;отдача&lt;br /&gt;
cam_relax_speed         		=6;5;3.5; 0.15		&lt;br /&gt;
cam_dispersion          		= 0.1;0.15		&lt;br /&gt;
cam_dispersion_inc			= 0.2;0.3		&lt;br /&gt;
cam_dispertion_frac			= 0.8;0.9		&lt;br /&gt;
cam_max_angle				= 10.0	    	&lt;br /&gt;
cam_max_angle_horz			= 20.0		&lt;br /&gt;
cam_step_angle_horz			= 1.1;1		&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_condition_factor 	= 5.7;5	    	 &lt;br /&gt;
misfire_probability 		= 0.0055;0.003	 &lt;br /&gt;
misfire_condition_k			= 0.06;0.05&lt;br /&gt;
condition_shot_dec 			= 0.00035;0.0001	&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
fire_point             		=  0,0.216,0.638			 &lt;br /&gt;
fire_point2            		=  0,0.216,0.730			&lt;br /&gt;
&lt;br /&gt;
flame_particles				= weapons\generic_weapon05	&lt;br /&gt;
smoke_particles				= weapons\generic_shoot_00&lt;br /&gt;
grenade_flame_particles		= weapons\generic_weapon01&lt;br /&gt;
	&lt;br /&gt;
shell_point		 			= 0,0.216,0.174				&lt;br /&gt;
shell_particles	 			= weapons\generic_shells	&lt;br /&gt;
&lt;br /&gt;
PDM_disp_base 				= 1.0&lt;br /&gt;
PDM_disp_vel_factor 		= 1.3&lt;br /&gt;
PDM_disp_accel_factor 		= 1.3&lt;br /&gt;
PDM_crouch	 				= 1.0&lt;br /&gt;
PDM_crouch_no_acc 			= 1.0&lt;br /&gt;
&lt;br /&gt;
; ttc&lt;br /&gt;
hit_power                	= 0.36, 0.4, 0.43, 0.46		&lt;br /&gt;
hit_impulse		 			= 140			&lt;br /&gt;
hit_type 					= fire_wound 	&lt;br /&gt;
fire_distance            	= 1700		&lt;br /&gt;
bullet_speed				= 1000		&lt;br /&gt;
rpm                      	= 750		&lt;br /&gt;
&lt;br /&gt;
use_aim_bullet				= true		&lt;br /&gt;
time_to_aim					= 1.0	&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
silencer_hit_power       	= 0.38&lt;br /&gt;
silencer_hit_impulse	 	= 120&lt;br /&gt;
silencer_fire_distance   	= 250&lt;br /&gt;
silencer_bullet_speed	 	= 600&lt;br /&gt;
&lt;br /&gt;
hud                      	= wpn_ak101_hud				&lt;br /&gt;
&lt;br /&gt;
position         	        = -0.026,-0.172,0			&lt;br /&gt;
orientation      	        = 0,0,0						&lt;br /&gt;
&lt;br /&gt;
;--STRAP PARAMETERS-----------------------------------------------------------------&lt;br /&gt;
strap_position         		= -0.16,-0.40,0.15			&lt;br /&gt;
strap_orientation      		= -10,-5,10					&lt;br /&gt;
strap_bone0					= bip01_spine2&lt;br /&gt;
strap_bone1					= bip01_spine1&lt;br /&gt;
&lt;br /&gt;
visual         		        = weapons\ak-101\wpn_ak101		&lt;br /&gt;
&lt;br /&gt;
light_color					= 0.6,0.5,0.3				&lt;br /&gt;
light_range					= 5							&lt;br /&gt;
light_var_color				= 0.05						&lt;br /&gt;
light_var_range				= 0.5&lt;br /&gt;
light_time 					= 0.2						&lt;br /&gt;
&lt;br /&gt;
ph_mass						= 5							&lt;br /&gt;
&lt;br /&gt;
;addons&lt;br /&gt;
scope_status				= 2							&lt;br /&gt;
silencer_status				= 2							&lt;br /&gt;
grenade_launcher_status		= 0;2							&lt;br /&gt;
&lt;br /&gt;
zoom_enabled				= true						&lt;br /&gt;
scope_zoom_factor	    	= 50						&lt;br /&gt;
&lt;br /&gt;
scope_name 					= wpn_addon_scope			&lt;br /&gt;
scope_x 					= 42						&lt;br /&gt;
scope_y 					= 3&lt;br /&gt;
silencer_name  				= wpn_addon_silencer		&lt;br /&gt;
silencer_x 					= 218						&lt;br /&gt;
silencer_y 					= 13					&lt;br /&gt;
grenade_launcher_name 		= wpn_addon_grenade_launcher&lt;br /&gt;
grenade_launcher_x 			= 116						&lt;br /&gt;
grenade_launcher_y 			= 23&lt;br /&gt;
&lt;br /&gt;
;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))&lt;br /&gt;
snd_draw					= weapons\ak74_draw&lt;br /&gt;
snd_holster					= weapons\generic_holster&lt;br /&gt;
snd_shoot					= weapons\ak74_shot_0&lt;br /&gt;
snd_shoot1					= weapons\ak74_shot_1&lt;br /&gt;
snd_shoot2					= weapons\ak74_shot_2&lt;br /&gt;
snd_shoot3					= weapons\ak74_shot_3		&lt;br /&gt;
snd_empty					= weapons\gen_empty, 0.5&lt;br /&gt;
snd_reload					= weapons\ak74_reload, 0.7, 0.35&lt;br /&gt;
snd_shoot_grenade			= weapons\gen_grenshoot&lt;br /&gt;
snd_reload_grenade			= weapons\gen_grenload, 1.0, 0.8&lt;br /&gt;
snd_switch					= weapons\groza_switch, 1.0, 0.5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
;silencer_flame_particles 	= weapons\generic_weapon01&lt;br /&gt;
silencer_smoke_particles 	= weapons\generic_shoot_00&lt;br /&gt;
&lt;br /&gt;
snd_silncer_shot			= weapons\w_ak74_shot1 &lt;br /&gt;
&lt;br /&gt;
silencer_light_color		= 0.6,0.5,0.3&lt;br /&gt;
silencer_light_range		= 0.01&lt;br /&gt;
silencer_light_var_color	= 0.05&lt;br /&gt;
silencer_light_var_range	= 0.5&lt;br /&gt;
silencer_light_time 		= 0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
;-- HUD DESCRIPTION&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
[wpn_ak101_hud]&lt;br /&gt;
allow_inertion				= true&lt;br /&gt;
&lt;br /&gt;
;similar to corresponding params in weapon section but for 1st person view&lt;br /&gt;
&lt;br /&gt;
shell_point					= -0.065000,0.000000,-0.045000&lt;br /&gt;
shell_dir			     	= 0.0, 1.0, 0.0&lt;br /&gt;
&lt;br /&gt;
fire_point               	= 0.09,0.020,-0.06&lt;br /&gt;
fire_point2              	= 0.30, 0.00, 0.05&lt;br /&gt;
fire_bone               	= wpn_body&lt;br /&gt;
&lt;br /&gt;
orientation             	= 0, 0, 0		&lt;br /&gt;
position                	= 0, 0, 0.05&lt;br /&gt;
visual                  	= weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
&lt;br /&gt;
grenade_bone            	= wpn_grenade	&lt;br /&gt;
&lt;br /&gt;
; animation names&lt;br /&gt;
&lt;br /&gt;
anim_idle					= idle&lt;br /&gt;
anim_idle_aim				= idle_aim&lt;br /&gt;
anim_reload					= reload&lt;br /&gt;
anim_draw					= draw_wo_gl&lt;br /&gt;
anim_holster				= holster_wo_gl&lt;br /&gt;
anim_shoot					= shoot&lt;br /&gt;
			&lt;br /&gt;
; animation names&lt;br /&gt;
; attached grenade launcher [GRENADE fire mode]&lt;br /&gt;
anim_idle_g					= idle_grenade&lt;br /&gt;
anim_idle_g_aim				= idle_g_aim&lt;br /&gt;
anim_reload_g				= reload_grenade&lt;br /&gt;
anim_shoot_g				= shoot_grenade&lt;br /&gt;
anim_switch_grenade_on		= switch_grenade&lt;br /&gt;
anim_switch_grenade_off		= switch_grenade_off&lt;br /&gt;
anim_draw_g					= draw_grenade_mode&lt;br /&gt;
anim_holster_g				= holster_grenade_mode&lt;br /&gt;
&lt;br /&gt;
; attached grenade launcher [NORMAL fire mode]&lt;br /&gt;
anim_idle_gl				= idle_w_gl&lt;br /&gt;
anim_idle_gl_aim			= idle_w_gl_aim&lt;br /&gt;
anim_reload_gl				= reload_w_gl&lt;br /&gt;
anim_draw_gl				= draw_w_gl&lt;br /&gt;
anim_holster_gl				= holster_w_gl&lt;br /&gt;
anim_shoot_gl				= shoot_w_gl&lt;br /&gt;
anim_idle_sprint			= idle_sprint&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;HUD offset in zoom mode (to all)&lt;br /&gt;
;(use CONSOLE: hud_adjust_mode 0,1,2, then keys WSADQE and P to show current value in console)&lt;br /&gt;
&lt;br /&gt;
zoom_offset			= -0.112400,0.016800,-0.115000&lt;br /&gt;
zoom_rotate_x		= 0.000200&lt;br /&gt;
zoom_rotate_y		= 0.017500&lt;br /&gt;
&lt;br /&gt;
zoom_hide_crosshair	= true						&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in NORMAL shoot mode&lt;br /&gt;
&lt;br /&gt;
grenade_normal_zoom_offset			= -0.112500,0.014000,0.000000&lt;br /&gt;
grenade_normal_zoom_rotate_x		= -0.000900&lt;br /&gt;
grenade_normal_zoom_rotate_y		= 0.017200&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in GRENADE mode&lt;br /&gt;
&lt;br /&gt;
grenade_zoom_offset			= -0.039600,-0.433100,0.000000&lt;br /&gt;
grenade_zoom_rotate_x		= -0.538700&lt;br /&gt;
grenade_zoom_rotate_y		= -0.033800&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Регистрация===&lt;br /&gt;
&lt;br /&gt;
Итак, с характеристиками разобрались. Теперь зарегистрируем оружие в файле '''weapons.ltx'''. Для этого пропишем в него строку следующего вида:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#include &amp;quot;w_ak101.ltx&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также, необходимо прописать модели, используемые для отображения оружия, в '''prefetch.ltx''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[...]&lt;br /&gt;
weapons\abakan\wpn_abakan&lt;br /&gt;
weapons\abakan\wpn_abakan_hud&lt;br /&gt;
weapons\ak-101\wpn_ak101&lt;br /&gt;
weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
weapons\ak74\wpn_ak74&lt;br /&gt;
weapons\ak74\wpn_ak74_hud&lt;br /&gt;
[...]&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Так же не забудте в файле '''mp_ranks.ltx''' прописать после '''available_items''' (которое внизу)&lt;br /&gt;
прописать название своего оружия. Это предотвратит вылет при убийстве ГГ а также вылет при выкидывании оружия из инвентаря.&lt;br /&gt;
&lt;br /&gt;
==Добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Осталось добавить оружие в игру. &lt;br /&gt;
&lt;br /&gt;
Выдайте его некоторым NPC ([[Редактирование NPC#Практика|как это сделать?]]), расширьте ассортимент торговцев ([[Редактирование торговцев#Расширяем ассортимент|как это сделать?]]).&lt;br /&gt;
&lt;br /&gt;
А вот как оно будет выглядеть в игре:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Russian_Guns_3.jpeg]]&lt;br /&gt;
&lt;br /&gt;
P.S. При создании нового оружия можно допустить некоторые ошибки в конфиге, что приведёт к вылету игры.&lt;br /&gt;
При таком случае сразу после вылета игры заходим в любой текстовый редактор и нажимаем клавиши Ctrl+V (вставить) и внизу можно увидеть из-за какой ошибки вылетела игра, а там уже дело техники исправить ошибку...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CModelPool::Instance_Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp&lt;br /&gt;
Line          : 111&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find model file 'weapons\gaussmod\wpn_gauss_hud.ogf'.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В данном примере видно, что либо вы не создали папку с необходимой моделью оружия, либо неправильно прописан путь к нужному файлу...&lt;br /&gt;
&lt;br /&gt;
(Чтобы в игре название и описание оружия были не от АК-74 а от нашей АК-101 делаем как написано в этой [http://stalkerin.gameru.net/wiki/index.php/%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BE%D0%B2 статье], всё начиная с &amp;quot;''И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test''&amp;quot; вам понадобится.)&lt;br /&gt;
Информацию о оружии можно найти [http://world.guns.ru здесь.]&lt;br /&gt;
&lt;br /&gt;
'''АК-101''' - ''Автомат Калашникова АК-101 является экспортной модификацией штатного автомата Российской армии АК-74М. Главным (и фактически единственным) отличием АК-101 от АК-74М является калибр - автомат &amp;quot;сотой&amp;quot; серии использует патроны калибра 5.56мм (5.56х45 НАТО) и соответствующие магазины, в остальном автоматы идентичны.''&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана: &lt;br /&gt;
*[[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
&lt;br /&gt;
Статья подправлена:&lt;br /&gt;
*[[Участник:Хемуль04|Хемуль04]]&lt;br /&gt;
&lt;br /&gt;
По материалам мода [[Mod:Russian Guns|Russian Guns]] за авторством: &lt;br /&gt;
*[[Участник:Tony|Tony]]&lt;br /&gt;
*[[Участник:lez0|lez0]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
&lt;br /&gt;
Когда будете прописыватьв конфиге значения &amp;quot;inv_grid_y&amp;quot; и &amp;quot;inv_grid_x&amp;quot; имейте в виду, что отсчет по сетке идет с верхнего левого угла и указывать нужно верхний левый угол картинки, которая должна отображатся в инвентаре. То есть координаты самого первого угла будут 0;0. Самая первая винтовка в файле ...\S.T.A.L.K.E.R\gamedata\textures\ui\ui_icon_equipment.dds это - СВД. И если вы посмотрите ее конфигурационный файл то увидете, что там указаны значения inv_grid_x = 0   inv_grid_y = 0.  Отсчет по оси X идет по горизонтали с лева на право, а по оси Y - сверху вниз по возрастающей. Но считать с начала сетки - очень не удобно, поэтому вычисляйте координаты вашего обьекта по известным координатам уже существующего и реально правильно отображаемого файла в игре. Например мы имеем inv_grid_x= 5 inv_grid_y= 9 для fn2000(координаты верхнего левого угла) и мы хотим узнать координаты гранатф ф1, которая находится рядом. Для этого удобно использовать фотошоп с сеткой 50 на 50 пикселей. (как ее сделать описано по ссылке в статье к которой написана эта поправка.) И так мы видим что граната находится сразу справа порсле винтовки. То есть на 4-й клетке после квадрата угла винтовки без его учета. Она находится спраа, а значит нужно по оси X к 5 прибавить 4, и получится 9. По оси Y координтаы не изменились так как они находятся на одной линии с винтовкой. Таким образом получает коордитаны гранаты 9 по Х и 9 по Y. Если мы посмотрим конфиг гранаты то увидим там &amp;quot;inv_grid_x= 9&amp;quot; &amp;quot;inv_grid_y= 9&amp;quot;. То что и соответствует тому, что мы высчитали. :) Удачи.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83</id>
		<title>3dsmax. Создание моделей и их добавление в игру</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83"/>
				<updated>2017-03-12T11:13:54Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.1.105 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Создание моделей и добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Итак, для работы нам понадобятся следующие инструменты:&lt;br /&gt;
&lt;br /&gt;
* '''Autodesk 3D Studio Max''' версий '''6''','''7''' или '''8''' (на других вроде плагин экспорта не работает, но я не уверен)&lt;br /&gt;
* '''3DS Max STALKER Plug-In''' для экспорта в формат object (.obj)&lt;br /&gt;
* '''S.T.A.L.K.E.R. SDK'''&lt;br /&gt;
&lt;br /&gt;
При создании собственных текстур потребуется:&lt;br /&gt;
&lt;br /&gt;
* '''Adobe Photoshop'''&lt;br /&gt;
* '''DDS-плагин''' от nVidia&lt;br /&gt;
&lt;br /&gt;
Приступим к креативу. Пример будем рассматривать на примитивной модели кубика.&lt;br /&gt;
&lt;br /&gt;
'''1)''' Запускаем 3DS Max и создаем наш кубик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''2)''' Далее накладываем на него текстуру. Запускаем редактор материалов (кнопка «М» по дефолту), выбираем тип материала, нажав на кнопку Standart (1), и в раскрывшемся списке выбираем S.T.A.L.K.E.R. Mtl (2), далее, в свитке Blinn Basic Parameters, щелкаем на маленькую кнопку напротив Diffuse (3), в раскрывшемся списке выбираем Bitmap (4), и выбираем требуемую текстуру из папки gamedata нашего SDK. Для примера я выбрал ...gamedata\textures\wpn\wpn_pkm_lenta.dds.&lt;br /&gt;
&lt;br /&gt;
Далее назначаем нашу текстуру для кубика и настраиваем ее внешний вид либо в самом Редакторе Материалов, либо, если объект сложный, - модификатором Unwrap UVW (кто работает в 3DS Max - знает). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''3)''' После текстуривания нашего объекта отмасштабируем его до нормальных размеров игры (для облегчения этого процесса я импортирую в сцену какую-нибудь модель из игры, например, АК-74), и приступаем к созданию костей. &lt;br /&gt;
&lt;br /&gt;
Идем в Create -&amp;gt; Systems -&amp;gt; Bones и создаем пару костей внутри нашей коробки приблизительно такого вида (см. рисунок). Первую косточку обзываем, например, kost, вторую можно не трогать и вообще ее можно потом удалить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_3.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''4)''' Теперь выделяем нашу коробку и в закладке Modify добавляем ей модификатор Physique (1). В свертке модификатора жмем кнопку Attach to Node (2), кликаем по нашей косточке с именем kost и в развернувшемся списке выбираем Riquid (3) и жмем Initialize (4) (см. рисунок).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_4.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''5)''' Далее, в свитке Physique level of Detail меняем параметр Skin Update на Rigid, в дереве модификатора Physique выбираем вершины нашего объекта (Vertex), выделяем все вершины нашего кубика при нажатой кнопке Select, выбираем тип вершин Rigid (4), жмем кнопку Assign to Link (5) и кликаем по нашей косточке.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_5.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''6)''' Теперь все готово к экспорту в формат object (.obj), который понимает Actor Editor из SDK. Идем на закладку Utilites и жмем кнопку S.T.A.L.K.E.R. Export (1) (кнопка эта у вас там будет находиться при правильной настройке плагина). Выделяем наш кубик и жмем кнопку Export Skin. Сохраняем, наблюдая лог в окошке на отсутствие ошибок.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_6.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''7)''' Запускаем Actor Editor из комплекта SDK и загружаем нашу сохраненную модель и видим приблизительно следующую картину:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_7.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''8)''' В панели Object Items видим характеристики нашего объекта (нас интересуют только Surfaces и Bones). В Surfaces задаются материалы и шейдеры для нашего объекта. Раскрываем список Surfaces, выбираем 01-Default (это я забыл материал в Максе обозвать) и устанавливаем параметры:&lt;br /&gt;
&lt;br /&gt;
* '''Shader:''' models/model &lt;br /&gt;
* '''Compile:''' def_shaders/def_vertex&lt;br /&gt;
* '''Game Mtl:''' objects/small_box&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_8.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''9)''' Видимо использовать можно и другие, но я еще не разобрался до конца.&lt;br /&gt;
&lt;br /&gt;
Далее настраиваем нашу косточку. Раскрываем список Bones, выбираем нашу kost. Далее жмем напротив Generate Shape кнопку All, настраиваем вес параметром Mass, можно настроить материал параметром Game Material (я оставил default_object) затем выбираем тип баунд_бокса нажатием кнопки Type. Я выбрал Box. Его кстати можно потом вращать, двигать и масштабировать.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_9.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''10)''' После настройки параметров экспортируем нашу коробочку в .ogf-файл из меню File -&amp;gt; Export, и подменяем полученной моделью, например, болт. Далее ходим и швыряемся магазинами от ПКМ в головы зазевавшимся неписям :)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
'''Статья создана:''' [[Участник:tambovski|tambovski]].&lt;br /&gt;
[[Категория: Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B4%D0%B8%D0%BD_%D0%B8%D0%B7_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1%D0%BE%D0%B2_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%B0%D0%BD%D0%BE%D0%BC%D0%B0%D0%BB%D0%B8%D0%B9</id>
		<title>Один из способов создание новых аномалий</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B4%D0%B8%D0%BD_%D0%B8%D0%B7_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1%D0%BE%D0%B2_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%B0%D0%BD%D0%BE%D0%BC%D0%B0%D0%BB%D0%B8%D0%B9"/>
				<updated>2017-03-12T11:13:51Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.1.105 (обсуждение) к версии Aka sektor&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Вступление ==&lt;br /&gt;
В этой статье я расскажу вам как создать новые аномалии с разными свойствами при этом не создавая им новый конфиг. Приступим.&lt;br /&gt;
&lt;br /&gt;
== Практика ==&lt;br /&gt;
Возьмем для примера аномалию &amp;quot;Трамплин&amp;quot;&lt;br /&gt;
&amp;lt;ini&amp;gt;[zone_mosquito_bald]&lt;br /&gt;
GroupControlSection	= spawn_group_zone&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald&amp;quot;&lt;br /&gt;
$prefetch 		= 16&lt;br /&gt;
class			= ZS_MBALD&lt;br /&gt;
hit_impulse_scale	= 0.3;0.5 ;0.1&lt;br /&gt;
effective_radius	= 0.85 ;размер радиуса в процентах от оригинального, где действует зона&lt;br /&gt;
actor_blowout_radius_percent	= 0.75&lt;br /&gt;
&lt;br /&gt;
ef_anomaly_type			= 1&lt;br /&gt;
ef_weapon_type			= 13&lt;br /&gt;
&lt;br /&gt;
sound			= zone_mosquito_bald&lt;br /&gt;
&lt;br /&gt;
;postprocess		= mosquito_bald&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
hit_type			= strike&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 0.99&lt;br /&gt;
max_start_power		= 1.00&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
&lt;br /&gt;
idle_particles		= anomaly2\bold_idle&lt;br /&gt;
blowout_particles	= anomaly2\gravity_blast_01&lt;br /&gt;
&lt;br /&gt;
hit_small_particles			= hit_fx\hit_metal_02&lt;br /&gt;
hit_big_particles			= anomaly2\gravity_damage_02_blood2&lt;br /&gt;
idle_small_particles		= anomaly2\gravity_damage_01_smoke&lt;br /&gt;
idle_big_particles			= anomaly2\gravity_damage_02_smoke&lt;br /&gt;
entrance_small_particles	= anomaly2\gravity_entrance_small&lt;br /&gt;
entrance_big_particles		= anomaly2\gravity_entrance_big ;anomaly2\gravity_entrance_big&lt;br /&gt;
&lt;br /&gt;
idle_sound			= anomaly\gravi_rumble1; ambient\fx2		;постоянный звук&lt;br /&gt;
blowout_sound		= anomaly\anomaly_gravy_blast1; anomaly_gravy_blast01	;во время выброса(удара) в центре аномалии	&lt;br /&gt;
hit_sound			= anomaly\anomaly_gravy_hit1								;на персонаже, когда тот получает хит&lt;br /&gt;
entrance_sound		= anomaly\anomaly_gravy_hit1								;при попадании объекта в аномалию&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
awaking_time		= 50;100&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
&lt;br /&gt;
blowout_light_time		= 200&lt;br /&gt;
blowout_explosion_time	= 200&lt;br /&gt;
blowout_particles_time	= 200&lt;br /&gt;
blowout_sound_time  	= 100&lt;br /&gt;
&lt;br /&gt;
disable_time		= 5000		;время игнорирования неживого объекта в зоне (-1 если не нужно)&lt;br /&gt;
disable_time_small	= 5000		;время игнорирования маленького неживого объекта в зоне (-1 если не нужно)&lt;br /&gt;
disable_idle_time	= 1000		;время отключения idle партиклов&lt;br /&gt;
&lt;br /&gt;
ignore_nonalive		= false&lt;br /&gt;
ignore_small		= false&lt;br /&gt;
ignore_artefacts	= true&lt;br /&gt;
&lt;br /&gt;
blowout_light		= on&lt;br /&gt;
light_color		    = 0.5,0.4,0.3&lt;br /&gt;
light_range		    = 30.0&lt;br /&gt;
light_time 		    = 0.9;0.35&lt;br /&gt;
light_height		= 1.5			;подъем источника света на высоту&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
idle_light			= off&lt;br /&gt;
&lt;br /&gt;
visible_by_detector = on&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;рождение артефактов &lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.7, af_cristall_flower, 0.25,af_night_star, 0.05&lt;br /&gt;
&lt;br /&gt;
;;во время срабатывания в online&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
artefact_spawn_probability = 0.09				;вероятность, что во время срабатывания аномалии будет рожден артефакт&lt;br /&gt;
artefact_spawn_particles = anomaly2\pux_blast	;партиклы, которые отыграются на месте рождения артефакта (опционально)&lt;br /&gt;
artefact_born_sound =  anomaly\pux_blast		;звук, который отыграются на месте рождения артефакта (опционально)&lt;br /&gt;
&lt;br /&gt;
throw_out_power = 50			;импульс с которым артефакт будет выброшен из зоны в произвольном направлении&lt;br /&gt;
artefact_spawn_height = 3		;(м) высота на центром зоны где будет рожден артефакт&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;; ветер&lt;br /&gt;
blowout_wind		= on&lt;br /&gt;
&lt;br /&gt;
blowout_wind_time_start     = 0&lt;br /&gt;
blowout_wind_time_peak      = 300&lt;br /&gt;
blowout_wind_time_end		= 501; 899&lt;br /&gt;
blowout_wind_power			= 0.5			;сила поднимаего ветра (от 0 до 1), в момент blowout_wind_time_peak &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[zone_mosquito_bald_weak]:zone_mosquito_bald&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_weak&amp;quot;&lt;br /&gt;
awaking_time		= 80;100&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
&lt;br /&gt;
hit_impulse_scale	= 0.1&lt;br /&gt;
effective_radius	= 0.65 &lt;br /&gt;
actor_blowout_radius_percent= 0.6&lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.8, af_cristall_flower, 0.2,af_night_star, 0.0&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 0.49&lt;br /&gt;
max_start_power		= 0.5&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 1&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
artefact_spawn_rnd	= 50  ;вероятность заспавнить артефакт в процентах.&lt;br /&gt;
&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
ignore_nonalive		= false&lt;br /&gt;
ignore_small		= false&lt;br /&gt;
ignore_artefacts	= true&lt;br /&gt;
&lt;br /&gt;
blowout_wind_power			= 0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Не производящая артефактов слабая аномалия&lt;br /&gt;
[zone_mosquito_bald_weak_noart]:zone_mosquito_bald_weak&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_weak_noart&amp;quot;&lt;br /&gt;
spawn_blowout_artefacts = off&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
&lt;br /&gt;
[zone_mosquito_bald_average]:zone_mosquito_bald&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_average&amp;quot;&lt;br /&gt;
awaking_time		= 50&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
&lt;br /&gt;
hit_impulse_scale	= 0.2&lt;br /&gt;
effective_radius	= 0.75 &lt;br /&gt;
actor_blowout_radius_percent= 0.8&lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.6, af_cristall_flower, 0.4,af_night_star, 0.0&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 1.19&lt;br /&gt;
max_start_power		= 1.20&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 1&lt;br /&gt;
max_artefact_count	= 1&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
artefact_spawn_rnd	= 70  ;вероятность заспавнить артефакт в процентах.&lt;br /&gt;
&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
ignore_nonalive		= false&lt;br /&gt;
ignore_small		= false&lt;br /&gt;
ignore_artefacts	= true&lt;br /&gt;
&lt;br /&gt;
blowout_wind_power			= 0.5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[zone_mosquito_bald_strong]:zone_mosquito_bald&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_strong&amp;quot;&lt;br /&gt;
awaking_time		= 30&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
accamulate_time		= 49&lt;br /&gt;
&lt;br /&gt;
hit_impulse_scale	= 0.2&lt;br /&gt;
effective_radius	= 0.8 &lt;br /&gt;
actor_blowout_radius_percent= 0.85&lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.2, af_cristall_flower, 0.6,af_night_star, 0.2&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 1.99&lt;br /&gt;
max_start_power		= 2.00&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 1&lt;br /&gt;
max_artefact_count	= 2&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
artefact_spawn_rnd	= 90  ;вероятность заспавнить артефакт в процентах.&lt;br /&gt;
&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
&lt;br /&gt;
blowout_wind_power			= 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Не производящая артефактов слабая аномалия&lt;br /&gt;
[zone_mosquito_bald_strong_noart]:zone_mosquito_bald_strong&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito_bald_strong_noart&amp;quot;&lt;br /&gt;
spawn_blowout_artefacts = off&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&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;
[zone_sarcofag]&lt;br /&gt;
GroupControlSection	= spawn_group_zone&lt;br /&gt;
$spawn 			= &amp;quot;zones\sarcofag zone&amp;quot;&lt;br /&gt;
$prefetch 		= 16&lt;br /&gt;
class			= Z_MBALD&lt;br /&gt;
hit_impulse_scale	= 0.3;0.5 ;0.1&lt;br /&gt;
effective_radius	= 0.85 ;размер радиуса в процентах от оригинального, где действует зона&lt;br /&gt;
actor_blowout_radius_percent	= 0.75&lt;br /&gt;
&lt;br /&gt;
ef_anomaly_type			= 1&lt;br /&gt;
ef_weapon_type			= 13&lt;br /&gt;
&lt;br /&gt;
sound			= zone_mosquito_bald&lt;br /&gt;
&lt;br /&gt;
postprocess		= mosquito_bald&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;рождение артефактов &lt;br /&gt;
artefacts		= &lt;br /&gt;
BirthProbability	= 0.0&lt;br /&gt;
spawn_blowout_artefacts = off&lt;br /&gt;
&lt;br /&gt;
hit_type			= strike&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 1.69&lt;br /&gt;
max_start_power		= 1.70&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
&lt;br /&gt;
idle_particles		= anomaly2\bold_idle_sarkofag&lt;br /&gt;
blowout_particles	= anomaly2\bold_sarkofag_blast&lt;br /&gt;
&lt;br /&gt;
hit_small_particles			= hit_fx\hit_metal_02&lt;br /&gt;
hit_big_particles			= anomaly2\gravity_damage_02_blood2&lt;br /&gt;
idle_small_particles		= anomaly2\gravity_damage_01_smoke&lt;br /&gt;
idle_big_particles			= anomaly2\gravity_damage_02_smoke&lt;br /&gt;
entrance_small_particles	= anomaly2\gravity_entrance_small&lt;br /&gt;
entrance_big_particles		= anomaly2\gravity_entrance_big ;anomaly2\gravity_entrance_big&lt;br /&gt;
&lt;br /&gt;
idle_sound			= anomaly\gravi_rumble1; ambient\fx2		;постоянный звук&lt;br /&gt;
blowout_sound		= anomaly\anomaly_gravy_blast1; anomaly_gravy_blast01	;во время выброса(удара) в центре аномалии	&lt;br /&gt;
hit_sound			= anomaly\anomaly_gravy_hit1								;на персонаже, когда тот получает хит&lt;br /&gt;
entrance_sound		= anomaly\anomaly_gravy_hit1								;при попадании объекта в аномалию&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
awaking_time		= 50;100&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
&lt;br /&gt;
blowout_light_time		= 200&lt;br /&gt;
blowout_explosion_time	= 200&lt;br /&gt;
blowout_particles_time	= 200&lt;br /&gt;
blowout_sound_time  	= 100&lt;br /&gt;
&lt;br /&gt;
disable_time		= 5000		;время игнорирования неживого объекта в зоне (-1 если не нужно)&lt;br /&gt;
disable_time_small	= 5000		;время игнорирования маленького неживого объекта в зоне (-1 если не нужно)&lt;br /&gt;
disable_idle_time	= 100		;время отключения idle партиклов&lt;br /&gt;
&lt;br /&gt;
ignore_nonalive		= false&lt;br /&gt;
ignore_small		= true&lt;br /&gt;
ignore_artefacts	= true&lt;br /&gt;
&lt;br /&gt;
blowout_light		= on&lt;br /&gt;
light_color		    = 0.5,0.4,0.3&lt;br /&gt;
light_range		    = 30.0&lt;br /&gt;
light_time 		    = 0.9;0.35&lt;br /&gt;
light_height		= 1.5			;подъем источника света на высоту&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
idle_light			= off&lt;br /&gt;
&lt;br /&gt;
visible_by_detector = on&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
artefact_spawn_probability = 0.00				;вероятность, что во время срабатывания аномалии будет рожден артефакт&lt;br /&gt;
artefact_spawn_particles = anomaly2\pux_blast	;партиклы, которые отыграются на месте рождения артефакта (опционально)&lt;br /&gt;
artefact_born_sound =  anomaly\pux_blast		;звук, который отыграются на месте рождения артефакта (опционально)&lt;br /&gt;
&lt;br /&gt;
throw_out_power = 50			;импульс с которым артефакт будет выброшен из зоны в произвольном направлении&lt;br /&gt;
artefact_spawn_height = 3		;(м) высота на центром зоны где будет рожден артефакт&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;; ветер&lt;br /&gt;
blowout_wind		= off&lt;br /&gt;
&lt;br /&gt;
blowout_wind_time_start     = 0&lt;br /&gt;
blowout_wind_time_peak      = 300&lt;br /&gt;
blowout_wind_time_end		= 501; 899&lt;br /&gt;
blowout_wind_power			= 0.5			;сила поднимаего ветра (от 0 до 1), в момент blowout_wind_time_peak&amp;lt;/ini&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Мы видим три основных секции:&lt;br /&gt;
zone_mosquito_bald_weak - слабый трамплин,&lt;br /&gt;
zone_mosquito_bald_average - средний трамплин,&lt;br /&gt;
zone_mosquito_bald_strong - сильный трамплин.&lt;br /&gt;
&lt;br /&gt;
Я сделаю так, что сильный трамплин будет разрывать на куски подобно &amp;quot;Воронке&amp;quot;. Для этого найдем секцию [zone_mosquito_bald_strong] и добавим после $spawn = &amp;quot;zones\mosquito bald_strong&amp;quot; строчку &amp;quot;class = ZS_GALAN&amp;quot;(без кавычек). Должно получиться так:&lt;br /&gt;
&amp;lt;ini&amp;gt;[zone_mosquito_bald_strong]:zone_mosquito_bald&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_strong&amp;quot;&lt;br /&gt;
class                   = ZS_GALAN&lt;br /&gt;
awaking_time		= 30&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
accamulate_time		= 49&lt;br /&gt;
&lt;br /&gt;
hit_impulse_scale	= 0.2&lt;br /&gt;
effective_radius	= 0.8 &lt;br /&gt;
actor_blowout_radius_percent= 0.85&lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.2, af_cristall_flower, 0.6,af_night_star, 0.2&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 1.99&lt;br /&gt;
max_start_power		= 2.00&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 1&lt;br /&gt;
max_artefact_count	= 2&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
artefact_spawn_rnd	= 90  ;вероятность заспавнить артефакт в процентах.&lt;br /&gt;
&lt;br /&gt;
accamulate_time		= 1000 ;10;200&lt;br /&gt;
&lt;br /&gt;
blowout_wind_power			= 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Не производящая артефактов слабая аномалия&lt;br /&gt;
[zone_mosquito_bald_strong_noart]:zone_mosquito_bald_strong&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito_bald_strong_noart&amp;quot;&lt;br /&gt;
spawn_blowout_artefacts = off&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Думаю вы догадались, что класс &amp;quot;ZS_GALAN&amp;quot; мы взяли у воронки, можно сказать поменяв класс мы дали сильному трамплину свойство воронки разрывать на части. Но не спешите тестировать в игре! Мы забыли добавить некоторые параметры присущие воронке.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;tearing_particles	=anomaly2\body_tear_00 &lt;br /&gt;
torn_particles          =anomaly2\body_tear_01 &lt;br /&gt;
body_tearing_sound	= anomaly\anomaly_body_tear_1 &lt;br /&gt;
&lt;br /&gt;
;параметры телекинеза для зоны&lt;br /&gt;
throw_in_impulse			= 		0		;сила импульса втягивания (для тела 100кг)&lt;br /&gt;
throw_out_impulse			=		4000;		;сила выбрасывания взрывом&lt;br /&gt;
throw_in_impulse_alive		        = 		0	        ;сила импульса втягивания для живых&lt;br /&gt;
throw_in_atten				= 		2;8	        ;коэфф. затягивания (чем меньше, тем плавнее затягивает)&lt;br /&gt;
blowout_radius_percent		        = 		0.8		;радиус (в процентах от всего радиуса) непосредственно выброса&lt;br /&gt;
&lt;br /&gt;
tele_height				= 0	        ;высота подъема телекинеза &lt;br /&gt;
time_to_tele			        = 5000		;время деражания объекта в воздухе&lt;br /&gt;
tele_pause				= 5000		;пауза перед тем как снова поднять упавший объект&lt;br /&gt;
&lt;br /&gt;
accamulate_time		                = 1000 ;10;200&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Секция должна выглядеть вот так:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[zone_mosquito_bald_strong]:zone_mosquito_bald&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito bald_strong&amp;quot;&lt;br /&gt;
class			= ZS_GALAN&lt;br /&gt;
awaking_time		= 30&lt;br /&gt;
blowout_time		= 500	&lt;br /&gt;
accamulate_time		= 49&lt;br /&gt;
&lt;br /&gt;
hit_impulse_scale	= 0.2&lt;br /&gt;
effective_radius	= 0.8 &lt;br /&gt;
actor_blowout_radius_percent= 0.85&lt;br /&gt;
&lt;br /&gt;
artefacts		= af_medusa,0.2, af_cristall_flower, 0.6,af_night_star, 0.2&lt;br /&gt;
BirthProbability	= 0.1&lt;br /&gt;
spawn_blowout_artefacts = on&lt;br /&gt;
&lt;br /&gt;
;----------- Anomaly settings -----------------------&lt;br /&gt;
min_start_power		= 1.99&lt;br /&gt;
max_start_power		= 2.00&lt;br /&gt;
attenuation			= 1&lt;br /&gt;
period				= 1&lt;br /&gt;
min_artefact_count	= 1&lt;br /&gt;
max_artefact_count	= 2&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&lt;br /&gt;
artefact_spawn_rnd	= 90  ;вероятность заспавнить артефакт в процентах.&lt;br /&gt;
&lt;br /&gt;
tearing_particles	=anomaly2\body_tear_00&lt;br /&gt;
torn_particles      =anomaly2\body_tear_01&lt;br /&gt;
body_tearing_sound	= anomaly\anomaly_body_tear_1&lt;br /&gt;
&lt;br /&gt;
;параметры телекинеза для зоны&lt;br /&gt;
throw_in_impulse			= 		0		    ;сила импульса втягивания (для тела 100кг)&lt;br /&gt;
throw_out_impulse			=		4000;		;сила выбрасывания взрывом&lt;br /&gt;
throw_in_impulse_alive		        = 		0	        ;сила импульса втягивания для живых&lt;br /&gt;
throw_in_atten				= 		2;8			;коэфф. затягивания (чем меньше, тем плавнее затягивает)&lt;br /&gt;
blowout_radius_percent		        = 		0.8		    ;радиус (в процентах от всего радиуса) непосредственно выброса&lt;br /&gt;
&lt;br /&gt;
tele_height				= 0;	3.5	;высота подъема телекинеза &lt;br /&gt;
time_to_tele			        = 5000		;время деражания объекта в воздухе&lt;br /&gt;
tele_pause				= 5000		;пауза перед тем как снова поднять упавший объект&lt;br /&gt;
&lt;br /&gt;
accamulate_time		                = 1000 ;10;200&lt;br /&gt;
&lt;br /&gt;
blowout_wind_power			= 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Не производящая артефактов слабая аномалия&lt;br /&gt;
[zone_mosquito_bald_strong_noart]:zone_mosquito_bald_strong&lt;br /&gt;
$spawn 			= &amp;quot;zones\mosquito_bald_strong_noart&amp;quot;&lt;br /&gt;
spawn_blowout_artefacts = off&lt;br /&gt;
min_artefact_count	= 0&lt;br /&gt;
max_artefact_count	= 0&lt;br /&gt;
artefact_spawn_idle	= 24  ;насколько часто спонить артефакты в офлайне, в часах&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Готово! Теперь можно тестировать. Вот скрин где можно найти сильный трамплин.&lt;br /&gt;
http://rghost.ru/57862663/image.png&lt;br /&gt;
&lt;br /&gt;
== Несколько слов ==&lt;br /&gt;
Таким образом не создавая нового конфига можно редактировать уже известные нам секции и подгонять их под свой вкус.&lt;br /&gt;
Можно изменять эффекты, звук, задержку перед разрядкой нужной нам секции не опасаясь что это отразится на &amp;quot;донорной аномалии&amp;quot;.&lt;br /&gt;
Возможно такая статья уже есть, так что сильно не ругайте.&lt;br /&gt;
[[Категория:Конфигурационные файлы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%B4%D0%B4%D0%BE%D0%BD%D0%BE%D0%B2_%D0%BD%D0%B0_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%86%D0%B8%D0%B8</id>
		<title>Добавление аддонов на оружие без редактирования анимации</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%B4%D0%B4%D0%BE%D0%BD%D0%BE%D0%B2_%D0%BD%D0%B0_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D0%B5_%D0%B1%D0%B5%D0%B7_%D1%80%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B0%D0%BD%D0%B8%D0%BC%D0%B0%D1%86%D0%B8%D0%B8"/>
				<updated>2017-03-12T11:12:37Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.71 (обсуждение) к версии 5.228.5.183&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Наш сервис предоставляет настоящие лайки на фотографии заказчиков, которые готовы платить за качество. &lt;br /&gt;
 &lt;br /&gt;
Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и получить за это деньги. &lt;br /&gt;
 &lt;br /&gt;
Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк, &lt;br /&gt;
 &lt;br /&gt;
Вам достаточно просто зарегистрироваться на нашем сервисе. &amp;gt; like-rabota.tk &amp;lt; &lt;br /&gt;
 &lt;br /&gt;
Вывод заработанных средств ежедневно в течении нескольких минут.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0</id>
		<title>Создание, описание особенностей и объяснение работы карт рельефа</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0"/>
				<updated>2017-03-12T11:12:22Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок OlegatoR (обсуждение) к версии 5.228.2.71&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ведущая компания в России и странах СНГ по продаже авиабилетов «Airline-online» &lt;br /&gt;
 &lt;br /&gt;
Крупнейшая международная компания по продаже А/В билетов &lt;br /&gt;
срочно набирает сотрудников на постоянную основу для несложной &lt;br /&gt;
работы через интернет, с ежедневными выплатами от 11 000 руб. &lt;br /&gt;
 &lt;br /&gt;
Работая в нашей компании Вы получаете: &lt;br /&gt;
 &lt;br /&gt;
- Соблюдение трудового кодекса &lt;br /&gt;
- Полный соцпакет, оплачиваемый отпуск, больничный, санаторий. &lt;br /&gt;
- Высокий доход &lt;br /&gt;
- Каждый наш сотрудник на дому гарантированно получает от 11 000 руб. в день. &lt;br /&gt;
- Гарантированные стабильные выплаты заработанных денег. &lt;br /&gt;
- Выплаты происходят ежедневно на банковские карты или электронные кошельки. &lt;br /&gt;
 &lt;br /&gt;
Пройдите регистрацию на нашем сайте. ( www.poisk-rabota.tk ) &lt;br /&gt;
 &lt;br /&gt;
Без вложений, опыт и профессиональные навыки не требуются!&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0</id>
		<title>Создание, описание особенностей и объяснение работы карт рельефа</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0"/>
				<updated>2017-03-12T11:11:47Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.71 (обсуждение) к версии 5.228.5.183&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Наш сервис предоставляет настоящие лайки на фотографии заказчиков, которые готовы платить за качество. &lt;br /&gt;
 &lt;br /&gt;
Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и получить за это деньги. &lt;br /&gt;
 &lt;br /&gt;
Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк, &lt;br /&gt;
 &lt;br /&gt;
Вам достаточно просто зарегистрироваться на нашем сервисе. &amp;gt; www.like-rabota.tk &amp;lt; &lt;br /&gt;
 &lt;br /&gt;
Вывод заработанных средств ежедневно в течении нескольких минут.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-03-12T11:07:12Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Отмена правки 14909, сделанной участником 5.228.5.183 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Наш сервис предоставляет настоящие лайки на фотографии заказчиков, которые готовы платить за качество. &lt;br /&gt;
 &lt;br /&gt;
Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и получить за это деньги. &lt;br /&gt;
 &lt;br /&gt;
Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк, &lt;br /&gt;
 &lt;br /&gt;
Вам достаточно просто зарегистрироваться на нашем сервисе. &amp;gt; like-rabota.tk &amp;lt; &lt;br /&gt;
 &lt;br /&gt;
Вывод заработанных средств ежедневно в течении нескольких минут.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-03-12T11:04:50Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок OlegatoR (обсуждение) к версии 5.228.5.183&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Наш сервис предоставляет настоящие лайки на фото заказчиков, которые готовы платить за качество. &lt;br /&gt;
 &lt;br /&gt;
Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и получить за это деньги. &lt;br /&gt;
 &lt;br /&gt;
Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк, &lt;br /&gt;
 &lt;br /&gt;
Вам достаточно просто зарегистрироваться на нашем сервисе. &amp;gt; www.like-rabota.tk &amp;lt; &lt;br /&gt;
 &lt;br /&gt;
Вывод заработанных средств ежедневно в течении нескольких минут.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-03-12T11:03:48Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.5.183 (обсуждение) к версии 77.37.157.206&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Наш сервис предоставляет настоящие лайки на фотографии заказчиков, которые готовы платить за качество. &lt;br /&gt;
 &lt;br /&gt;
Именно для этого мы и набираем удалённых сотрудников, которые будут выполнять работу, то есть ставить лайки и получить за это деньги. &lt;br /&gt;
 &lt;br /&gt;
Чтобы стать нашим удалённым сотрудником и начать ставить лайки, зарабатывая при этом 45 рублей за 1 поставленный лайк, &lt;br /&gt;
 &lt;br /&gt;
Вам достаточно просто зарегистрироваться на нашем сервисе. &amp;gt; like-rabota.tk &amp;lt; &lt;br /&gt;
 &lt;br /&gt;
Вывод заработанных средств ежедневно в течении нескольких минут.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B0%D1%81%D0%BF%D0%B0%D0%BA%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B8%D0%B3%D1%80%D1%8B_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BA%D0%BE%D0%BD%D0%B2%D0%B5%D1%80%D1%82%D0%B5%D1%80%D0%B0_%D0%BE%D1%82_%D0%91%D0%B0%D1%80%D0%B4%D0%B0%D0%BA%D0%B0</id>
		<title>Распаковка игры с помощью конвертера от Бардака</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B0%D1%81%D0%BF%D0%B0%D0%BA%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B8%D0%B3%D1%80%D1%8B_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BA%D0%BE%D0%BD%D0%B2%D0%B5%D1%80%D1%82%D0%B5%D1%80%D0%B0_%D0%BE%D1%82_%D0%91%D0%B0%D1%80%D0%B4%D0%B0%D0%BA%D0%B0"/>
				<updated>2017-02-28T04:01:21Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 46.0.218.231 (обсуждение) к версии 95.52.53.23&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Вступление ==&lt;br /&gt;
Данная статья предназначалась для новичков, которые только начинают моддить игру. В статье пойдёт речь о самом простом и главном - распаковке файлов игры S.T.A.L.K.E.R. '''Внимание!! Для распаковки игровых архивов необходимо ~ 5Gb свободного места на HDD'''&lt;br /&gt;
&lt;br /&gt;
===Программы===&lt;br /&gt;
Для успешной распаковки нам понадобится всего-лишь одна программа:&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/SDK/converter_25aug2008.7z Конвертер от Bardak'a]&amp;lt;br&amp;gt;&lt;br /&gt;
Я конечно не спорю, есть и другие аналоги, но именно о конвертере пойдёт речь в данном уроке.&lt;br /&gt;
&lt;br /&gt;
== Практика ==&lt;br /&gt;
Распаковываем архив ''converter_25aug2008.7z'' в папку с игрой (у меня например ''C:\Program Files\GSC World Publishing\S.T.A.L.K.E.R\'').&amp;lt;br&amp;gt;&lt;br /&gt;
После распаковки, в папке у вас должны появится файлы вроде ''converter.ini, converter.txt''.&amp;lt;br/&amp;gt;&lt;br /&gt;
Теперь создаём *.bat-файл ''(Создаём обычный *.txt файл, и меняем у него разрешение с .tхt на .bat)'';&lt;br /&gt;
кликаем по файлу, жмём &amp;quot;Изменить&amp;quot;. Должно появится окно Блокнота с пустым содержимым.&lt;br /&gt;
Пишем в него:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
converter.exe -unpack gamedata.db0 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db1 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db2 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db3 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db4 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db5 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db6 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db7 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db8 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.db9 -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.dba -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.dbb -2947ru -dir gamedata_unpacked&lt;br /&gt;
converter.exe -unpack gamedata.dbc -2947ru -dir gamedata_unpacked&lt;br /&gt;
pause&amp;lt;/pre&amp;gt;&lt;br /&gt;
Теперь объясняю:&amp;lt;br/&amp;gt;&lt;br /&gt;
'''converter.exe''' — запускает конвертер&amp;lt;br&amp;gt;&lt;br /&gt;
'''-unpack gamedata.dbX''' — ключ распаковки, gamedata.dbX - имя файла для распаковки, где Х - номер.&amp;lt;br&amp;gt;&lt;br /&gt;
'''-2247ru''' — версия игры (для английской версии можно заменить на -2247en)&amp;lt;br&amp;gt;&lt;br /&gt;
'''-dir ''gamedata_unpacked''''' — задаёт папку, в которую будут распаковыватся файлы игры. Если ничего не вписать - распакует в папку gamedata (стандартная папка).&amp;lt;br&amp;gt;&lt;br /&gt;
'''-xdb''' — для архивов формата '''.xdb'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Пример распаковки архива формата xdb.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
converter.exe -unpack -xdb gamedata.xdb -dir gamedata_unpacked&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В Блокноте нажимаем &amp;quot;Файл-&amp;gt;Сохранить&amp;quot;, запускаем батник.&lt;br /&gt;
Если всё правильно сделали, должно получится окошко вроде этого:&lt;br /&gt;
&amp;lt;center&amp;gt;[[Изображение:Stalker_bat.PNG]]&amp;lt;br&amp;gt;&lt;br /&gt;
''Рис.1 &amp;quot;Окно программы&amp;quot;.''&amp;lt;/center&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Теперь следует просто подождать минут 5-10, и процесс завершится. Удачи.&lt;br /&gt;
&lt;br /&gt;
== Авторы ==&lt;br /&gt;
Автор статьи - [[Участник:DarkST|DarkST]]&amp;lt;br&amp;gt;&lt;br /&gt;
Автор конвертера - [[Участник:bardak|bardak]]&lt;br /&gt;
&lt;br /&gt;
----------------------&lt;br /&gt;
Это моя первая статья, по этому просьба помидорами не кидать. :)&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0</id>
		<title>Создание, описание особенностей и объяснение работы карт рельефа</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0"/>
				<updated>2017-02-07T06:29:20Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.10.65 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье я постараюсь объяснить создание правильных карт ''bump'' и ''bump#'' с помощью '''Adobe Photoshop''' и '''X-ray SDK'''. Думаю, с этими дополнительными составляющими текстурами много кто сталкивался, много кто искал пути правильного их создания. На самом деле, чтобы правильно создать бамп-карты, необходимо освоить как техническую сторону вопроса (делать, так сказать, &amp;quot;по науке&amp;quot;), так и практическую (различные методики работы в фотошопе, обработка текстуры, исправление возможных косяков и т. д.). В данной статье больше всего внимания будет уделяться именно первому пункту, ведь в любом деле лучше сначала выучить основы, а потом, в том числе, самостоятельно обучаясь, получить опыт в практике, улучшить свое мастерство.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Немного о структуре и стилистике статьи, дабы все было в дальнейшем более понятно'''&amp;lt;br&amp;gt;&lt;br /&gt;
Многие игровые текстуры (в Сталкере - все) находятся в формате ''RGB''. Если кто не знает, есть понятие &amp;quot;каналы&amp;quot;. Их вкладка в ФШ находится справа, ''&amp;quot;Слоев&amp;quot;''. В ''RGB'' это:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - red (красный)&lt;br /&gt;
G - green (зеленый)&lt;br /&gt;
B - blue (синий)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При их &amp;quot;смешивании&amp;quot;, получаем нормальную окраску изображения. В общем, указания по каналам в данной статье будут даваться в виде, как блок выше. &lt;br /&gt;
Иногда в RGB каналов больше (можете сами попробовать добавлять в фотошопе). В игре используется канал ''Альфа 1'' (его еще просто &amp;quot;Альфой&amp;quot; кличут). У него есть, разумеется, свои особые функции. Итого, вот так будут выглядеть указания по каналам:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;R - что должно быть на красном канале&lt;br /&gt;
G - что на зеленом&lt;br /&gt;
B - что на синем&lt;br /&gt;
Alpha - что на Альфе&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Статья разделена на три основные части:&amp;lt;br&amp;gt;&lt;br /&gt;
1. '''Теория'''. Здесь будут описаны сами карты ''bump'' и ''bump#'', а также некоторые другие рабочие карты и элементы (не забудьте заглянуть в подраздел ''&amp;quot;Мини-словарь терминов статьи&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
2. '''Работа в фотошопе'''. Описание действий в фотошопе, которые необходимы для подготовки элементов бампа.&amp;lt;br&amp;gt;&lt;br /&gt;
3. '''SDK'''. Завершающая часть работы по бампу. Здесь собираются, регистрируются, настраиваются составляющие бампа, а в последствии, - создаются ''bump'' и ''bump#''.&lt;br /&gt;
==Теория==&lt;br /&gt;
Для начала попытаюсь объяснить структуру основных карт и разобрать основные понятия статьи. Всё ниже написанное не обязательно верно на все 100%.&lt;br /&gt;
&lt;br /&gt;
===Height Map (карта высот)===&lt;br /&gt;
Карта высот - сугубо служебная карта в Сталкере. Как отдельная текстура не встречается, однако, если вы делаете карту нормалей в фотошопе, то для начала нужно будет создать или &amp;quot;запечь&amp;quot; в специальных программах карту высот. В карте высот все построено на белых (высоты), черных (впадины), серых (плюс-минус ровные плоскости) оттенках. В целом, в основном выходит, что основная часть изображения - серая, в выпуклых местах оно светлее, а на месте впадин - темнее.&lt;br /&gt;
&lt;br /&gt;
===Normal Map (карта нормалей)===&lt;br /&gt;
Карту нормалей можно получить следующими способами:&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с высокополигональной модели в 3д-редакторе, в роде '''3ds Max''', '''zBrush'''...&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот с помощью одного из плагинов для '''Photoshop''' (плагин NVIDIA, плагин PixPlant, плагин xNormal)&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот в спец-прогах ('''xNormal''', '''PixPlant''', '''CrazyBump''')&amp;lt;br&amp;gt;&lt;br /&gt;
Если разбирать по каналам схематически, то выглядит так:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - ось X - указывает нормали влево и вправо (горизонтальные)&lt;br /&gt;
G - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
B - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При включенном ''RGB'' на каналах, смотрится как текстура в синих, фиолетовых, сиреневых, даже иногда розовых цветах. Нормал мапу очень и очень рекомендуется создавать для бампа (тем более, если она с хай-поли модели), а не использовать сокращенный вариант с картой высот (об этом узнаете в разделе СДК ниже). Нормал мапа, собственно, и предает текстуре различных объемных черт. В дальнейшем, после сборки в СДК, карта станет частью ''bump''.&lt;br /&gt;
&lt;br /&gt;
===bump===&lt;br /&gt;
&lt;br /&gt;
Карта ''bump'' представляет собой обычную карту нормалей в формате A(BGR) (типично для формата сжатия DXT5_nm). Разработчики использовали такой порядок по очень простой причине - DXT компрессия гораздо меньше &amp;quot;портит&amp;quot; текстуру, так как альфа-канал не подвергается компресии и остается практически в исходном виде. Поясню: еще раз гляньте на каналы карты нормалей. А теперь представьте, что на пустое изображения с каналами RGBA поставили все ту же карту нормалей, только перевернутую по каналам. То есть наполнение R с карты нормалей перешло на канал Альфа (А) карты ''bump'', G перешло в B, B перешло в G. Что касается канала R в бампе, туда поставили ''Specular Map'' (карту бликов). О ней можете подробней почитать в мини-словаре терминов.&amp;lt;br&amp;gt;&lt;br /&gt;
Также хочу напомнить, что в своем полном виде карта ''bump'' создается из карты нормалей + текстурой с спекуляром на Альфе в СДК. Такая-вот текстурная солянка. Думаю, вы знаете, что она в игре делает, но если вы столкнулись с данными терминами первый раз, то все довольно просто: карта делает текстуру объекта более красивой, объемной, с выпуклостями и впадинами, добавляет или запрещает отражение текстурой света от солнца, лампы, фонарика и т. д. Вот, например, новенькому листу металла было бы неплохо придать возможность отражать блики, а кирпичной текстуре задать впадины между кирпичиками. А вот дереву, допустим, никаких отражений света не надо, хотя высоты (впадины и выпуклости) добавить таки можно. Еще замечу, что бампы не нужны для текстур партиклов, текстур интерфейса и еще ряда специфических изображений. К основной текстуре привязывается через файл '''текстура.thm'''. Но по поводу этого не беспокойтесь, ведь файлы thm появляется при создании бампа/подключении бампа к текстуре в СДК.&lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
[[Изображение:Argb.png|300px|thumb|right|Каналы в карте bump]]&lt;br /&gt;
&amp;lt;pre&amp;gt;R - Specular map - карта интенсивности блика&lt;br /&gt;
G - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
B - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
Alpha - ось X - указывает нормали влево и вправо (горизонтальные)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===bump#===&lt;br /&gt;
&lt;br /&gt;
''Bump#'' - очень интересная карта, назначение которой для многих непонятно. Так как нагуглить какую-либо информацию насчет правильного названия мне не удалось, я называю ее просто &amp;quot;Normal error map&amp;quot;. Не знаю, используются ли подобные технологии в других играх, но встретить ее где-либо, кроме сталкера, мне не удалось. Эта карта &amp;quot;фиксит&amp;quot; ошибки сжатия DXT у бампа и генерируется только с помощью СДК, поэтому всякие непонятные действия некоторых пользователей, вроде вставки вместо нее обычной или обесцвеченной карты нормалей, а также описанного в статье Argus'a заливания серым со вставкой в альфа-канал карты высот, использовать нельзя. Выглядит как серое зашумленное изображение. Еще раз напоминаю, ''bump#'' создается &amp;lt;u&amp;gt;автоматически&amp;lt;/u&amp;gt; при генерировании ''bump'' в СДК. &lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - ошибки оси X карты нормалей&lt;br /&gt;
G - ошибки оси Y карты нормалей&lt;br /&gt;
B - ошибки оси Z карты нормалей&lt;br /&gt;
Alpha - карта высот; используется для параллакса, если использование оного было включено при настройке текстуры&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для сравнения:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:W.jpg|center|250px|thumb|C bump#]]||[[Изображение:Wo.jpg|center|250px|thumb|Без bump#, заметны артефакты]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Мини-словарь терминов===&lt;br /&gt;
Здесь будет находиться описание некоторых терминов, которые встречаются в статье.&lt;br /&gt;
'''Diffuse texture ака диффузная текстура ака диффуз''' - основная исходная текстура, для которой делаются дополнительные карты.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Specular Map ака карта бликов''' - карта, которая в последствии работы в СДК станет частью бампа (на красном канале). Отвечает за отражение текстурой света. Изготавливается либо с диффуза в Фотошопе, либо параллельно с диффузом в 3д-редакторе. На карте черным (и оттенками черного) обозначаются места, которые не будут отсвечивать свет), а белым (и оттенками) - которые будут отсвечивать.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Работа в фотошопе==&lt;br /&gt;
Здесь также понадобится '''NormalMapFilter''' от '''nVidia''', полагаю, у вас он уже установлен, так как он идет в комплекте с dds-плагином или другой удобный плагин (озвучены выше, в теории карты нормалей).&lt;br /&gt;
Все файлы сохраняются в tga 24 bits/pixel (если нету альфа-канала) или 32 bits/pixel (если есть альфа-канал). Перед сохранением следует перевести изображение из 16-битного в 8-битное.  &lt;br /&gt;
&lt;br /&gt;
===Карта высот===&lt;br /&gt;
&lt;br /&gt;
На карте высот белым цветом обозначены выпуклости, черным - впадины. Если бамп делается для текстур окружения, то можно начать работу с оригинальной (диффузной) текстуры, если же бамп делается для персонажа, то такой способ обычно неприемлем, зачастую из-за камуфляжа, который никак не должен сказываться на рельефе ткани (хотя, в принципе, если есть определенный опыт работы, прямые руки и старание, то подобных косяков можно избежать). &lt;br /&gt;
По сути, создание карты высот - процесс творческий, могу дать лишь несколько советов:&lt;br /&gt;
*Над картой высот работа должна проводиться строго в 16bits, причем с самого начала до финального экспорта в SDK[[Изображение:16bits.PNG|160px|thumb|right|Перевод в 16-битное изображение]]&lt;br /&gt;
*Качественного результата не будет, если просто взять и засунуть диффузную текстуру в генератор, не делайте этого. Придется тщательно поработать над картой высот.&lt;br /&gt;
*Не обязательно пытаться показать на карте высот все детали и рельеф сразу, их можно добавить позднее, когда будет сгенерирована карта нормалей.&lt;br /&gt;
[[Изображение:Увеличение_детализации.png|300px|thumb|left|Пример добавления деталей]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#696969&amp;quot;&amp;gt;(Пример сделан прямо во время написания статьи)&amp;lt;/span&amp;gt;&lt;br /&gt;
*Для карты высот, если делаете ее с диффуза, можно взять один из каналов ''RGB'' диффузной текстуры или же взять обесцвеченную. При первом варианте, выберите желаемый канал, выделяйте изображения, копируйте, вставляйте его в новый документ. Новое изображение будет в режиме ''&amp;quot;Градация серого&amp;quot;''. Рекомендую перевести опять в ''RGB'', так как не все плагины и фильтры читают ''&amp;quot;Градацию&amp;quot;''. При втором варианте, просто создайте дубликат изображения и нажмите ''Ctrl+Shift+U'' (''&amp;quot;Обесцветить&amp;quot;'').&lt;br /&gt;
*На текстуре карты высот можно сделать слой поверх фонового, на который нужно скопировать обесцвеченную инвертированную исходную текстуру. Звучит не очень, но это все не сложно. Берем диффуз, нажимаем ''Ctrl+I'' (инвертируем). Потом обесцвечиваем, как показано выше. Копируем на новый слой карты высот. Режим наложения выставляем ''&amp;quot;Перекрытие&amp;quot;'' (''&amp;quot;Overlay&amp;quot;''). Дальше еще можно сделать слой более прозрачным. В целом, смотрите, чтоб текстура была сбалансированной в плане плоскостей. Ровная часть должна быть заполнена серым оттенком.&lt;br /&gt;
*Очень пригодятся в этом случае инструменты ''&amp;quot;Осветлитель&amp;quot;'' и ''&amp;quot;Затемнитель&amp;quot;''. &lt;br /&gt;
*Поверх всего можно добавить еще один слой, на котором будете использовать инструменты в роде &amp;quot;Кисти&amp;quot;.&lt;br /&gt;
====Metro 2033 (если кому интересно)====&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Metro_example.png|300px|thumb|left|Пример получаемой карты нормалей из Metro 2033]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
В метро вместо карт нормалей, как обычно бывает в большинстве игр, используется карта высот - файлы с постфиксом ''_bump''. Они есть только в том случае, если вы распаковывали игру самостоятельно, большая часть сборщиков &amp;quot;Архивов моделей&amp;quot; их в архив не добавляет.&lt;br /&gt;
&amp;quot;Состав&amp;quot; карты высот Метро 2033:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - пустой канал&lt;br /&gt;
G - Specular map - карта интенсивности блика&lt;br /&gt;
B - пустой канал&lt;br /&gt;
Alpha - карта высот&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
Создание происходит следующим образом: берем карту высот, открываем фильтр, задаем настройки по усмотрению. Далее получаем готовую карту нормалей. Нужно осмотреть карту, чтоб там не было мелких не нужных горбиков и прочих недостатков. Скорее всего, все можно будет решить размытием в некоторых местах. Еще, как вариант, чудесная методика размытия, при которой изображение все равно остается более четким:&amp;lt;br&amp;gt;&lt;br /&gt;
1. Дублируем фоновый слой.&amp;lt;br&amp;gt;&lt;br /&gt;
2. Дубликату выставляем режим ''&amp;quot;Перекрытие&amp;quot;''.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Применяем один из фильтров размытия (к примеру, ''&amp;quot;Размытие по гауссу&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
4. Если надо, дублируем этот слой еще пару раз.&lt;br /&gt;
&lt;br /&gt;
===Specular Map===&lt;br /&gt;
Данную карту создавать не сложно: взять обесцвеченный диффуз и обработать темным оттенком те регионы, которые не будут отражать свет, а светлым - которые будут. Чем интенсивней оттенок, тем сильнее эффект.&lt;br /&gt;
&lt;br /&gt;
==SDK==&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
&lt;br /&gt;
При наличии уже готовой карты нормалей, изготовленной вами, из другой игры, '''zBrush''' или любой другой программы высокополигонального 3d моделирования, остается только добавить ее в '''SDK'''. ДЛя чего регистрировать в СДК? Для того, чтоб потом совместить нормал мапу с заготовкой для бампа и получить бамп.&lt;br /&gt;
Параметры:&lt;br /&gt;
*'''0.4''':&lt;br /&gt;
Type: 2D Texture, Format: 32 bit (8:8:8:8), MipMap Filter: Kaiser (здесь уже по желанию, я всегда использую Kaiser)&lt;br /&gt;
[[Изображение:0.4_nmap.png|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
*'''0.5/0.6, 0.7''':&lt;br /&gt;
Type: Normal Map, MipMap Filter: Kaiser&lt;br /&gt;
[[Изображение:0.5-0.7_nmap.png‎|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
===Bump===&lt;br /&gt;
&lt;br /&gt;
С использованием отдельной карты нормалей bump карта изготавливается очень просто (заготовку для бампа лучше назвать '''текстура_bump.tga''' и поместить в '''editors/import'''):&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - залить серым цветом, RGB = 128,128,128&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Параметры добавления в SDK не зависят от версии:&amp;lt;br/&amp;gt;&lt;br /&gt;
Type: Bump Map, в Special Normal Map указываем добавленную ранее карту нормалей.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_st.png‎|150px|thumb|left|В фотошопе]]||[[Изображение:0.4_bump.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
Если же вдруг возникло желание обойтись без дополнительной карты нормалей, то добавление в SDK и каналы меняются:&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - карта высот&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Это единственный вариант, когда параметр ''Virtual height'' действительно влияет на интенсивность получаемого бампа.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_map_wo_n.png|200px|thumb|left|В фотошопе]]||[[Изображение:Bump_wo_n_sdk.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==В заключение + дополнительная информация==&lt;br /&gt;
Пара полезных ссылок.&amp;lt;br&amp;gt;&lt;br /&gt;
1. [[Файл_формата_.thm]] - статья про привязку бампа к текстуре.&amp;lt;br&amp;gt;&lt;br /&gt;
2. [https://www.youtube.com/watch?v=TrkOAIZqKTA Отличный видеоурок Андрея Непряхина (новый)]&amp;lt;br&amp;gt;&lt;br /&gt;
Всем спасибо за внимание! Успехов!&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
'''lafugix''' - создатель статьи&amp;lt;br&amp;gt;&lt;br /&gt;
'''FantomICW''' - ремейк статьи (переписал на более понятный язык, дополнил материал)&lt;br /&gt;
[[Категория:Texturing]][[Категория:SDK]][[Категория:SDK_CS]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B9_%D1%81%D0%B5%D1%82%D0%BA%D0%B8_%D0%BE%D0%BF%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B3%D0%BE_%D0%BF%D1%80%D0%B8%D1%86%D0%B5%D0%BB%D0%B0</id>
		<title>Добавление новой сетки оптического прицела</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B9_%D1%81%D0%B5%D1%82%D0%BA%D0%B8_%D0%BE%D0%BF%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B3%D0%BE_%D0%BF%D1%80%D0%B8%D1%86%D0%B5%D0%BB%D0%B0"/>
				<updated>2017-02-07T06:29:18Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.10.65 (обсуждение) к версии VipDeman&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Сегодня мы создадим СОВЕРШЕННО новую сетку прицела и пропишем ее скажем, Гауссу. То что вам понадобится по ходу действия:&lt;br /&gt;
''Adobe Photoshop CS2'', или ''Paint.Net'' - для рисование самой текстуры.&lt;br /&gt;
Распакованная игра, а именно папка configs&lt;br /&gt;
Желание и лишние 15 минут :)&lt;br /&gt;
Ну что, начнем ?&lt;br /&gt;
&lt;br /&gt;
== '''Рисуем текстуру''' ==&lt;br /&gt;
 &lt;br /&gt;
Открываем фотошоп. Лично я, чтобы не тратить время открыл уже готовый прицел и изменил его. В конечном итоге получилось такое:&lt;br /&gt;
[[Изображение:Setka1.jpg|870px]]&lt;br /&gt;
&lt;br /&gt;
Я не когда не был профессиональным фотошопером, так что сделал, как есть :)&lt;br /&gt;
&lt;br /&gt;
Сохраняем работу, скажем '''textures/rfsb_wpn_gauss_scope.dds'''&lt;br /&gt;
&lt;br /&gt;
Все, с текстурой мы закончили, передём к правке конфигов. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Конфиги ==&lt;br /&gt;
&lt;br /&gt;
Заходим в '''configs/ui/scopes.xml'''&lt;br /&gt;
&lt;br /&gt;
Видим что-то типа этого:&lt;br /&gt;
[[Изображение:Setka2.jpg|870px]]&lt;br /&gt;
&lt;br /&gt;
Теперь нам требуется создать еще один блок, для это требуется вставить после '''&amp;lt;/wpn_crosshair_bino&amp;gt;, но перед &amp;lt;/w&amp;gt; следущее:'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;rfsb_wpn_gauss_scope x=&amp;quot;0&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;1024&amp;quot; height=&amp;quot;768&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;auto_static x=&amp;quot;0&amp;quot; y=&amp;quot;0&amp;quot; width=&amp;quot;1024&amp;quot; height=&amp;quot;768&amp;quot; stretch=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;texture&amp;gt;wrfsb_wpn_gauss_scope&amp;lt;/texture&amp;gt;&lt;br /&gt;
    &amp;lt;/auto_static&amp;gt;&lt;br /&gt;
  &amp;lt;/rfsb_wpn_gauss_scope&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
У меня получилось так:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Setka3.jpg|870px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Такс, прицел мы добавили, осталось прописать его Гауссу. Для этого откроем его конфиг '''configs/weapons/w_gauss.ltx''' &lt;br /&gt;
&lt;br /&gt;
Ищем строку '''scope_texture'''   пропишем называние нового прицела, а именно (я прописал так)&lt;br /&gt;
'''&lt;br /&gt;
rfsb_wpn_gauss_scope'''&lt;br /&gt;
&lt;br /&gt;
Все, теперь идем тестировать в игру, думаю, все должно получиться :)&lt;br /&gt;
&lt;br /&gt;
[[Категория: Конфигурационные файлы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-02-07T06:29:18Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.10.65 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье мы научимся создавать новые образцы вооружения. Для начала, мы будем использовать модели из оригинальной игры. Если вы хотите создать оружие, имеющее уникальный внешний вид, ознакомьтесь с [[Создание моделей и их добавление в игру|уроком]] по созданию моделей.&lt;br /&gt;
&lt;br /&gt;
Добавим в игру '''АК101'''.&lt;br /&gt;
&lt;br /&gt;
==Внешний вид==&lt;br /&gt;
&lt;br /&gt;
Позаботимся о том, чтобы наше оружие отличалось внешне от того же '''АК74'''.&lt;br /&gt;
&lt;br /&gt;
===Текстуры===&lt;br /&gt;
&lt;br /&gt;
Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным [[Изменение текстур#Изменение текстур моделей|здесь]]. Итак, основываясь на текстуре '''АК74''', мы сделали вот такую текстуру:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 texture.jpg]]&lt;br /&gt;
&lt;br /&gt;
Файлы текстур мы назвали:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak10.dds'''&lt;br /&gt;
* '''wpn_ak10_bump#.dds'''&lt;br /&gt;
* '''wpn_ak10_bump.dds'''&lt;br /&gt;
&lt;br /&gt;
===Модели===&lt;br /&gt;
&lt;br /&gt;
Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от '''АК74'''. Скопируем папку:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\meshes\weapons\ak74\''' &lt;br /&gt;
&lt;br /&gt;
И назовем её '''ak-101'''. Содержимое, соответственно, переименуем в:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak101.ogf'''&lt;br /&gt;
* '''wpn_ak101_hud.ogf'''.&lt;br /&gt;
&lt;br /&gt;
Теперь пропишем в эти модели созданные нами текстуры. Способ описан [[Изменение текстур#Создание новых visual для использования с новыми объектами|здесь]]'''.&lt;br /&gt;
&lt;br /&gt;
P.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия.&lt;br /&gt;
Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее.&lt;br /&gt;
&lt;br /&gt;
Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно кладите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так:&lt;br /&gt;
argument:can not find section 'название вашего оружия'&lt;br /&gt;
&lt;br /&gt;
===Иконки===&lt;br /&gt;
&lt;br /&gt;
Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан [[Изменение текстур#Изменение иконок предметов|здесь]].&lt;br /&gt;
&lt;br /&gt;
Вот, что получилось в конечном итоге:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 icon.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Конфиги==&lt;br /&gt;
&lt;br /&gt;
Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим '''АК101''' на базе конфигов '''АК74'''. &lt;br /&gt;
&lt;br /&gt;
===Свойства оружия===&lt;br /&gt;
&lt;br /&gt;
Скопируем файл из папки:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\weapons\ak74.ltx'''&lt;br /&gt;
&lt;br /&gt;
Назовем его '''ak101.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Отредактируем свойства по своему усмотрению (но лучше - в соответствии с достоверной информацией о характеристиках оружия, т.к. '''АК101''' - всё-таки оружие реально существующее). Редактирование конфигов оружия подробно описано в отдельном [[Редактирование оружия|уроке]]. В данном случае конфиг был составлен таким образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
[wpn_ak101]:identity_immunities&lt;br /&gt;
GroupControlSection		= spawn_group&lt;br /&gt;
discovery_dependency	= &lt;br /&gt;
$spawn              	= &amp;quot;weapons\ak-101&amp;quot;	; name and section in level editor&lt;br /&gt;
$npc					= on				&lt;br /&gt;
$prefetch 				= 8&lt;br /&gt;
scheduled				= off               ;[] option for ALife Simulator&lt;br /&gt;
cform               	= skeleton&lt;br /&gt;
class               	= WP_AK74			; class of the weapon that corresponding to CPP class&lt;br /&gt;
min_radius          	= 30				; [] for AI&lt;br /&gt;
max_radius          	= 100				; [] for AI&lt;br /&gt;
description				= enc_weapons1_wpn-ak101&lt;br /&gt;
	&lt;br /&gt;
ef_main_weapon_type		= 2&lt;br /&gt;
ef_weapon_type			= 6&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
holder_range_modifier	= 1.0		       ; во сколько раз увеличивается eye_range &lt;br /&gt;
holder_fov_modifier		= 0.7              ; во сколько раз увеличивается eye_fov&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
cost					= 2;4000				&lt;br /&gt;
weapon_class			= assault_rifle		&lt;br /&gt;
	&lt;br /&gt;
ammo_limit				= 210				&lt;br /&gt;
ammo_elapsed			= 30				&lt;br /&gt;
	&lt;br /&gt;
ammo_mag_size			= 30				&lt;br /&gt;
fire_modes				= 1, -1&lt;br /&gt;
&lt;br /&gt;
ammo_class				= ammo_5.56x45_ss190, ammo_5.56x45_ap	  &lt;br /&gt;
grenade_class			= ammo_vog-25, ammo_vog-25p			&lt;br /&gt;
launch_speed			= 0&lt;br /&gt;
&lt;br /&gt;
hand_dependence			= 1									&lt;br /&gt;
single_handed			= 0&lt;br /&gt;
	&lt;br /&gt;
slot 					= 2									&lt;br /&gt;
animation_slot			= 2									&lt;br /&gt;
inv_name	        	= wpn-ak101								&lt;br /&gt;
inv_name_short			= wpn-ak101&lt;br /&gt;
inv_weight			= 3.3								&lt;br /&gt;
&lt;br /&gt;
inv_grid_width			= 5	 &lt;br /&gt;
inv_grid_height			= 2	    &lt;br /&gt;
inv_grid_x				= 11  &lt;br /&gt;
inv_grid_y				= 29&lt;br /&gt;
&lt;br /&gt;
kill_msg_x			= 0&lt;br /&gt;
kill_msg_y			= 28&lt;br /&gt;
kill_msg_width		= 84&lt;br /&gt;
kill_msg_height		= 28&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
;params of weapon recoil&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_base			= 0.15;0.2		&lt;br /&gt;
control_inertion_factor			= 1.1f;1.25f&lt;br /&gt;
&lt;br /&gt;
;отдача&lt;br /&gt;
cam_relax_speed         		=6;5;3.5; 0.15		&lt;br /&gt;
cam_dispersion          		= 0.1;0.15		&lt;br /&gt;
cam_dispersion_inc			= 0.2;0.3		&lt;br /&gt;
cam_dispertion_frac			= 0.8;0.9		&lt;br /&gt;
cam_max_angle				= 10.0	    	&lt;br /&gt;
cam_max_angle_horz			= 20.0		&lt;br /&gt;
cam_step_angle_horz			= 1.1;1		&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_condition_factor 	= 5.7;5	    	 &lt;br /&gt;
misfire_probability 		= 0.0055;0.003	 &lt;br /&gt;
misfire_condition_k			= 0.06;0.05&lt;br /&gt;
condition_shot_dec 			= 0.00035;0.0001	&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
fire_point             		=  0,0.216,0.638			 &lt;br /&gt;
fire_point2            		=  0,0.216,0.730			&lt;br /&gt;
&lt;br /&gt;
flame_particles				= weapons\generic_weapon05	&lt;br /&gt;
smoke_particles				= weapons\generic_shoot_00&lt;br /&gt;
grenade_flame_particles		= weapons\generic_weapon01&lt;br /&gt;
	&lt;br /&gt;
shell_point		 			= 0,0.216,0.174				&lt;br /&gt;
shell_particles	 			= weapons\generic_shells	&lt;br /&gt;
&lt;br /&gt;
PDM_disp_base 				= 1.0&lt;br /&gt;
PDM_disp_vel_factor 		= 1.3&lt;br /&gt;
PDM_disp_accel_factor 		= 1.3&lt;br /&gt;
PDM_crouch	 				= 1.0&lt;br /&gt;
PDM_crouch_no_acc 			= 1.0&lt;br /&gt;
&lt;br /&gt;
; ttc&lt;br /&gt;
hit_power                	= 0.36, 0.4, 0.43, 0.46		&lt;br /&gt;
hit_impulse		 			= 140			&lt;br /&gt;
hit_type 					= fire_wound 	&lt;br /&gt;
fire_distance            	= 1700		&lt;br /&gt;
bullet_speed				= 1000		&lt;br /&gt;
rpm                      	= 750		&lt;br /&gt;
&lt;br /&gt;
use_aim_bullet				= true		&lt;br /&gt;
time_to_aim					= 1.0	&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
silencer_hit_power       	= 0.38&lt;br /&gt;
silencer_hit_impulse	 	= 120&lt;br /&gt;
silencer_fire_distance   	= 250&lt;br /&gt;
silencer_bullet_speed	 	= 600&lt;br /&gt;
&lt;br /&gt;
hud                      	= wpn_ak101_hud				&lt;br /&gt;
&lt;br /&gt;
position         	        = -0.026,-0.172,0			&lt;br /&gt;
orientation      	        = 0,0,0						&lt;br /&gt;
&lt;br /&gt;
;--STRAP PARAMETERS-----------------------------------------------------------------&lt;br /&gt;
strap_position         		= -0.16,-0.40,0.15			&lt;br /&gt;
strap_orientation      		= -10,-5,10					&lt;br /&gt;
strap_bone0					= bip01_spine2&lt;br /&gt;
strap_bone1					= bip01_spine1&lt;br /&gt;
&lt;br /&gt;
visual         		        = weapons\ak-101\wpn_ak101		&lt;br /&gt;
&lt;br /&gt;
light_color					= 0.6,0.5,0.3				&lt;br /&gt;
light_range					= 5							&lt;br /&gt;
light_var_color				= 0.05						&lt;br /&gt;
light_var_range				= 0.5&lt;br /&gt;
light_time 					= 0.2						&lt;br /&gt;
&lt;br /&gt;
ph_mass						= 5							&lt;br /&gt;
&lt;br /&gt;
;addons&lt;br /&gt;
scope_status				= 2							&lt;br /&gt;
silencer_status				= 2							&lt;br /&gt;
grenade_launcher_status		= 0;2							&lt;br /&gt;
&lt;br /&gt;
zoom_enabled				= true						&lt;br /&gt;
scope_zoom_factor	    	= 50						&lt;br /&gt;
&lt;br /&gt;
scope_name 					= wpn_addon_scope			&lt;br /&gt;
scope_x 					= 42						&lt;br /&gt;
scope_y 					= 3&lt;br /&gt;
silencer_name  				= wpn_addon_silencer		&lt;br /&gt;
silencer_x 					= 218						&lt;br /&gt;
silencer_y 					= 13					&lt;br /&gt;
grenade_launcher_name 		= wpn_addon_grenade_launcher&lt;br /&gt;
grenade_launcher_x 			= 116						&lt;br /&gt;
grenade_launcher_y 			= 23&lt;br /&gt;
&lt;br /&gt;
;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))&lt;br /&gt;
snd_draw					= weapons\ak74_draw&lt;br /&gt;
snd_holster					= weapons\generic_holster&lt;br /&gt;
snd_shoot					= weapons\ak74_shot_0&lt;br /&gt;
snd_shoot1					= weapons\ak74_shot_1&lt;br /&gt;
snd_shoot2					= weapons\ak74_shot_2&lt;br /&gt;
snd_shoot3					= weapons\ak74_shot_3		&lt;br /&gt;
snd_empty					= weapons\gen_empty, 0.5&lt;br /&gt;
snd_reload					= weapons\ak74_reload, 0.7, 0.35&lt;br /&gt;
snd_shoot_grenade			= weapons\gen_grenshoot&lt;br /&gt;
snd_reload_grenade			= weapons\gen_grenload, 1.0, 0.8&lt;br /&gt;
snd_switch					= weapons\groza_switch, 1.0, 0.5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
;silencer_flame_particles 	= weapons\generic_weapon01&lt;br /&gt;
silencer_smoke_particles 	= weapons\generic_shoot_00&lt;br /&gt;
&lt;br /&gt;
snd_silncer_shot			= weapons\w_ak74_shot1 &lt;br /&gt;
&lt;br /&gt;
silencer_light_color		= 0.6,0.5,0.3&lt;br /&gt;
silencer_light_range		= 0.01&lt;br /&gt;
silencer_light_var_color	= 0.05&lt;br /&gt;
silencer_light_var_range	= 0.5&lt;br /&gt;
silencer_light_time 		= 0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
;-- HUD DESCRIPTION&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
[wpn_ak101_hud]&lt;br /&gt;
allow_inertion				= true&lt;br /&gt;
&lt;br /&gt;
;similar to corresponding params in weapon section but for 1st person view&lt;br /&gt;
&lt;br /&gt;
shell_point					= -0.065000,0.000000,-0.045000&lt;br /&gt;
shell_dir			     	= 0.0, 1.0, 0.0&lt;br /&gt;
&lt;br /&gt;
fire_point               	= 0.09,0.020,-0.06&lt;br /&gt;
fire_point2              	= 0.30, 0.00, 0.05&lt;br /&gt;
fire_bone               	= wpn_body&lt;br /&gt;
&lt;br /&gt;
orientation             	= 0, 0, 0		&lt;br /&gt;
position                	= 0, 0, 0.05&lt;br /&gt;
visual                  	= weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
&lt;br /&gt;
grenade_bone            	= wpn_grenade	&lt;br /&gt;
&lt;br /&gt;
; animation names&lt;br /&gt;
&lt;br /&gt;
anim_idle					= idle&lt;br /&gt;
anim_idle_aim				= idle_aim&lt;br /&gt;
anim_reload					= reload&lt;br /&gt;
anim_draw					= draw_wo_gl&lt;br /&gt;
anim_holster				= holster_wo_gl&lt;br /&gt;
anim_shoot					= shoot&lt;br /&gt;
			&lt;br /&gt;
; animation names&lt;br /&gt;
; attached grenade launcher [GRENADE fire mode]&lt;br /&gt;
anim_idle_g					= idle_grenade&lt;br /&gt;
anim_idle_g_aim				= idle_g_aim&lt;br /&gt;
anim_reload_g				= reload_grenade&lt;br /&gt;
anim_shoot_g				= shoot_grenade&lt;br /&gt;
anim_switch_grenade_on		= switch_grenade&lt;br /&gt;
anim_switch_grenade_off		= switch_grenade_off&lt;br /&gt;
anim_draw_g					= draw_grenade_mode&lt;br /&gt;
anim_holster_g				= holster_grenade_mode&lt;br /&gt;
&lt;br /&gt;
; attached grenade launcher [NORMAL fire mode]&lt;br /&gt;
anim_idle_gl				= idle_w_gl&lt;br /&gt;
anim_idle_gl_aim			= idle_w_gl_aim&lt;br /&gt;
anim_reload_gl				= reload_w_gl&lt;br /&gt;
anim_draw_gl				= draw_w_gl&lt;br /&gt;
anim_holster_gl				= holster_w_gl&lt;br /&gt;
anim_shoot_gl				= shoot_w_gl&lt;br /&gt;
anim_idle_sprint			= idle_sprint&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;HUD offset in zoom mode (to all)&lt;br /&gt;
;(use CONSOLE: hud_adjust_mode 0,1,2, then keys WSADQE and P to show current value in console)&lt;br /&gt;
&lt;br /&gt;
zoom_offset			= -0.112400,0.016800,-0.115000&lt;br /&gt;
zoom_rotate_x		= 0.000200&lt;br /&gt;
zoom_rotate_y		= 0.017500&lt;br /&gt;
&lt;br /&gt;
zoom_hide_crosshair	= true						&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in NORMAL shoot mode&lt;br /&gt;
&lt;br /&gt;
grenade_normal_zoom_offset			= -0.112500,0.014000,0.000000&lt;br /&gt;
grenade_normal_zoom_rotate_x		= -0.000900&lt;br /&gt;
grenade_normal_zoom_rotate_y		= 0.017200&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in GRENADE mode&lt;br /&gt;
&lt;br /&gt;
grenade_zoom_offset			= -0.039600,-0.433100,0.000000&lt;br /&gt;
grenade_zoom_rotate_x		= -0.538700&lt;br /&gt;
grenade_zoom_rotate_y		= -0.033800&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Регистрация===&lt;br /&gt;
&lt;br /&gt;
Итак, с характеристиками разобрались. Теперь зарегистрируем оружие в файле '''weapons.ltx'''. Для этого пропишем в него строку следующего вида:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#include &amp;quot;w_ak101.ltx&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также, необходимо прописать модели, используемые для отображения оружия, в '''prefetch.ltx''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[...]&lt;br /&gt;
weapons\abakan\wpn_abakan&lt;br /&gt;
weapons\abakan\wpn_abakan_hud&lt;br /&gt;
weapons\ak-101\wpn_ak101&lt;br /&gt;
weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
weapons\ak74\wpn_ak74&lt;br /&gt;
weapons\ak74\wpn_ak74_hud&lt;br /&gt;
[...]&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Так же не забудте в файле '''mp_ranks.ltx''' прописать после '''available_items''' (которое внизу)&lt;br /&gt;
прописать название своего оружия. Это предотвратит вылет при убийстве ГГ а также вылет при выкидывании оружия из инвентаря.&lt;br /&gt;
&lt;br /&gt;
==Добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Осталось добавить оружие в игру. &lt;br /&gt;
&lt;br /&gt;
Выдайте его некоторым NPC ([[Редактирование NPC#Практика|как это сделать?]]), расширьте ассортимент торговцев ([[Редактирование торговцев#Расширяем ассортимент|как это сделать?]]).&lt;br /&gt;
&lt;br /&gt;
А вот как оно будет выглядеть в игре:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Russian_Guns_3.jpeg]]&lt;br /&gt;
&lt;br /&gt;
P.S. При создании нового оружия можно допустить некоторые ошибки в конфиге, что приведёт к вылету игры.&lt;br /&gt;
При таком случае сразу после вылета игры заходим в любой текстовый редактор и нажимаем клавиши Ctrl+V (вставить) и внизу можно увидеть из-за какой ошибки вылетела игра, а там уже дело техники исправить ошибку...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CModelPool::Instance_Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp&lt;br /&gt;
Line          : 111&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find model file 'weapons\gaussmod\wpn_gauss_hud.ogf'.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В данном примере видно, что либо вы не создали папку с необходимой моделью оружия, либо неправильно прописан путь к нужному файлу...&lt;br /&gt;
&lt;br /&gt;
(Чтобы в игре название и описание оружия были не от АК-74 а от нашей АК-101 делаем как написано в этой [http://stalkerin.gameru.net/wiki/index.php/%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BE%D0%B2 статье], всё начиная с &amp;quot;''И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test''&amp;quot; вам понадобится.)&lt;br /&gt;
Информацию о оружии можно найти [http://world.guns.ru здесь.]&lt;br /&gt;
&lt;br /&gt;
'''АК-101''' - ''Автомат Калашникова АК-101 является экспортной модификацией штатного автомата Российской армии АК-74М. Главным (и фактически единственным) отличием АК-101 от АК-74М является калибр - автомат &amp;quot;сотой&amp;quot; серии использует патроны калибра 5.56мм (5.56х45 НАТО) и соответствующие магазины, в остальном автоматы идентичны.''&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана: &lt;br /&gt;
*[[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
&lt;br /&gt;
Статья подправлена:&lt;br /&gt;
*[[Участник:Хемуль04|Хемуль04]]&lt;br /&gt;
&lt;br /&gt;
По материалам мода [[Mod:Russian Guns|Russian Guns]] за авторством: &lt;br /&gt;
*[[Участник:Tony|Tony]]&lt;br /&gt;
*[[Участник:lez0|lez0]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
&lt;br /&gt;
Когда будете прописыватьв конфиге значения &amp;quot;inv_grid_y&amp;quot; и &amp;quot;inv_grid_x&amp;quot; имейте в виду, что отсчет по сетке идет с верхнего левого угла и указывать нужно верхний левый угол картинки, которая должна отображатся в инвентаре. То есть координаты самого первого угла будут 0;0. Самая первая винтовка в файле ...\S.T.A.L.K.E.R\gamedata\textures\ui\ui_icon_equipment.dds это - СВД. И если вы посмотрите ее конфигурационный файл то увидете, что там указаны значения inv_grid_x = 0   inv_grid_y = 0.  Отсчет по оси X идет по горизонтали с лева на право, а по оси Y - сверху вниз по возрастающей. Но считать с начала сетки - очень не удобно, поэтому вычисляйте координаты вашего обьекта по известным координатам уже существующего и реально правильно отображаемого файла в игре. Например мы имеем inv_grid_x= 5 inv_grid_y= 9 для fn2000(координаты верхнего левого угла) и мы хотим узнать координаты гранатф ф1, которая находится рядом. Для этого удобно использовать фотошоп с сеткой 50 на 50 пикселей. (как ее сделать описано по ссылке в статье к которой написана эта поправка.) И так мы видим что граната находится сразу справа порсле винтовки. То есть на 4-й клетке после квадрата угла винтовки без его учета. Она находится спраа, а значит нужно по оси X к 5 прибавить 4, и получится 9. По оси Y координтаы не изменились так как они находятся на одной линии с винтовкой. Таким образом получает коордитаны гранаты 9 по Х и 9 по Y. Если мы посмотрим конфиг гранаты то увидим там &amp;quot;inv_grid_x= 9&amp;quot; &amp;quot;inv_grid_y= 9&amp;quot;. То что и соответствует тому, что мы высчитали. :) Удачи.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83</id>
		<title>3dsmax. Создание моделей и их добавление в игру</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83"/>
				<updated>2017-02-06T15:56:29Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.0.250 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Создание моделей и добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Итак, для работы нам понадобятся следующие инструменты:&lt;br /&gt;
&lt;br /&gt;
* '''Autodesk 3D Studio Max''' версий '''6''','''7''' или '''8''' (на других вроде плагин экспорта не работает, но я не уверен)&lt;br /&gt;
* '''3DS Max STALKER Plug-In''' для экспорта в формат object (.obj)&lt;br /&gt;
* '''S.T.A.L.K.E.R. SDK'''&lt;br /&gt;
&lt;br /&gt;
При создании собственных текстур потребуется:&lt;br /&gt;
&lt;br /&gt;
* '''Adobe Photoshop'''&lt;br /&gt;
* '''DDS-плагин''' от nVidia&lt;br /&gt;
&lt;br /&gt;
Приступим к креативу. Пример будем рассматривать на примитивной модели кубика.&lt;br /&gt;
&lt;br /&gt;
'''1)''' Запускаем 3DS Max и создаем наш кубик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''2)''' Далее накладываем на него текстуру. Запускаем редактор материалов (кнопка «М» по дефолту), выбираем тип материала, нажав на кнопку Standart (1), и в раскрывшемся списке выбираем S.T.A.L.K.E.R. Mtl (2), далее, в свитке Blinn Basic Parameters, щелкаем на маленькую кнопку напротив Diffuse (3), в раскрывшемся списке выбираем Bitmap (4), и выбираем требуемую текстуру из папки gamedata нашего SDK. Для примера я выбрал ...gamedata\textures\wpn\wpn_pkm_lenta.dds.&lt;br /&gt;
&lt;br /&gt;
Далее назначаем нашу текстуру для кубика и настраиваем ее внешний вид либо в самом Редакторе Материалов, либо, если объект сложный, - модификатором Unwrap UVW (кто работает в 3DS Max - знает). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''3)''' После текстуривания нашего объекта отмасштабируем его до нормальных размеров игры (для облегчения этого процесса я импортирую в сцену какую-нибудь модель из игры, например, АК-74), и приступаем к созданию костей. &lt;br /&gt;
&lt;br /&gt;
Идем в Create -&amp;gt; Systems -&amp;gt; Bones и создаем пару костей внутри нашей коробки приблизительно такого вида (см. рисунок). Первую косточку обзываем, например, kost, вторую можно не трогать и вообще ее можно потом удалить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_3.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''4)''' Теперь выделяем нашу коробку и в закладке Modify добавляем ей модификатор Physique (1). В свертке модификатора жмем кнопку Attach to Node (2), кликаем по нашей косточке с именем kost и в развернувшемся списке выбираем Riquid (3) и жмем Initialize (4) (см. рисунок).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_4.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''5)''' Далее, в свитке Physique level of Detail меняем параметр Skin Update на Rigid, в дереве модификатора Physique выбираем вершины нашего объекта (Vertex), выделяем все вершины нашего кубика при нажатой кнопке Select, выбираем тип вершин Rigid (4), жмем кнопку Assign to Link (5) и кликаем по нашей косточке.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_5.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''6)''' Теперь все готово к экспорту в формат object (.obj), который понимает Actor Editor из SDK. Идем на закладку Utilites и жмем кнопку S.T.A.L.K.E.R. Export (1) (кнопка эта у вас там будет находиться при правильной настройке плагина). Выделяем наш кубик и жмем кнопку Export Skin. Сохраняем, наблюдая лог в окошке на отсутствие ошибок.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_6.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''7)''' Запускаем Actor Editor из комплекта SDK и загружаем нашу сохраненную модель и видим приблизительно следующую картину:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_7.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''8)''' В панели Object Items видим характеристики нашего объекта (нас интересуют только Surfaces и Bones). В Surfaces задаются материалы и шейдеры для нашего объекта. Раскрываем список Surfaces, выбираем 01-Default (это я забыл материал в Максе обозвать) и устанавливаем параметры:&lt;br /&gt;
&lt;br /&gt;
* '''Shader:''' models/model &lt;br /&gt;
* '''Compile:''' def_shaders/def_vertex&lt;br /&gt;
* '''Game Mtl:''' objects/small_box&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_8.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''9)''' Видимо использовать можно и другие, но я еще не разобрался до конца.&lt;br /&gt;
&lt;br /&gt;
Далее настраиваем нашу косточку. Раскрываем список Bones, выбираем нашу kost. Далее жмем напротив Generate Shape кнопку All, настраиваем вес параметром Mass, можно настроить материал параметром Game Material (я оставил default_object) затем выбираем тип баунд_бокса нажатием кнопки Type. Я выбрал Box. Его кстати можно потом вращать, двигать и масштабировать.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_9.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''10)''' После настройки параметров экспортируем нашу коробочку в .ogf-файл из меню File -&amp;gt; Export, и подменяем полученной моделью, например, болт. Далее ходим и швыряемся магазинами от ПКМ в головы зазевавшимся неписям :)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
'''Статья создана:''' [[Участник:tambovski|tambovski]].&lt;br /&gt;
[[Категория: Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83</id>
		<title>3dsmax. Создание моделей и их добавление в игру</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83"/>
				<updated>2017-02-06T02:55:45Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.7.81 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Создание моделей и добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Итак, для работы нам понадобятся следующие инструменты:&lt;br /&gt;
&lt;br /&gt;
* '''Autodesk 3D Studio Max''' версий '''6''','''7''' или '''8''' (на других вроде плагин экспорта не работает, но я не уверен)&lt;br /&gt;
* '''3DS Max STALKER Plug-In''' для экспорта в формат object (.obj)&lt;br /&gt;
* '''S.T.A.L.K.E.R. SDK'''&lt;br /&gt;
&lt;br /&gt;
При создании собственных текстур потребуется:&lt;br /&gt;
&lt;br /&gt;
* '''Adobe Photoshop'''&lt;br /&gt;
* '''DDS-плагин''' от nVidia&lt;br /&gt;
&lt;br /&gt;
Приступим к креативу. Пример будем рассматривать на примитивной модели кубика.&lt;br /&gt;
&lt;br /&gt;
'''1)''' Запускаем 3DS Max и создаем наш кубик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''2)''' Далее накладываем на него текстуру. Запускаем редактор материалов (кнопка «М» по дефолту), выбираем тип материала, нажав на кнопку Standart (1), и в раскрывшемся списке выбираем S.T.A.L.K.E.R. Mtl (2), далее, в свитке Blinn Basic Parameters, щелкаем на маленькую кнопку напротив Diffuse (3), в раскрывшемся списке выбираем Bitmap (4), и выбираем требуемую текстуру из папки gamedata нашего SDK. Для примера я выбрал ...gamedata\textures\wpn\wpn_pkm_lenta.dds.&lt;br /&gt;
&lt;br /&gt;
Далее назначаем нашу текстуру для кубика и настраиваем ее внешний вид либо в самом Редакторе Материалов, либо, если объект сложный, - модификатором Unwrap UVW (кто работает в 3DS Max - знает). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''3)''' После текстуривания нашего объекта отмасштабируем его до нормальных размеров игры (для облегчения этого процесса я импортирую в сцену какую-нибудь модель из игры, например, АК-74), и приступаем к созданию костей. &lt;br /&gt;
&lt;br /&gt;
Идем в Create -&amp;gt; Systems -&amp;gt; Bones и создаем пару костей внутри нашей коробки приблизительно такого вида (см. рисунок). Первую косточку обзываем, например, kost, вторую можно не трогать и вообще ее можно потом удалить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_3.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''4)''' Теперь выделяем нашу коробку и в закладке Modify добавляем ей модификатор Physique (1). В свертке модификатора жмем кнопку Attach to Node (2), кликаем по нашей косточке с именем kost и в развернувшемся списке выбираем Riquid (3) и жмем Initialize (4) (см. рисунок).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_4.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''5)''' Далее, в свитке Physique level of Detail меняем параметр Skin Update на Rigid, в дереве модификатора Physique выбираем вершины нашего объекта (Vertex), выделяем все вершины нашего кубика при нажатой кнопке Select, выбираем тип вершин Rigid (4), жмем кнопку Assign to Link (5) и кликаем по нашей косточке.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_5.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''6)''' Теперь все готово к экспорту в формат object (.obj), который понимает Actor Editor из SDK. Идем на закладку Utilites и жмем кнопку S.T.A.L.K.E.R. Export (1) (кнопка эта у вас там будет находиться при правильной настройке плагина). Выделяем наш кубик и жмем кнопку Export Skin. Сохраняем, наблюдая лог в окошке на отсутствие ошибок.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_6.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''7)''' Запускаем Actor Editor из комплекта SDK и загружаем нашу сохраненную модель и видим приблизительно следующую картину:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_7.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''8)''' В панели Object Items видим характеристики нашего объекта (нас интересуют только Surfaces и Bones). В Surfaces задаются материалы и шейдеры для нашего объекта. Раскрываем список Surfaces, выбираем 01-Default (это я забыл материал в Максе обозвать) и устанавливаем параметры:&lt;br /&gt;
&lt;br /&gt;
* '''Shader:''' models/model &lt;br /&gt;
* '''Compile:''' def_shaders/def_vertex&lt;br /&gt;
* '''Game Mtl:''' objects/small_box&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_8.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''9)''' Видимо использовать можно и другие, но я еще не разобрался до конца.&lt;br /&gt;
&lt;br /&gt;
Далее настраиваем нашу косточку. Раскрываем список Bones, выбираем нашу kost. Далее жмем напротив Generate Shape кнопку All, настраиваем вес параметром Mass, можно настроить материал параметром Game Material (я оставил default_object) затем выбираем тип баунд_бокса нажатием кнопки Type. Я выбрал Box. Его кстати можно потом вращать, двигать и масштабировать.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_9.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''10)''' После настройки параметров экспортируем нашу коробочку в .ogf-файл из меню File -&amp;gt; Export, и подменяем полученной моделью, например, болт. Далее ходим и швыряемся магазинами от ПКМ в головы зазевавшимся неписям :)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
'''Статья создана:''' [[Участник:tambovski|tambovski]].&lt;br /&gt;
[[Категория: Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=Cop._%D0%A3%D1%80%D0%BE%D0%BA_%D0%BF%D0%BE_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8E_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Cop. Урок по созданию нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=Cop._%D0%A3%D1%80%D0%BE%D0%BA_%D0%BF%D0%BE_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8E_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-02-06T02:55:44Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.7.81 (обсуждение) к версии 85.192.187.132&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Я не разу не находил урока по созданию нового оружия по '''ЗП''' и вот решил сам написать.&lt;br /&gt;
Я добавлю снайперскую винтовку '''КСВК'''&lt;br /&gt;
&lt;br /&gt;
Сначало идем в '''gamedata\configs\weapons''' и создаем файл под названием '''w_ksvk.ltx''', и пишем в него секцию:&lt;br /&gt;
&lt;br /&gt;
 [wpn_ksvk]:identity_immunities,weapon_probability,default_weapon_params&lt;br /&gt;
 GroupControlSection		= spawn_group&lt;br /&gt;
 $spawn                  = &amp;quot;weapons\ksvk&amp;quot;      ; option for Level Editor&lt;br /&gt;
 $npc			 		= on				; option for Level Editor&lt;br /&gt;
 $prefetch 		 		= 8&lt;br /&gt;
 scheduled               = off              	; option for ALife Simulator&lt;br /&gt;
 cform                   = skeleton&lt;br /&gt;
 class                   = WP_SVU&lt;br /&gt;
 description             = st_wpn_ksvk_descr&lt;br /&gt;
 ef_main_weapon_type		= 3&lt;br /&gt;
 ef_weapon_type			= 11&lt;br /&gt;
 &lt;br /&gt;
 default_to_ruck         = false&lt;br /&gt;
 sprint_allowed          = true &lt;br /&gt;
&lt;br /&gt;
 ;-------------------------------------------------------------------------------&lt;br /&gt;
 cost                    = 200000&lt;br /&gt;
 weapon_class			= sniper_rifle&lt;br /&gt;
 inv_weight              = 15.4&lt;br /&gt;
 &lt;br /&gt;
 ;----TTX------------------------------------------------------------------------&lt;br /&gt;
 hit_power               = 350&lt;br /&gt;
 hit_impulse             = 3525&lt;br /&gt;
 hit_type 				= fire_wound&lt;br /&gt;
 fire_distance           = 2000&lt;br /&gt;
 bullet_speed		 	= 700 ;800	;начальная скорость пули&lt;br /&gt;
 rpm                     = 40&lt;br /&gt;
 rpm_empty_click         = 200 &lt;br /&gt;
&lt;br /&gt;
 use_aim_bullet				= false		;Поддерживается ли первая суппер пуля&lt;br /&gt;
 time_to_aim					= 1.0&lt;br /&gt;
&lt;br /&gt;
 hud                     = wpn_ksvk_hud&lt;br /&gt;
&lt;br /&gt;
 misfire_probability        = 0.00000005 ;вероятность осечки при максимальном износе  !!!old - now not  working&lt;br /&gt;
 ;изношенность, при которой появляется шанс осечки&lt;br /&gt;
 misfire_start_condition		= 0.000006&lt;br /&gt;
 ;изношеность при которой шанс осечки становится константным&lt;br /&gt;
 misfire_end_condition		= 0.0000001&lt;br /&gt;
 ;шанс осечки при изношености больше чем misfireStartCondition&lt;br /&gt;
 misfire_start_prob	     	= 0.0000065&lt;br /&gt;
 ;шанс осечки при изношености больше чем misfireEndCondition&lt;br /&gt;
 misfire_end_prob	     	= 0.0000000065&lt;br /&gt;
 ;увеличение изношености при одиночном выстреле&lt;br /&gt;
 condition_shot_dec      	= 0.000000065&lt;br /&gt;
 ;увеличение изношености при выстреле очередью&lt;br /&gt;
 condition_queue_shot_dec	= 0.000000065 &lt;br /&gt;
&lt;br /&gt;
 ammo_elapsed			= 10&lt;br /&gt;
 ammo_mag_size			= 5&lt;br /&gt;
 fire_modes		  = 1;, -1&lt;br /&gt;
 ammo_class				=  ammo_7.62x54_7h1&lt;br /&gt;
 hand_dependence         = 1&lt;br /&gt;
 single_handed           = 0&lt;br /&gt;
&lt;br /&gt;
 ;---дисперсия-------------------------------------------------------------------------&lt;br /&gt;
 ;базовая дисперсия&lt;br /&gt;
 fire_dispersion_base    = 0.01   ;угол (в градусах) базовой дисперсии оружия (оружия зажатого в тисках)&lt;br /&gt;
 control_inertion_factor = 1.7&lt;br /&gt;
 crosshair_inertion		= 6.15&lt;br /&gt;
&lt;br /&gt;
 ;отдача&lt;br /&gt;
 cam_return				= 1&lt;br /&gt;
 cam_relax_speed         = 3.0   ;скорость возврата в исходное положение&lt;br /&gt;
 cam_relax_speed_ai      = 360	;скорость возврата в исходное положение&lt;br /&gt;
 cam_dispersion          = 1.8 ;увеличения угла (в градусах) с каждым выстрелом&lt;br /&gt;
 cam_dispersion_inc		= 1.8	;увеличениe cam_dispersion с каждым выстрелом&lt;br /&gt;
 cam_dispersion_frac		= 1.0	;ствол будет подыматься на cam_dispersion*cam_dispersion_frac +- cam_dispersion*(1-cam_dispersion_frac)&lt;br /&gt;
 cam_max_angle           = 12.0   ;максимальный угол отдачи&lt;br /&gt;
 cam_max_angle_horz		= 3.0	;(degree) maximum shot horizontal degree&lt;br /&gt;
 cam_step_angle_horz     = 1.5 ;(degree) size of step camera moved in horizontal position while shooting&lt;br /&gt;
&lt;br /&gt;
 ;PDM_disp_base           = 0.85&lt;br /&gt;
 ;PDM_disp_vel_factor     = 3.4&lt;br /&gt;
 ;PDM_disp_accel_factor 	= 3.4&lt;br /&gt;
 ;PDM_disp_crouch	 		= 1.0&lt;br /&gt;
 ;PDM_disp_crouch_no_acc 	= 1.0&lt;br /&gt;
&lt;br /&gt;
 PDM_disp_base 			= 2.0&lt;br /&gt;
 PDM_disp_vel_factor 	= 4.0&lt;br /&gt;
 PDM_disp_accel_factor 	= 4.0&lt;br /&gt;
 PDM_disp_crouch	 		= 1.0&lt;br /&gt;
 PDM_disp_crouch_no_acc 	= 1.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 zoom_cam_relax_speed        = 0.7    ; scope &amp;amp; ironsight&lt;br /&gt;
 zoom_cam_relax_speed_ai     = 120.75&lt;br /&gt;
 zoom_cam_dispersion         = 0.65&lt;br /&gt;
 zoom_cam_dispersion_inc     = 0.65&lt;br /&gt;
 zoom_cam_dispersion_frac    = 1.0&lt;br /&gt;
 zoom_cam_max_angle          = 10.0&lt;br /&gt;
 zoom_cam_max_angle_horz     = 5.0&lt;br /&gt;
 zoom_cam_step_angle_horz    = 0.5&lt;br /&gt;
&lt;br /&gt;
 fire_dispersion_condition_factor = 10	;увеличение дисперсии в процентах при максимальном износе&lt;br /&gt;
&lt;br /&gt;
 ;---DOF-------------------------------------------------------------------------&lt;br /&gt;
 ;zoom_dof				= 0.5, 1.0, 350&lt;br /&gt;
 reload_dof				= 0.0, 0.5, 5, 2&lt;br /&gt;
&lt;br /&gt;
 ;-------------------------------------------------------------------------------&lt;br /&gt;
 holder_range_modifier	= 2.15               ; во сколько раз увеличивается eye_range&lt;br /&gt;
 holder_fov_modifier		= 1.0             ; во сколько раз увеличивается eye_fov &lt;br /&gt;
&lt;br /&gt;
 min_radius              = 5&lt;br /&gt;
 max_radius              = 250&lt;br /&gt;
&lt;br /&gt;
 hit_probability_gd_novice	= 1&lt;br /&gt;
 hit_probability_gd_stalker	= 1&lt;br /&gt;
 hit_probability_gd_veteran	= 1&lt;br /&gt;
 hit_probability_gd_master	= 1&lt;br /&gt;
&lt;br /&gt;
 ;-------------------------------------------------------------------------------&lt;br /&gt;
 slot                    = 1                ; // secondary&lt;br /&gt;
 animation_slot          = 2                ; type of the animation that will be used&lt;br /&gt;
&lt;br /&gt;
 inv_name                = st_wpn_ksvk&lt;br /&gt;
 inv_name_short          = st_wpn_ksvk&lt;br /&gt;
&lt;br /&gt;
 inv_grid_width          = 6&lt;br /&gt;
 inv_grid_height			= 2&lt;br /&gt;
 inv_grid_x				= 7&lt;br /&gt;
 inv_grid_y              = 34&lt;br /&gt;
&lt;br /&gt;
 upgr_icon_x			= 594&lt;br /&gt;
 upgr_icon_y			= 395&lt;br /&gt;
 upgr_icon_width		= 294&lt;br /&gt;
 upgr_icon_height   	= 80&lt;br /&gt;
&lt;br /&gt;
 kill_msg_x				= 0&lt;br /&gt;
 kill_msg_y              = 59&lt;br /&gt;
 kill_msg_width          = 80&lt;br /&gt;
 kill_msg_height         = 26&lt;br /&gt;
&lt;br /&gt;
 ;-------------------------------------------------------------------------------&lt;br /&gt;
 position                = -0.026, 0.0, -0.02&lt;br /&gt;
 orientation             = 0, 0, 0&lt;br /&gt;
 &lt;br /&gt;
 fire_point              = 0.0, 0.128, 0.522&lt;br /&gt;
 fire_point2             = 0.0, 0.128, 0.522&lt;br /&gt;
&lt;br /&gt;
 flame_particles         = weapons\generic_weapon05&lt;br /&gt;
 smoke_particles			= weapons\generic_shoot_00&lt;br /&gt;
 rpm_empty_click 		= 200 &lt;br /&gt;
&lt;br /&gt;
 shell_point             = 0.0, 0.128, 0.0&lt;br /&gt;
 shell_dir		 		= 0.0, 0.0, 0.4&lt;br /&gt;
 shell_particles	 		= weapons\generic_shells&lt;br /&gt;
&lt;br /&gt;
 ;--STRAP PARAMETERS-----------------------------------------------------------------&lt;br /&gt;
 ;под мишкой&lt;br /&gt;
 strap_position          = -0.26,-0.11,0.25         ; position (offset) and orientation of the weapon when it is strapped&lt;br /&gt;
 strap_orientation       = -15,-9,110            ; (3rd person view in degrees)&lt;br /&gt;
 strap_bone0					= bip01_spine2&lt;br /&gt;
 strap_bone1					= bip01_spine1&lt;br /&gt;
&lt;br /&gt;
 startup_ammo            = 10&lt;br /&gt;
 visual                  = dynamics\weapons\wpn_ksvk\wpn_ksvk.ogf&lt;br /&gt;
&lt;br /&gt;
 light_disabled          = true&lt;br /&gt;
 light_color		 		= 0.6,0.5,0.3&lt;br /&gt;
 light_range		 		= 4.0&lt;br /&gt;
 light_var_color		 	= 0.05&lt;br /&gt;
 light_var_range		 	= 0.5&lt;br /&gt;
 light_time 		 		= 0.2&lt;br /&gt;
&lt;br /&gt;
 ph_mass			 		= 3&lt;br /&gt;
&lt;br /&gt;
 ;addons&lt;br /&gt;
 scope_status            = 1&lt;br /&gt;
 silencer_status			= 0&lt;br /&gt;
 grenade_launcher_status	= 0&lt;br /&gt;
&lt;br /&gt;
 zoom_enabled			= true&lt;br /&gt;
 zoom_rotate_time		= 0.35&lt;br /&gt;
 scope_zoom_factor       = 10     ;ПСО-1 4X&lt;br /&gt;
&lt;br /&gt;
 scope_texture			= wpn_crosshair&lt;br /&gt;
 scope_name 				= wpn_addon_scope&lt;br /&gt;
 scope_x 				= 60&lt;br /&gt;
 scope_y 				= -2&lt;br /&gt;
&lt;br /&gt;
 ;звуки&lt;br /&gt;
 snd_draw                = weapons\svu_draw&lt;br /&gt;
 snd_holster					= weapons\generic_holster&lt;br /&gt;
 snd_shoot               = weapons\n_svu_shot&lt;br /&gt;
 snd_empty					= weapons\gen_empty, 0.5&lt;br /&gt;
 snd_reload              = weapons\svu_reload&lt;br /&gt;
 snd_close					= weapons\generic_close&lt;br /&gt;
&lt;br /&gt;
 [wpn_ksvk_hud]:hud_base&lt;br /&gt;
 zoom_hide_crosshair		= true&lt;br /&gt;
 attach_place_idx		= 0&lt;br /&gt;
 item_visual             = dynamics\weapons\wpn_ksvk\wpn_ksvk_hud&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 hands_position				= -0.044500,-0.209998,0.273998&lt;br /&gt;
 hands_orientation			= 1.800001,-0.600001,0.200002&lt;br /&gt;
&lt;br /&gt;
 hands_position_16x9				= 0.005000,-0.227498,0.332498&lt;br /&gt;
 hands_orientation_16x9			= 3.649998,2.150000,-0.250000&lt;br /&gt;
&lt;br /&gt;
 item_position			= 0,0,-0.02&lt;br /&gt;
 item_orientation		= 0,0,0&lt;br /&gt;
&lt;br /&gt;
 shell_point				= 0.025,0.05,0.124&lt;br /&gt;
 shell_dir               = 0.0, 1.0, 0.0&lt;br /&gt;
 shell_bone				= wpn_body&lt;br /&gt;
&lt;br /&gt;
 fire_point              = 0.0,0.043,0.795&lt;br /&gt;
 fire_bone               = wpn_body&lt;br /&gt;
&lt;br /&gt;
 aim_hud_offset_pos				= -0.071000,0.031999,-0.103000&lt;br /&gt;
 aim_hud_offset_rot				= -0.002500,0.020000,0.000000&lt;br /&gt;
&lt;br /&gt;
 aim_hud_offset_pos_16x9				= -0.143500,0.024000,-0.120500&lt;br /&gt;
 aim_hud_offset_rot_16x9				= -0.005000,-0.005000,0.000000&lt;br /&gt;
&lt;br /&gt;
 gl_hud_offset_pos		= 0,0,0&lt;br /&gt;
 gl_hud_offset_rot			= 0,0,0&lt;br /&gt;
 &lt;br /&gt;
 lean_hud_offset_pos		= 0,0,0&lt;br /&gt;
 lean_hud_offset_rot		= 0,0,0&lt;br /&gt;
&lt;br /&gt;
 anm_show						= svu_draw&lt;br /&gt;
 anm_hide             	= svu_holster&lt;br /&gt;
 anm_shots					= svu_shoot&lt;br /&gt;
 anm_reload					= svu_reload&lt;br /&gt;
 anm_bore						= svu_idle_bore&lt;br /&gt;
 anm_idle             	= svu_idle&lt;br /&gt;
 anm_idle_aim				= svu_idle_aim&lt;br /&gt;
 anm_idle_moving 			= svu_idle_moving&lt;br /&gt;
 anm_idle_sprint			= svu_idle_moving&lt;br /&gt;
&lt;br /&gt;
Без пояснения, это и так вы должны знать.&lt;br /&gt;
&lt;br /&gt;
Потом сходим в файл '''gamedata\configs\weapons\weapons.ltx''' и добовляем вот это - '''#include &amp;quot;w_ksvk.ltx&amp;quot;''', вот так оно будет выглядеть там:&lt;br /&gt;
&lt;br /&gt;
 #include &amp;quot;w_g36.ltx&amp;quot;&lt;br /&gt;
 '''#include &amp;quot;w_ksvk.ltx&amp;quot;'''&lt;br /&gt;
 #include &amp;quot;w_pkm.ltx&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
 ;; Огнестрельное оружие&lt;br /&gt;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
&lt;br /&gt;
Теперь идем в файл '''mp_ranks.ltx''', по адресу '''gamedata\configs\mp''' и пишем там вот это - '''wpn_ksvk''', где то между ними:&lt;br /&gt;
 wpn_wincheaster1300_trapper, '''wpn_ksvk''', wpn_g36_nimble |('''39''')&lt;br /&gt;
Это что бы вылета не было когда вас убъют.&lt;br /&gt;
&lt;br /&gt;
Теперь идем в '''gamedata\configs\text\rus\st_items_weapons.xml''' и пишем в самом низу:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;string id=&amp;quot;st_wpn_ksvk&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;'''текст'''&amp;gt;Свое название&amp;lt;/'''текст'''&amp;gt;&lt;br /&gt;
 &amp;lt;/string&amp;gt;&lt;br /&gt;
 &amp;lt;string id=&amp;quot;st_wpn_ksvk_descr&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;'''текст'''&amp;gt;Свой текст.&amp;lt;/'''текст'''&amp;gt;&lt;br /&gt;
 &amp;lt;/string&amp;gt;&lt;br /&gt;
Где '''текст''' переделайте у себя на '''text'''&lt;br /&gt;
&lt;br /&gt;
Все с конфигами покончено, теперь текстуры. Идем в папку '''gamedata\textures\wpn''' и создаем там паку с названием '''ksvk''', внего кидаем '''5''' текстур, вот их названия:&lt;br /&gt;
 '''1.dds, 1_bump.dds, 3.dds, 1_bump#.dds, 2.dds'''&lt;br /&gt;
Ну и конечно же иконка, ее здесь ставить '''gamedata\textures\ui\ui_icon_equipment.dds'''&lt;br /&gt;
&lt;br /&gt;
Теперь модели, идем в папку '''gamedata\meshes\dynamics\weapons''' и создаем папку '''wpn_ksvk'''и кидаем две модели, с названием:&lt;br /&gt;
 '''wpn_ksvk.ogf, wpn_ksvk_hud.ogf.'''&lt;br /&gt;
&lt;br /&gt;
Надеюсь не впервом классе и знаете как добавить ГГ в начале игры.&lt;br /&gt;
&lt;br /&gt;
Текстуры:&lt;br /&gt;
 '''1.dds''': [http://data.cod.ru/129504]&lt;br /&gt;
 '''1_bump#.dds''': [http://data.cod.ru/129506]&lt;br /&gt;
 '''1_bump.dds''': [http://data.cod.ru/129507]&lt;br /&gt;
 '''2.dds''': [http://data.cod.ru/129508]&lt;br /&gt;
 '''3.dds''': [http://data.cod.ru/129509]&lt;br /&gt;
Иконка:&lt;br /&gt;
 '''ui_icon_equipment.dds''': [http://data.cod.ru/129511]&lt;br /&gt;
Модели:&lt;br /&gt;
 '''wpn_ksvk.ogf''': [http://data.cod.ru/129512]&lt;br /&gt;
 '''wpn_ksvk_hud.ogf''': [http://data.cod.ru/129513]&lt;br /&gt;
&lt;br /&gt;
Все, если все сделано правильно, то она у вас будет, очень меткая, и не изнашеваемая.&lt;br /&gt;
&lt;br /&gt;
Урок написал '''&amp;quot;ммихаилл&amp;quot;''', то есть '''Я'''&lt;br /&gt;
&lt;br /&gt;
[[Category:Trash]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%84%D0%B0%D0%B9%D0%BB%D1%8B</id>
		<title>Категория:Конфигурационные файлы</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%9A%D0%BE%D0%BD%D1%84%D0%B8%D0%B3%D1%83%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%84%D0%B0%D0%B9%D0%BB%D1%8B"/>
				<updated>2017-02-06T02:55:44Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.7.81 (обсуждение) к версии 89.178.50.109&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В данной категории содержатся статьи, освещающие работу с конфигурационными файлами игры.&lt;br /&gt;
&lt;br /&gt;
Основная статья [[Теория_модостроения|Теория модостроения]]&lt;br /&gt;
[[Категория:Руководства]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_-%3DinGame_%D0%90%D0%98%3D-</id>
		<title>Компиляция -=inGame АИ=-</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_-%3DinGame_%D0%90%D0%98%3D-"/>
				<updated>2017-02-02T17:53:35Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.9.106 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Итак, приступим... Раз вы здесь, значит есть на то причина:&lt;br /&gt;
*1)либо вы нуп, увидевший аи-компилер и решивший забацать чтото крутое&lt;br /&gt;
*2)вы не нуп, но всё забыли или почти всё&lt;br /&gt;
*3)вы супер-аццкий про решивший глянуть на весь этот детсад свысока )&lt;br /&gt;
*4)вы обычный модер, решивший расширить свои текущие познания. ;)&lt;br /&gt;
&lt;br /&gt;
==Основы==&lt;br /&gt;
Ну что ж... начнем с самого простого, скомпилим левел с аи, монстрами на&lt;br /&gt;
карте '''mp_atp'''. Открываем левел.. первое что надо сделать убрать все &lt;br /&gt;
'''rpoint'''(мультиплеерные точки спавна). Убрали? Отлично. Создаем&lt;br /&gt;
'''Spawn elements -&amp;gt; actor''' ну и по желанию в свойствах ('''Properties''')&lt;br /&gt;
в '''custom data''' прописываем ему предположим вот это:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[spawn]&lt;br /&gt;
wpn_ak74&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тем самым при появлении игрока у него в руках уже будет калаш. Далее,&lt;br /&gt;
создаем монстра... любого по желанию, предположим кровососа и ставим на уровень.&lt;br /&gt;
Теперь дело за '''AI map''' - аи сетка, которая необходима для того, чтобы&lt;br /&gt;
нпс, монстры могли ориентироваться по уровню. Жмем Object и кликаем на  земле(тем самым мы ее &amp;quot;выбрали&amp;quot; для дальнейших манипуляций), затем '''AI Map''' -&amp;gt; '''Commands''' -&amp;gt; '''Make list from selected''', жмем '''add''' в разделе '''AI Map Nodes''' и '''add''' для добавления объектов слева вверху(чайник) и ставим на карте ноды в нужном вам порядке(достаточно одного), жмем '''Generate Full'''. Всё, аи-сетка сгенерированна. Теперь добавляем на левел обязательно! 1 graph point ('''Spawns-&amp;gt;ai-&amp;gt;graph point'''), в нем можно ничего не писать. Сохраняем уровень, билдим ('''build'''). &lt;br /&gt;
&lt;br /&gt;
после этого не забываем скомпилить карту, (не забываем создать диск Х, приложенной прогой)&lt;br /&gt;
&amp;lt;code&amp;gt;Windows -&amp;gt; start -&amp;gt; run&amp;lt;/code&amp;gt; и в командной строке пишем (mp_atp_test,здесь название карты):&lt;br /&gt;
[[image:Docs_wind_run_comp_multiplayer.jpg|Запуск уровня на компиляцию|center|frame|Запуск уровня на компиляцию]]&lt;br /&gt;
После корректной компиляции:&lt;br /&gt;
[[image:Docs_wind_xray_levelcompiler.jpg|Завершение компиляции|center|frame|Завершение компиляции]]&lt;br /&gt;
&lt;br /&gt;
Следующим шагом будет правка конфигов. Править конфиги следует в папке gamedata\configs папки SDK, а потом можно перенести файлы в аналогичную папку с игрой.&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&lt;br /&gt;
'''game_maps_single.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[level_maps_single]&lt;br /&gt;
...&lt;br /&gt;
testing_ai &lt;br /&gt;
//название вашего уровня&lt;br /&gt;
&lt;br /&gt;
[testing_ai]&lt;br /&gt;
global_rect  = -6,1220.0, 248.0,1481.0&lt;br /&gt;
texture      = map\map_escape&lt;br /&gt;
//текстура при загрузке&lt;br /&gt;
bound_rect  = -502.148,-412.284,379.976,474,479&lt;br /&gt;
weathers  = default&lt;br /&gt;
//погода&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''game_levels.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[levels]&lt;br /&gt;
...&lt;br /&gt;
level190&lt;br /&gt;
//номер вашего уровня&lt;br /&gt;
&lt;br /&gt;
[level190]&lt;br /&gt;
name   = testing_ai&lt;br /&gt;
caption = &amp;quot;testing_ai&amp;quot;&lt;br /&gt;
offset  = 2000.0, 800.0, 1000.0    // положение нового уровня на глобальной карте, X, Y, Z&lt;br /&gt;
id   = 190&lt;br /&gt;
//индентифакционный номер, должен быть уникальным&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''game_graphs.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
018   = &amp;quot;testing_ai&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь открываем AI Compiler, указываем папку с '''сдк'''(.../level_editor, либо если он объединен с игрой, путь до нее). Выбираем ваш уровень.&lt;br /&gt;
Проходим 1ую стадию чернового просчета аи карты('''шаг 1'''), либо если вы хотите долго ждать и просчитать укрытия для нпс то выбираем '''шаг 2'''.&lt;br /&gt;
Далее строим граф и кросс-таблицу уровня шаг 3, потом граф игры '''шаг 4''' и наконец фаил .spawn '''шаг 5'''. После всех стадий заходим в gamedata\spawns\ и переименовываем '''test.spawn''' в '''all.spawn'''&lt;br /&gt;
&lt;br /&gt;
''Важно - Если ваш X-Ray SDK НЕ объединён с игрой, то при переносе файлов для старта без вылетов вы должны перенести из папки с X-Ray SDK следующие файлы:&lt;br /&gt;
# gamedata\config\game_maps_single.ltx&lt;br /&gt;
# gamedata\config\game_graphs.ltx&lt;br /&gt;
# gamedata\config\game_levels.ltx&lt;br /&gt;
# gamedata\levels\папка с вашим уровнем&lt;br /&gt;
# gamedata\spawns\all.spawn'''''&lt;br /&gt;
# gamedata\game.graph(этот файл многие не копируют и получают вылет при запуске игры)'''&lt;br /&gt;
&lt;br /&gt;
{{Message_box|&lt;br /&gt;
id	=pseudoscience|&lt;br /&gt;
align = left|&lt;br /&gt;
backgroundcolor	= #f9f9f9|&lt;br /&gt;
image	=Lamp.gif|&lt;br /&gt;
heading	= Важные моменты -- Loxotron|&lt;br /&gt;
message = При правке конфигов не забывайте указывать реально существующую там погоду и картинку загрузки, иначе вылетит; также не пытайтесь запустить уровень через .bat фаил, подобный указанному ниже, тоже будет вылет&lt;br /&gt;
&amp;lt;pre&amp;gt;bin\xr_3da.exe -ltx user.ltx -nointro -external -start server(level/single) client(localhost)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Правильный .bat фаил&lt;br /&gt;
&amp;lt;pre&amp;gt;@start bin\XR_3DA.exe -start server(%1/single/alife) client(localhost)&amp;lt;/pre&amp;gt;&lt;br /&gt;
%1 - название левела. &lt;br /&gt;
'''Примечание''': при запуске с такого батника имя спавна должно быть не all.spawn а &amp;lt;название_левела&amp;gt;.spawn&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Углубленное изучение==&lt;br /&gt;
Далее мы рассмотрим как собирать несколько уровней и устанавливать между ними переходы.&lt;br /&gt;
&lt;br /&gt;
Итак у вас два уровня... на одном из них стоит '''actor'''. Начнем с него:&lt;br /&gt;
создаем '''ai-&amp;gt;level changer''', затем '''shape-&amp;gt;sphere''', с помощью '''scale''' увеличиваем до необходимых размеров, теперь переключаемся в режим редактирования '''spawn element''', выделяем '''level changer''' и жмем '''commands-&amp;gt;attach object''', а затем кликаем на сферу... Всё, сфера и level changer теперь связаны. Далее идем в закладку '''properties''', указываем название, например '''to_atp_2''', теперь нужно прописать в '''custom data''' вейпоинт для возврата, в случае отказа игрока от перемещения с локации на локации(обязательно). Вписываем вот это:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = atp_1_way_if_reject&lt;br /&gt;
//в случае отказа от перемещения на вторую локу, возвращаемся назад&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В '''Level to change''' вписываем наименование уровня, куда мы хотим переместиться с этого левела, например '''atp_2'''. &lt;br /&gt;
И самое главное, в параметрах level_changer в пункте &amp;quot;restrictor type&amp;quot; поставить значение &amp;quot;not a restrictor&amp;quot;, в противном случае будет вылет при переходе на вторую локу&lt;br /&gt;
&lt;br /&gt;
 - '''скорее всего, тип рестриктора был использован на версии раньше 1.0004. На версии 1.0004 тип рестриктора не имеет значения и рестриктор отвечает только за внутренние настройки локации - Эээ...'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''Level Point to change''' указываем точку, в которой игрок появится...&lt;br /&gt;
'''start_actor_01'''. С '''level changer''' на этом уровне всё, пошли далее.&lt;br /&gt;
Создаем '''graph point''' или используем пустой существующий если у вас есть.&lt;br /&gt;
В него вписываем '''start_actor_01''', этот поинт для того чтобы мы смогли со второго левела '''atp_2''' перейти на '''atp_1'''(первый). Создаем еще один '''graph point''' c названием '''exit_atp_1_01''', в разделе '''location''' выбираем, например &amp;quot;экскейп&amp;quot;. В '''Connection -&amp;gt; Level name''' указываем уровень, с которым будет связан '''atp_1''', то есть выбираем '''atp_2''', в '''Connection-&amp;gt;Point Name''' вписываем точку связи из второго уровня, которую мы создадим потом '''exit_atp_2_01'''. С первым уровнем всё...&lt;br /&gt;
&lt;br /&gt;
Для чего нам нужен graph point'ы ''exit_xxx''?&lt;br /&gt;
''exit_xxx'' представляет собой '''connection_point'''(точку связи) - для того, чтобы компилятор знал, какие уровни он соединяет, а если по другому: начальный граф уровня, от него потом считаются все ноды.&lt;br /&gt;
&lt;br /&gt;
'''start_actor_xx''' - точка появления актера после перехода.&lt;br /&gt;
&lt;br /&gt;
Помните мы вписали в '''custom data''' '''level changer''''а вейпоинт? Вот теперь нам придется его создать. Выбираем '''Way Points''' -&amp;gt; жмем &amp;quot;чайник&amp;quot; и стави 1 вейпоинт рядом с level changer(так мы создали начальную точку пути), теперь жмем '''point mode''' и ставим второй. Если они не соеденились стрелочкой, жмем '''create 1-link'''. Теперь у нас получился путь, который мы прописали в custom data '''level changer''', заходим в свойства и обзываем его также как и в '''custom data''', тоесть '''atp_1_way_if_reject'''. Всё с первым уровнем покончили.&lt;br /&gt;
&lt;br /&gt;
Итак, открываем второй уровень и поехали по новой...&lt;br /&gt;
&lt;br /&gt;
Создаем там путь из двух вейпоинтов по схеме выше и обзываем '''atp_2_way_if_reject'''. Создаем level changer называем его '''to_atp_1''',&lt;br /&gt;
в '''custom data''' пишем&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = atp_2_way_if_reject //название вэйпоинта&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В '''level to change''' указываем atp_1 //куда переходим с atp_2&lt;br /&gt;
В '''level point to change''' - '''start_actor_01'''(дада, тот который мы создали на первом левеле :) )&lt;br /&gt;
&lt;br /&gt;
Теперь здесь же на atp_2 создаем graph point с названием '''start_actor_01'''.&lt;br /&gt;
И еще один где вписываем следущие значения:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Name: exit_atp_2_01&lt;br /&gt;
Location: &amp;quot;свалка&amp;quot; //наименование локации&lt;br /&gt;
&lt;br /&gt;
Connection:&lt;br /&gt;
 Level name: atp_1 //первый уровень&lt;br /&gt;
 Point name: exit_atp_1_01 //связующая точка с первого уровня&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Незабудьте, что '''ACTOR''' должен быть только на одной локации(в нашем случае на atp_1), иначе компилятор выдаст ошибку. Всё!... Сохраняем, прекомпилим.&lt;br /&gt;
&lt;br /&gt;
Запускаем '''Ai Compiler''', выбираем по очереди наши два уровня и просчитываем шаг 1, проверям сетку. Теперь создаем ''текстовый документ'' и вписываем туда&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
@start /wait bins\ai\1.exe -g atp_1&lt;br /&gt;
@start /wait bins\ai\1.exe -g atp_2&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
сохраняем его как .bat и запускаем, в результате у каждого уровня &lt;br /&gt;
появится свой '''level.graph'''(граф и кросс-таблица).&lt;br /&gt;
&lt;br /&gt;
Создаем еще один текстовик, пишем&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
@start /wait bins\ai\1.exe -m&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
сохраняем как .bat и стартуем. Так мы собрали '''game.graph''' из '''level.graph''''ов.&lt;br /&gt;
&lt;br /&gt;
И наконец.. создаем 3ий &amp;quot;бантик&amp;quot; для сборки '''all.spawn'''!&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
bins\ai\1.exe -s&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Компилим, заходим в '''gamedata\spawns\''', переименовываем получившийся спавн в '''all.spawn''' и запускаем через новую игру. Как видите, вы можете перемещаться с уровня на уровень, туда сюда без каких-либо проблем.&lt;br /&gt;
&lt;br /&gt;
Чуть не забыл, обязательно временно, на время компиляции переместите все остальные левелы игры кроме ваших в любую другую папку, иначе &lt;br /&gt;
могут быть ошибки при сборе графов и спавна.&lt;br /&gt;
&lt;br /&gt;
Для сборки '''всех''' сингл уровней из оригинальной игры &lt;br /&gt;
используйте bat фаил: [http://stalkerin.gameru.net/developer/mods/levelgraph_fullgame.bat fullgame.bat]&lt;br /&gt;
Если будут ошибки связанные с алайфом, жмем ''продолжить''. Потом выполняйте процедуры как написано выше, сборка '''game.graph''', а затем '''all.spawn'''.&lt;br /&gt;
&lt;br /&gt;
==Добавляем наш уровень в сингл-плеер!==&lt;br /&gt;
&lt;br /&gt;
Такс, продолжаем. Мне таки удалось наконец-то совместить свой тестовый левел с картами гсц. Итак приступим. Во первых нам необходим левел... свой, подготовленный. Если вы не читали инструкции выше, то дальше вам делать нечего. На нашем левеле должна быть во-первых '''connection point'''(соеденительная точка), вписываем в нее параметры данного примера, предположим такие:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   Name: point_test_location_escape // название коннекшн-поинта&lt;br /&gt;
&lt;br /&gt;
  Connection&lt;br /&gt;
       Level Name:L01_Escape //с каким уровнем его связываем&lt;br /&gt;
       Point Name:esc_graph_point_0034 //соеденительный поинт на эскейпе, как &lt;br /&gt;
                                      //его добавить будет объяснено '''ниже'''.&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Сделали?&lt;br /&gt;
&lt;br /&gt;
Теперь создаем еще один граф на уровне, вписываем просто его имя...&lt;br /&gt;
например '''Name: start_actor_01'''. Обязательно добавляем на уровень какой-нибудь уникальный объект... предположим '''машину'''. Зачем, узнаете потом. Но на левеле ни в коем случае не должно быть '''ACTOR''''а!! Сохраняем, прекомпилим левел. Компилим с помощью '''xrLC''' весь уровень, теперь открываем '''AICompiler''' от нео и выполняем '''1 или 2 и 3 шаги''' в отношении нашего левела. &lt;br /&gt;
&lt;br /&gt;
Теперь нам нужно заручиться ОСОБЫМИ инструментами, в нашем случае понадобится [http://www.rapidshare.ru/532500 скрипт] от бардака, который позволяет узнать при запуске любого левела его '''level_vertex_id''', '''game_vertex_id''', '''position'''(координаты игрока в данный момент), '''direction'''(координаты направления его &amp;quot;взгляда&amp;quot;), всё это потребуется при работе с '''acdc''' несколькими этапами ниже. Загружаем игру, находим подходящее место где хотим видеть в будущем триггер для перехода уровней и записываем все параметры на бумажку, они нам понадобятся потом. По хорошему, желательно '''отдельно''' потом еще зайти в '''LE(level editor)''', открыть наш уровень, поставив эктора прям на графе с '''start_actor_01''', закомпилировать проект, пройти все шаги компиляции в '''xraicompiler'''(1,3,4,5,6), '''обязательно''' предварительно забэкапив '''game.graph''', начать новую игру и записать координаты '''level_vertex_id''' и '''direction''', но это достаточно нудно и сложно, но '''желательно''', а потом надо будет, вернуть всё в состояние до всех этих действий..., то есть убрать '''эктора''', восстановить оригинальный '''game.graph'''.&lt;br /&gt;
&lt;br /&gt;
Итак... у вас обязательно должна быть распакованна '''вся''' игра, установлен '''aiwrapper''' от бардака(читайте ридми по установке!!!), и '''aicompiler''' он нео.&lt;br /&gt;
&lt;br /&gt;
Создаем .bat фаил в папке с aiwrapper'ом с текстом&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -extract_spawns&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
либо вводим тоже в тотал коммандере, с помощью этого ключа мы обновили '''level.spawn''''ы всех сингл-уровней, так как они не обновлялись со времен первого патча. &lt;br /&gt;
&lt;br /&gt;
Теперь изучаем '''links.sample''' в блокноте. ничего не поняли? поясняю: '''aiwrapper''' обладает полезнейшим ключом '''-m2'''.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -m2 &amp;lt;файл&amp;gt;	- склеить ИИ-графы карт в глобальный игровой граф с&lt;br /&gt;
		  учётом поправок для связей из указанного файла&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
То есть с помощью него мы можем взять любой существующий граф на уровне гсц, который &amp;quot;не занят&amp;quot;, и добавить ему нужные нам значения, например сделать его коннекшн поинтом(соеденительной точкой), а потом всё это склеится в общий глобальный '''game.graph'''.&lt;br /&gt;
&lt;br /&gt;
Выполняем  ''aiwrapper -dump_graph graphs.txt'' батом или тоталом. Комманда выведет нам  список исходных вершин ИИ-графа в указанный файл, то есть список скомпиленных графов всех сингл-уровней гсц в фаил '''graphs.txt'''. Находим там точку '''esc_graph_point_0034'''. Видите что она пуста в плане связей в отличии от exit_escape_01,02? Значит мы можем ее использовать, в оригинале разрабы их ставили для путей ботов, то есть по ним перемещается аи, но мы ее заюзаем для связи с нашим тестовым левелом.&lt;br /&gt;
&lt;br /&gt;
Итак, создаем например текстовик '''links_fixed.txt''' и вписываем туда&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[l01_escape]&lt;br /&gt;
; добавляем переход для ИИ с Кордона на тестовый уровень.&lt;br /&gt;
esc_graph_point_0034	= test_level_x, point_test_location_escape&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
'''test_level_x''' - название нашего уровня.&lt;br /&gt;
'''point_test_location_escape''' - коннекшн поинт на нашем уровне.&lt;br /&gt;
То есть мы прописываем у графпоинта на эскейпе эти два параметра, которые препращают его в коннекшн-поинт, связанный с тем, что на нашем левеле; сохраняем текстовик.&lt;br /&gt;
&lt;br /&gt;
Выполняем батом или тотал коммандером:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -m2 links_fixed.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
ЗЫЫ Желательно перед этим действом временно переместить куда-нибудь неиспользуемые левелы(мультиплеерные тоже) от греха подальше.&lt;br /&gt;
Ждем пока соберется '''game_graph''', ошибок быть недолжно.&lt;br /&gt;
{{Message_box|&lt;br /&gt;
id	=pseudoscience|&lt;br /&gt;
align = left|&lt;br /&gt;
backgroundcolor	= #f9f9f9|&lt;br /&gt;
image	=Lamp.gif|&lt;br /&gt;
heading	= Важные моменты 2 -- Loxotron|&lt;br /&gt;
message = Найден более простой способ вычисления '''game_vertex_id'''. В папке '''utils''' у компилятора бардака есть тулза '''ggtool.pl''' - утилита для показа межуровневых связей в '''game.graph'''. Копируем к утилите откомпилированный '''game.graph''' из '''gamedata\''' и выполняем прогу (в командной строке или через батник):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ggtool.pl game.graph &amp;gt;svyazi.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
В результате в фаиле '''svyazi.txt''' в скобках будет указан '''game_vertex_id''' для конкретного уровня, таким образом не нужно узнавать '''dest_game_vertex_id''' c помощью перекомпилирования.&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
l01_escape (0) --1206.29--&amp;gt; l02_garbage (415)&lt;br /&gt;
&lt;br /&gt;
0 - '''game_vertex_id''', 415 - '''dest_game_vertex_id''',&lt;br /&gt;
1206.29 - '''distance'''(расстояние между точками), не тот который в '''level_changer''''е, а между '''connection_point''''ами.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь дело за '''all.spawn''':&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -s&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В результате соберется полноценный '''all.spawn''' из всех уровней которые есть в папке '''levels'''. Но на этом работа только начинается, теперь надо '''отредактировать''' этот получившийся '''all.spawn''' и добавить '''level_changer''' на уровень гсц, чтобы мы смогли перейти с него на наш.(в нашем случае с эскейпа на test_level_x). Копируем получившийся '''all.spawn''' в &amp;lt;туда, куда вы распаковали aiwrapper&amp;gt;\utils и создаем .bat с таким текстом: &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
acdc.pl -d all.spawn&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В результате мы разобрали all.spawn на ltx'сы, нам нужен '''alife_l01_escape.ltx''', вписываем в конец туда это:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[не забитый номер]&lt;br /&gt;
;например 9000&lt;br /&gt;
section_name = level_changer &lt;br /&gt;
name = exit_to_new_location_from_esc&lt;br /&gt;
;любое_название_на_англ, (только не использованное)&lt;br /&gt;
position =&lt;br /&gt;
;здесь координаты где находиться левел чейнджер&lt;br /&gt;
;помните бумажку с координатами и параметрами, которую мы писали раньше?&lt;br /&gt;
;смотрим ту где параметры и координаты эскейпа и вписываем&lt;br /&gt;
direction = 0,0,0 &lt;br /&gt;
;направление &amp;quot;взгляда&amp;quot; игрока&lt;br /&gt;
;по желанию, можно вписать координаты с бумажки&lt;br /&gt;
game_vertex_id =  &lt;br /&gt;
;номер вершины игрового графа, задаёт первую вершину графа на данной локации&lt;br /&gt;
;с бумажки эскейпа&lt;br /&gt;
distance = 14.6999998092651&lt;br /&gt;
;&amp;quot;Расстояние&amp;quot; между точкой перехода(level_changer) и точкой появления&lt;br /&gt;
;актера на другом уровне (если считать зону неделимой), можно и 0.&lt;br /&gt;
level_vertex_id = &lt;br /&gt;
;Вершина уровневого графа, должно покатить '''-1''', но &lt;br /&gt;
;ставьте лучше то что записано на бумажке с эскейпа&lt;br /&gt;
object_flags = 0xffffff3e&lt;br /&gt;
custom_data = &amp;lt;&amp;lt;END&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = esc_way_test_if_reject&lt;br /&gt;
END&lt;br /&gt;
;custom data, где указано имя вейпоинта, который мы потом создадим &lt;br /&gt;
;на карте с помощью acdc, таже '''custom data''', что в начале &lt;br /&gt;
;статьи.&lt;br /&gt;
story_id =&lt;br /&gt;
;поставьте здесь неиспользуемый ID, например 8435&lt;br /&gt;
shapes = shape0&lt;br /&gt;
shape0:type = box&lt;br /&gt;
shape0:axis_x = 5.8284006118774,0,0&lt;br /&gt;
shape0:axis_y = 0,5.0005970001221,0&lt;br /&gt;
shape0:axis_z = 0,0,5.3902206420898&lt;br /&gt;
shape0:offset = 0,0,0&lt;br /&gt;
;сфера, в данном случае куб, именно в нем будет активироваться наш переход&lt;br /&gt;
restrictor_type = 3&lt;br /&gt;
&lt;br /&gt;
;выставляем здесь все переменные для нового уровня&lt;br /&gt;
dest_game_vertex_id = &lt;br /&gt;
;номер вершины графа нашей новой локации, туда игрок переместится&lt;br /&gt;
;помните '''уникальный''' объект, который я просил вас поставить?&lt;br /&gt;
;открываем '''alife_lxx_unknown.ltx''' и ищем тачку, сдираем значение с нее&lt;br /&gt;
dest_level_vertex_id =&lt;br /&gt;
;вершина уровнего графа нового левела&lt;br /&gt;
;должно покатить -1, но лучше взять с бумажки с параметрами с тестового левела&lt;br /&gt;
dest_position =&lt;br /&gt;
;координаты на нашем уровне, где ты появляешься&lt;br /&gt;
;с бумажки тестового левела, либо наугад, либо используйте открорректированные&lt;br /&gt;
;координаты с любого объекта на вашей карте, то есть например есть дерево&lt;br /&gt;
;c координатами 0, 1 , 2, корректируем относительно дерева и &lt;br /&gt;
;вписываем например 4, 1, 2&lt;br /&gt;
dest_direction = 0,-1.12671363353729,0&lt;br /&gt;
;направление &amp;quot;взгляда игрока на новом уровне&amp;quot;&lt;br /&gt;
;по желанию&lt;br /&gt;
dest_level_name = &lt;br /&gt;
;название вашего уровня, в нашем случае test_level_x&lt;br /&gt;
dest_graph_point = &lt;br /&gt;
;название точки спавна игрока(графа, то есть в нашем случае&lt;br /&gt;
;start_actor_01)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Еще одно определение двух параметров для непонятливых:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
game_vertex_id - ставится как коннекшн поинт ('''graph_point''' c соответствующими настройками)&lt;br /&gt;
level_vertex_id - '''graph_point''' - ставится как обычная граф поинт с уникальным номером без параметров&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В них вписываем уникальный ID для каждого уровня, то есть в некоторых случаях просто смотрим эти два параметра у соседних объектов этого левела и вписываем значения. Как правило, '''level_vertex_id''' можно поставить '''-1''', но не для всех объектов, '''game_vertex_id''' = ид уровня.&lt;br /&gt;
&lt;br /&gt;
Устали? =) А ведь еще не всё, нужно создать вейпоинт, который мы прописали в '''custom data''' '''level changer''''а. Открываем '''way_l01_escape.ltx''' и вписываем чтото типа:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[esc_way_test_if_reject]&lt;br /&gt;
points = p0,p1&lt;br /&gt;
;два вейпоинта&lt;br /&gt;
p0:name = name_test1&lt;br /&gt;
;имя вейпоинта 1&lt;br /&gt;
p0:position = -243.491257,-19.758562,-140.328583&lt;br /&gt;
;его координаты, ставьте их рядом с координатами level_changer&lt;br /&gt;
;но не в нём, корректируйте их, как в примере с деревом &lt;br /&gt;
p0:game_vertex_id = 8&lt;br /&gt;
p0:level_vertex_id = -1&lt;br /&gt;
p0:links = p1(1)&lt;br /&gt;
&lt;br /&gt;
p1:name = name_test2&lt;br /&gt;
;имя вейпоинта 2&lt;br /&gt;
p1:position = -255.491257,-19.758562,-140.328583&lt;br /&gt;
;его координаты, всё тоже самое, только корректируйте относительно позиции&lt;br /&gt;
; вейпоинта 0, как в этом примере.&lt;br /&gt;
p1:game_vertex_id = 9&lt;br /&gt;
p1:level_vertex_id = -1&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Поставили? Всё, осталось только собрать '''all.spawn''', батом или тотал коммандером выполняем это:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
acdc.pl -c all.ltx&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Теперь копируем получившийся '''all.spawn.new''' в '''gamedata\spawns\''' и переименовываем его в '''all.spawn'''.&lt;br /&gt;
&lt;br /&gt;
Мученья окончились :) Запускайте новую игру и наслаждайтесь вашим переходом...&lt;br /&gt;
&lt;br /&gt;
==В заключении==&lt;br /&gt;
Если вы хотите, чтобы ваша точка перехода отображалась на карте игрока, то лезем в '''level_tasks.script''' и добавляем в '''function add_lchanger_location()''' секцию, подобную представленной ниже:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
		-- test_level_x&lt;br /&gt;
		local obj = sim:story_object(8435)&lt;br /&gt;
		if obj then&lt;br /&gt;
			level.map_add_object_spot(obj.id, &amp;quot;level_changer&amp;quot;, &amp;quot;exit_to_new_location_from_esc&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В строке (obj.id, &amp;quot;level_changer&amp;quot;, &amp;quot;'''exit_to_new_location_from_esc'''&amp;quot;) выделенный текст - наименование вашего '''level_changer''', а число - его уникальный '''story_id''' на уровне, например на эскейпе или вашем левеле, список занятых '''story_id''' смотреть необязательно. Братьь любое число от 10000&lt;br /&gt;
&lt;br /&gt;
==Список необходимых программ ==&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=165 AiCompiler 0.1] от '''Neo'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=166 AiWrapper] от '''bardak''''а&lt;br /&gt;
*[http://www.rapidshare.ru/532500 Info_LVID_GVID] скрипт от '''bardak''''а&lt;br /&gt;
*[http://files.gsc-game.com/st/xray-sdk-setup-v0.4.exe SDK 0.4] от '''GSC'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewdownload&amp;amp;cid=13 SDK Update] от '''Neo''' + '''GSC'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewdownload&amp;amp;cid=13 Fixed Shaders] от '''Haron'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=308 патч для SDK  0.3] от '''Haron'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''written by Loxotron'''&lt;br /&gt;
&lt;br /&gt;
'''updated 11.01.08 by Loxotron'''&lt;br /&gt;
&lt;br /&gt;
'''24/06/08 небольшое добавление о компиляции - Kalinin11'''&lt;br /&gt;
&lt;br /&gt;
'''Дополнил информацией для тех, у кого X-Ray SDK не объединён с игрой  - Эээ...'''&lt;br /&gt;
&lt;br /&gt;
[[Категория:Программы]][[Категория:SDK]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0</id>
		<title>Создание, описание особенностей и объяснение работы карт рельефа</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5,_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9_%D0%B8_%D0%BE%D0%B1%D1%8A%D1%8F%D1%81%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D0%BA%D0%B0%D1%80%D1%82_%D1%80%D0%B5%D0%BB%D1%8C%D0%B5%D1%84%D0%B0"/>
				<updated>2017-02-02T17:53:05Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.9.106 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье я постараюсь объяснить создание правильных карт ''bump'' и ''bump#'' с помощью '''Adobe Photoshop''' и '''X-ray SDK'''. Думаю, с этими дополнительными составляющими текстурами много кто сталкивался, много кто искал пути правильного их создания. На самом деле, чтобы правильно создать бамп-карты, необходимо освоить как техническую сторону вопроса (делать, так сказать, &amp;quot;по науке&amp;quot;), так и практическую (различные методики работы в фотошопе, обработка текстуры, исправление возможных косяков и т. д.). В данной статье больше всего внимания будет уделяться именно первому пункту, ведь в любом деле лучше сначала выучить основы, а потом, в том числе, самостоятельно обучаясь, получить опыт в практике, улучшить свое мастерство.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''Немного о структуре и стилистике статьи, дабы все было в дальнейшем более понятно'''&amp;lt;br&amp;gt;&lt;br /&gt;
Многие игровые текстуры (в Сталкере - все) находятся в формате ''RGB''. Если кто не знает, есть понятие &amp;quot;каналы&amp;quot;. Их вкладка в ФШ находится справа, ''&amp;quot;Слоев&amp;quot;''. В ''RGB'' это:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - red (красный)&lt;br /&gt;
G - green (зеленый)&lt;br /&gt;
B - blue (синий)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При их &amp;quot;смешивании&amp;quot;, получаем нормальную окраску изображения. В общем, указания по каналам в данной статье будут даваться в виде, как блок выше. &lt;br /&gt;
Иногда в RGB каналов больше (можете сами попробовать добавлять в фотошопе). В игре используется канал ''Альфа 1'' (его еще просто &amp;quot;Альфой&amp;quot; кличут). У него есть, разумеется, свои особые функции. Итого, вот так будут выглядеть указания по каналам:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;R - что должно быть на красном канале&lt;br /&gt;
G - что на зеленом&lt;br /&gt;
B - что на синем&lt;br /&gt;
Alpha - что на Альфе&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Статья разделена на три основные части:&amp;lt;br&amp;gt;&lt;br /&gt;
1. '''Теория'''. Здесь будут описаны сами карты ''bump'' и ''bump#'', а также некоторые другие рабочие карты и элементы (не забудьте заглянуть в подраздел ''&amp;quot;Мини-словарь терминов статьи&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
2. '''Работа в фотошопе'''. Описание действий в фотошопе, которые необходимы для подготовки элементов бампа.&amp;lt;br&amp;gt;&lt;br /&gt;
3. '''SDK'''. Завершающая часть работы по бампу. Здесь собираются, регистрируются, настраиваются составляющие бампа, а в последствии, - создаются ''bump'' и ''bump#''.&lt;br /&gt;
==Теория==&lt;br /&gt;
Для начала попытаюсь объяснить структуру основных карт и разобрать основные понятия статьи. Всё ниже написанное не обязательно верно на все 100%.&lt;br /&gt;
&lt;br /&gt;
===Height Map (карта высот)===&lt;br /&gt;
Карта высот - сугубо служебная карта в Сталкере. Как отдельная текстура не встречается, однако, если вы делаете карту нормалей в фотошопе, то для начала нужно будет создать или &amp;quot;запечь&amp;quot; в специальных программах карту высот. В карте высот все построено на белых (высоты), черных (впадины), серых (плюс-минус ровные плоскости) оттенках. В целом, в основном выходит, что основная часть изображения - серая, в выпуклых местах оно светлее, а на месте впадин - темнее.&lt;br /&gt;
&lt;br /&gt;
===Normal Map (карта нормалей)===&lt;br /&gt;
Карту нормалей можно получить следующими способами:&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с высокополигональной модели в 3д-редакторе, в роде '''3ds Max''', '''zBrush'''...&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот с помощью одного из плагинов для '''Photoshop''' (плагин NVIDIA, плагин PixPlant, плагин xNormal)&amp;lt;br&amp;gt;&lt;br /&gt;
- сгенерировать с ранее созданной карты высот в спец-прогах ('''xNormal''', '''PixPlant''', '''CrazyBump''')&amp;lt;br&amp;gt;&lt;br /&gt;
Если разбирать по каналам схематически, то выглядит так:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
R - ось X - указывает нормали влево и вправо (горизонтальные)&lt;br /&gt;
G - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
B - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
При включенном ''RGB'' на каналах, смотрится как текстура в синих, фиолетовых, сиреневых, даже иногда розовых цветах. Нормал мапу очень и очень рекомендуется создавать для бампа (тем более, если она с хай-поли модели), а не использовать сокращенный вариант с картой высот (об этом узнаете в разделе СДК ниже). Нормал мапа, собственно, и предает текстуре различных объемных черт. В дальнейшем, после сборки в СДК, карта станет частью ''bump''.&lt;br /&gt;
&lt;br /&gt;
===bump===&lt;br /&gt;
&lt;br /&gt;
Карта ''bump'' представляет собой обычную карту нормалей в формате A(BGR) (типично для формата сжатия DXT5_nm). Разработчики использовали такой порядок по очень простой причине - DXT компрессия гораздо меньше &amp;quot;портит&amp;quot; текстуру, так как альфа-канал не подвергается компресии и остается практически в исходном виде. Поясню: еще раз гляньте на каналы карты нормалей. А теперь представьте, что на пустое изображения с каналами RGBA поставили все ту же карту нормалей, только перевернутую по каналам. То есть наполнение R с карты нормалей перешло на канал Альфа (А) карты ''bump'', G перешло в B, B перешло в G. Что касается канала R в бампе, туда поставили ''Specular Map'' (карту бликов). О ней можете подробней почитать в мини-словаре терминов.&amp;lt;br&amp;gt;&lt;br /&gt;
Также хочу напомнить, что в своем полном виде карта ''bump'' создается из карты нормалей + текстурой с спекуляром на Альфе в СДК. Такая-вот текстурная солянка. Думаю, вы знаете, что она в игре делает, но если вы столкнулись с данными терминами первый раз, то все довольно просто: карта делает текстуру объекта более красивой, объемной, с выпуклостями и впадинами, добавляет или запрещает отражение текстурой света от солнца, лампы, фонарика и т. д. Вот, например, новенькому листу металла было бы неплохо придать возможность отражать блики, а кирпичной текстуре задать впадины между кирпичиками. А вот дереву, допустим, никаких отражений света не надо, хотя высоты (впадины и выпуклости) добавить таки можно. Еще замечу, что бампы не нужны для текстур партиклов, текстур интерфейса и еще ряда специфических изображений. К основной текстуре привязывается через файл '''текстура.thm'''. Но по поводу этого не беспокойтесь, ведь файлы thm появляется при создании бампа/подключении бампа к текстуре в СДК.&lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
[[Изображение:Argb.png|300px|thumb|right|Каналы в карте bump]]&lt;br /&gt;
&amp;lt;pre&amp;gt;R - Specular map - карта интенсивности блика&lt;br /&gt;
G - ось Z - указывает нормали в глубину от поверхности&lt;br /&gt;
B - ось Y - указывает нормали вверх и вниз (вертикальные)&lt;br /&gt;
Alpha - ось X - указывает нормали влево и вправо (горизонтальные)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===bump#===&lt;br /&gt;
&lt;br /&gt;
''Bump#'' - очень интересная карта, назначение которой для многих непонятно. Так как нагуглить какую-либо информацию насчет правильного названия мне не удалось, я называю ее просто &amp;quot;Normal error map&amp;quot;. Не знаю, используются ли подобные технологии в других играх, но встретить ее где-либо, кроме сталкера, мне не удалось. Эта карта &amp;quot;фиксит&amp;quot; ошибки сжатия DXT у бампа и генерируется только с помощью СДК, поэтому всякие непонятные действия некоторых пользователей, вроде вставки вместо нее обычной или обесцвеченной карты нормалей, а также описанного в статье Argus'a заливания серым со вставкой в альфа-канал карты высот, использовать нельзя. Выглядит как серое зашумленное изображение. Еще раз напоминаю, ''bump#'' создается &amp;lt;u&amp;gt;автоматически&amp;lt;/u&amp;gt; при генерировании ''bump'' в СДК. &lt;br /&gt;
&lt;br /&gt;
Каналы:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - ошибки оси X карты нормалей&lt;br /&gt;
G - ошибки оси Y карты нормалей&lt;br /&gt;
B - ошибки оси Z карты нормалей&lt;br /&gt;
Alpha - карта высот; используется для параллакса, если использование оного было включено при настройке текстуры&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для сравнения:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:W.jpg|center|250px|thumb|C bump#]]||[[Изображение:Wo.jpg|center|250px|thumb|Без bump#, заметны артефакты]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Мини-словарь терминов===&lt;br /&gt;
Здесь будет находиться описание некоторых терминов, которые встречаются в статье.&lt;br /&gt;
'''Diffuse texture ака диффузная текстура ака диффуз''' - основная исходная текстура, для которой делаются дополнительные карты.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Specular Map ака карта бликов''' - карта, которая в последствии работы в СДК станет частью бампа (на красном канале). Отвечает за отражение текстурой света. Изготавливается либо с диффуза в Фотошопе, либо параллельно с диффузом в 3д-редакторе. На карте черным (и оттенками черного) обозначаются места, которые не будут отсвечивать свет), а белым (и оттенками) - которые будут отсвечивать.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Работа в фотошопе==&lt;br /&gt;
Здесь также понадобится '''NormalMapFilter''' от '''nVidia''', полагаю, у вас он уже установлен, так как он идет в комплекте с dds-плагином или другой удобный плагин (озвучены выше, в теории карты нормалей).&lt;br /&gt;
Все файлы сохраняются в tga 24 bits/pixel (если нету альфа-канала) или 32 bits/pixel (если есть альфа-канал). Перед сохранением следует перевести изображение из 16-битного в 8-битное.  &lt;br /&gt;
&lt;br /&gt;
===Карта высот===&lt;br /&gt;
&lt;br /&gt;
На карте высот белым цветом обозначены выпуклости, черным - впадины. Если бамп делается для текстур окружения, то можно начать работу с оригинальной (диффузной) текстуры, если же бамп делается для персонажа, то такой способ обычно неприемлем, зачастую из-за камуфляжа, который никак не должен сказываться на рельефе ткани (хотя, в принципе, если есть определенный опыт работы, прямые руки и старание, то подобных косяков можно избежать). &lt;br /&gt;
По сути, создание карты высот - процесс творческий, могу дать лишь несколько советов:&lt;br /&gt;
*Над картой высот работа должна проводиться строго в 16bits, причем с самого начала до финального экспорта в SDK[[Изображение:16bits.PNG|160px|thumb|right|Перевод в 16-битное изображение]]&lt;br /&gt;
*Качественного результата не будет, если просто взять и засунуть диффузную текстуру в генератор, не делайте этого. Придется тщательно поработать над картой высот.&lt;br /&gt;
*Не обязательно пытаться показать на карте высот все детали и рельеф сразу, их можно добавить позднее, когда будет сгенерирована карта нормалей.&lt;br /&gt;
[[Изображение:Увеличение_детализации.png|300px|thumb|left|Пример добавления деталей]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#696969&amp;quot;&amp;gt;(Пример сделан прямо во время написания статьи)&amp;lt;/span&amp;gt;&lt;br /&gt;
*Для карты высот, если делаете ее с диффуза, можно взять один из каналов ''RGB'' диффузной текстуры или же взять обесцвеченную. При первом варианте, выберите желаемый канал, выделяйте изображения, копируйте, вставляйте его в новый документ. Новое изображение будет в режиме ''&amp;quot;Градация серого&amp;quot;''. Рекомендую перевести опять в ''RGB'', так как не все плагины и фильтры читают ''&amp;quot;Градацию&amp;quot;''. При втором варианте, просто создайте дубликат изображения и нажмите ''Ctrl+Shift+U'' (''&amp;quot;Обесцветить&amp;quot;'').&lt;br /&gt;
*На текстуре карты высот можно сделать слой поверх фонового, на который нужно скопировать обесцвеченную инвертированную исходную текстуру. Звучит не очень, но это все не сложно. Берем диффуз, нажимаем ''Ctrl+I'' (инвертируем). Потом обесцвечиваем, как показано выше. Копируем на новый слой карты высот. Режим наложения выставляем ''&amp;quot;Перекрытие&amp;quot;'' (''&amp;quot;Overlay&amp;quot;''). Дальше еще можно сделать слой более прозрачным. В целом, смотрите, чтоб текстура была сбалансированной в плане плоскостей. Ровная часть должна быть заполнена серым оттенком.&lt;br /&gt;
*Очень пригодятся в этом случае инструменты ''&amp;quot;Осветлитель&amp;quot;'' и ''&amp;quot;Затемнитель&amp;quot;''. &lt;br /&gt;
*Поверх всего можно добавить еще один слой, на котором будете использовать инструменты в роде &amp;quot;Кисти&amp;quot;.&lt;br /&gt;
====Metro 2033 (если кому интересно)====&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Metro_example.png|300px|thumb|left|Пример получаемой карты нормалей из Metro 2033]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
В метро вместо карт нормалей, как обычно бывает в большинстве игр, используется карта высот - файлы с постфиксом ''_bump''. Они есть только в том случае, если вы распаковывали игру самостоятельно, большая часть сборщиков &amp;quot;Архивов моделей&amp;quot; их в архив не добавляет.&lt;br /&gt;
&amp;quot;Состав&amp;quot; карты высот Метро 2033:&lt;br /&gt;
&amp;lt;pre&amp;gt;R - пустой канал&lt;br /&gt;
G - Specular map - карта интенсивности блика&lt;br /&gt;
B - пустой канал&lt;br /&gt;
Alpha - карта высот&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
Создание происходит следующим образом: берем карту высот, открываем фильтр, задаем настройки по усмотрению. Далее получаем готовую карту нормалей. Нужно осмотреть карту, чтоб там не было мелких не нужных горбиков и прочих недостатков. Скорее всего, все можно будет решить размытием в некоторых местах. Еще, как вариант, чудесная методика размытия, при которой изображение все равно остается более четким:&amp;lt;br&amp;gt;&lt;br /&gt;
1. Дублируем фоновый слой.&amp;lt;br&amp;gt;&lt;br /&gt;
2. Дубликату выставляем режим ''&amp;quot;Перекрытие&amp;quot;''.&amp;lt;br&amp;gt;&lt;br /&gt;
3. Применяем один из фильтров размытия (к примеру, ''&amp;quot;Размытие по гауссу&amp;quot;'').&amp;lt;br&amp;gt;&lt;br /&gt;
4. Если надо, дублируем этот слой еще пару раз.&lt;br /&gt;
&lt;br /&gt;
===Specular Map===&lt;br /&gt;
Данную карту создавать не сложно: взять обесцвеченный диффуз и обработать темным оттенком те регионы, которые не будут отражать свет, а светлым - которые будут. Чем интенсивней оттенок, тем сильнее эффект.&lt;br /&gt;
&lt;br /&gt;
==SDK==&lt;br /&gt;
===Карта нормалей===&lt;br /&gt;
&lt;br /&gt;
При наличии уже готовой карты нормалей, изготовленной вами, из другой игры, '''zBrush''' или любой другой программы высокополигонального 3d моделирования, остается только добавить ее в '''SDK'''. ДЛя чего регистрировать в СДК? Для того, чтоб потом совместить нормал мапу с заготовкой для бампа и получить бамп.&lt;br /&gt;
Параметры:&lt;br /&gt;
*'''0.4''':&lt;br /&gt;
Type: 2D Texture, Format: 32 bit (8:8:8:8), MipMap Filter: Kaiser (здесь уже по желанию, я всегда использую Kaiser)&lt;br /&gt;
[[Изображение:0.4_nmap.png|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
*'''0.5/0.6, 0.7''':&lt;br /&gt;
Type: Normal Map, MipMap Filter: Kaiser&lt;br /&gt;
[[Изображение:0.5-0.7_nmap.png‎|150px|thumb|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
===Bump===&lt;br /&gt;
&lt;br /&gt;
С использованием отдельной карты нормалей bump карта изготавливается очень просто (заготовку для бампа лучше назвать '''текстура_bump.tga''' и поместить в '''editors/import'''):&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - залить серым цветом, RGB = 128,128,128&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Параметры добавления в SDK не зависят от версии:&amp;lt;br/&amp;gt;&lt;br /&gt;
Type: Bump Map, в Special Normal Map указываем добавленную ранее карту нормалей.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_st.png‎|150px|thumb|left|В фотошопе]]||[[Изображение:0.4_bump.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot; /&amp;gt;&lt;br /&gt;
Если же вдруг возникло желание обойтись без дополнительной карты нормалей, то добавление в SDK и каналы меняются:&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;RGB - карта высот&lt;br /&gt;
Alpha - Specular Map&amp;lt;/pre&amp;gt;&lt;br /&gt;
Это единственный вариант, когда параметр ''Virtual height'' действительно влияет на интенсивность получаемого бампа.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|[[Изображение:Bump_map_wo_n.png|200px|thumb|left|В фотошопе]]||[[Изображение:Bump_wo_n_sdk.png|150px|thumb|left|Добавление в SDK]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==В заключение + дополнительная информация==&lt;br /&gt;
Пара полезных ссылок.&amp;lt;br&amp;gt;&lt;br /&gt;
1. [[Файл_формата_.thm]] - статья про привязку бампа к текстуре.&amp;lt;br&amp;gt;&lt;br /&gt;
2. [https://www.youtube.com/watch?v=TrkOAIZqKTA Отличный видеоурок Андрея Непряхина (новый)]&amp;lt;br&amp;gt;&lt;br /&gt;
Всем спасибо за внимание! Успехов!&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
'''lafugix''' - создатель статьи&amp;lt;br&amp;gt;&lt;br /&gt;
'''FantomICW''' - ремейк статьи (переписал на более понятный язык, дополнил материал)&lt;br /&gt;
[[Категория:Texturing]][[Категория:SDK]][[Категория:SDK_CS]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_%D0%B8%D0%BD%D0%B2%D0%B5%D0%BD%D1%82%D0%B0%D1%80%D1%8F</id>
		<title>SoC. Изменение интерфейса инвентаря</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81%D0%B0_%D0%B8%D0%BD%D0%B2%D0%B5%D0%BD%D1%82%D0%B0%D1%80%D1%8F"/>
				<updated>2017-01-31T12:01:56Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.157.87 (обсуждение) к версии 95.108.133.203&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Для работы над интерфейсом инвентаря нужны следующие файлы:&lt;br /&gt;
&lt;br /&gt;
'''ui_inventory.dds''' и '''ui_inventory2.dds''' (папка ''textures\ui\'')&lt;br /&gt;
&lt;br /&gt;
'''inventory_new.xml''', для обычных экранов или '''inventory_new_16.xml''' для экранов 16:9 (находятся в ''gamedata\config\ui\''). &lt;br /&gt;
&lt;br /&gt;
'''Примечание:''' &amp;lt;nowiki&amp;gt;&amp;lt;!--текст--&amp;gt;&amp;lt;/nowiki&amp;gt; - так выделяются комментарии в xml-файлах.&lt;br /&gt;
&lt;br /&gt;
Приступаем к правке&lt;br /&gt;
==Текстуры==&lt;br /&gt;
&lt;br /&gt;
Любой файл, описывающий интерфейс игры (не считая скриптовых), начинается следующими строками:&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;?xml version='1.0' encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;w&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
и заканчивается&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;/w&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Текстура слотов инвентаря===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;properties_box&amp;gt;&lt;br /&gt;
&amp;lt;texture&amp;gt;ui_cb_listbox&amp;lt;/texture&amp;gt; &amp;lt;!--текстура инвентаря--&amp;gt;&lt;br /&gt;
… &amp;lt;/properties_box&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Текстура пояса===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;main x=0 y=0 width=1024 height=768&amp;gt; &amp;lt;!--точка отсчёта текстуры, её размер (разрешение экрана)--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;belt_slots x=&amp;quot;0&amp;quot; y=&amp;quot;80&amp;quot; width=&amp;quot;1024&amp;quot; height=&amp;quot;172&amp;quot;&amp;gt; &amp;lt;!--х, у – координаты текстуры на экране, width – ширина, height - высота--&amp;gt;&lt;br /&gt;
&amp;lt;texture&amp;gt;ui_slots_belt&amp;lt;/texture&amp;gt; &amp;lt;!--текстура--&amp;gt;&lt;br /&gt;
&amp;lt;/belt_slots&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Текстура рюкзака, иконки актора, описания предметов===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;back x=&amp;quot;10&amp;quot; y=&amp;quot;243&amp;quot; width=&amp;quot;1005&amp;quot; height=&amp;quot;483&amp;quot;&amp;gt; &amp;lt;!--точка отсчёта текстуры, размер, х, у – координаты текстуры на экране, width – ширина, height - высота--&amp;gt;&lt;br /&gt;
&amp;lt;texture&amp;gt;ui_inventory_main&amp;lt;/texture&amp;gt; &amp;lt;!--текстура--&amp;gt;&lt;br /&gt;
&amp;lt;/back&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Дальше всё по аналогии, меняются только названия текстур и координаты.&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;bottom_static ... &amp;lt;/bottom_static&amp;gt; &amp;lt;!--не рассматриваю - полоса внизу экрана, если мешает, закомментируйте или удалите--&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Параметры слотов==&lt;br /&gt;
===Рюкзак===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;dragdrop_bag x=&amp;quot;22&amp;quot; y=&amp;quot;33&amp;quot; width=&amp;quot;310&amp;quot; height=&amp;quot;442&amp;quot; &amp;lt;!--точка начала координат, размер, х, у – координаты экране, width – ширина, height – высота в сумке--&amp;gt;&lt;br /&gt;
cell_width = &amp;quot;41&amp;quot; cell_height=&amp;quot;41&amp;quot; rows_num=&amp;quot;10&amp;quot; cols_num=&amp;quot;7&amp;quot; &amp;lt;!--ширина и высота ячейки, rows_num – кол-во рядов, cols – кол-во строк--&amp;gt;&lt;br /&gt;
unlimited=&amp;quot;1&amp;quot; group_similar=&amp;quot;1&amp;quot;/&amp;gt; &amp;lt;!--не рассматривал--&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Примечание:''' если нужно увеличить или уменьшить количество строк и столбцов, то меняем параметр ''cell_width = &amp;quot;41&amp;quot; cell_height=&amp;quot;41 rows_num=&amp;quot;10&amp;quot; cols_num=&amp;quot;7&amp;quot;'' на необходимый, дальше нужное вам число ''cell_width * cols_num = width'' - записываем полученное значение, желательно, чтобы влезло в текстуру слота рюкзака. К вылету не приводит, но если больше или меньше выглядит не красиво. Например, мои значения такие: ''&amp;lt;dragdrop_bag x=&amp;quot;22&amp;quot; y=&amp;quot;33&amp;quot; width=&amp;quot;290&amp;quot; height=&amp;quot;420&amp;quot;cell_width = &amp;quot;35&amp;quot; cell_height=&amp;quot;35&amp;quot; rows_num=&amp;quot;12&amp;quot; cols_num=&amp;quot;8&amp;quot; unlimited=&amp;quot;1&amp;quot; group_similar=&amp;quot;1&amp;quot;/&amp;gt;''&lt;br /&gt;
&lt;br /&gt;
===Пояс===&lt;br /&gt;
Всё тоже самое. &lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;dragdrop_belt x=&amp;quot;645&amp;quot; y=&amp;quot;136&amp;quot; width=&amp;quot;410&amp;quot; height=&amp;quot;60&amp;quot;&lt;br /&gt;
cell_width = &amp;quot;60&amp;quot; cell_height=&amp;quot;60&amp;quot; rows_num=&amp;quot;1&amp;quot; cols_num=&amp;quot;5&amp;quot; /&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
'''О наболевшем!''' Увеличение слотов пояса - это читерство!&lt;br /&gt;
&lt;br /&gt;
'''Пример''': два ряда артефактов по 13 штук, меняем&lt;br /&gt;
cell_width = &amp;quot;30&amp;quot; cell_height=&amp;quot;30&amp;quot; rows_num=&amp;quot;2&amp;quot; cols_num=&amp;quot;13, с теми же размерами окна получаем 26 артефактов на поясе, дальше можно не играть, т. к. даже если повесить 26 шт кровь камня - ты неуязвим. Однако, хочу заметить, чтобы арты повисли на поясе нужно править соотв. раздел '''system.ltx''' &lt;br /&gt;
&amp;lt;pre&amp;gt;max_belt      = 26&amp;lt;/pre&amp;gt;&lt;br /&gt;
Без этой правки артефактов будет 5.&lt;br /&gt;
&lt;br /&gt;
===Окно иконки актора в броне.===&lt;br /&gt;
В этих параметрах лучше вообще ничего не менять!&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;dragdrop_outfit … /&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
===Пистолетный слот=== &lt;br /&gt;
По умолчанию 2х3 можно сделать больше: 2х4, 2х5 для перемещения в этот слот допустим АК-74 (если не влезет по количеству ячеек указанных в конфиге оружия будет вылет).&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;dragdrop_pistol … /&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Слот автоматического оружия===&lt;br /&gt;
Аналогично.&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;dragdrop_automatic … /&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
===Весь рюкзак===&lt;br /&gt;
Всё окно рюкзака целиком (вес, иконки содержимого) без текстуры.&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;bag_static … &amp;lt;/bag_static&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Мелочи==&lt;br /&gt;
===Количество денег у ГГ===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;money_static ... координаты, текст, шрифт, цвет в системе RGB... &amp;lt;/money_static&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
===Описание===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;descr_static&amp;gt;   &amp;lt;/descr_static&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
===Надпись «Костюм»===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;character_frame_window&amp;gt;   ...  &amp;lt;/character_frame_window &amp;lt;!--цвет RGB--&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Информация защитных свойств брони в инвентаре==&lt;br /&gt;
===Параметры===&lt;br /&gt;
Открывает их тег &amp;lt;outfit_info …&lt;br /&gt;
&lt;br /&gt;
Защита от огня, удар, разрыв, и т. д. здесь координаты окна и каждого параметра в отдельности, в соответствующей строке:&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;static_burn_immunity …&amp;lt;/static_burn_immunity&amp;gt;&lt;br /&gt;
&amp;lt;static_strike_immunity … &amp;lt;/static_strike_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_shock_immunity …&amp;lt;/static_shock_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_wound_immunity …&amp;lt;/static_wound_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_radiation_immunity …&amp;lt;/static_radiation_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_telepatic_immunity …&amp;lt;/static_telepatic_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_chemical_burn_immunity …&amp;lt;/static_chemical_burn_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_explosion_immunity …&amp;lt;/static_explosion_immunity&amp;gt; &lt;br /&gt;
&amp;lt;static_fire_wound_immunity …&amp;lt;/static_fire_wound_immunity&amp;gt;&lt;br /&gt;
…&amp;lt;/outfit_info&amp;gt; &amp;lt;!--закрытие тега--&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Рамки колб здоровья и др.==&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;static_personal x=1 y=285 width=100 height=260/&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Здоровье, радиация и т. д.=== &lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;rank … &amp;lt;/rank&amp;gt; &lt;br /&gt;
&amp;lt;progress_background … &amp;lt;/progress_background&amp;gt; &lt;br /&gt;
&amp;lt;progress_back_rank … &amp;lt;/progress_back_rank&amp;gt; &lt;br /&gt;
&amp;lt;progress_bar_health … &amp;lt;/progress_bar_health&amp;gt; &lt;br /&gt;
&amp;lt;progress_bar_psy … &amp;lt;/progress_bar_psy&amp;gt;&lt;br /&gt;
&amp;lt;progress_bar_radiation … &amp;lt;/progress_bar_radiation&amp;gt;&lt;br /&gt;
&amp;lt;progress_bar_rank … &amp;lt;/progress_bar_rank&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Часы и кнопка &amp;quot;Выход&amp;quot;==&lt;br /&gt;
===Время===&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;time_static … &amp;lt;/time_static&amp;gt; &amp;lt;!--положение текстуры и надпись &amp;quot;Время&amp;quot;--&amp;gt;&lt;br /&gt;
&amp;lt;time_static_ … &amp;lt;/time_static_str&amp;gt; &amp;lt;!--часы внутри текстуры--&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Кнопка &amp;quot;Выход&amp;quot;=== &lt;br /&gt;
Текстура кнопки, надпись, цвет в системе RGB в статике, наведенный указатель мыши, нажатое состояние.&lt;br /&gt;
&lt;br /&gt;
От себя добавлю, для красоты можно поместить в другое место и если честно я эту кнопку увидел только когда редактировать инвентарь начал. О-как!&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;exit_button … &amp;lt;/exit_button&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
==Звуки инвентаря== &lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;action_sounds&amp;gt; … &amp;lt;/action_sounds&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные файлы]]&lt;br /&gt;
[[Категория:Незаконченные статьи]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:%D0%94%D0%B5%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_%D1%83%D1%80%D0%BE%D0%B2%D0%BD%D0%B5%D0%B9_%D0%B2_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82_%D0%A1%D0%94%D0%9A</id>
		<title>Обсуждение:Декомпиляция уровней в формат СДК</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:%D0%94%D0%B5%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_%D1%83%D1%80%D0%BE%D0%B2%D0%BD%D0%B5%D0%B9_%D0%B2_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82_%D0%A1%D0%94%D0%9A"/>
				<updated>2017-01-31T12:01:56Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.157.87 (обсуждение) к версии 91.77.137.248&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Сделал я всё как здесь написано , и при загрузке уровня вылазит такая ошибка  &lt;br /&gt;
&lt;br /&gt;
 http://s50.radikal.ru/i129/0906/9b/146bb5a41cf3.png . &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если нажать ок , то уровень будет и дальше грузится , и загрузится только без звуков и спаун элементов и всего того что грузится после SOUND SOURCE . Полоса загрузки sound source так и остаётся не загруженой .&lt;br /&gt;
&lt;br /&gt;
== Декомпиляция уровней ЗП ==&lt;br /&gt;
&lt;br /&gt;
С ТЧ у меня всё прошло нормально. не считая аналогичных описанным выше вылетающих ошибок. С локацией Припять из ЗП converter рисует во такое:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;reading pri_a16_actor_treasure (inventory_box): 304 &amp;lt;&amp;gt; 324&lt;br /&gt;
can't create entity campfire&lt;br /&gt;
can't create entity campfire&lt;br /&gt;
can't create entity campfire&lt;br /&gt;
[bug] assertion failed at ..\xr_entity_script.cxx:393&lt;br /&gt;
&lt;br /&gt;
This application has requested the Runtime to terminate it in an unusual way.&lt;br /&gt;
Please contact the application's support team for more information.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Строка батника вот такая: &amp;lt;code&amp;gt;converter -level pripyat -out CoP_pripuat -mode le&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Перекомпиляция уровней ==&lt;br /&gt;
&lt;br /&gt;
Для того, чтобы декомпилировать уровень с целью редактирования и последующей компиляции, необходимо задать параметр -with_lods.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
converter.exe -level &amp;lt;имя_карты&amp;gt; -mode le -with_lods&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Иначе при прекомпиляции будет что-то вроде этого:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
!There is no texture 'gamedata\textures\lod\lod_levels_yantar_yantar_lod0063.dds'&lt;br /&gt;
!There is no texture 'gamedata\textures\lod\lod_levels_yantar_yantar_lod0063_nm.dds'&lt;br /&gt;
!There is no texture 'gamedata\textures\lod\lod_levels_yantar_yantar_lod0064.dds'&lt;br /&gt;
!There is no texture 'gamedata\textures\lod\lod_levels_yantar_yantar_lod0064_nm.dds'&lt;br /&gt;
ERROR: Validate 'Scene Object' failed!&lt;br /&gt;
Capturing unused face...&lt;br /&gt;
Validation FAILED!&lt;br /&gt;
ERROR: Validation failed. Invalid scene.&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B8_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_X-Ray_SDK_0.4,_0.5/0.6,_0.7</id>
		<title>Установка и настройка X-Ray SDK 0.4, 0.5/0.6, 0.7</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B8_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_X-Ray_SDK_0.4,_0.5/0.6,_0.7"/>
				<updated>2017-01-29T21:39:36Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;У вас бывало, что после переустановки по той или иной причине X-Ray SDK, вы не помните как там правильно их настроить? Нет?!&amp;lt;br /&amp;gt; Похоже я тут один такой...&lt;br /&gt;
Да ну и пофиг! Напишу для себя что ли, чтобы не забыть...&lt;br /&gt;
&lt;br /&gt;
= Этап 1: Скачивание всего необходимого для полноценной работы =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''X-Ray SDK 0.4 Tools:''' http://yadi.sk/d/3-HP-Kn1DgkM3&lt;br /&gt;
&lt;br /&gt;
Зеркало: https://cloud.mail.ru/public/aaba9610a6cc/X-Ray%20SDK%200.4%20Tools&lt;br /&gt;
&lt;br /&gt;
'''X-Ray SDK 0.5/0.6 Tools:''' http://yadi.sk/d/1tsk8ZmaDgw5W&lt;br /&gt;
&lt;br /&gt;
Зеркало: https://cloud.mail.ru/public/1cb14b3c2e4f/X-Ray%20SDK%200.5%260.6%20Tools&lt;br /&gt;
&lt;br /&gt;
'''X-Ray SDK 0.7 Tools:''' http://yadi.sk/d/OS5LI9OrDgwK4&lt;br /&gt;
&lt;br /&gt;
Зеркало: https://cloud.mail.ru/public/cab83acec5b2/X-Ray%20SDK%200.7%20Tools&lt;br /&gt;
&lt;br /&gt;
'''General X-Ray SDK Tools:''' http://yadi.sk/d/-bwCakL8DhEeo&lt;br /&gt;
&lt;br /&gt;
Зеркало: https://cloud.mail.ru/public/316a633efd97/General%20X-Ray%20SDK%20Tools&lt;br /&gt;
&lt;br /&gt;
'''Патч отключающий упрощение моделей Actor Editor X-Ray ''' https://yadi.sk/d/b92guYyXDgkKd&lt;br /&gt;
&lt;br /&gt;
= Этап 2: Установка и настройка скачанного =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== X-Ray SDK 0.4 и его компоненты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1) Запустите файл '''X-Ray SDK 0.4.exe''' и установите в любую директорию;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Запустите файл '''Глобальный патч для X-Ray SDK 0.4.exe''' и установите в корневую директорию ранее установленной программы '''X-Ray SDK 0.4''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3) Распакуйте архив '''Патч отключающий упрощение моделей Actor Editor X-Ray SDK 0.4.7z''', и скопируйте файл '''xrECoreB.dll''' в папку ''level_editor\bins'', корневой директории '''X-Ray SDK 0.4''', с заменой файла;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Распакуйте архив '''Файлы .thm для всех текстур SoC.rar''', и скопируйте папку '''textures''' в папку ''level_editor\gamedata'', корневой директории '''X-Ray SDK 0.4'''.;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5) Распакуйте архив '''Fake Flatness.7z''', и скопируйте папки '''gamedata''' и '''rawdata''' в папку ''level_editor'', корневой директории '''X-Ray SDK 0.4''', с заменой файлов;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6) Распакуйте архив '''dds2tgaLE.rar''', запустите файл '''dds2tgaforLE.exe''', и установите программу в папку ''level_editor'', корневой директории '''X-Ray SDK 0.4''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7) Создайте папку с именем '''converter''' в корневой директории программы '''X-Ray SDK 0.4'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Распакуйте архив '''X-Ray game asset converter 02 june 2011 rev1019.zip''', и скопируйте файлы '''converter.exe''', '''converter.ini''', '''fsconverter_soc.ltx''' в ранее созданную папку '''converter'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переименуйте файл '''fsconverter_soc.ltx''' в '''fsconverter.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переместите файл '''converter.ini''' в папку ''level_editor'', корневой директории '''X-Ray SDK 0.4'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Откройте файл '''fsconverter.ltx'''. Обратите внимание на первую строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$sdk_root$		= false| false| c:\program files\x-ray sdk\level_editor\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В ней прописан полный путь к папке '''level_editor''' корневой директории '''X-Ray SDK 0.4'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этот путь отличается от вашего, то приведите его в соответствие с вашим и сохраните изменения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Далее, откройте файл '''converter.ini'''. Найдите в нём строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[2947_config]:2945_config&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на текст ниже:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$game_data$			= E:\Games\S.T.A.L.K.E.R\gamedata\&lt;br /&gt;
$game_levels$			= E:\Games\S.T.A.L.K.E.R\gamedata\levels\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В этих строчках прописаны полные пути к папке '''gamedata''' и её подпапке '''levels'''. Папка '''gamedata''' находится в папке ''level_editor'', корневой директории '''X-Ray SDK 0.4'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Укажите путь в соответствии с вашим и сохраните изменения;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8) Распакуйте архив '''SoC xrAI.rar''', скопируйте файл '''xrAI.bat''' и папку '''bins''', в папку ''level_editor'', корневой директории '''X-Ray SDK 0.4''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
9) Зайдите в папку в папку ''level_editor\bins'', корневой директории '''X-Ray SDK 0.4''' и удалите папку '''compiler'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Распакуйте архив '''Bench xrLC extra v3.9.7z''', скопируйте папку '''bins''', все '''.bat''' файлы, и файлы '''fs.txt''', '''fsgame.txt''' в папку ''level_editor'', корневой директории '''X-Ray SDK 0.4''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
10) .bat файл запуска '''Shader Editor''' в составе '''X-Ray SDK 0.4''' написан неправильно, его необходимо исправить. Для этого, откройте '''ShaderEditor.bat''', удалите весь текст, и вставьте этот:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;@start bins\ShaderEditor.exe -dsound&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''ПРИМЕЧАНИЕ:''''' При запуске услышите &amp;quot;противный&amp;quot; звук. Не пугайтесь! Просто переключитесь во вкладке '''Tools''' с '''Sound Environment''' на что-нибудь другое, например, на '''Material'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
11) Скопируйте файлы '''msvcp71.dll''' и '''msvcr71.dll''', из папки ''X-Ray SDK 0.4\level_editor\bins\compiler'', в папку ''X-Ray SDK 0.4\level_editor\bins''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Это исправит возможную проблему с запуском редакторов.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
12) Распакуйте архив '''FIX неработающих в Vista-7 окон X-Ray SDK 0.4.7z''', скопируйте файл '''xrCoreB.dll''' в папку ''X-Ray SDK 0.4\level_editor\bins''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Устраните несовместимость программ X-Ray SDK 0.4 по этой инструкции: http://stalkerin.gameru.net/wiki/index.php?title=Один_из_способов_запуска_SDK_на_Windows_Vista/7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Это исправит неработоспособность некоторых окон программ из состава '''X-Ray SDK 0.4''' в '''OS Windows Vista / 7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
13) Последнее, что нужно сделать - это распаковать ресурсы игры, и поместить их с заменой в папку ''level_editor\gamedata'', корневой директории '''X-Ray SDK 0.4'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Для этого можно воспользоваться ранее установленным '''X-Ray game asset converter''', а точнее его файлом '''converter.exe'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Скопируйте файл '''converter.exe''' в корневую директорию '''S.T.A.L.K.E.R. - Тень Чернобыля''', и создайте в ней же '''.bat''' файл следующего содержания:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;converter.exe -unpack gamedata.db0 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db1 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db2 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db3 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db4 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db5 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db6 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db7 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db8 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.db9 -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.dba -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.dbb -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.dbc -2947ru -dir unpack&lt;br /&gt;
converter.exe -unpack gamedata.dbd -2947ru -dir unpack&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Либо скачайте готовый '''.bat''' файл из '''General X-Ray SDK Tools'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Запустите созданный '''.bat''' файл, и дождитесь окончания распаковки, а после скопируйте все файлы из папки '''unpack''', в папку ''level_editor\gamedata'', корневой директории '''X-Ray SDK 0.4''', с заменой файлов.&lt;br /&gt;
&lt;br /&gt;
== X-Ray SDK 0.5/0.6 и его компоненты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1) Запустите файл '''X-Ray SDK 0.5.exe''' и установите в любую директорию;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Распакуйте архив '''Обновление X-Ray SDK 0.5 до 0.6.rar''', и скопируйте все полученные файлы и папки в корневую директорию '''X-Ray SDK 0.6''', с заменой файлов;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3) Распакуйте архив '''Патч отключающий упрощение моделей Actor Editor X-Ray SDK 0.6.7z''', и скопируйте файл '''xrECoreB.dll''' в папку ''editors\bin\designer\mixed'', корневой директории '''X-Ray SDK 0.6''', с заменой файла;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Распакуйте архив '''Fake Flatness.7z''', и скопируйте папки '''gamedata''' и '''rawdata''' в папку ''editors'', корневой директории '''X-Ray SDK 0.6''', с заменой файлов;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5) Распакуйте архив '''dds2tgaLE.rar''', запустите файл '''dds2tgaforLE.exe''', и установите программу в папку ''editors'', корневой директории '''X-Ray SDK 0.6''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6) Создайте папку с именем '''converter''' в корневой директории программы '''X-Ray SDK 0.6'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Распакуйте архив '''X-Ray game asset converter 02 june 2011 rev1019.zip''', и скопируйте файлы '''converter.exe''', '''converter.ini''', '''fsconverter_cs.ltx''' в ранее созданную папку '''converter'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переименуйте файл '''fsconverter_cs.ltx''' в '''fsconverter.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переместите файл '''converter.ini''' в папку ''editors'', корневой директории '''X-Ray SDK 0.6'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Откройте файл '''fsconverter.ltx'''. Обратите внимание на первую строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$sdk_root$		= false| false| c:\program files\X-Ray CS SDK\editors\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В ней прописан полный путь к папке '''editors''' корневой директории '''X-Ray SDK 0.6'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этот путь отличается от вашего, то приведите его в соответствие с вашим и сохраните изменения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Далее, откройте файл '''converter.ini'''. Найдите в нём строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[3456_config]:2947_config&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на текст ниже:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$game_data$			= E:\Games\Clear_Sky\gamedata\&lt;br /&gt;
$game_levels$			= E:\Games\Clear_Sky\gamedata\levels\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В этих строчках прописаны полные пути к папке '''gamedata''' и её подпапке '''levels'''. Папка '''gamedata''' находится в папке ''editors'', корневой директории '''X-Ray SDK 0.6'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Укажите путь в соответствии с вашим и сохраните изменения;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7) Распакуйте архив '''CS&amp;amp;CoP Compilers 2010 v3.0.7z''', скопируйте все папки и файлы в папку ''editors'', корневой директории '''X-Ray SDK 0.6''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8) На версиях '''OS Windows''', начиная с '''Vista''', в '''X-Ray SDK 0.5/0.6''' не работают окна открытия файлов в редакторах. Исправить сие недоразумение легко:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Откройте по очереди любым текстовым редактором файлы '''ActorEditor.bat''', '''LevelEditor.bat''', '''ParticleEditor.bat''', '''Postprocess.bat''', '''ShaderEditor.bat''', допишите в конце ключ '''-editor''', через пробел, и сохраните изменения в файлах.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;@start bin\mixed\LevelEditor.exe -nocache -editor&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Либо скачайте готовые '''.bat''' файлы из '''X-Ray SDK 0.5/0.6 Tools'''. Архив '''X-Ray SDK 0.5&amp;amp;0.6 Fixed .bats editors.7z'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
9) Скопируйте файлы '''tool_compile_xrAI.cmd''', '''tool_verify_ai_map.cmd''', '''tool_create_spawn.cmd''' из '''X-Ray SDK 0.5&amp;amp;0.6 Tools''' в папку ''editors\''&amp;lt;br&amp;gt;&lt;br /&gt;
Они необходимы для просчёта '''AI'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
10) Последнее, что нужно сделать - это распаковать ресурсы игры, и поместить их с заменой в папку ''editors\gamedata'', корневой директории '''X-Ray SDK 0.6'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Для этого можно воспользоваться ранее установленным '''X-Ray game asset converter''', а точнее его файлом '''converter.exe'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Скопируйте файл '''converter.exe''' в корневую директорию '''S.T.A.L.K.E.R. - Чистое Небо''', и создайте в ней же '''.bat''' файл следующего содержания:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;converter.exe -unpack -xdb mp\mp_agroprom.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_atp.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_autostation.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_bath.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_darkvalley.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_factory.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_firestation.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_garbage.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_limansk.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_lost_village.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_military_1.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_military_2.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_pool.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_railroad.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_rembasa.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_rostok.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_sport_center.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_training_camp.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_workshop.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb levels\levels.db0 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb levels\levels.db1 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb levels\levels.db2 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\configs.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db0 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db1 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db2 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb localization\xrussian.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_03.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_04.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_05.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_07.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_08.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_09.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_10.db -dir unpack&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Либо скачайте готовый '''.bat''' файл из '''General X-Ray SDK Tools'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Запустите созданный '''.bat''' файл, и дождитесь окончания распаковки, а после скопируйте все файлы из папки '''unpack''', в папку ''editors\gamedata'', корневой директории '''X-Ray SDK 0.6''' с заменой файлов.&lt;br /&gt;
&lt;br /&gt;
== X-Ray SDK 0.7 и его компоненты ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1) Запустите файл '''X-Ray SDK 0.7.exe''' и установите в любую директорию;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Запустите файл '''Патч для X-Ray SDK 0.7.exe''' и установите в корневую директорию ранее установленной программы '''X-Ray SDK 0.7''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3) Распакуйте архив '''Форсирование групп сглаживания Actor Editor X-Ray SDK 0.7.7z''', и скопируйте файл '''xrECoreB.dll''' в папку ''editors\bin\designer\mixed'', корневой директории '''X-Ray SDK 0.7''', с заменой файла;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Распакуйте архив '''Fake Flatness.7z''', и скопируйте папки '''gamedata''' и '''rawdata''' в папку ''editors'', корневой директории '''X-Ray SDK 0.7''', с заменой файлов;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5) Распакуйте архив '''dds2tgaLE.rar''', запустите файл '''dds2tgaforLE.exe''', и установите программу в папку ''editors'', корневой директории '''X-Ray SDK 0.7''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6) Создайте папку с именем '''converter''' в корневой директории программы '''X-Ray SDK 0.7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Распакуйте архив '''X-Ray game asset converter 02 june 2011 rev1019.zip''', и скопируйте файлы '''converter.exe''', '''converter.ini''', '''fsconverter_cop.ltx''' в ранее созданную папку '''converter'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переименуйте файл '''fsconverter_cop.ltx''' в '''fsconverter.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Переместите файл '''converter.ini''' в папку ''editors'', корневой директории '''X-Ray SDK 0.7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Откройте файл '''fsconverter.ltx'''. Обратите внимание на вторую строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$sdk_root$			= false| false| c:\program files\X-Ray CoP SDK\editors\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В ней прописан полный путь к папке '''editors''' корневой директории '''X-Ray SDK 0.7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Если этот путь отличается от вашего, то приведите его в соответствие с вашим и сохраните изменения.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Далее, откройте файл '''converter.ini'''. Найдите в нём строку:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[3870_config]:3456_config&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Обратите внимание на текст ниже:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;$game_data$			= E:\Games\COP\gamedata\&lt;br /&gt;
$game_levels$			= E:\Games\COP\gamedata\levels\&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В этих строчках прописаны полные пути к папке '''gamedata''' и её подпапке '''levels'''. Папка '''gamedata''' находится в папке ''editors'', корневой директории '''X-Ray SDK 0.7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Укажите путь в соответствии с вашим и сохраните изменения;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7) Распакуйте архив '''CS&amp;amp;CoP Compilers 2010 v3.0.7z''', скопируйте все папки и файлы в папку ''editors'', корневой директории '''X-Ray SDK 0.7''';&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8) Последнее, что нужно сделать - это распаковать ресурсы игры, и поместить их с заменой в папку ''editors\gamedata'', корневой директории '''X-Ray SDK 0.7'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Для этого можно воспользоваться ранее установленным '''X-Ray game asset converter''', а точнее его файлом '''converter.exe'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Скопируйте файл '''converter.exe''' в корневую директорию '''S.T.A.L.K.E.R. - Зов Припяти''', и создайте в ней же '''.bat''' файл следующего содержания:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;converter.exe -unpack -xdb mp\mp_agroprom.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_atp.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_autostation.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_bath.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_darkvalley.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_factory.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_firestation.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_garbage.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_limansk.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_lost_village.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_pool.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_pripyat.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_railroad.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_rembasa.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_rostok.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_sport_center.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb mp\mp_workshop.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb levels\levels.db0 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb levels\levels.db1 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\configs.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db0 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db1 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db2 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db3 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb resources\resources.db4 -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb localization\xrussian.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_01.db -dir unpack&lt;br /&gt;
converter.exe -unpack -xdb patches\xpatch_02.db -dir unpack&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Либо скачайте готовый '''.bat''' файл из '''General X-Ray SDK Tools'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Запустите созданный '''.bat''' файл, и дождитесь окончания распаковки, а после скопируйте все файлы из папки '''unpack''', в папку ''editors\gamedata'', корневой директории '''X-Ray SDK 0.7''' с заменой файлов.&lt;br /&gt;
&lt;br /&gt;
= Авторы =&lt;br /&gt;
&lt;br /&gt;
Статью создал: [[aka_sektor]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= P.S. =&lt;br /&gt;
&lt;br /&gt;
В ближайшее время напишу статью о разумелом юзаньи всего этого добра, для тех кто не умеет читать ридми к прогам, смотреть видеоуроки, да и просто самообучатся (прям себя описал XD).&lt;br /&gt;
&lt;br /&gt;
IIIмунский&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]][[Категория:SDK]][[Категория:SDK CS]][[Категория:SDK COP]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83</id>
		<title>3dsmax. Создание моделей и их добавление в игру</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83"/>
				<updated>2017-01-29T21:39:35Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Создание моделей и добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Итак, для работы нам понадобятся следующие инструменты:&lt;br /&gt;
&lt;br /&gt;
* '''Autodesk 3D Studio Max''' версий '''6''','''7''' или '''8''' (на других вроде плагин экспорта не работает, но я не уверен)&lt;br /&gt;
* '''3DS Max STALKER Plug-In''' для экспорта в формат object (.obj)&lt;br /&gt;
* '''S.T.A.L.K.E.R. SDK'''&lt;br /&gt;
&lt;br /&gt;
При создании собственных текстур потребуется:&lt;br /&gt;
&lt;br /&gt;
* '''Adobe Photoshop'''&lt;br /&gt;
* '''DDS-плагин''' от nVidia&lt;br /&gt;
&lt;br /&gt;
Приступим к креативу. Пример будем рассматривать на примитивной модели кубика.&lt;br /&gt;
&lt;br /&gt;
'''1)''' Запускаем 3DS Max и создаем наш кубик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''2)''' Далее накладываем на него текстуру. Запускаем редактор материалов (кнопка «М» по дефолту), выбираем тип материала, нажав на кнопку Standart (1), и в раскрывшемся списке выбираем S.T.A.L.K.E.R. Mtl (2), далее, в свитке Blinn Basic Parameters, щелкаем на маленькую кнопку напротив Diffuse (3), в раскрывшемся списке выбираем Bitmap (4), и выбираем требуемую текстуру из папки gamedata нашего SDK. Для примера я выбрал ...gamedata\textures\wpn\wpn_pkm_lenta.dds.&lt;br /&gt;
&lt;br /&gt;
Далее назначаем нашу текстуру для кубика и настраиваем ее внешний вид либо в самом Редакторе Материалов, либо, если объект сложный, - модификатором Unwrap UVW (кто работает в 3DS Max - знает). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''3)''' После текстуривания нашего объекта отмасштабируем его до нормальных размеров игры (для облегчения этого процесса я импортирую в сцену какую-нибудь модель из игры, например, АК-74), и приступаем к созданию костей. &lt;br /&gt;
&lt;br /&gt;
Идем в Create -&amp;gt; Systems -&amp;gt; Bones и создаем пару костей внутри нашей коробки приблизительно такого вида (см. рисунок). Первую косточку обзываем, например, kost, вторую можно не трогать и вообще ее можно потом удалить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_3.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''4)''' Теперь выделяем нашу коробку и в закладке Modify добавляем ей модификатор Physique (1). В свертке модификатора жмем кнопку Attach to Node (2), кликаем по нашей косточке с именем kost и в развернувшемся списке выбираем Riquid (3) и жмем Initialize (4) (см. рисунок).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_4.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''5)''' Далее, в свитке Physique level of Detail меняем параметр Skin Update на Rigid, в дереве модификатора Physique выбираем вершины нашего объекта (Vertex), выделяем все вершины нашего кубика при нажатой кнопке Select, выбираем тип вершин Rigid (4), жмем кнопку Assign to Link (5) и кликаем по нашей косточке.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_5.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''6)''' Теперь все готово к экспорту в формат object (.obj), который понимает Actor Editor из SDK. Идем на закладку Utilites и жмем кнопку S.T.A.L.K.E.R. Export (1) (кнопка эта у вас там будет находиться при правильной настройке плагина). Выделяем наш кубик и жмем кнопку Export Skin. Сохраняем, наблюдая лог в окошке на отсутствие ошибок.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_6.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''7)''' Запускаем Actor Editor из комплекта SDK и загружаем нашу сохраненную модель и видим приблизительно следующую картину:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_7.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''8)''' В панели Object Items видим характеристики нашего объекта (нас интересуют только Surfaces и Bones). В Surfaces задаются материалы и шейдеры для нашего объекта. Раскрываем список Surfaces, выбираем 01-Default (это я забыл материал в Максе обозвать) и устанавливаем параметры:&lt;br /&gt;
&lt;br /&gt;
* '''Shader:''' models/model &lt;br /&gt;
* '''Compile:''' def_shaders/def_vertex&lt;br /&gt;
* '''Game Mtl:''' objects/small_box&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_8.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''9)''' Видимо использовать можно и другие, но я еще не разобрался до конца.&lt;br /&gt;
&lt;br /&gt;
Далее настраиваем нашу косточку. Раскрываем список Bones, выбираем нашу kost. Далее жмем напротив Generate Shape кнопку All, настраиваем вес параметром Mass, можно настроить материал параметром Game Material (я оставил default_object) затем выбираем тип баунд_бокса нажатием кнопки Type. Я выбрал Box. Его кстати можно потом вращать, двигать и масштабировать.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_9.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''10)''' После настройки параметров экспортируем нашу коробочку в .ogf-файл из меню File -&amp;gt; Export, и подменяем полученной моделью, например, болт. Далее ходим и швыряемся магазинами от ПКМ в головы зазевавшимся неписям :)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
'''Статья создана:''' [[Участник:tambovski|tambovski]].&lt;br /&gt;
[[Категория: Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2</id>
		<title>Список инструментов</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2"/>
				<updated>2017-01-29T21:39:35Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Список инструментов&amp;lt;/span&amp;gt;=&lt;br /&gt;
Эта статья должна представлять собой список используемых в настоящее время инструментов, прямо или косвенно относящихся к модификации игры S.T.A.L.K.E.R. Только Название, ее версия, краткое описание и разработчик. Оформлять в виде таблицы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Текстовые редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://notepad-plus-plus.org/download Notepad++]||Cвободный текстовый  редактор с открытым исходным кодом для Windows с подсветкой синтаксиса большого количества языков программирования и разметки.||Notepad++ team&lt;br /&gt;
|-&lt;br /&gt;
|[http://winmerge.org/downloads/ WinMerge]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||Dean P. Grimm&lt;br /&gt;
|-&lt;br /&gt;
|[http://forum.ru-board.com/topic.cgi?forum=5&amp;amp;topic=24956&amp;amp;glp SciTE]||Кроссплатформeнный  текстовый редактор с широкими возможностями и открытым исходным кодом.||Neil Hodgson&lt;br /&gt;
|-&lt;br /&gt;
|[http://download.cnet.com/Files-Compare-Tool/3000-2248_4-10315688.html Files Compare Tool]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||S&amp;amp;G Team&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Hex-редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.hhdsoftware.com/free-hex-editor Free Hex Editor Neo]||Бесплатный Редактор Шестнадцатеричных, Десятичных и Бинарных Файлов для Windows. Программа имеет возможности по выделению, просмотру, редактированию, замене, отладке и анализу данных.||HHD Software&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.winhex.com/winhex/ WinHex]||Универсальный HEX-редактор для Microsoft Windows.||X-Ways Software Technology AG&lt;br /&gt;
|-&lt;br /&gt;
|[ftp://wa651f5:anonymous@mh-nexus.de/HxDSetupRU.zip HxD]||Свободно распространяемый HEX-редактор с расширенными возможностями.||Mael Horz, Nikolai Mashnin&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;2D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://paintnet.ru/ Paint .NET]||Бесплатный растровый графический редактор для Windows, разработанный на платформе .NET Framework. Штатная возможность работы с форматом .dds||Rick Brewster&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.gimp.ru/ GIMP]||Бесплатный кроссплатформенный растровый графический редактор с открытым исходным кодом.||Spencer Kimball, Peter Mattis, GIMP Team&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.nvidia.ru/object/dds_thumbnail_viewer.html DDS Thumbnail Viewer]||Реализует возможность предпросмотра .dds-файлов небольшого размера в Проводнике OS Windows.||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/jEttg1b8sG9NH NVIDIA Texture Tools for Adobe Photoshop]||Normal map фильтр, dds плагин, mip-map generation script, и cube map shuffler для Photoshop||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.xnormal.net/Downloads.aspx xNormal]||.dds-плагин для Photoshop||xNormal&lt;br /&gt;
|-&lt;br /&gt;
|[http://code.google.com/p/gimp-dds/downloads/list gimp-dds]||.dds-плагин для GIMP||Shawn Kirst&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://charles.hollemeersch.net/sites/default/files/njob_v1_0_0.zip Njob]||Утилита для генерации карт высот, карт нормалей и их конвертации||C. Hollemeersch&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/JkS-yg2LqhzHx Copy Object]||Утилита для копирования объектов в сцене SDK||DukeKan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=446 Texture Copier ]||Программа делалась для упрощения переноса текстур из ТЧ в ЧН/ЗП. Позволяет быстро переносить текстуры из ресурсов одной игры в другую.||V.I.R.U.S.&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=447 Script Syntax Checker]||Утилита для проверка скриптов на ошибки.||Gun12&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;3D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.chumba.ch/chumbalum-soft//files/ms3d184.zip Milkshape 3D]||1.8.4||Низкополигональный 3D-редактор с поддержкой множества игровых форматов.||Mete Ciragan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=424 MS3D Hierarchy Editor]||1.0b||Консольная утилита, позволяющая просматривать иерархию скелета в ms3d-файле и изменять  ее по своему усмотрению.||Sin!&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.deep-shadows.com/hax/3DRipperDX.htm#Download 3D Ripper DX]||1.8.1||Программма позволяет захватывать геометрию, текстуры и шейдеры из большинства трехмерных приложений под DX 6.x, 8.x, 9x. В комплекте также плагины импорта в 3ds Max 5-9/2008, 2009 и 2011.||Roman Lut&lt;br /&gt;
|-&lt;br /&gt;
|[http://cgig.ru/ninjaripper/ Ninja Ripper]||1.1.4||Утилита извлекает 3D модели, текстуры, вершинные и пиксельные шейдеры из программ (преимущественно игр) под D3D11, D3D9, D3D8 (обрабатываются не все методы/техники, но должно работать в 95% игр).||black_ninja&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Официальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=437 SDK 0.4 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.4 для 3DS Max 7-2011, LightWave 3D 7.5/8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=436 SDK 0.5-0.7 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.5-0.7 для 3DS Max 8-2011, LightWave 3D 8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Неофициальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=377 Milkshape 3d 1.8.4 Plugins]||08.08.2009||Плагин экспорта и исправленный плагин импорта для Milkshape3D v.1.8.4.||bardak, KamikaZze&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=454 X-Ray Maya Tools]||01.10.2011||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/ X-Ray Maya Tools]||22.07.2013||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Скрипты&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Mp6jVkV25LrXI X-Ray Max Tools]||08.11.2014||Пак скриптов 3ds max (версии выше 8) для импорта и экспорта объектов X-Ray SDK.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/62861030001.3927839478b0c733b57efc8fa919cf2d/xray_object_import_v03.zip.html X-Ray Object Import]||0.3||Cкрипт для импорта моделей формата x-ray sdk *.object в 3ds max. Добавлена поддержка: physique и групп сглаживания.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/rU1UDbxBsG8uZ X-Ray Invalid]||1.0||Cуть скрипта в том, чтобы проверять модель на ошибки invalide face(s) до экспорта в x-ray sdk *.object.||Den-Stash&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=246 HUD Hands Sources]||1.1||Исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ.||Tambovski&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/stutils/HUD_HANDS_new.rar HUD Hands Sources]||2.0||Обновленные исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ. Модель привязана к костям, сделана камера для контроля анимаций (вид HUD-а как в игре).||Tambovski&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray SDK&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://files.gsc-game.com/st/xray-sdk-setup-v0.4.exe X-Ray SDK SoC]||0.4||Официальный SDK для игры S.T.A.L.K.E.R. - Тень Чернобыля.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=361 X-Ray SDK SoC Patch]||-||Патч для X-Ray SDK 0.4. Исправляет множество багов и проблему с не отображаемой травой в Level Editor. Восстановлены опции xrLC.||GSC, Haron, Neo][&lt;br /&gt;
|-&lt;br /&gt;
|[http://xfiles.gsc-game.com/st/xray-cs-sdk-setup.exe X-Ray SDK CS]||0.5||Официальный SDK для игры S.T.A.L.K.E.R. - Чистое Небо.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=374 X-Ray SDK CS Update]||0.6||Обновление для X-Ray SDK 0.5. Включает в себя: Actor Editor, Particle Editor, Postprocess Editor, Shader Editor, Компилятор AI, а также, набор плагинов 3dsmax 8, 9, 2008, 2009, 2010, 2011. Исправляет: Level Editor.||Loxotron, GSC&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/RozpEA6XmDfXC X-Ray SDK CoP]||0.7||Официальный SDK для S.T.A.L.K.E.R. - Зов Припяти.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/downloads/SDK/xrSDK_COP_patch_10.7z X-Ray SDK CoP Patch]||-|| Патч для X-Ray SDK 0.7. Содержит dll для плагинов Maya, и ActorEditorLevel.cform для кнопки Simulate в AE. ||Loxotron, gsc&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/57220477001.47cd4866c9c4c6cb96af9e1830fa4f92/RUS_SDK_07.rar.html Русификатор X-Ray SDK CoP]||-||Русифицирует интерфейс Level Editor, Actor Editor, Shader Editor, и Particle Editor.||GSC, Genior&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrAI&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=376 AI Compiler]||-||Официальный компилятор AI для SoC.||GSC, Loxotron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrLC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/46414046001.8e0e6656c19e2910fb9a986d4c152f8a/compiliers2010_v3.7z.html Compilers 2010]||3.0||Набор ускоренных компиляторов для CS/CoP SDK.||macron&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61168444001.9a8746add40aaea1d0b948d2da788ab3/Bench_xrLC_extra_v39.7z.html Bench xrLC extra]||3.9||Архив представляет собой пак компиляторов для проектов карт, созданных в SDK STALKER ТЧ.||DIABLO, FL!NT, Haron, Macron, Loxotron, Bardak, Mortarion&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Fakes&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Y7kMpHcG7XkBU Fake Flatness]||2013||Набор фейк-плоскостей (в комплекте лестницы, hom-кубик occ и прочая тематичная дребедень + полезная инфа). Разархивировать в папку с SDK.||Macron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Объекты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/SDK/resources/Stalker_Content.7z Набор объектов]||1.0||Набор моделей и объектов из Сталкера 1.0000, предназначены для расставления на своих картах в редакторе карт, шейдеры и текстуры уже настроены.||UX.Loki&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray Game Asset Tools Pack&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=288 X-Ray Game Asset Tools Pack]||1.0 Final (14.09.2008)||Финальная версия, включает в себя: AI Wrapper 2.2 + converter + acdc pack + milkshape и maya плагины. Представляет собой набор утилит от бардака, необходимых для редактирования всех аспектов игры: враппер для компиляции ии уровней, конвертер для редактирования геометрии и моделей, асдс для редактирования all.spawn. Программы исправно работают как со всеми утекшими билдами игры, так и с ТЧ и ЧН финальных версий.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=348 X-Ray Game Asset Tools Pack Update]||2.0 (08.07.2009)||Обновление исправляет декомпиляцию lod'ов, отображение декомпилированных шейдеров деревьев в Level Editor, и добавляет новый более стабильный компилятор AI||bardak, community&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/converter_2015-06-24.7z X-Ray Game Asset Converter]||24.06.2015||Добавлена команда разбиения *.omf на отдельные *.skl(-skl all). Поддержка извлечения файлов из архивов по маске. Добавлены поиск и удаление дубликатов glow. Исправлено некорректное вычисление вращения зон объемного звука.||bardak, Kolmogor, mnn, gr1ph00n, Neo][, Xiani, Freack, loxotron, NatteFrost, Macron, KD87, abramcumner&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/yk87tB0SfiWFw X-Ray Game Asset Converter UI]||24.06.2015||Реализация конвертера с UI. Работает: конвертирование *.ogf -&amp;gt; *.obj, *.omf -&amp;gt; *.skls(skl), *.dm -&amp;gt; *.obj. Отображается дополнительная информация о выбранном файле. Имеется возможность вытаскивания отдельных анимаций(*.omf -&amp;gt; *.skl) выбирая их из соответствующего списка. Реализован Drag`n`Drop на сам Converter.exe и на окно программы.||bardak, Viнt@rь, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/get/c832c5af23d3.zip X-Ray Game Asset Tools Pack Sources]||Last||Исходники пакета утилит X-Ray Game Asset Tools.||bardak, community&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Компиляторы/декомпиляторы, конвертеры, сопутствующие утилиты&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/rokoY1TaLqpYM level. compiler/decompiler]||0.4||Компилятор/декомпилятор файла level.||bardak, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.env_mod&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26764911000/S.T.A.L.K.E.R.%20level.env_mod%20CDC.7z.html emCDC SoC]||-||Компилятор/декомпилятор level.env_mod SoC.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26765140000/S.T.A.L.K.E.R.%20Clear%20Sky%20level.env_mod%20CDC.7z.html emCDC CS]||-||Компилятор/декомпилятор level.env_mod CS.||bardak&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.ps_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/-bPKTqDu1w5ag level_particle_static_cdc]||0.1||Компилятор/декомпилятор файла level.ps_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.snd_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 sse]||0.32||Компилятор/декомпилятор level.snd_static.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 Snd Static Extractor]||0.1||Компилятор/декомпилятор level.snd_static.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/hofXdTciF9yyY level_sound_static_cdc]||0.2||Компилятор/декомпилятор level.snd_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;game.graph/graph.bin/section4.bin&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=332 ggCDC SoC]||x.4||Компилятор/декомпилятор game.graph SoC.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=386 ggCDC CoP]||x.5||Компилятор/декомпилятор game.graph CoP.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=415 Edge Editor]||2.2||Программа для добавления/удаления ИИ-связей между вершинами в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=261 GraphViewer]||0.1||Программа для просмотра ИИ-связей в game.graph.||IG-2007&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=395 ggEditor]||0.1||Программа для присоединения локаций в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://rghost.ru/51860258 ggEditor Sources]||-||Исходники программы ggEditor.||mmdns&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.anm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=317 anm2ltx]||08.03.09г.||Компилятор/декомпилятор .anm.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogf&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/65380165001.497ef61364b07eeacbf31cd5343c7450/20121229.7z.html MeshTool/OGFViewer]||1.0.5||Кроссплатформенный комплект утилит для просмотра, конвертации разнообразных 3d-моделей и уровней. В том числе и формата движка X-Ray.||NatteFrost, batya&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogg&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=231 Theora]||1.0.0||Пакетный конвертер .ogg в .wav. Дает возможность исправить ошибку &amp;quot;missing ogg-comment&amp;quot;.||Haron&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dcyo0Nt3A3b5g OGG Editor]||-||Утилита предназначена для быстрого просмотра и редактирования звуковых комментариев в уже прогнанных через SDK ogg-файлах, без необходимости включать для этого SDK и иметь wav-версии звуков.||Sin!, Shoker, nihilant&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=393 ffmpeg2theora]||-||Консольный конвертер .avi в .ogm||?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ppe&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=352 PPE Editor]||1.2||Программа для редактирования .ppe-файлов постпроцессинга.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.spawn&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/uWlnpuGwF9zCW Universal ACDC]||1.36 (29.12.2013)||Программа распаковывает файлы *.spawn ТЧ, ЧН, ЗП, и xrCore build, начиная с 1265, а также *.spawn файлы модов (при этом требуется их папка конфигов). Подробности в ReadMe.txt||bardak, Kolmogor, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.thm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=421 thmParser]||15.08.10г.||Парсер формата .thm SoC в .thm CS/CoP.||kalinin11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.xr&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=390 Particle Extractor]||1.2||Компилятор/декомпилятор файла particles.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=383 Game Mtl Extractor]||0.3||Компилятор/декомпилятор файла gamemtl.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/dVSXTDwg1w5_s particles_xr_cdc]||0.2||Компилятор/декомпилятор файла particles.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/V-za1OnD1w5ba gamemtl_xr_cdc]||0.2||Компилятор/декомпилятор файла gamemtl.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dn2ooLS31w5aK lanims_xr_cdc]||0.2||Компилятор/декомпилятор файла lanims.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/DHNWGQkr1w5_0 senvironment_xr_cdc]||0.2||Компилятор/декомпилятор файла senvironment.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/o-lzXzrA1w5cG shaders_xrlc_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders_xrlc.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/pMtlI_BHLzjDz shaders_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders.xr||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.sav&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/60346986001.7e990cb3bbecff1c35a1dbbe7e6f389f/save_unpacker_0_4.rar.html Save Unpacker]||0.4||Распаковщик файлов *.sav сохранений ТЧ, ЧН, ЗП.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Необходимый софт&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/l6osH5PQF9ynj Библиотека Stkutils]||29.12.2013||Эта библиотека необходима для работы большинства компиляторов/декомпиляторов.||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.activestate.com/activeperl/downloads ActivePerl]||-||Эта программа необходима для работы большинства компиляторов/декомпиляторов.||ActiveState&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты, пакеты утилит&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=467 Map dragger]||1.0||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/b2Z3ciYN5x7JM Map dragger]||1.1||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере. Добавлены 3 отдельные настроенные версии: ТЧ, ЧН, и ЗП. Старая удалена за ненадобностью.||XiaNi, aka_sektor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=106 dds2tga]||-||Конвертер .dds в .tga.||nVidia, -=CHE@TER=-&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=188 dds2tga for LE]||-||Специально адаптированный для Level Editor'а Сталкера конвертер текстурок dds в tga||nVidia, russian-stalker&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=418 STALKER Icon Editor]||0.6.3||SIE - это утилита для просмотра и редактирования иконок инвентаря для SOC,CS и COP. В игре они хранятся в файле gamedata\textures\ui\ui_icon_equipment.dds||malandrius&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Распаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/094hymb_r275S WCX]||0.0.3||Возможности: распаковка игровых архивов *.db* игры С.Т.А.Л.К.Е.Р. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ) и &amp;quot;Чистое Небо&amp;quot; (ЧН). Плагин поддерживает как русскую, так и английскую версию архивов от ТЧ.||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/hCfFUj7Tr277b WFX]||0.0.4||Возможности: просмотр и распаковка всего набора игровых архивов *.db* игры S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=217 S.T.A.L.K.E.R. Data Unpacker]||1.0||Распаковщик игровых архивов для русской и английской версий SoC.||?&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.3||Плагин для Total Commander. Позволяет просматривать и распаковывать весь набор игровых архивов *.db* игр S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Mowgli&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=265 Clear Sky unpacker]||1.3||Распаковщик игровых архивов.||Macron, xStream, bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=266 GUI for unpacker]||1.1||GUI для распаковщика от Macron, xStream и bardak.||russian-stalker, Marauder&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=224 Database Extractor]||2.0||Распаковщик для SoC и CS. Показывает список файлов в архиве, что дает возможность извлекать файлы по отдельности.||Don Reba&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.0.2||Системный плагин для Total Commander. Реализует возможность просмотра и распаковки игровых архивов SoC, CS и CoP.||malandrinus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Builds, SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/GNxvG8O75bz4M S.T.A.L.K.E.R. Universal Extractor]||1.3.1||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий (1.0006, 1.5.10, 1.6.02). Распаковка билдов (на данный момент программа насчитывает 15 сборок).||Dordex&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/dovmUpeQmcb34 S.T.A.L.K.E.R. Universal Extractor]||2.0||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий. Распаковка билдов.||Rezzoxe (Омар Гуртуев)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Запаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=149 DB Packer]||1.0||Самодельная утилита для запаковки файлов папки gamedata Теней Чернобыля в .db архив. Подробные разъяснения в .pdf файле.||HIGHLANDER&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61364111001.9e2532413cf3b161e91e2d55829efb75/db_packer_unpkr_3.1.rar.html DB Packer/Unpacker]||3.1||Программа для распаковки и запаковки .db архивов Чистого Неба и Зова Припяти.||Kontro-zzz&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/7XL72RYPmVRyN XrCompress]||1.11||Программа для распаковки и запаковки .db и .xdb архивов с функцией сжатия.||LostAlphaRus&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Категория:Руководства]][[Категория:Программы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:%D0%9E%D0%BF%D1%86%D0%B8%D0%B8_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F</id>
		<title>Обсуждение:Опции управления</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:%D0%9E%D0%BF%D1%86%D0%B8%D0%B8_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F"/>
				<updated>2017-01-29T21:39:34Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии 46.0.119.208&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Я почти такую же статью написал назывется добавление настроек! , Причем давно !&lt;br /&gt;
:* Данная статья была создана 2.09.2009 (см. [http://stalkerin.gameru.net/wiki/index.php?title=%D0%9E%D0%BF%D1%86%D0%B8%D0%B8_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F&amp;amp;action=history историю]). Ваша же статья создана 14.08.2010 ([http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%BA&amp;amp;action=history история]).  -- [[Участник:RedPython|RedPython]] 11:34, 22 февраля 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Ошибка ==&lt;br /&gt;
&lt;br /&gt;
Было:&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_1&amp;quot;			exe=&amp;quot;cam_1&amp;quot;&amp;gt; &amp;lt;!--это наши три строки--&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_2&amp;quot;			exe=&amp;quot;cam_2&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_3&amp;quot;			exe=&amp;quot;cam_3&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
В конце команды не хватает дроби / - если не поставить, будет вылетать, я поправил:&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_1&amp;quot;			exe=&amp;quot;cam_1&amp;quot;/&amp;gt; &amp;lt;!--это наши три строки--&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_2&amp;quot;			exe=&amp;quot;cam_2&amp;quot;/&amp;gt;&lt;br /&gt;
		&amp;lt;command id=&amp;quot;kb_cam_3&amp;quot;			exe=&amp;quot;cam_3&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_-%3DinGame_%D0%90%D0%98%3D-</id>
		<title>Компиляция -=inGame АИ=-</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F_-%3DinGame_%D0%90%D0%98%3D-"/>
				<updated>2017-01-29T21:39:34Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии Lafugix&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Итак, приступим... Раз вы здесь, значит есть на то причина:&lt;br /&gt;
*1)либо вы нуп, увидевший аи-компилер и решивший забацать чтото крутое&lt;br /&gt;
*2)вы не нуп, но всё забыли или почти всё&lt;br /&gt;
*3)вы супер-аццкий про решивший глянуть на весь этот детсад свысока )&lt;br /&gt;
*4)вы обычный модер, решивший расширить свои текущие познания. ;)&lt;br /&gt;
&lt;br /&gt;
==Основы==&lt;br /&gt;
Ну что ж... начнем с самого простого, скомпилим левел с аи, монстрами на&lt;br /&gt;
карте '''mp_atp'''. Открываем левел.. первое что надо сделать убрать все &lt;br /&gt;
'''rpoint'''(мультиплеерные точки спавна). Убрали? Отлично. Создаем&lt;br /&gt;
'''Spawn elements -&amp;gt; actor''' ну и по желанию в свойствах ('''Properties''')&lt;br /&gt;
в '''custom data''' прописываем ему предположим вот это:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[spawn]&lt;br /&gt;
wpn_ak74&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тем самым при появлении игрока у него в руках уже будет калаш. Далее,&lt;br /&gt;
создаем монстра... любого по желанию, предположим кровососа и ставим на уровень.&lt;br /&gt;
Теперь дело за '''AI map''' - аи сетка, которая необходима для того, чтобы&lt;br /&gt;
нпс, монстры могли ориентироваться по уровню. Жмем Object и кликаем на  земле(тем самым мы ее &amp;quot;выбрали&amp;quot; для дальнейших манипуляций), затем '''AI Map''' -&amp;gt; '''Commands''' -&amp;gt; '''Make list from selected''', жмем '''add''' в разделе '''AI Map Nodes''' и '''add''' для добавления объектов слева вверху(чайник) и ставим на карте ноды в нужном вам порядке(достаточно одного), жмем '''Generate Full'''. Всё, аи-сетка сгенерированна. Теперь добавляем на левел обязательно! 1 graph point ('''Spawns-&amp;gt;ai-&amp;gt;graph point'''), в нем можно ничего не писать. Сохраняем уровень, билдим ('''build'''). &lt;br /&gt;
&lt;br /&gt;
после этого не забываем скомпилить карту, (не забываем создать диск Х, приложенной прогой)&lt;br /&gt;
&amp;lt;code&amp;gt;Windows -&amp;gt; start -&amp;gt; run&amp;lt;/code&amp;gt; и в командной строке пишем (mp_atp_test,здесь название карты):&lt;br /&gt;
[[image:Docs_wind_run_comp_multiplayer.jpg|Запуск уровня на компиляцию|center|frame|Запуск уровня на компиляцию]]&lt;br /&gt;
После корректной компиляции:&lt;br /&gt;
[[image:Docs_wind_xray_levelcompiler.jpg|Завершение компиляции|center|frame|Завершение компиляции]]&lt;br /&gt;
&lt;br /&gt;
Следующим шагом будет правка конфигов. Править конфиги следует в папке gamedata\configs папки SDK, а потом можно перенести файлы в аналогичную папку с игрой.&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&lt;br /&gt;
'''game_maps_single.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[level_maps_single]&lt;br /&gt;
...&lt;br /&gt;
testing_ai &lt;br /&gt;
//название вашего уровня&lt;br /&gt;
&lt;br /&gt;
[testing_ai]&lt;br /&gt;
global_rect  = -6,1220.0, 248.0,1481.0&lt;br /&gt;
texture      = map\map_escape&lt;br /&gt;
//текстура при загрузке&lt;br /&gt;
bound_rect  = -502.148,-412.284,379.976,474,479&lt;br /&gt;
weathers  = default&lt;br /&gt;
//погода&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''game_levels.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[levels]&lt;br /&gt;
...&lt;br /&gt;
level190&lt;br /&gt;
//номер вашего уровня&lt;br /&gt;
&lt;br /&gt;
[level190]&lt;br /&gt;
name   = testing_ai&lt;br /&gt;
caption = &amp;quot;testing_ai&amp;quot;&lt;br /&gt;
offset  = 2000.0, 800.0, 1000.0    // положение нового уровня на глобальной карте, X, Y, Z&lt;br /&gt;
id   = 190&lt;br /&gt;
//индентифакционный номер, должен быть уникальным&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''game_graphs.ltx'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
018   = &amp;quot;testing_ai&amp;quot;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь открываем AI Compiler, указываем папку с '''сдк'''(.../level_editor, либо если он объединен с игрой, путь до нее). Выбираем ваш уровень.&lt;br /&gt;
Проходим 1ую стадию чернового просчета аи карты('''шаг 1'''), либо если вы хотите долго ждать и просчитать укрытия для нпс то выбираем '''шаг 2'''.&lt;br /&gt;
Далее строим граф и кросс-таблицу уровня шаг 3, потом граф игры '''шаг 4''' и наконец фаил .spawn '''шаг 5'''. После всех стадий заходим в gamedata\spawns\ и переименовываем '''test.spawn''' в '''all.spawn'''&lt;br /&gt;
&lt;br /&gt;
''Важно - Если ваш X-Ray SDK НЕ объединён с игрой, то при переносе файлов для старта без вылетов вы должны перенести из папки с X-Ray SDK следующие файлы:&lt;br /&gt;
# gamedata\config\game_maps_single.ltx&lt;br /&gt;
# gamedata\config\game_graphs.ltx&lt;br /&gt;
# gamedata\config\game_levels.ltx&lt;br /&gt;
# gamedata\levels\папка с вашим уровнем&lt;br /&gt;
# gamedata\spawns\all.spawn'''''&lt;br /&gt;
# gamedata\game.graph(этот файл многие не копируют и получают вылет при запуске игры)'''&lt;br /&gt;
&lt;br /&gt;
{{Message_box|&lt;br /&gt;
id	=pseudoscience|&lt;br /&gt;
align = left|&lt;br /&gt;
backgroundcolor	= #f9f9f9|&lt;br /&gt;
image	=Lamp.gif|&lt;br /&gt;
heading	= Важные моменты -- Loxotron|&lt;br /&gt;
message = При правке конфигов не забывайте указывать реально существующую там погоду и картинку загрузки, иначе вылетит; также не пытайтесь запустить уровень через .bat фаил, подобный указанному ниже, тоже будет вылет&lt;br /&gt;
&amp;lt;pre&amp;gt;bin\xr_3da.exe -ltx user.ltx -nointro -external -start server(level/single) client(localhost)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Правильный .bat фаил&lt;br /&gt;
&amp;lt;pre&amp;gt;@start bin\XR_3DA.exe -start server(%1/single/alife) client(localhost)&amp;lt;/pre&amp;gt;&lt;br /&gt;
%1 - название левела. &lt;br /&gt;
'''Примечание''': при запуске с такого батника имя спавна должно быть не all.spawn а &amp;lt;название_левела&amp;gt;.spawn&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Углубленное изучение==&lt;br /&gt;
Далее мы рассмотрим как собирать несколько уровней и устанавливать между ними переходы.&lt;br /&gt;
&lt;br /&gt;
Итак у вас два уровня... на одном из них стоит '''actor'''. Начнем с него:&lt;br /&gt;
создаем '''ai-&amp;gt;level changer''', затем '''shape-&amp;gt;sphere''', с помощью '''scale''' увеличиваем до необходимых размеров, теперь переключаемся в режим редактирования '''spawn element''', выделяем '''level changer''' и жмем '''commands-&amp;gt;attach object''', а затем кликаем на сферу... Всё, сфера и level changer теперь связаны. Далее идем в закладку '''properties''', указываем название, например '''to_atp_2''', теперь нужно прописать в '''custom data''' вейпоинт для возврата, в случае отказа игрока от перемещения с локации на локации(обязательно). Вписываем вот это:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = atp_1_way_if_reject&lt;br /&gt;
//в случае отказа от перемещения на вторую локу, возвращаемся назад&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В '''Level to change''' вписываем наименование уровня, куда мы хотим переместиться с этого левела, например '''atp_2'''. &lt;br /&gt;
И самое главное, в параметрах level_changer в пункте &amp;quot;restrictor type&amp;quot; поставить значение &amp;quot;not a restrictor&amp;quot;, в противном случае будет вылет при переходе на вторую локу&lt;br /&gt;
&lt;br /&gt;
 - '''скорее всего, тип рестриктора был использован на версии раньше 1.0004. На версии 1.0004 тип рестриктора не имеет значения и рестриктор отвечает только за внутренние настройки локации - Эээ...'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
В '''Level Point to change''' указываем точку, в которой игрок появится...&lt;br /&gt;
'''start_actor_01'''. С '''level changer''' на этом уровне всё, пошли далее.&lt;br /&gt;
Создаем '''graph point''' или используем пустой существующий если у вас есть.&lt;br /&gt;
В него вписываем '''start_actor_01''', этот поинт для того чтобы мы смогли со второго левела '''atp_2''' перейти на '''atp_1'''(первый). Создаем еще один '''graph point''' c названием '''exit_atp_1_01''', в разделе '''location''' выбираем, например &amp;quot;экскейп&amp;quot;. В '''Connection -&amp;gt; Level name''' указываем уровень, с которым будет связан '''atp_1''', то есть выбираем '''atp_2''', в '''Connection-&amp;gt;Point Name''' вписываем точку связи из второго уровня, которую мы создадим потом '''exit_atp_2_01'''. С первым уровнем всё...&lt;br /&gt;
&lt;br /&gt;
Для чего нам нужен graph point'ы ''exit_xxx''?&lt;br /&gt;
''exit_xxx'' представляет собой '''connection_point'''(точку связи) - для того, чтобы компилятор знал, какие уровни он соединяет, а если по другому: начальный граф уровня, от него потом считаются все ноды.&lt;br /&gt;
&lt;br /&gt;
'''start_actor_xx''' - точка появления актера после перехода.&lt;br /&gt;
&lt;br /&gt;
Помните мы вписали в '''custom data''' '''level changer''''а вейпоинт? Вот теперь нам придется его создать. Выбираем '''Way Points''' -&amp;gt; жмем &amp;quot;чайник&amp;quot; и стави 1 вейпоинт рядом с level changer(так мы создали начальную точку пути), теперь жмем '''point mode''' и ставим второй. Если они не соеденились стрелочкой, жмем '''create 1-link'''. Теперь у нас получился путь, который мы прописали в custom data '''level changer''', заходим в свойства и обзываем его также как и в '''custom data''', тоесть '''atp_1_way_if_reject'''. Всё с первым уровнем покончили.&lt;br /&gt;
&lt;br /&gt;
Итак, открываем второй уровень и поехали по новой...&lt;br /&gt;
&lt;br /&gt;
Создаем там путь из двух вейпоинтов по схеме выше и обзываем '''atp_2_way_if_reject'''. Создаем level changer называем его '''to_atp_1''',&lt;br /&gt;
в '''custom data''' пишем&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = atp_2_way_if_reject //название вэйпоинта&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В '''level to change''' указываем atp_1 //куда переходим с atp_2&lt;br /&gt;
В '''level point to change''' - '''start_actor_01'''(дада, тот который мы создали на первом левеле :) )&lt;br /&gt;
&lt;br /&gt;
Теперь здесь же на atp_2 создаем graph point с названием '''start_actor_01'''.&lt;br /&gt;
И еще один где вписываем следущие значения:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Name: exit_atp_2_01&lt;br /&gt;
Location: &amp;quot;свалка&amp;quot; //наименование локации&lt;br /&gt;
&lt;br /&gt;
Connection:&lt;br /&gt;
 Level name: atp_1 //первый уровень&lt;br /&gt;
 Point name: exit_atp_1_01 //связующая точка с первого уровня&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Незабудьте, что '''ACTOR''' должен быть только на одной локации(в нашем случае на atp_1), иначе компилятор выдаст ошибку. Всё!... Сохраняем, прекомпилим.&lt;br /&gt;
&lt;br /&gt;
Запускаем '''Ai Compiler''', выбираем по очереди наши два уровня и просчитываем шаг 1, проверям сетку. Теперь создаем ''текстовый документ'' и вписываем туда&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
@start /wait bins\ai\1.exe -g atp_1&lt;br /&gt;
@start /wait bins\ai\1.exe -g atp_2&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
сохраняем его как .bat и запускаем, в результате у каждого уровня &lt;br /&gt;
появится свой '''level.graph'''(граф и кросс-таблица).&lt;br /&gt;
&lt;br /&gt;
Создаем еще один текстовик, пишем&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
@start /wait bins\ai\1.exe -m&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
сохраняем как .bat и стартуем. Так мы собрали '''game.graph''' из '''level.graph''''ов.&lt;br /&gt;
&lt;br /&gt;
И наконец.. создаем 3ий &amp;quot;бантик&amp;quot; для сборки '''all.spawn'''!&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
bins\ai\1.exe -s&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Компилим, заходим в '''gamedata\spawns\''', переименовываем получившийся спавн в '''all.spawn''' и запускаем через новую игру. Как видите, вы можете перемещаться с уровня на уровень, туда сюда без каких-либо проблем.&lt;br /&gt;
&lt;br /&gt;
Чуть не забыл, обязательно временно, на время компиляции переместите все остальные левелы игры кроме ваших в любую другую папку, иначе &lt;br /&gt;
могут быть ошибки при сборе графов и спавна.&lt;br /&gt;
&lt;br /&gt;
Для сборки '''всех''' сингл уровней из оригинальной игры &lt;br /&gt;
используйте bat фаил: [http://stalkerin.gameru.net/developer/mods/levelgraph_fullgame.bat fullgame.bat]&lt;br /&gt;
Если будут ошибки связанные с алайфом, жмем ''продолжить''. Потом выполняйте процедуры как написано выше, сборка '''game.graph''', а затем '''all.spawn'''.&lt;br /&gt;
&lt;br /&gt;
==Добавляем наш уровень в сингл-плеер!==&lt;br /&gt;
&lt;br /&gt;
Такс, продолжаем. Мне таки удалось наконец-то совместить свой тестовый левел с картами гсц. Итак приступим. Во первых нам необходим левел... свой, подготовленный. Если вы не читали инструкции выше, то дальше вам делать нечего. На нашем левеле должна быть во-первых '''connection point'''(соеденительная точка), вписываем в нее параметры данного примера, предположим такие:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   Name: point_test_location_escape // название коннекшн-поинта&lt;br /&gt;
&lt;br /&gt;
  Connection&lt;br /&gt;
       Level Name:L01_Escape //с каким уровнем его связываем&lt;br /&gt;
       Point Name:esc_graph_point_0034 //соеденительный поинт на эскейпе, как &lt;br /&gt;
                                      //его добавить будет объяснено '''ниже'''.&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Сделали?&lt;br /&gt;
&lt;br /&gt;
Теперь создаем еще один граф на уровне, вписываем просто его имя...&lt;br /&gt;
например '''Name: start_actor_01'''. Обязательно добавляем на уровень какой-нибудь уникальный объект... предположим '''машину'''. Зачем, узнаете потом. Но на левеле ни в коем случае не должно быть '''ACTOR''''а!! Сохраняем, прекомпилим левел. Компилим с помощью '''xrLC''' весь уровень, теперь открываем '''AICompiler''' от нео и выполняем '''1 или 2 и 3 шаги''' в отношении нашего левела. &lt;br /&gt;
&lt;br /&gt;
Теперь нам нужно заручиться ОСОБЫМИ инструментами, в нашем случае понадобится [http://www.rapidshare.ru/532500 скрипт] от бардака, который позволяет узнать при запуске любого левела его '''level_vertex_id''', '''game_vertex_id''', '''position'''(координаты игрока в данный момент), '''direction'''(координаты направления его &amp;quot;взгляда&amp;quot;), всё это потребуется при работе с '''acdc''' несколькими этапами ниже. Загружаем игру, находим подходящее место где хотим видеть в будущем триггер для перехода уровней и записываем все параметры на бумажку, они нам понадобятся потом. По хорошему, желательно '''отдельно''' потом еще зайти в '''LE(level editor)''', открыть наш уровень, поставив эктора прям на графе с '''start_actor_01''', закомпилировать проект, пройти все шаги компиляции в '''xraicompiler'''(1,3,4,5,6), '''обязательно''' предварительно забэкапив '''game.graph''', начать новую игру и записать координаты '''level_vertex_id''' и '''direction''', но это достаточно нудно и сложно, но '''желательно''', а потом надо будет, вернуть всё в состояние до всех этих действий..., то есть убрать '''эктора''', восстановить оригинальный '''game.graph'''.&lt;br /&gt;
&lt;br /&gt;
Итак... у вас обязательно должна быть распакованна '''вся''' игра, установлен '''aiwrapper''' от бардака(читайте ридми по установке!!!), и '''aicompiler''' он нео.&lt;br /&gt;
&lt;br /&gt;
Создаем .bat фаил в папке с aiwrapper'ом с текстом&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -extract_spawns&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
либо вводим тоже в тотал коммандере, с помощью этого ключа мы обновили '''level.spawn''''ы всех сингл-уровней, так как они не обновлялись со времен первого патча. &lt;br /&gt;
&lt;br /&gt;
Теперь изучаем '''links.sample''' в блокноте. ничего не поняли? поясняю: '''aiwrapper''' обладает полезнейшим ключом '''-m2'''.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 -m2 &amp;lt;файл&amp;gt;	- склеить ИИ-графы карт в глобальный игровой граф с&lt;br /&gt;
		  учётом поправок для связей из указанного файла&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
То есть с помощью него мы можем взять любой существующий граф на уровне гсц, который &amp;quot;не занят&amp;quot;, и добавить ему нужные нам значения, например сделать его коннекшн поинтом(соеденительной точкой), а потом всё это склеится в общий глобальный '''game.graph'''.&lt;br /&gt;
&lt;br /&gt;
Выполняем  ''aiwrapper -dump_graph graphs.txt'' батом или тоталом. Комманда выведет нам  список исходных вершин ИИ-графа в указанный файл, то есть список скомпиленных графов всех сингл-уровней гсц в фаил '''graphs.txt'''. Находим там точку '''esc_graph_point_0034'''. Видите что она пуста в плане связей в отличии от exit_escape_01,02? Значит мы можем ее использовать, в оригинале разрабы их ставили для путей ботов, то есть по ним перемещается аи, но мы ее заюзаем для связи с нашим тестовым левелом.&lt;br /&gt;
&lt;br /&gt;
Итак, создаем например текстовик '''links_fixed.txt''' и вписываем туда&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[l01_escape]&lt;br /&gt;
; добавляем переход для ИИ с Кордона на тестовый уровень.&lt;br /&gt;
esc_graph_point_0034	= test_level_x, point_test_location_escape&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
'''test_level_x''' - название нашего уровня.&lt;br /&gt;
'''point_test_location_escape''' - коннекшн поинт на нашем уровне.&lt;br /&gt;
То есть мы прописываем у графпоинта на эскейпе эти два параметра, которые препращают его в коннекшн-поинт, связанный с тем, что на нашем левеле; сохраняем текстовик.&lt;br /&gt;
&lt;br /&gt;
Выполняем батом или тотал коммандером:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -m2 links_fixed.txt&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
ЗЫЫ Желательно перед этим действом временно переместить куда-нибудь неиспользуемые левелы(мультиплеерные тоже) от греха подальше.&lt;br /&gt;
Ждем пока соберется '''game_graph''', ошибок быть недолжно.&lt;br /&gt;
{{Message_box|&lt;br /&gt;
id	=pseudoscience|&lt;br /&gt;
align = left|&lt;br /&gt;
backgroundcolor	= #f9f9f9|&lt;br /&gt;
image	=Lamp.gif|&lt;br /&gt;
heading	= Важные моменты 2 -- Loxotron|&lt;br /&gt;
message = Найден более простой способ вычисления '''game_vertex_id'''. В папке '''utils''' у компилятора бардака есть тулза '''ggtool.pl''' - утилита для показа межуровневых связей в '''game.graph'''. Копируем к утилите откомпилированный '''game.graph''' из '''gamedata\''' и выполняем прогу (в командной строке или через батник):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ggtool.pl game.graph &amp;gt;svyazi.txt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
В результате в фаиле '''svyazi.txt''' в скобках будет указан '''game_vertex_id''' для конкретного уровня, таким образом не нужно узнавать '''dest_game_vertex_id''' c помощью перекомпилирования.&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
l01_escape (0) --1206.29--&amp;gt; l02_garbage (415)&lt;br /&gt;
&lt;br /&gt;
0 - '''game_vertex_id''', 415 - '''dest_game_vertex_id''',&lt;br /&gt;
1206.29 - '''distance'''(расстояние между точками), не тот который в '''level_changer''''е, а между '''connection_point''''ами.&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь дело за '''all.spawn''':&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
aiwrapper -s&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В результате соберется полноценный '''all.spawn''' из всех уровней которые есть в папке '''levels'''. Но на этом работа только начинается, теперь надо '''отредактировать''' этот получившийся '''all.spawn''' и добавить '''level_changer''' на уровень гсц, чтобы мы смогли перейти с него на наш.(в нашем случае с эскейпа на test_level_x). Копируем получившийся '''all.spawn''' в &amp;lt;туда, куда вы распаковали aiwrapper&amp;gt;\utils и создаем .bat с таким текстом: &lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
acdc.pl -d all.spawn&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В результате мы разобрали all.spawn на ltx'сы, нам нужен '''alife_l01_escape.ltx''', вписываем в конец туда это:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[не забитый номер]&lt;br /&gt;
;например 9000&lt;br /&gt;
section_name = level_changer &lt;br /&gt;
name = exit_to_new_location_from_esc&lt;br /&gt;
;любое_название_на_англ, (только не использованное)&lt;br /&gt;
position =&lt;br /&gt;
;здесь координаты где находиться левел чейнджер&lt;br /&gt;
;помните бумажку с координатами и параметрами, которую мы писали раньше?&lt;br /&gt;
;смотрим ту где параметры и координаты эскейпа и вписываем&lt;br /&gt;
direction = 0,0,0 &lt;br /&gt;
;направление &amp;quot;взгляда&amp;quot; игрока&lt;br /&gt;
;по желанию, можно вписать координаты с бумажки&lt;br /&gt;
game_vertex_id =  &lt;br /&gt;
;номер вершины игрового графа, задаёт первую вершину графа на данной локации&lt;br /&gt;
;с бумажки эскейпа&lt;br /&gt;
distance = 14.6999998092651&lt;br /&gt;
;&amp;quot;Расстояние&amp;quot; между точкой перехода(level_changer) и точкой появления&lt;br /&gt;
;актера на другом уровне (если считать зону неделимой), можно и 0.&lt;br /&gt;
level_vertex_id = &lt;br /&gt;
;Вершина уровневого графа, должно покатить '''-1''', но &lt;br /&gt;
;ставьте лучше то что записано на бумажке с эскейпа&lt;br /&gt;
object_flags = 0xffffff3e&lt;br /&gt;
custom_data = &amp;lt;&amp;lt;END&lt;br /&gt;
[pt_move_if_reject]&lt;br /&gt;
path = esc_way_test_if_reject&lt;br /&gt;
END&lt;br /&gt;
;custom data, где указано имя вейпоинта, который мы потом создадим &lt;br /&gt;
;на карте с помощью acdc, таже '''custom data''', что в начале &lt;br /&gt;
;статьи.&lt;br /&gt;
story_id =&lt;br /&gt;
;поставьте здесь неиспользуемый ID, например 8435&lt;br /&gt;
shapes = shape0&lt;br /&gt;
shape0:type = box&lt;br /&gt;
shape0:axis_x = 5.8284006118774,0,0&lt;br /&gt;
shape0:axis_y = 0,5.0005970001221,0&lt;br /&gt;
shape0:axis_z = 0,0,5.3902206420898&lt;br /&gt;
shape0:offset = 0,0,0&lt;br /&gt;
;сфера, в данном случае куб, именно в нем будет активироваться наш переход&lt;br /&gt;
restrictor_type = 3&lt;br /&gt;
&lt;br /&gt;
;выставляем здесь все переменные для нового уровня&lt;br /&gt;
dest_game_vertex_id = &lt;br /&gt;
;номер вершины графа нашей новой локации, туда игрок переместится&lt;br /&gt;
;помните '''уникальный''' объект, который я просил вас поставить?&lt;br /&gt;
;открываем '''alife_lxx_unknown.ltx''' и ищем тачку, сдираем значение с нее&lt;br /&gt;
dest_level_vertex_id =&lt;br /&gt;
;вершина уровнего графа нового левела&lt;br /&gt;
;должно покатить -1, но лучше взять с бумажки с параметрами с тестового левела&lt;br /&gt;
dest_position =&lt;br /&gt;
;координаты на нашем уровне, где ты появляешься&lt;br /&gt;
;с бумажки тестового левела, либо наугад, либо используйте открорректированные&lt;br /&gt;
;координаты с любого объекта на вашей карте, то есть например есть дерево&lt;br /&gt;
;c координатами 0, 1 , 2, корректируем относительно дерева и &lt;br /&gt;
;вписываем например 4, 1, 2&lt;br /&gt;
dest_direction = 0,-1.12671363353729,0&lt;br /&gt;
;направление &amp;quot;взгляда игрока на новом уровне&amp;quot;&lt;br /&gt;
;по желанию&lt;br /&gt;
dest_level_name = &lt;br /&gt;
;название вашего уровня, в нашем случае test_level_x&lt;br /&gt;
dest_graph_point = &lt;br /&gt;
;название точки спавна игрока(графа, то есть в нашем случае&lt;br /&gt;
;start_actor_01)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Еще одно определение двух параметров для непонятливых:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
game_vertex_id - ставится как коннекшн поинт ('''graph_point''' c соответствующими настройками)&lt;br /&gt;
level_vertex_id - '''graph_point''' - ставится как обычная граф поинт с уникальным номером без параметров&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В них вписываем уникальный ID для каждого уровня, то есть в некоторых случаях просто смотрим эти два параметра у соседних объектов этого левела и вписываем значения. Как правило, '''level_vertex_id''' можно поставить '''-1''', но не для всех объектов, '''game_vertex_id''' = ид уровня.&lt;br /&gt;
&lt;br /&gt;
Устали? =) А ведь еще не всё, нужно создать вейпоинт, который мы прописали в '''custom data''' '''level changer''''а. Открываем '''way_l01_escape.ltx''' и вписываем чтото типа:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[esc_way_test_if_reject]&lt;br /&gt;
points = p0,p1&lt;br /&gt;
;два вейпоинта&lt;br /&gt;
p0:name = name_test1&lt;br /&gt;
;имя вейпоинта 1&lt;br /&gt;
p0:position = -243.491257,-19.758562,-140.328583&lt;br /&gt;
;его координаты, ставьте их рядом с координатами level_changer&lt;br /&gt;
;но не в нём, корректируйте их, как в примере с деревом &lt;br /&gt;
p0:game_vertex_id = 8&lt;br /&gt;
p0:level_vertex_id = -1&lt;br /&gt;
p0:links = p1(1)&lt;br /&gt;
&lt;br /&gt;
p1:name = name_test2&lt;br /&gt;
;имя вейпоинта 2&lt;br /&gt;
p1:position = -255.491257,-19.758562,-140.328583&lt;br /&gt;
;его координаты, всё тоже самое, только корректируйте относительно позиции&lt;br /&gt;
; вейпоинта 0, как в этом примере.&lt;br /&gt;
p1:game_vertex_id = 9&lt;br /&gt;
p1:level_vertex_id = -1&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Поставили? Всё, осталось только собрать '''all.spawn''', батом или тотал коммандером выполняем это:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
acdc.pl -c all.ltx&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Теперь копируем получившийся '''all.spawn.new''' в '''gamedata\spawns\''' и переименовываем его в '''all.spawn'''.&lt;br /&gt;
&lt;br /&gt;
Мученья окончились :) Запускайте новую игру и наслаждайтесь вашим переходом...&lt;br /&gt;
&lt;br /&gt;
==В заключении==&lt;br /&gt;
Если вы хотите, чтобы ваша точка перехода отображалась на карте игрока, то лезем в '''level_tasks.script''' и добавляем в '''function add_lchanger_location()''' секцию, подобную представленной ниже:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
		-- test_level_x&lt;br /&gt;
		local obj = sim:story_object(8435)&lt;br /&gt;
		if obj then&lt;br /&gt;
			level.map_add_object_spot(obj.id, &amp;quot;level_changer&amp;quot;, &amp;quot;exit_to_new_location_from_esc&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
В строке (obj.id, &amp;quot;level_changer&amp;quot;, &amp;quot;'''exit_to_new_location_from_esc'''&amp;quot;) выделенный текст - наименование вашего '''level_changer''', а число - его уникальный '''story_id''' на уровне, например на эскейпе или вашем левеле, список занятых '''story_id''' смотреть необязательно. Братьь любое число от 10000&lt;br /&gt;
&lt;br /&gt;
==Список необходимых программ ==&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=165 AiCompiler 0.1] от '''Neo'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=166 AiWrapper] от '''bardak''''а&lt;br /&gt;
*[http://www.rapidshare.ru/532500 Info_LVID_GVID] скрипт от '''bardak''''а&lt;br /&gt;
*[http://files.gsc-game.com/st/xray-sdk-setup-v0.4.exe SDK 0.4] от '''GSC'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewdownload&amp;amp;cid=13 SDK Update] от '''Neo''' + '''GSC'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewdownload&amp;amp;cid=13 Fixed Shaders] от '''Haron'''&lt;br /&gt;
*[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=308 патч для SDK  0.3] от '''Haron'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''written by Loxotron'''&lt;br /&gt;
&lt;br /&gt;
'''updated 11.01.08 by Loxotron'''&lt;br /&gt;
&lt;br /&gt;
'''24/06/08 небольшое добавление о компиляции - Kalinin11'''&lt;br /&gt;
&lt;br /&gt;
'''Дополнил информацией для тех, у кого X-Ray SDK не объединён с игрой  - Эээ...'''&lt;br /&gt;
&lt;br /&gt;
[[Категория:Программы]][[Категория:SDK]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=DCT:%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%BD%D0%BE%D0%BC%D0%B0%D0%BB%D0%B8%D0%B9_%D0%B8_%D0%BA%D0%BE%D1%81%D1%82%D1%80%D0%BE%D0%B2</id>
		<title>DCT:Добавление аномалий и костров</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=DCT:%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B0%D0%BD%D0%BE%D0%BC%D0%B0%D0%BB%D0%B8%D0%B9_%D0%B8_%D0%BA%D0%BE%D1%81%D1%82%D1%80%D0%BE%D0%B2"/>
				<updated>2017-01-29T21:39:33Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии RedPython&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Добавление аномалий==&lt;br /&gt;
===Первый способ===&lt;br /&gt;
*Edit Mode -&amp;gt; Group -&amp;gt;Select&lt;br /&gt;
*Выбираем необходимую аномалию.&lt;br /&gt;
[[image:Docs_leveleditor_zone_addanomalygroup.jpg|Выбор группы из библиотеки|center|frame|Выбор группы из библиотеки]]&lt;br /&gt;
* Жмём Add и добавляем в сцену.&lt;br /&gt;
[[image:Docs_leveleditor_zone_addanomalytoscene.jpg|Добавление группы в сцену|center|frame|Добавление группы в сцену]]&lt;br /&gt;
&lt;br /&gt;
===Второй способ===&lt;br /&gt;
*Добавляем Spawn элемент аномалии&lt;br /&gt;
[[image:Docs_leveleditor_zone_addspawn.jpg|Spawn элемент аномалии Gravi|center|frame|Spawn элемент аномалии Gravi]]&lt;br /&gt;
*Переименовываем аномалию&lt;br /&gt;
[[image:Docs_leveleditor_zone_renamespawn.jpg|Переименовываем аномалию на gravi_zone_average_1|center|frame|Переименовываем аномалию на gravi_zone_average_1]]&lt;br /&gt;
*Для определения области поражения аномалии используются Shape элементы&lt;br /&gt;
[[image:Docs_leveleditor_zone_addshape.jpg|Создания shape'а аномалии|center|frame|Создания shape'а аномалии]]&lt;br /&gt;
*Выбираем нашу аномалию gravi_zone_average_1 в сцене и соединяем её с Shape элементом&lt;br /&gt;
[[image:Docs_leveleditor_zone_spawnconnect.jpg|Присоединяем аномалию к shape'у|center|frame|Присоединяем аномалию к shape'у]]&lt;br /&gt;
&lt;br /&gt;
==Добавление костров==&lt;br /&gt;
*Выбираем группу костра&lt;br /&gt;
[[image:Docs_leveleditor_zone_addcampfire.jpg|Выбор группы из библиотеки|center|frame|Выбор группы из библиотеки]]&lt;br /&gt;
* Жмём Add и добавляем в сцену.&lt;br /&gt;
[[image:Docs_leveleditor_zone_addcampfiretoscene.jpg|Добавление группы в сцену|center|frame|Добавление группы в сцену]]&lt;br /&gt;
&lt;br /&gt;
==Вносим костры и аномалии в список зон карты==&lt;br /&gt;
*Открываем группы&lt;br /&gt;
[[image:Docs_leveleditor_zone_opengroup.jpg|Открываем группу костра|center|frame|Открываем группу костра]]&lt;br /&gt;
*Находим в Object List'е зону нашего костра&lt;br /&gt;
[[image:Docs_leveleditor_zone_objectlist.jpg|Зона нашего костра - zone_flame_small_0001|center|frame|Зона нашего костра - zone_flame_small_0001]]&lt;br /&gt;
*Вносим аномалию gravi_zone_average_1 и зону костра zone_flame_small_0001 в список зон карты&lt;br /&gt;
[[image:Docs_leveleditor_zone_customdata.jpg|Редактирование custom data карты|center|frame|Редактирование custom data карты]]&lt;br /&gt;
Список зон уникален для каждого типа сетевой игры [deathmatch_game_anomaly_sets], [teamdeathmatch_game_anomaly_sets] и [artefacthunt_game_anomaly_sets] соответственно. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[deathmatch_game_anomaly_sets]&lt;br /&gt;
permanent = &amp;lt;имя_зоны_1&amp;gt;, &amp;lt;имя_зоны_2&amp;gt;, …&lt;br /&gt;
set0 = &amp;lt;имя_зоны_3&amp;gt;, …&lt;br /&gt;
set1 = &amp;lt;имя_зоны_4&amp;gt;, …&lt;br /&gt;
set2 = &amp;lt;имя_зоны_5&amp;gt;, …&lt;br /&gt;
…&lt;br /&gt;
setn = &amp;lt;имя_зоны_n&amp;gt;, …&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
В разделе '''permanent''' описываются зоны которые будут работать постоянно.&lt;br /&gt;
Разделы '''set0''', '''set1''', '''set2''', ..., '''setn''' включаются поочерёдно.&lt;br /&gt;
&lt;br /&gt;
[[Категория:SDK]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B0_.thm</id>
		<title>Файл формата .thm</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B0_.thm"/>
				<updated>2017-01-29T21:39:33Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Что это такое и зачем они нужны? ===&lt;br /&gt;
&lt;br /&gt;
Эти файлы могут использоваться во всех частях Сталкера (в ТЧ реже - чтобы дать конкретной текстуре параметры, не затрагивая textures.ltx). В ТЧ работают начиная с версии 1.0004. Используются для выставления параметров текстур — bump, detail и прочее. Имеют вид ''название_текстуры.thm'' и ''название_текстуры_bump.thm'' для bump текстур. Без них игра не подставляет текстуре нужные параметры и следовательно они получаются «плоские», хуже чем на статическом освещении. Для сравнения приведу картинки&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[Изображение:No thm.jpg|thumb|Без thm]]&lt;br /&gt;
[[Изображение:With thm.jpg|thumb|C thm]]&lt;br /&gt;
&lt;br /&gt;
=== Как их создать? Какие параметры нужны? ===&lt;br /&gt;
&lt;br /&gt;
Для создания этих файлов нужен официальный СДК версии 0.5/0.6/0.7. С версией 0.4 есть нюанс (о нём примечании). Для начала, скачайте эту программу [http://stalkerin.gameru.net/downloads/stutils/dds2tgaLE.rar dds2tgaLE (373 KБ)] и установите её в папку import вашего СДК. Она нужна для быстрого перевода текстур из формата DDS в TGA, нужный СДК. Теперь, допустим, мы хотим сделать файл .thm для текстуры ''prop_plitka_lab''. Копируем текстуру ''prop_plitka_lab'' и ''prop_plitka_lab_bump'' в папку import, запускаем файл START.BAT — заместо dds мы получили tga текстуры. Теперь, в нашем случае, копируем их в папку ''rawdata\textures\prop''. Далее заходим в Level Editor, щёлкаем по кнопке Images и выбираем пункт Check New Textures&lt;br /&gt;
&lt;br /&gt;
[[Изображение:One.jpg]]&lt;br /&gt;
&lt;br /&gt;
В появившемся окошке жмём ОК и видим появившееся окно с текстурами которые вы добавили. На этом скриншоте отмечено то, что нам понадобится изменять (я уже поставил)&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Two.jpg]]&lt;br /&gt;
&lt;br /&gt;
Итак, в секции Bump в параметре Mode ставим Use — для различных текстур, а Use parallax — для текстур типа кирпичной кладки, кафеля (как в данной текстуре) и тп. В параметре Texture выбираем тестуру bump — ''prop_plitka_lab_bump''. В секции Detalis в параметрах Use as Diffuse и/или Use as Bump (R2) ставим галочку. Как расставить эти параметры грамотно? Обратимся к textures.ltx. Ищем нашу текстуру в нём, первое что находится:&lt;br /&gt;
 prop\prop_plitka_lab = detail\detail_tile_det2, 6.000000, usage[diffuse_or_bump]&lt;br /&gt;
Значит ставим галочки в параметрах Use as Diffuse и Use as Bump (R2). В параметре Texture под этими пунктами выбираем текстуру ''detail\detail_tile_det2'', предварительно сделав импорт этой текстуры в СДК. И в параметре Scale ставим 6.0. Ищем по файлу дальше, видим:&lt;br /&gt;
 prop\prop_plitka_lab = bump_mode[use:prop\prop_plitka_lab_bump], material[1.50]&lt;br /&gt;
Здесь пишется bump-текстура и «material», это степень интенсивности отражения света текстурой - чем больше, тем сильнее текстура отражает свет. Только в СДК поставить выше значения 1.0 не получится (не страшно) для того чтобы выставить нужное значение меняем материал.&lt;br /&gt;
;[0.00-0.99] - OrenNayar &amp;lt;-&amp;gt; Blinn&lt;br /&gt;
;[1.00-1.99] - Blinn &amp;lt;-&amp;gt; Phong&lt;br /&gt;
;[2.00-2.99] - Phong &amp;lt;-&amp;gt; Metal&lt;br /&gt;
;[3.00-3.99] - Metal &amp;lt;-&amp;gt;OrenNayar&lt;br /&gt;
&lt;br /&gt;
(нужна картинка, не знаю как вставить)Секция Fade отвечает за закрашивание текстуры определённым цветом или обесцвечивание включая мип уровни, можно настроить на какой процент с каждым мип уровнем будет усиливаться эффект, в первую очередь нужна для детальных текстур и текстур терейна.&lt;br /&gt;
* Enable Calor - включить для цвета&lt;br /&gt;
* Enabled Alpha - включить для альфа канала&lt;br /&gt;
* Delay &amp;quot;n&amp;quot; MIP - пропуск мип уровней, нужно для того что бы настроить то, с какого мип уровня появиться эффект.&lt;br /&gt;
* % of color to fade in - процент на который будет увеличиваться эффект с каждым мип уровнем.&lt;br /&gt;
* Color - Тут выбираем цвет эффекта.&lt;br /&gt;
* Alpha - сам ещё не знаю)&lt;br /&gt;
&lt;br /&gt;
 Вот что ещё находим:&lt;br /&gt;
 prop\prop_plitka_lab = 0&lt;br /&gt;
Здесь выставлен тип текстуры. Смотря по СДК и файлу textures.ltx, я понял так:&lt;br /&gt;
* 0 — 2D Texture&lt;br /&gt;
* 1 — Cube Map&lt;br /&gt;
* 2 — Bump Map&lt;br /&gt;
* 3 — Normal Map&lt;br /&gt;
* 4 — Terrain&lt;br /&gt;
По textures.ltx всё. Жмём ОК и ищем полученные изображения и их .thm файлы в папке СДК\…\gamedata\textures\…&lt;br /&gt;
Кстати, когда будете копировать готовые thm файлы, не забудьте скопировать не только ''prop_plitka_lab'' и ''prop_plitka_lab_bump'', но и ''prop_plitka_lab_bump#''. Уже можно их опробовать в игре&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Примечание по СДК 0.4===&lt;br /&gt;
&lt;br /&gt;
В СДК версии 0.4 создаются файлы thm, больше размером и с другим форматом, чем в ЧН/ЗП. Поэтому они не работают в них. Но есть способ как превратить эти файлы для ЧН/ЗП (из формата СДК 0.4 перевести в современный):&lt;br /&gt;
переделать их с помощью утилиты — [http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=421 thmParser], как использовать описано внутри.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Примечание по ошибке thm===&lt;br /&gt;
Иногда после процессов редактирования текстуры, бампа, thm в игре можно встретить баг: определенная текстура покрывается непонятной сеткой, немного напоминающей шахматную доску. Причиной этому может быть: &lt;br /&gt;
* отсутствие бапма, которого привязывает к текстуре thm&lt;br /&gt;
* неправильное название бампа (возможно, по невнимательности допустили ошибку)&lt;br /&gt;
* thm-файл устаревший, там указан другой бамп (могли забыть перебросить новый thm из СДК)&lt;br /&gt;
Лечение: проверяем наличие бампа, его название. Если что, прогоняем привязку текстуры к бампу через СДК еще один раз, получаем новый thm, копируем с заменой обновленные файлы из СДК в геймдату &lt;br /&gt;
&lt;br /&gt;
'''Автор статьи: [http://www.gameru.net/forum/index.php?showuser=13071 Ork]'''&lt;br /&gt;
&lt;br /&gt;
'''За помощь и поддержку спасибо [http://www.gameru.net/forum/index.php?showuser=11669 XaK] и BuS777'''&lt;br /&gt;
&lt;br /&gt;
'''Дополнил:''' FantomICW&lt;br /&gt;
&lt;br /&gt;
[[Категория:Texturing]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D1%85_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2</id>
		<title>Регистрация новых текстовых файлов</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B3%D0%B8%D1%81%D1%82%D1%80%D0%B0%D1%86%D0%B8%D1%8F_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D1%85_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2"/>
				<updated>2017-01-29T21:39:32Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии 91.218.192.254&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Вступление==&lt;br /&gt;
Наверное, большинство людей, вскрывавших архивы игры, знают, что 90% текстов &amp;quot;Сталкера&amp;quot; находятся в XML-файлах из папки '''configs/text/rus'''. Бывает, нет желания впихивать свои тексты в оригинальные файлы. Тогда создаются новые XML-документы, и там уже прописывается все, что нужно. Создать документ и прописать - это одно. А вот регистрация этих документов - уже другое. Сложного в регистрации новых файлов ничего нет, но не всем начинающим модмейкерам этот процесс известен. Будем исправлять. &lt;br /&gt;
==Способ первый==&lt;br /&gt;
Предположим, мы создали файл '''my_dialogs.xml''' в папке '''configs/text/rus'''. Чтобы его зарегистрировать мы задействуем любой оригинальный файл из этой же папки. Например, '''st_dialogs.xml'''. Откроем его и где-нибудь между ''&amp;lt;string_table&amp;gt;'' и ''&amp;lt;/string_table&amp;gt;'' пропишем наш файл через известную форму ''include''. Прописать можно в любом месте, не прерывая секции другого текста. Я пропишу прямо под ''&amp;lt;string_table&amp;gt;'':&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;windows-1251&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;string_table&amp;gt;&lt;br /&gt;
#include &amp;quot;text\rus\my_dialogs.xml&amp;quot;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_0&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Подскажи мне насчёт одного дела...&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_1&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;А чё за дело?&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_10&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Что ты думаешь про Шустрого?&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_101&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Про Шустрого? Я, короче, так думаю, как-нибудь мы его таки встретим в тихом месте и чутка эту суку потрясём.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_11&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Что ты слышал про Оазис?&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_111&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Х-хы-ы! Я, короче, такую хохму сышал - ваще, умереть не встать! Короче, как-то, на Свалке ещё, пацаны беса погнали: толкнули адресок Оазиса с темой, типа это полный верняк. Ну и приныкались там на нычке кодлой. Ну и чё те сказать... там, короче, с бакланов стока поснимали, шо пацаны на завтра тупо из Зоны свалили! На всю оставшуюся жизнь каждому хватит. Один тока пацанчик тут остался - ему Йога погоняло было.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;about_quests_dialog_bandit_112&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Чё, короче, слышал, так это типа там любые болезни проходят. Я так секу, полезная, мля, штука: и гемора по жизни никакого, от бодуна или передоза там башка не трещит... Короче, ставишь туда гостиничку - и бабло греби лопатой!&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
...&amp;lt;/xml&amp;gt;&lt;br /&gt;
Надеюсь, понятно, что мы зарегистрировали свой файл строкой:&lt;br /&gt;
&amp;lt;code&amp;gt;#include &amp;quot;text\rus\my_dialogs.xml&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
==Способ 2а и 2б==&lt;br /&gt;
===Способ 2а===&lt;br /&gt;
Сейчас мы уже задействуем другой оригинальный файл - '''configs/localization.ltx'''. В нем можно дать ссылку на все наши текстовые файлы. Наполнен файл в чистом ЗП вот-так:&lt;br /&gt;
&amp;lt;ini&amp;gt;[string_table]&lt;br /&gt;
language        = rus&lt;br /&gt;
font_prefix     = ;_west ;_cent&amp;lt;/ini&amp;gt;&lt;br /&gt;
Мы возьмем и допишем под всем этим новый параметр ''files'', а в значении укажем названия новых файлов (пускай, '''my_dialogs''', '''my_items''' и '''my_artefacts'''):&lt;br /&gt;
&amp;lt;code&amp;gt;files           = my_dialogs, my_items, my_artefacts&amp;lt;/code&amp;gt;&lt;br /&gt;
В целом будет выглядеть так:&lt;br /&gt;
&amp;lt;ini&amp;gt;[string_table]&lt;br /&gt;
language        = rus&lt;br /&gt;
font_prefix     = ;_west ;_cent&lt;br /&gt;
files           = my_dialogs, my_items, my_artefacts&amp;lt;/ini&amp;gt;&lt;br /&gt;
===Способ 2б===&lt;br /&gt;
Фактически, микс между способом 1 и 2а. В папке '''configs/text/rus''' создаем XML-файл с любым названием. Я предпочту назвать по назначению - '''my_text_files.xml'''. Из него, собственно, и будут идти все отсылки к другим текстовкам.&lt;br /&gt;
Далее, регистрируем этот файл по принципу из способа 2а. Открываем '''localization.ltx''', и прописываем там наш файл:&lt;br /&gt;
&amp;lt;ini&amp;gt;[string_table]&lt;br /&gt;
language        = rus&lt;br /&gt;
font_prefix     = ;_west ;_cent&lt;br /&gt;
files           = my_text_files&amp;lt;/ini&amp;gt;&lt;br /&gt;
Возвращаемся к файлу '''my_text_files.xml''', и заполняем его следующим образом:&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;windows-1251&amp;quot; standalone=&amp;quot;yes&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;string_table&amp;gt;&lt;br /&gt;
#include &amp;quot;text\rus\my_dialogs.xml&amp;quot;&lt;br /&gt;
#include &amp;quot;text\rus\my_items.xml&amp;quot;&lt;br /&gt;
#include &amp;quot;text\rus\my_character_names.xml&amp;quot;&lt;br /&gt;
#include &amp;quot;text\rus\my_artefacts.xml&amp;quot;&lt;br /&gt;
#include &amp;quot;text\rus\my_weapons.xml&amp;quot;&lt;br /&gt;
&amp;lt;/string_table&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;windows-1251&amp;quot; standalone=&amp;quot;yes&amp;quot; ?&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
 - стандартная кодировка файла&lt;br /&gt;
''&amp;lt;string_table&amp;gt;'' и ''&amp;lt;/string_table&amp;gt;'' - теги файла&lt;br /&gt;
Через ''#include'' прописаны все наши текстовые файлы. &lt;br /&gt;
Этот способ я сам предпочитаю использовать. Все четко, понятно, нету больших рисков и непоняток с оригинальными файлами.&lt;br /&gt;
Всем спасибо, на этом мини-урок закончен! =)&lt;br /&gt;
==Авторы==&lt;br /&gt;
'''Автор статьи:''' FantomICW&lt;br /&gt;
&lt;br /&gt;
[[Категория: Конфигурационные файлы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%83%D1%81%D1%82%D0%BE%D0%B9_%D1%80%D1%8E%D0%BA%D0%B7%D0%B0%D0%BA_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D1%81%D0%B2%D0%BE%D0%B5%D0%B3%D0%BE_%D1%82%D0%B0%D0%B9%D0%BD%D0%B8%D0%BA%D0%B0</id>
		<title>Пустой рюкзак для создания своего тайника</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%83%D1%81%D1%82%D0%BE%D0%B9_%D1%80%D1%8E%D0%BA%D0%B7%D0%B0%D0%BA_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D1%81%D0%B2%D0%BE%D0%B5%D0%B3%D0%BE_%D1%82%D0%B0%D0%B9%D0%BD%D0%B8%D0%BA%D0%B0"/>
				<updated>2017-01-29T21:39:31Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Пустой рюкзак для создания своего тайника&lt;br /&gt;
&lt;br /&gt;
Этим методом можно добавить в Сталкер ТЧ тайник, который вы сами сможете заложить там, где вам угодно.&lt;br /&gt;
&lt;br /&gt;
Итак, приступим: Нам потребуются: Два файла для добавления функции установки тайника (эти файлы обязательны): &lt;br /&gt;
1. bind_stalker.SCRIPT (gamedata/scripts) &lt;br /&gt;
2. devices.LTX (gamedata/config/misc) &lt;br /&gt;
Один файл, чтобы получить рюкзак в игре (в моём случае, Сидорович торгует такими рюкзаками): Trade_trader.LTX (gamedata/config/misc)&lt;br /&gt;
&lt;br /&gt;
Первым делом откройте файл bind_stalker.SCRIPT и найдите следующие строки:&lt;br /&gt;
 &lt;br /&gt;
function actor_binder:on_item_drop (obj)&lt;br /&gt;
    level_tasks.proceed(self.object)&lt;br /&gt;
    --game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
После строк&lt;br /&gt;
--game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
запишите следующее:&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 2/2&lt;br /&gt;
	if obj:section()==&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
		-- запомним id объекта&lt;br /&gt;
		self.rr_id=obj:id()&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Итог:&lt;br /&gt;
function actor_binder:on_item_drop (obj)&lt;br /&gt;
    level_tasks.proceed(self.object)&lt;br /&gt;
    --game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 2/2&lt;br /&gt;
	if obj:section()==&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
		-- запомним id объекта&lt;br /&gt;
		self.rr_id=obj:id()&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
end&lt;br /&gt;
Далее найдите строки&lt;br /&gt;
game_stats.update (delta, self.object)&lt;br /&gt;
И после них запишите&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 1/2&lt;br /&gt;
	if self.rr_id~=nil then&lt;br /&gt;
		-- пытаемся получить объект по id&lt;br /&gt;
		local se_obj=alife():object(self.rr_id)&lt;br /&gt;
		-- проверяем, что объекта нет&lt;br /&gt;
		if se_obj==nil or se_obj:section_name()~=&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
			local ruck=alife():create(&amp;quot;active_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id())&lt;br /&gt;
			level.map_add_object_spot_ser(ruck.id, &amp;quot;red_location&amp;quot;, &amp;quot;%c[255,238,155,23]Моя нычка для хабара&amp;quot;)&lt;br /&gt;
			news_manager.send_tip(db.actor, &amp;quot;Тайник заложен.&amp;quot;, nil, nil, 5000)&lt;br /&gt;
		end&lt;br /&gt;
		-- сбросим переменную&lt;br /&gt;
		self.rr_id=nil&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Итог:&lt;br /&gt;
function actor_binder:update(delta)&lt;br /&gt;
	object_binder.update(self, delta)&lt;br /&gt;
 &lt;br /&gt;
	-- DEBUG slowdown&lt;br /&gt;
--	slowdown.update()&lt;br /&gt;
 &lt;br /&gt;
	local time = time_global()&lt;br /&gt;
 &lt;br /&gt;
	game_stats.update (delta, self.object)&lt;br /&gt;
 &lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 1/2&lt;br /&gt;
	if self.rr_id~=nil then&lt;br /&gt;
		-- пытаемся получить объект по id&lt;br /&gt;
		local se_obj=alife():object(self.rr_id)&lt;br /&gt;
		-- проверяем, что объекта нет&lt;br /&gt;
		if se_obj==nil or se_obj:section_name()~=&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
			local ruck=alife():create(&amp;quot;active_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id())&lt;br /&gt;
			level.map_add_object_spot_ser(ruck.id, &amp;quot;red_location&amp;quot;, &amp;quot;%c[255,238,155,23]Моя нычка для хабара&amp;quot;)&lt;br /&gt;
			news_manager.send_tip(db.actor, &amp;quot;Тайник заложен.&amp;quot;, nil, nil, 5000)&lt;br /&gt;
		end&lt;br /&gt;
		-- сбросим переменную&lt;br /&gt;
		self.rr_id=nil&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Всё! На это работа с bind_stalker.SCRIPT завершена.&lt;br /&gt;
&lt;br /&gt;
Переходим к файлу devices.LTX. &lt;br /&gt;
В самом конце файла напишите следующее:&lt;br /&gt;
[inv_ruck]:identity_immunities&lt;br /&gt;
GroupControlSection = spawn_group&lt;br /&gt;
discovery_dependency =&lt;br /&gt;
$spawn    = &amp;quot;food and drugs\antirad&amp;quot;&lt;br /&gt;
$prefetch   = 32&lt;br /&gt;
class   = II_ANTIR&lt;br /&gt;
cform           = skeleton&lt;br /&gt;
visual          = equipments\item_rukzak&lt;br /&gt;
description  = enc_tre_ruck&lt;br /&gt;
 &lt;br /&gt;
inv_weight   = 0.3&lt;br /&gt;
inv_name   = tre_ruck&lt;br /&gt;
inv_name_short  = tre_ruck_s&lt;br /&gt;
 &lt;br /&gt;
inv_grid_width		= 2&lt;br /&gt;
inv_grid_height		= 2&lt;br /&gt;
inv_grid_x		= 0&lt;br /&gt;
inv_grid_y		= 0&lt;br /&gt;
cost = 500&lt;br /&gt;
 &lt;br /&gt;
;eatable item&lt;br /&gt;
eat_health = 0&lt;br /&gt;
eat_satiety = 0&lt;br /&gt;
eat_power = 0&lt;br /&gt;
eat_radiation = 0&lt;br /&gt;
eat_alcohol = 0&lt;br /&gt;
wounds_heal_perc = 0&lt;br /&gt;
eat_portions_num = 1&lt;br /&gt;
 &lt;br /&gt;
;food item&lt;br /&gt;
animation_slot  = 4&lt;br /&gt;
 &lt;br /&gt;
;hud item&lt;br /&gt;
hud = wpn_vodka_hud&lt;br /&gt;
 &lt;br /&gt;
[active_ruck]:inventory_box&lt;br /&gt;
visual          = equipments\item_rukzak&lt;br /&gt;
custom_data     = scripts\treasure_inventory_box.ltx&lt;br /&gt;
radius = 1&lt;br /&gt;
Обратите внимание на строку cost = 800. Это цена. Вы можете поставить какую угодно.&lt;br /&gt;
&lt;br /&gt;
Всё. Осталось прописать рюкзак в ассортимент Сидоровича. &lt;br /&gt;
Откройте файл Trade_trader.LTX. Найдите строку [supplies_start] и после неё напишите:&lt;br /&gt;
inv_ruck			= 10,	1&lt;br /&gt;
Цифра 10 значит, что у торговца появится десять рюкзаков, цифра 1 означает вероятность появления (1 = 100%). Готово! Заходим в игру, тестируем.&lt;br /&gt;
ПРИМЕЧАНИЕ. Иконка рюкзака, название и описание в инвентаре будет отображаться некорректно. Редактируйте текстуру в файле ui_inventory.dds (gamedata/textures/ui), координаты x,y в devices.LTX, описание в файле string_table_enc_equipment (gamedata/config/text/rus).&lt;br /&gt;
&lt;br /&gt;
Как забрать рюкзак назад в инвентарь, если тайник нам больше не нужен? &lt;br /&gt;
Открываем файл bind_stalker.script, находим функцию actor_binder:take_item_from_box(box, item) и в самом её начале добавляем такой код:&lt;br /&gt;
-- если это наш тайник и он пустой, т.е. мы забрали из него последний предмет, то...&lt;br /&gt;
if box:section() == &amp;quot;active_ruck&amp;quot; and box:is_inv_box_empty() then&lt;br /&gt;
    level.start_stop_menu(level.main_input_receiver(), true)   -- закрываем окно &amp;quot;обыскивания тайника&amp;quot;&lt;br /&gt;
    level.map_remove_object_spot(box:id(), &amp;quot;red_location&amp;quot;)    -- убираем с тайника метку&lt;br /&gt;
    alife():release(alife():object(box:id()), true)    -- удаляем тайник&lt;br /&gt;
    alife():create(&amp;quot;inv_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) -- спавним рюкзак в инвентарь&lt;br /&gt;
end&lt;br /&gt;
Всё. Теперь, когда мы забираем все вещи из рюкзака-тайника, то он перемещается к ГГ в инвентарь.&lt;br /&gt;
&lt;br /&gt;
Были использованы материалы из мода FreeplayStart.&lt;br /&gt;
Статья написана Sanyok_Shevcov, Самара.&lt;br /&gt;
Дополнил: naxac&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Docs_wind_map_compressor_dir.JPG</id>
		<title>Файл:Docs wind map compressor dir.JPG</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Docs_wind_map_compressor_dir.JPG"/>
				<updated>2017-01-29T21:39:31Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии Loxotron&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D1%87%D0%B5%D1%80%D0%B5%D0%B7_%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82</id>
		<title>Спавн через скрипт</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D1%87%D0%B5%D1%80%D0%B5%D0%B7_%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82"/>
				<updated>2017-01-29T21:39:30Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии 188.187.20.8&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Теория==&lt;br /&gt;
&lt;br /&gt;
В скриптах есть одна единственная функция, отвечающая за спавн объектов:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(section,position,levelvertex,gamevertex)&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;Строго говоря, их две: create и create_ammo но различия между ними не существенны. [[Участник:Imp|Imp]] 22:45, 23 июля 2007 (EEST)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Первый параметр - секция в конфигурациях, описывающая объект, например &amp;quot;bolt&amp;quot;,&amp;quot;medkit&amp;quot; - это простые секции, простых объектов&lt;br /&gt;
а есть объекты, которые переходят в онлайн/оффлайн, это неписи, монстры и так далее, например mil_killer_respawn_2 - спавнится снайпер группировки киллеров.&lt;br /&gt;
&lt;br /&gt;
С позицией, думаю объяснять не надо, только существует нюанс - высота это Y, а не Z.&lt;br /&gt;
&lt;br /&gt;
[http://images.gameru.net/image/direct/5e560ebeb5.jpg Направления в пространстве]&lt;br /&gt;
&lt;br /&gt;
Задать позицию можно такой конструкцией: vector():set(x,y,z), где x, y и z - координаты точки на уровне, где спавним объект.&lt;br /&gt;
&lt;br /&gt;
Вертекс в игре Сталкер не тоже самое, что вертекс в трехмерной графике. Vertex - определенная зона малого размера за которой закреплен индивидуальный номер в пределах уровня или целой игры. &lt;br /&gt;
level_vertex определяет зону на уровне, по которой можно пройти NPC. game_vertex определяют зоны для свободного хождения, т.е. под руководством ИИ, а также между уровнями. Вертексы имеют одно из первостепенных значений. Точность положения указывается уже через точку спавна.&lt;br /&gt;
Например, можно получить вертекс ближайший к актору - db.actor:level_vertex_id()&lt;br /&gt;
&lt;br /&gt;
game_vertex_id нужен для того, чтобы указать на какой карте спавнить объект.&lt;br /&gt;
&lt;br /&gt;
Соответственно, чтобы заспавнить что-нибудь на другой карте, достаточно указать game_vertex_id в четвертом параметре.&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
db.actor:game_vertex_id()&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Итак, чтобы, например, заспавнить болт под ногами актора, пишем: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(&amp;quot;bolt&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id())&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Почему 1, а не level_vertex_id? Проверено - разницы особой нет, какой level_vertex_id, хотя в некоторых случаях надо прописывать валидный вертекс, а то предмет может просто заспавнится не там, где планировалось... Но по большей части все проходит нормально и с единицей (игнорирование level_vertex_id может приводить к проваливанию произведенных предметов/персонажей под землю).&lt;br /&gt;
А вот game_vertex решает все - он указывает на каком уровне спавнить предмет, поэтому его надо указывать. Теоретически можно просто найти для каждого уровня по одному game_vertex'у и использовать их в скриптах.&lt;br /&gt;
На самом деле game_vertex показывает какой фрагмент карты используется (вся карта разбита на кусочки, имеющие сквозную нумерацию по всем уровням, и game_vertex выбирает нужный) соответственно неправильное использование черевато....&lt;br /&gt;
&lt;br /&gt;
Кроме того, есть еще один параметр - ID объекта, если указать ID NPC или актора - то предмет заспавнится у него в инвентаре.&lt;br /&gt;
&lt;br /&gt;
Пример (спавним артефакт Медуза в инвентаре у актора):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(&amp;quot;af_medusa&amp;quot;, db.actor:position(), 1, db.actor:game_vertex_id(), db.actor:id())&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Функция спавна возвращает серверный объект, то есть ни NPC, ни монстра ни что-либо еще.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;Серверный обьект позволяет свежесозданного NPC или тайник затарить разными рулезами/артефактами. Например, вот так создадим перед входом к Сидоровичу долговца и засунем в него пачку патронов:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
	local obj&lt;br /&gt;
	local a = vector() -- Задаем тип переменной&lt;br /&gt;
	local dir    = db.actor:direction()&lt;br /&gt;
&lt;br /&gt;
	a.x = -243.61	-- координата X&lt;br /&gt;
	a.y = -19.52	-- высота Y&lt;br /&gt;
	a.z = -127.17	-- координата Z&lt;br /&gt;
&lt;br /&gt;
	obj = alife():create(&amp;quot;bar_dolg_respawn_3&amp;quot;, a, 13193, 8, 65535)&lt;br /&gt;
	alife():create_ammo(&amp;quot;ammo_9x18_fmj&amp;quot;,&lt;br /&gt;
		obj.position,&lt;br /&gt;
		obj.m_level_vertex_id,&lt;br /&gt;
		obj.m_game_vertex_id,&lt;br /&gt;
		obj.id,&lt;br /&gt;
		20) -- число патронов&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Кстати, create_ammo - практически тоже самое, что и create, разница в том, что create_ammo предназначена специально для спавна патронов и позволяет создавать неполные пачки патронов. Возможно есть еще какие-то отличия. Стоит учесть, что сами авторы игры спавнят патроны исключительно через create_ammo. [[Участник:Imp|Imp]] 22:38, 23 июля 2007 (EEST)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Просто минимальный набор - координаты, ID, секция,а из него (серверного объекта) обычно нужен только ID, так как по ID можно получить этот самый серверный объект:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
(alife():object(id))&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Его можно использовать, чтобы поставить метку, например, но я его лично использую для других целей - спавн сложных объектов, конкретно – NPC.&lt;br /&gt;
&lt;br /&gt;
Например надо решить следующую задачу - надо создать наемника, сменить ему группировку и изменить его инвентарь, ну и в нагрузку - сделать другом для игрока.&lt;br /&gt;
&lt;br /&gt;
В определенный момент заспавненный объект переходит онлайн, в этот момент вызывается callback - net_spawn.&lt;br /&gt;
&lt;br /&gt;
Что мы делаем? Сверяем ID онлайн объекта с сохраненным ID!&lt;br /&gt;
&lt;br /&gt;
Если они совпадают, например так:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
if obj:id()==saved_id then ...&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Важно то, что у серверного объекта ID - это параметр, а у онлайнового объекта ID получается с помощью функции. Это важно, а то можно прогореть.&lt;br /&gt;
&lt;br /&gt;
Итак, мы поймали нашего киллера по ID.&lt;br /&gt;
&lt;br /&gt;
Далее все очень просто - вызываем команды для спавна гаусса и патронов к нему в инвентаре NPC (см. выше), меняем группировку специальной функцией, и делаем его другом.&lt;br /&gt;
&lt;br /&gt;
Зачем такие сложности? Просто в оффлайне NPC как бы не существует, есть только косвенное упоминание о нем, и, плюс, все эти функции работают именно с объектом типа &amp;quot;NPC&amp;quot;, а не с серверными объектами.&lt;br /&gt;
&lt;br /&gt;
Более простая функция спауна в одну строчку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(section,position,levelvertex,gamevertex)&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
section -- это секция предмета&lt;br /&gt;
position -- это его позиция (Через vector()) Брать в игре с помощью консольной команды rs_stats 1 или rs_cam_pos 1 (Тока в ЧН)&lt;br /&gt;
levelvertex - пусть равно 1&lt;br /&gt;
gamevertex - его Game Vertex, определяет уровень где будет спаун.&lt;br /&gt;
GV можно взять либо скриптом, либо через распакованный all.spawn.&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(&amp;quot;stalker&amp;quot;,vector():set(0,0,0),1,135) -- спаунит сталкера на водокачке (игра ЧН, на уровне Болото).&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Практика (часть 1)==&lt;br /&gt;
&lt;br /&gt;
'''1.''' Чтобы не повторяться в описании создания нового квеста, просто изучите [[Создание квестов (Fr3nzy)|статью по созданию квестов]] от Fr3nzy – лучшей статьи на эту тему я просто не видел :) Мы просто свяжем все воедино и научимся спавнить объекты из скрипта. &lt;br /&gt;
&lt;br /&gt;
Небольшое отступление:&lt;br /&gt;
&lt;br /&gt;
Почему предпочтительнее делать спавн скриптом, а не через тот же [http://stalkerin.gameru.net/downloads/stutils/zeed/xrspawner.rar xrSpawner]? Программа xrSpawner, при всех своих достоинствах, обладает одним недостатком, а именно – редактирует спавн через файл all.spawn, что приводит к:&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;
&lt;br /&gt;
Реализация: Постараюсь описать все действия максимально подробно, буквально по шагам. Первым делом запустите игру :) &lt;br /&gt;
&lt;br /&gt;
В консоли введите команду:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
rs_stats on или rs_stats 1&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тем самым мы включаем вывод информации на экран. &lt;br /&gt;
Далее вводим еще одну команду:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
demo_record 1&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
И «летим» на фабрику. Нам нужно выбрать место для спавна объектов и данный режим как нельзя лучше подходит для реализации задуманного. Помещаем камеру в точке предполагаемого спавна и записываем координаты - у меня получились 115, -6, -16. &lt;br /&gt;
&lt;br /&gt;
Для выхода из режима demo_record нажимаем Esc, в консоли пишем rs_stats off или rs_stats 0 (убираем вывод информации).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;Другой способ получения тех же сведений - прийти в нужное место и запустить там скрипт, который выдаст все нужные координаты. Я пользуюсь следующим скриптом (вызываю общеизвестным способом, через main_menu):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function main_menu:main_cheat_f3()&lt;br /&gt;
	-- Выдадим сообщение о нашем местоположении&lt;br /&gt;
	local text&lt;br /&gt;
	local vid&lt;br /&gt;
	local gvid&lt;br /&gt;
	local a = vector() -- Тип переменной&lt;br /&gt;
	local text&lt;br /&gt;
&lt;br /&gt;
	a    = db.actor:position()        -- Наше положение в координатах&lt;br /&gt;
	vid  = db.actor:level_vertex_id() &lt;br /&gt;
	gvid = db.actor:game_vertex_id() &lt;br /&gt;
	text = &amp;quot;Позиция:\\nX= &amp;quot;..a.x..&amp;quot;\\nY= &amp;quot;..a.y..&amp;quot;\\nZ= &amp;quot;..a.z..&amp;quot;\\nlevel_vertex= &amp;quot;..vid..&amp;quot;\\ngame_vertex_id= &amp;quot;..gvid&lt;br /&gt;
	news_manager.send_tip(db.actor, text, nil, nil, 30000)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В результате не нужно экспериментировать, мы сразу получаем все, в том числе и level_vertex и  game_vertex. [[Участник:Imp|Imp]] 22:38, 23 июля 2007 (EEST)&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;&lt;br /&gt;
Или же используем готовые скрипты с автообновлением позиционирования:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/stutils/LVIDGVID_script.7z LVID GVID Script SoC]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/stutils/script_position_cs.rar LVID GVID Script CS]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/stutils/LVID_GVID_COP.rar LVID GVID Script CoP]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/stutils/lv_gv_id_3120.rar LVID GVID Script 3120]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[http://stalkerin.gameru.net/downloads/stutils/LVIDGVID_script_amk.7z LVID GVID Script AMK]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Участник:RedPython|RedPython]] 16:09, 10 октября 2010 (UTC)&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Выходим из игры, идем в папку с установленной игрой и создаем каталог gamedata (предполагается, что «лепим» свой «мод» на «чистую» игру,  без установленных модов, и имеем распакованные ресурсы игры в папке, скажем, gamedata source).&lt;br /&gt;
&lt;br /&gt;
В папке gamedata создаем папку config, а в ней - папку creatures. Скопируем из оригинальной папки файл m_zombie.ltx и откроем его на редактирование.&lt;br /&gt;
&lt;br /&gt;
В файлах игры присутствуют 5 моделей гражданских зомби: файлы zombi_1.ogf, zombi_1_ghost.ogf, zombi_2.ogf, zombi_trup.ogf, zombi_trup_2.ogf.&lt;br /&gt;
&lt;br /&gt;
Вернем в игру их всех :)&lt;br /&gt;
&lt;br /&gt;
Уже имеются секции:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[zombie_weak]:m_zombie_e, [zombie_normal]:m_zombie_e, [zombie_strong]:m_zombie_e и [zombie_immortal]:zombie_strong.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Два последних типа используют одну и ту же модель zombi_trup.ogf, хм... непорядок, исправляем. &lt;br /&gt;
Последняя секция выглядит теперь так:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[zombie_immortal]:zombie_strong&lt;br /&gt;
$spawn				= &amp;quot;monsters\zombies\zombie_immortal&amp;quot;&lt;br /&gt;
visual				= monsters\zombi\zombi_trup_2&lt;br /&gt;
panic_threshold		= 0.05&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Добавим пятую модель. &lt;br /&gt;
&lt;br /&gt;
Для этого в конце файла создадим секцию:&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[zombie_ghost]:zombie_strong&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Это означает, что наш пятый зомби наследует все параметры zombie_strong, мы добавим лишь визуальное представление.&lt;br /&gt;
 &lt;br /&gt;
Пишем дальше:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
$spawn				= &amp;quot;monsters\zombies\zombie_ghost&amp;quot;&lt;br /&gt;
visual				= monsters\zombi\zombi_1_ghost&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Все. Сохраняем изменения и закрываем файл.&lt;br /&gt;
&lt;br /&gt;
'''2.''' Пишем скрипт спавна. В папке gamedata создаем новую папку scripts, в ней создаем новый текстовый документ и называем его esc_zombie.script. &lt;br /&gt;
&lt;br /&gt;
Отступление третье:&lt;br /&gt;
&lt;br /&gt;
При написании статьи использовался оригинальный скрипт zombie_story.script из horror-mod’а. Концепция спавна перенесена практически без изменений, поэтому на авторство этого способа спавна я никоим образом не претендую :)&lt;br /&gt;
&lt;br /&gt;
Итак, открываем наш пустой файл на редактирование, первой строкой объявляем переменную, в которой хранятся наши зомби:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
local zombie_types = {&amp;quot;zombie_weak&amp;quot;, &amp;quot;zombie_normal&amp;quot;, &amp;quot;zombie_strong&amp;quot;, &amp;quot;zombie_immortal&amp;quot;, &amp;quot;zombie_ghost&amp;quot;}&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее пишем функцию:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function spawn_zombies( position, total )&lt;br /&gt;
	local zombie_index                              -- тип зомби из массива zombie_types&lt;br /&gt;
	local new_pos, x_offset, z_offset               -- объявляем переменные 	&lt;br /&gt;
	for zombie_index=1, total do                    -- крутим цикл столько раз, сколько задает переменная total&lt;br /&gt;
		x_offset = math.random(5)               -- случайное (рандомное)  x от 1 до 5&lt;br /&gt;
		z_offset = math.random(5)               -- случайное (рандомное)  z от 1 до 5&lt;br /&gt;
		new_pos = position                      -- передаем координаты в функцию&lt;br /&gt;
		new_pos.x = new_pos.x + x_offset                -- прибавляем к указанной нами координате x полученное выше рандомное x&lt;br /&gt;
		new_pos.z = new_pos.z + z_offset                -- прибавляем к указанной нами координате z полученное выше рандомное z&lt;br /&gt;
-- Ниже, собственно и вызывается функция спавна случайного типа зомби zombie_types[math.random(5)] привязанного к нашим координатам&lt;br /&gt;
	alife():create(zombie_types[math.random(5)],new_pos,db.actor:level_vertex_id(),db.actor:game_vertex_id())&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
И последнее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function zombie_story_1( actor, npc )&lt;br /&gt;
-- десять зомби на фабрике (Кордон)&lt;br /&gt;
	local spawn_point = vector():set( 115, -6, -16 )    -- здесь указываем координаты,&lt;br /&gt;
                                                            -- выбранные нами для спавна, когда «летали» камерой :)&lt;br /&gt;
	spawn_zombies( spawn_point, 10 )                    -- собственно вызов предыдущей функции&lt;br /&gt;
                                                            -- с передачей ей координат и количества объектов&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Все. Сохраняем и закрываем файл.&lt;br /&gt;
&lt;br /&gt;
Продолжаем разговор :) &lt;br /&gt;
&lt;br /&gt;
Для того, чтобы игра не вылетала после того, как мы добавили новый тип монстров, их нужно добавить в файл xr_statistic.script. Итак, скопируем этот файл из папки ресурсов игры scripts в нашу папку к файлу esc_zombie.script и откроем на редактирование. &lt;br /&gt;
&lt;br /&gt;
Добавим в local killCountProps  к монстрам строчку:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
zombie_weak = 1, zombie_normal = 2, zombie_strong = 3, zombie_immortal = 4, zombie_ghost = 5&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В local sect_alias после строки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4,&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Допишем эти строки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
zombie_weak = &amp;quot;zombie_weak&amp;quot;, zombie_normal  = &amp;quot;zombie_normal&amp;quot;, zombie_strong = &amp;quot;zombie_strong&amp;quot;,&lt;br /&gt;
zombie_immortal = &amp;quot;zombie_immortal&amp;quot;, zombie_ghost = &amp;quot;zombie_ghost&amp;quot;,&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А ниже в monster_classes строчку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
[clsid.zombie_s] = &amp;quot;zombie&amp;quot;&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В функцию getNpcType(npc) добавляем конструкцию:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
elseif npc:character_community() == &amp;quot;zombie&amp;quot; then&lt;br /&gt;
			community = &amp;quot;zombie&amp;quot;&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Сохраняем изменения и закрываем файл.&lt;br /&gt;
&lt;br /&gt;
Все будет работать на ура, пока мы не попробуем обыскать убитого зомби. Как только мы это сделаем, игра вылетит с примерно такой ошибкой.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CInifile::r_string&lt;br /&gt;
File          : D:\xray-svn\xrCore\Xr_ini.cpp&lt;br /&gt;
Line          : 351&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find variable icon in [zombie_weak]&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Все верно – игра не знает, какую иконку нам показывать для зомби. Иконки монстров хранятся в файле ui_npc_monster.dds. Здесь есть два варианта:&lt;br /&gt;
&lt;br /&gt;
* Если дружите с Фотошопом, отредактировать этот файл (нарисовать, добавить иконки);&lt;br /&gt;
* Взять готовый из любого мода, естественно, с разрешения авторов мода. Сейчас мы пропустим данный аспект и присвоим нашим зомби иконки контролера :)&lt;br /&gt;
&lt;br /&gt;
Вернемся к файлу m_zombie.ltx и в секцию [m_zombie_e]:monster_base впишем параметр&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
icon = ui_npc_monster_kontroler&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Все. Вылетов не будет.&lt;br /&gt;
&lt;br /&gt;
3. Тема данной статьи не предусматривает подробного описания того, как сделать новый диалог. В начале статьи я упомянул источник, где можно найти исчерпывающую информацию по созданию диалогов, могу также привести в пример [[Создание диалогов|статью по созданию диалогов]] от BAC9-FLCL.&lt;br /&gt;
&lt;br /&gt;
Нам нужно просто проверить работоспособность скриптового спавна, поэтому я приведу просто собственно сам измененный диалог из файла dialogs_escape.xml:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;dialog id=&amp;quot;escape_trader_talk_info&amp;quot;&amp;gt;&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;999&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_999&amp;lt;/text&amp;gt;&lt;br /&gt;
	          &amp;lt;next&amp;gt;7770&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9991&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9992&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9993&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9994&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;9992&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_9992&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;99922&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;99922&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_99922&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;9993&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_9993&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;99933&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;9995&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_9995&amp;lt;/text&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;3121&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_3121&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;3131&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_3131&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;41&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_41&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
	&amp;lt;/phrase&amp;gt;&lt;br /&gt;
	&amp;lt;!------Наш диалог: Начало-------&amp;gt;&lt;br /&gt;
		&amp;lt;phrase id=&amp;quot;7770&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7770&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;7771&amp;lt;/next&amp;gt;&lt;br /&gt;
			&amp;lt;/phrase&amp;gt;&lt;br /&gt;
			&amp;lt;phrase id=&amp;quot;7771&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7771&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;7772&amp;lt;/next&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;7773&amp;lt;/next&amp;gt;&lt;br /&gt;
			&amp;lt;/phrase&amp;gt;&lt;br /&gt;
			&amp;lt;phrase id=&amp;quot;7772&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7772&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;7777&amp;lt;/next&amp;gt;&lt;br /&gt;
			&amp;lt;/phrase&amp;gt;&lt;br /&gt;
			&amp;lt;phrase id=&amp;quot;7773&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7773&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;7779&amp;lt;/next&amp;gt;&lt;br /&gt;
			&amp;lt;/phrase&amp;gt;&lt;br /&gt;
			&amp;lt;phrase id=&amp;quot;7779&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7779&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
               			 &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
			&amp;lt;/phrase&amp;gt;&lt;br /&gt;
			&amp;lt;phrase id=&amp;quot;7777&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;text&amp;gt;escape_trader_talk_info_7777&amp;lt;/text&amp;gt;&lt;br /&gt;
				&amp;lt;action&amp;gt;esc_zombie.zombie_story_1&amp;lt;/action&amp;gt;&lt;br /&gt;
				&amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
               			 &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
          			 &amp;lt;/phrase&amp;gt;&lt;br /&gt;
	&amp;lt;!------Наш диалог: Конец-------&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;51&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;escape_trader_talk_info_51&amp;lt;/text&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9996&amp;lt;/next&amp;gt;&lt;br /&gt;
                &amp;lt;next&amp;gt;9995&amp;lt;/next&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
    &amp;lt;/dialog&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
И также связанный с ним файл stable_dialogs_escape.xml.&lt;br /&gt;
В самом начале файла пишем следующее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7770&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Происшествий никаких не было?&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7771&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Да знаешь... Вроде как тихо все у нас. Хотя, вот, вспомнил! Говорили мне &lt;br /&gt;
на днях, что на фабрике, ну, там, где бандюки околачиваются постоянно, видели какиих-то то ли &lt;br /&gt;
людей, то ли призраков... Мало ли что спьяну почудится - я и сказал этим паникерам, мол, &lt;br /&gt;
закусывать надо! Хех, блин, алкаши...&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7772&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Дык мне по любому мимо фабрики топать - заодно и посмотрю на этих &lt;br /&gt;
&amp;quot;людей-призраков&amp;quot;.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7773&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Да я как-то не собирался в ту сторону...&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7779&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Ну, смотри сам, все равно будь осторожен.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;escape_trader_talk_info_7777&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Ага. Сходи, проветрись. Потом зайдешь, расскажешь, что там и как.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;esc_bridge_soldiers_start_11&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Здесь проход воспрещён, сталкер.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Все. Можно запускать игру, идти на Кордон, после разговора с Сидоровичем, в зависимости &lt;br /&gt;
от выбранного Меченным решения, бежим на фабрику и … смотрим сами :)&lt;br /&gt;
&lt;br /&gt;
 [http://www.sendspace.com/file/2kx7uf Готовые файлы примера](перезалито)&lt;br /&gt;
 [http://slil.ru/24600587 Spawn Lib]&lt;br /&gt;
&lt;br /&gt;
Домашнее задание - вернуть в игру 6-ой тип гражданского зомби :)&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;
&lt;br /&gt;
* Создаем в папке gamedata папку meshes, в ней папку monsters, а там – папку zombi. В папке meshes хранятся модели персонажей, объектов, окружения, присутствующих в игре. Как я уже говорил выше, в игре представлено 5 моделей гражданских зомби, а вот текстур – 6. Также немного смутила нумерация моделей – 1, 2, 4... А где третий? Наверное, сбежал :)&lt;br /&gt;
&lt;br /&gt;
* Скопируем из папки с оригинальными файлами игры в созданную нами папку файл zombi файл zombi_2.ogf и переименуем его в zombi_3.ogf. Откроем файл нашей новой модели любым HexEditor’ом, я использую BiEd (Binary Editor 1.00). Так как данная статья рассчитана не только на «продвинутых юзеров», но и на «обычных чайников», которые, тем не менее, хотят «что-нить замутить» и при этом не сильно «парить моск», я не буду рассказывать здесь про адресацию, двухбайтовую запись и т.д., я просто наглядно покажу, где что поправить :)&lt;br /&gt;
&lt;br /&gt;
[http://www.golushkov.pp.net.ua/photo/11-0-717-3 Файл модели '''до''' редактирования]&lt;br /&gt;
&lt;br /&gt;
[http://www.golushkov.pp.net.ua/photo/11-0-718-3 Файл модели '''после''' редактирования]&lt;br /&gt;
&lt;br /&gt;
На скринах видно, что мы просто изменили для этой модели путь к текстуре. Все. Без использования 3D-редакторов и затраты кучи времени на обработку модели в них, мы получили абсолютно новую (на внешний вид) модель. :)&lt;br /&gt;
&lt;br /&gt;
'''5.''' Теперь пропишем нашего нового зомби во все файлы, которые мы создали ранее. В файл m_zombie.ltx в самый конец добавляем секцию:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[zombie_old]:zombie_normal&lt;br /&gt;
$spawn				= &amp;quot;monsters\zombies\zombie_old&amp;quot;&lt;br /&gt;
visual				= monsters\zombi\zombi_3&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
в файле esc_zombie.script изменяем массив в первой строке:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
local zombie_types = {&amp;quot;zombie_weak&amp;quot;, &amp;quot;zombie_normal&amp;quot;, &amp;quot;zombie_strong&amp;quot;, &amp;quot;zombie_immortal&amp;quot;, &lt;br /&gt;
&amp;quot;zombie_old&amp;quot;, &amp;quot;zombie_ghost&amp;quot;}&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В функции spawn_zombies изменяем строку спавна:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
alife():create(zombie_types[math.random(6)],new_pos,&lt;br /&gt;
db.actor:level_vertex_id(),db.actor:game_vertex_id())&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В функции zombie_story_1 меняем число объектов на кратное 6-ти (необязательно):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
spawn_zombies( spawn_point, 12 )&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Всё. Сохраняем и закрываем.&lt;br /&gt;
&lt;br /&gt;
'''6.''' Копируем в папку gamedata\config\gameplay\  файл encyclopedia_mutants.xml, добавляем описание зомби в энциклопедию:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
    &amp;lt;!-------------------------------- Zombieg -----------------------------&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;article id=&amp;quot;mutant_zombieg_general&amp;quot; name=&amp;quot;Zombieg&amp;quot; group=&amp;quot;Mutants&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;texture&amp;gt;ui_npc_monster_zombieg&amp;lt;/texture&amp;gt;&lt;br /&gt;
        &amp;lt;text&amp;gt;enc_mutant_zombieg_general&amp;lt;/text&amp;gt;&lt;br /&gt;
    &amp;lt;/article&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
И в связанный с ним файл string_table_enc_mutants.xml в папке gamedata\config\text\rus\ добавляем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;Zombie&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Зомби, гражданский&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;Zombieg&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Зомби-призрак, гражданский&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_mutant_zombieg_general&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Зомби-привидение отличается от обычного зомби лишь тем, что &lt;br /&gt;
воздействие Выжигателя мозгов полностью разрушило не только структуру личности, но и &lt;br /&gt;
тело, поэтому зомби-призрак несколько более живуч по сравнению с обычным зомби.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_mutant_zombie_general&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Воздействие Выжигателя мозгов полностью разрушает структуру личности, &lt;br /&gt;
оставляя только телесную оболочку.\n\n Побродив немного по Зоне, лишённые разума тела &lt;br /&gt;
начинают превращаться в настоящих зомби. Из рефлексов у них остаются лишь самые примитивные, &lt;br /&gt;
оружие и экипировка скоро приходят в негодность. В результате зомби становятся собой ни чем &lt;br /&gt;
иным, как медлительными полутрупами, которых наличествуют лишь два эффективных раздражителя: &lt;br /&gt;
еда и сон. Зомби совершенно неразборчивы в выборе пищи и питья, поэтому их тела буквально &lt;br /&gt;
пропитаны радиацией и токсинами. Как правило, эти существа бесцельно бродят по Зоне или, &lt;br /&gt;
словно трупы, валяются внутри заброшенных построек. Однако, лишь только зомби почует близкое &lt;br /&gt;
присутствие живого человека, он сразу же пытается атаковать. Умудрённые опытом сталкеры &lt;br /&gt;
стараются обходить эти неуклюжие опустошённые оболочки.&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Копируем сюда же файл stable_statistic_caption.xml и изменяем в нем 3 строчки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;zombie_normal&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;зомбированный, гражданский&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;zombie_strong&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;зомби-призрак, гражданский&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;zombie_weak&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;зомби, гражданский&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Сохраняем и закрываем.&lt;br /&gt;
&lt;br /&gt;
'''7.''' И последнее – добавим иконки. Скажу сразу, воспользовался готовым файлом, уже содержащим иконки зомби и других «восстановленных монстров» (спасибо Fr3nzy). Поэтому просто скопируйте файл ui_npc_monster.dds из архива в папку gamedata\textures\ui\, а файл ui_npc_monster.xml – в папку gamedata\config\ui\. Если вы хотите сделать собственные - прочитайте урок по [[Изменение текстур (BAC9-FLCL)|изменению текстур]].&lt;br /&gt;
&lt;br /&gt;
Вкратце, что описывает файл ui_npc_monster.xml: в нем задаются координаты иконок, расположенных в файле ui_npc_monster.dds, применительно к каждому типу монстров в игре.&lt;br /&gt;
&lt;br /&gt;
Заключительный штрих. Откройте файл m_zombie.ltx и в первой секции замените строку&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
icon = ui_npc_monster_kontroler&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
на:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
icon = ui_npc_monster_zombie&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В секцию [zombie_ghost] добавьте строку:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
icon = ui_npc_monster_zombieg&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Сохраняйте изменения. Всё. &lt;br /&gt;
&lt;br /&gt;
Вот [http://data.cod.ru/1290894794 готовые файлы примера].&lt;br /&gt;
Удачи и спасибо за внимание :)&lt;br /&gt;
&lt;br /&gt;
==Спавн NPC==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;Эта часть статьи написана [[Участник:Arhet|Arhet]] и создана на примере того, как в SRP Mod были созданы NPC группировки &amp;quot;Грех&amp;quot;.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Задействуем файлы:&lt;br /&gt;
&lt;br /&gt;
* gamedata\config\gameplay\character_desc_escape.xml&lt;br /&gt;
* gamedata\config\gameplay\npc_profile.ltx&lt;br /&gt;
* gamedata\config\creatures\spawn_sections.ltx&lt;br /&gt;
&lt;br /&gt;
Начнем с ''character_desc_escape.xml''. Описание, что значит каждая строка, писать не буду, так как все до меня уже сделано.&lt;br /&gt;
&lt;br /&gt;
Тут создадим нового персонажа:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;specific_character id=&amp;quot;esc_dark_stalker_1&amp;quot; team_default = &amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;name&amp;gt;GENERATE_NAME_bandit&amp;lt;/name&amp;gt;&lt;br /&gt;
&amp;lt;icon&amp;gt;ui_npc_dark_1&amp;lt;/icon&amp;gt;&lt;br /&gt;
&amp;lt;map_icon x=&amp;quot;0&amp;quot; y=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;/map_icon&amp;gt;&lt;br /&gt;
&amp;lt;bio&amp;gt;sim_stalker_novice_bio&amp;lt;/bio&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;class&amp;gt;esc_dark_stalker_01&amp;lt;/class&amp;gt; - вот тут наш новый класс кстати.&lt;br /&gt;
&amp;lt;community&amp;gt;dark_stalker&amp;lt;/community&amp;gt; &amp;lt;terrain_sect&amp;gt;stalker_terrain&amp;lt;/terrain_sect&amp;gt;&lt;br /&gt;
&amp;lt;money min=&amp;quot;200&amp;quot; max=&amp;quot;600&amp;quot; infinitive=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;/money&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;rank&amp;gt;198&amp;lt;/rank&amp;gt;&lt;br /&gt;
&amp;lt;reputation&amp;gt;-24&amp;lt;/reputation&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;visual&amp;gt;actors\dark_stalker\dark_stalker_1&amp;lt;/visual&amp;gt;&lt;br /&gt;
&amp;lt;snd_config&amp;gt;characters_voice\human_01\monolith\&amp;lt;/snd_config&amp;gt;&lt;br /&gt;
&amp;lt;crouch_type&amp;gt;-1&amp;lt;/crouch_type&amp;gt;&lt;br /&gt;
&amp;lt;panic_treshold&amp;gt;0&amp;lt;/panic_treshold&amp;gt;&lt;br /&gt;
&amp;lt;supplies&amp;gt;&lt;br /&gt;
[spawn] \n&lt;br /&gt;
wpn_dark_colt1911 \n&lt;br /&gt;
ammo_11.43x23_hydro \n&lt;br /&gt;
#include &amp;quot;gameplay\character_items.xml&amp;quot; \n&lt;br /&gt;
#include &amp;quot;gameplay\character_drugs.xml&amp;quot; \n&lt;br /&gt;
#include &amp;quot;gameplay\character_food.xml&amp;quot;&lt;br /&gt;
&amp;lt;/supplies&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;gameplay\character_criticals_3.xml&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;start_dialog&amp;gt;dm_hello_dialog&amp;lt;/start_dialog&amp;gt;&lt;br /&gt;
&amp;lt;actor_dialog&amp;gt;dm_cool_info_dialog&amp;lt;/actor_dialog&amp;gt;&lt;br /&gt;
&amp;lt;/specific_character&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Впишем наш код после какого-нибудь &amp;lt;/specific_character&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Теперь идем в ''npc_profile.xml'' и туда вгоняем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;character id=&amp;quot;esc_dark_stalker_1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;class&amp;gt;esc_dark_stalker_01&amp;lt;/class&amp;gt;&lt;br /&gt;
&amp;lt;specific_character&amp;gt;esc_dark_stalker_1&amp;lt;/specific_character&amp;gt;&lt;br /&gt;
&amp;lt;/character&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь надо заняться ''spawn_sections.ltx''. Скрипт будет «брать NPC» как раз из этого файла. Пишем туда:&lt;br /&gt;
&lt;br /&gt;
* [esc_dark_stalker_1]:stalker – имя секции для скрипта..&lt;br /&gt;
* $spawn = &amp;quot;respawn\esc_dark_stalker_1&amp;quot;&lt;br /&gt;
* character_profile = esc_dark_stalker_1 – ссылка на описание нашего NPC&lt;br /&gt;
* spec_rank = regular – спец ранг&lt;br /&gt;
* community = dark_stalker – группировка.&lt;br /&gt;
&lt;br /&gt;
Теперь берем любой скрипт спавна NPC, вгоняем туда имя секции из spawn_sections.ltx и ву-а-ля.&lt;br /&gt;
&lt;br /&gt;
Ну, к примеру, создаем свой файл со скриптом спавна, назовем его - spaw_new_npc.script&lt;br /&gt;
и запишем туда вот такую функцию (взял из статьи):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function spaw_n_n() --тут задается сама функция, которая в последующем будет активирована, к примеру с помощью диалога&lt;br /&gt;
	local a = vector() -- db.actor:position() -- тип переменной, которая будет задействована в спавне, вместо кооржинат будет писаться a &lt;br /&gt;
	a.x = -220.21&lt;br /&gt;
	a.y = -19.93&lt;br /&gt;
	a.z = -158.98&lt;br /&gt;
	alife():create(&amp;quot;wpn_ak47&amp;quot;,a,33447,47,65535) -- здесь сам спавн объекта, a - тип переменной которую мы указали выше&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вот и весь скрипт! Теперь надо его активировать, ну к примеру через диалог, после диалога вставляем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;action&amp;gt;spaw_new_npc.spaw_n_n&amp;lt;/action&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
распишу, что значит:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;action&amp;gt;названиескрипта.функциякоторуюнеобходимоактивировать&amp;lt;/action&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color: gray&amp;quot;&amp;gt;Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;game_dialogs&amp;gt;&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
    &amp;lt;dialog id=&amp;quot;lokationname_testdialog_start&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;phrase_list&amp;gt;&lt;br /&gt;
            &amp;lt;phrase id=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;text&amp;gt;locationname_testdialog_start_1&amp;lt;/text&amp;gt;    &amp;lt;!-- ссылка на файл с текстом фразы --&amp;gt;&lt;br /&gt;
                &amp;lt;action&amp;gt;test_script.testfunction&amp;lt;/action&amp;gt;    &amp;lt;!-- ссылка на функцию testfunction скрипта test_script --&amp;gt;&lt;br /&gt;
            &amp;lt;/phrase&amp;gt;&lt;br /&gt;
        &amp;lt;/phrase_list&amp;gt;&lt;br /&gt;
    &amp;lt;/dialog&amp;gt;&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
………&lt;br /&gt;
&amp;lt;/game_dialogs&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
[[Участник:RedPython|RedPython]] 16:09, 10 октября 2010 (UTC)&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тока забыли что данному НПС будет присвоенная дефолтовая логика (т.е. тупо хожу куда сам не знаю) забыли упомянуть про (ххх - лока):&amp;lt;br&amp;gt;&lt;br /&gt;
ххх gulag.script (действия НПС! Где можно: где можно присвоить статус кампера; волкера; и.д.т)&amp;lt;br&amp;gt;&lt;br /&gt;
ххх gulag.ltx (дублер логики т.е. дублирует кратко действия НПС)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана:&lt;br /&gt;
&lt;br /&gt;
* [[Участник:XStream|xStream]]&lt;br /&gt;
* [[Участник:RekLatS|OffBar]]&lt;br /&gt;
* [[Участник:Fr3nzy|Fr3nzy]]&lt;br /&gt;
* [[Участник:Imp|Imp]]&lt;br /&gt;
* [[Участник:Arhet|Arhet]]&lt;br /&gt;
&lt;br /&gt;
Статья исправлена:&lt;br /&gt;
* [[Участник:Rekongstor|Rekongstor]]&lt;br /&gt;
&lt;br /&gt;
В статью добавили:&lt;br /&gt;
* [[Участник:Byurrer]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Редактирование оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-01-29T21:39:30Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 77.37.156.108 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие положения==&lt;br /&gt;
&lt;br /&gt;
Сегодня мы разберем то, каким образом можно редактировать оружие в игре - от характеристик до описания.&lt;br /&gt;
Характеристики оружия хранятся здесь:&lt;br /&gt;
&lt;br /&gt;
''...\S.T.A.L.K.E.R\gamedata\config\weapons\w_[...].ltx''&lt;br /&gt;
&lt;br /&gt;
==Разбор структуры конфига==&lt;br /&gt;
&lt;br /&gt;
Возьмем, для примера, конфиг '''w_g36.ltx'''. Он делится на разделы:&lt;br /&gt;
&lt;br /&gt;
===Первый раздел===&lt;br /&gt;
&lt;br /&gt;
Здесь хранится общая информация о оружии, ссылки на спавн и т.д.&lt;br /&gt;
Нас интересуют следующие строки:&lt;br /&gt;
&lt;br /&gt;
* '''description''' = enc1weapons1_wpn_g36 - ссылка на string_id, из которая игра подгружает описание этого оружия.&lt;br /&gt;
* '''ef_main_weapon_type''' = 2 - основной тип, к которому принадлежит оружие&lt;br /&gt;
* '''ef_weapon_type''' = 6 - подтип, к которому принадлежит оружие&lt;br /&gt;
* '''default_to_ruck''' = false - значит, если при пустой ячейке под автомат, подобрать автомат он будет помещён в ячейку; если true автомат в ячейку помещён не не будет.&lt;br /&gt;
* '''sprint_allowed''' = true - эта строка означает, что с оружием можно бегать.&lt;br /&gt;
&lt;br /&gt;
===Второй раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит модификаторы, которые даются к углу зрения/дальности обзора NPC, держащего это оружие в руках:&lt;br /&gt;
&lt;br /&gt;
* '''holder_range_modifier''' = 1.85 - во сколько раз увеличивается eye_range ботов. Он производит умножение дальности обзора ботов с данным оружием в руках.&lt;br /&gt;
* '''holder_fov_modifier''' = 0.3 - во сколько раз увеличивается eye_fov ботов. При редактировании этого параметра случаются проблемы с обзором нпс - могут не увидеть монстра в упор.&lt;br /&gt;
&lt;br /&gt;
Следующие значения могут находится в другой части файла, но относятся они к обзору.&lt;br /&gt;
&lt;br /&gt;
* '''min_radius''' = 30 - минимальное расстояние с которого боты начинают использовать данное оружие. Для всего оружия кроме снайперских винтовок, гранат и гранатомётов рекомендуется ставить 0. Используется для того, чтобы боты с гранатомётами и снайперками переключались при приближении врага на второе оружие, а также не бросали гранаты себе под ноги.&lt;br /&gt;
* '''max_radius''' = 100 - максимальное расстояние на котором боты используют данное оружие. Рекомендуется делать максимально большим каким возможно, учитывая при этом точность оружия. Вы наверно часто сталкивались с ситуациями, когда отстреливаете ботов с дальней дистанции они целятся в Вас, ходят из стороны в сторону, но не стреляют. Данные баги связаны с недостаточным размером данного параметра. Ограничивать данный параметр стоит для пистолетов, дробовиков и огнемёта.&lt;br /&gt;
&lt;br /&gt;
===Третий раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит данные о самом оружии, его некоторых характеристиках:&lt;br /&gt;
&lt;br /&gt;
* '''cost''' = 2200000 - базовая цена (торговцы умножают её на некоторый коэффициент)&lt;br /&gt;
* '''weapon_class''' = assault_rifle - класс оружия (здесь - штурмовая винтовка)&lt;br /&gt;
	&lt;br /&gt;
* '''ammo_mag_size''' = 300 - размер магазина&lt;br /&gt;
* '''ammo_class''' = ammo_5.56x45_ss190, ammo_5.56x45_ap - типы используемых патронов&lt;br /&gt;
* '''grenade_class''' = ammo_m209 - тип используемых гранат&lt;br /&gt;
* '''fire_modes''' = 1, -1 - режимы ведения огня (одиночными и бесконечными очередями соответственно)&lt;br /&gt;
&lt;br /&gt;
* '''hand_dependence''' = 1 - зависимость о рук (?) - возможно, речь идет о качании ствола&lt;br /&gt;
* '''single_handed''' = 0 - держится ли только в одной руке&lt;br /&gt;
&lt;br /&gt;
* '''slot''' = 2 - слот в инвентаре&lt;br /&gt;
* '''animation_slot''' = 2 - вид анимации (для пистолета/для винтовки)&lt;br /&gt;
&lt;br /&gt;
* '''inv_name''' = wpn-g36 - ссылка на имя, отображаемое в инвентаре, тоже берется из string table, как и описание&lt;br /&gt;
* '''inv_name_short''' = wpn-g36 - имя отображаемое при наведении прицела на предмет, к примеру лежащий на земле; в данном случае используется то же самое&lt;br /&gt;
* '''inv_weight''' = 3.6 - вес&lt;br /&gt;
&lt;br /&gt;
* '''inv_grid_width''' = 5 - длина иконки (кол-во клеток по х)&lt;br /&gt;
* '''inv_grid_height''' = 2 - высота иконки (кол-во клеток по у)&lt;br /&gt;
* '''inv_grid_x''' = 0 - координаты первого угла иконки по x&lt;br /&gt;
* '''inv_grid_y''' = 10 - координаты первого угла иконки по y&lt;br /&gt;
&lt;br /&gt;
===Четвертый раздел===&lt;br /&gt;
&lt;br /&gt;
В четвертом разделе хранится информация о износе/отдаче оружия.&lt;br /&gt;
Практически все параметры там снабжены комментариями, поэтому приведу лишь самые интересные:&lt;br /&gt;
&lt;br /&gt;
* '''cam_relax_speed''' = 5.7 - скорость возврата в исходное положение&lt;br /&gt;
* '''cam_dispersion''' = 0.2 - увеличения угла (в градусах) при первом выстреле&lt;br /&gt;
&lt;br /&gt;
* '''fire_dispersion_condition_factor''' = 5 - увеличение дисперсии в процентах при максимальном износе. Мало кто понимает, но этот параметр указан не в градусах - это множитель. 5 - это 5000% разброса при максимальном износе. Подобный разброс IRL можно получить только рассверлив ПМ перфоратором. Все стволы в оригинальной игре имеют множитель 5, а начиная с CS маразм разработчиков начал крепчать и многие стволы получили значение 15. В CoP эта тенденция усилилась и ещё больше стволов получили значение 15. Каждый нормальный модер уменьшит это значение. Для пистолетов рекомендуется 3 - 4, автоматов 2 - 2.5, снайперок 1 - 1.5&lt;br /&gt;
* '''misfire_probability''' = 0.003	- вероятность осечки при максимальном износе &lt;br /&gt;
* '''misfire_condition_k''' = 0.05 - коэффициент. Проще не трогать, т.к. настроить два параметра для каждого ствола в оружейном паке  гораздо легче чем три. Может понабиться только для оружия с небольшим настрелом типа ВСС.&lt;br /&gt;
* '''condition_shot_dec''' = 0.0002 - увеличение износа при каждом выстреле. Если вписать -1, то оружие полностью отремонтируется после первого выстрела.&lt;br /&gt;
&lt;br /&gt;
===Пятый раздел===&lt;br /&gt;
&lt;br /&gt;
Здесь хранится множество параметров, из которых наиболее интересны эти:(PDM - это параметр качания ствола в руках ГГ при движении в режиме прицеливания. добавил дядяСаша imgal@mail.ru)&lt;br /&gt;
&lt;br /&gt;
*'''PDM_disp_base''' = 3.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ (Главный Герой) стоит на месте в полный рост;&lt;br /&gt;
&lt;br /&gt;
*'''PDDM_disp_vel_factor''' = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ крутит оружием или бежит;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_disp_accel_factor''' = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ бежит в спринте;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_crouch''' = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ идет пригнувшись;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_crouch_no_acc''' = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ стоит на месте, пригнувшись;&lt;br /&gt;
&lt;br /&gt;
* '''hit_power''' = 0.50, 0.54, 0.57, 0.60 - сила выстрела, зависит от ранга: новичок, опытный, ветеран и мастер соответственно.&lt;br /&gt;
* '''hit_impulse''' = 105 - импульс пули (сила, которую летящая пуля передает жертве, влияет на поведение ragdoll-тела. Чем больше поставишь, тем дальше улетит. Если сделать большое отрицательное значение, то жертвы будут прилетать к ГГ)&lt;br /&gt;
* '''hit_type''' = fire_wound - тип причиняемых повреждений, в данном случае - пулевые ранения (параметр в синглплеере ни на что не влияет)&lt;br /&gt;
&lt;br /&gt;
* '''fire_distance''' = 600 - максимальная дистанция полета пули, затем она падает на землю и исчезает.  Логично прописать значение эффективного огня(пистолеты-пулеметы 50-200м, пистолеты 50м, дробовики 30м и нож полметра), но не имеет смысла устанавливать значение больше радиуса алайфа: ведь за его пределами никого нет.) &lt;br /&gt;
* '''bullet_speed''' = 925 - начальная скорость пули&lt;br /&gt;
* '''rpm''' = 600 - скорострельность выстрел/минута&lt;br /&gt;
&lt;br /&gt;
* '''hud''' = wpn_g36_hud - внешний вид оружия от 1-ого лица&lt;br /&gt;
&lt;br /&gt;
===Шестой раздел===&lt;br /&gt;
* '''= x, y, z'''&lt;br /&gt;
* '''position'''                = -0.026, -0.132, 0.0 - позиция оружия на спине по отношению к НПС при виде от 3-его лица&lt;br /&gt;
* '''orientation'''             = 0, 0, 0 - вращение оружия на спине НПС при виде от 3-его лица&lt;br /&gt;
&lt;br /&gt;
''Примечание''&lt;br /&gt;
В ЧН\ЗП будет выглядеть так:&lt;br /&gt;
* '''position'''                = -0.026, -0.132, 0.0 - позиция оружия в руках НПС&lt;br /&gt;
* '''orientation'''             = 0, 0, 0 - вращение оружия в руках НПС&lt;br /&gt;
* '''strap_position'''          = -0.26,-0.11,0.25  - позиция оружия на спине по отношению к НПС при виде от 3-его лица                             &lt;br /&gt;
* '''strap_orientation'''       = -15,-9,110 - вращение оружия на спине НПС при виде от 3-его лица&lt;br /&gt;
&lt;br /&gt;
===Седьмой раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит описания визуальной стороны оружия и некоторые другие параметры:&lt;br /&gt;
&lt;br /&gt;
* '''startup_ammo''' = 90 - как нетрудно догадаться, стартовое количество патронов (в синглплеере ни на что не влияет)&lt;br /&gt;
* '''visual''' = weapons\g36\wpn_g36.ogf - модель оружия, используемая NPC, а также игроком при виде от третьего лица&lt;br /&gt;
&lt;br /&gt;
* '''ph_mass''' = 4 - физическая масса, используемая при расчетах&lt;br /&gt;
&lt;br /&gt;
* '''scope_status''' = 2 - ситуация со съемным прицелом&lt;br /&gt;
* '''silencer_status''' = 1 - ситуация с несъемным глушителем&lt;br /&gt;
* '''grenade_launcher_status''' = 0 - ситуация с отсутствующим подствольным гранатометом&lt;br /&gt;
&lt;br /&gt;
* Параметры:&lt;br /&gt;
** '''0''' - нет, новый прикрепить нельзя &lt;br /&gt;
** '''1''' - уже есть, несъемный &lt;br /&gt;
** '''2''' - нет, но можно установить&lt;br /&gt;
&lt;br /&gt;
* '''zoom_enabled''' = true - есть ли зум (прицеливание)&lt;br /&gt;
* '''scope_zoom_factor''' = 33.3 - какой зум дает прицеливание (здесь 60/33.3 = 1.8х)&lt;br /&gt;
* '''scope_texture'''	= wpn\wpn_crosshair_g36 - текстура прицельной сетки&lt;br /&gt;
&lt;br /&gt;
* '''shell_point''' = 0.15, 0.0, -0.05 - точка вылета гильз&lt;br /&gt;
* '''shell_dir''' = 0.0, 1.0, 0.0   - точка выброса пороховых газов из ствольной коробки.&lt;br /&gt;
&lt;br /&gt;
* '''fire_point''' = -0.000000,0.062000,0.134000 - точка выстрела&lt;br /&gt;
* '''fire_point2''' = 0.30, 0.00, 0.05 - точка выстрела из подствольного гранатомета&lt;br /&gt;
* '''fire_bone''' = wpn_body&lt;br /&gt;
* '''orientation'''  = 0, 0, 0 - ориентация ствола оружия в направлении точки попадания пули(это центр монитора). Некоторые мододелы ориентируют оружие по линии прицеливания- это не правильно, ибо пуля вылетает из ствола, а не из прицела.&lt;br /&gt;
* '''position'''  = 0, 0, 0 - позиция. Первая координата отвечает за перемещение в стороны (положительная - вправо, отрицательная - влево), вторая - перемещение по высоте (положительная - вверх, отрицательная - вниз), третья - перемещение по горизонтали (положительная - вперед, отрицательная - назад)&lt;br /&gt;
* '''visual''' = weapons\g36\wpn_g36_hud.ogf - модель, отображаемая у нас в руках&lt;br /&gt;
&lt;br /&gt;
==Изменение описаний==&lt;br /&gt;
&lt;br /&gt;
Описания оружия хранятся в файле:&lt;br /&gt;
''...\S.T.A.L.K.E.R\gamedata\config\text\rus\string_table_enc_weapons.xml''&lt;br /&gt;
&lt;br /&gt;
В нем хранятся строки с названиями и описаниями, на которые ссылаются конфиги оружия. Например, тот же '''G36''' ссылается сюда:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;[...]&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_weapons1_wpn-g36&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Штурмовая винтовка немецкого производства, представляющая собой первоклассный образец &lt;br /&gt;
современного оружия - лёгкого, надёжного и эргономичного.\n Боеприпасы:\n обычный 5,56x45 мм &lt;br /&gt;
SS109,\n бронебойный 5,56x45 мм АР.&amp;lt;/text&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
	&amp;lt;string id=&amp;quot;wpn-g36&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;ГП37&amp;lt;/text&amp;gt;&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Меняя их содержимое, мы меняем описания/названия данного оружия.&lt;br /&gt;
&lt;br /&gt;
==Нововведения в ЗП==&lt;br /&gt;
===HUD===&lt;br /&gt;
HUD модель была разделена на 2 части - руки и, собственно, само оружие. Это было сделано для того, чтобы добиться смены визуалов рук при смене комбинизона. Из-за этого (и не только из-за этого) большая часть конфига, находящаяся под &amp;quot;[wpn_xxx_hud]:hud_base&amp;quot; претерпела некоторые изменения - о них я и расскажу.&lt;br /&gt;
&lt;br /&gt;
'''Добавлены:'''&lt;br /&gt;
&lt;br /&gt;
* '''hands_position'''		= 0.020500,-0.206999,0.261999 - положение рук и оружия &lt;br /&gt;
* '''hands_orientation'''	= 3.349998,2.599999,-0.050000 - направление (ориентация) рук и оружия &lt;br /&gt;
* '''hands_position_16x9'''	= 0.020500, -0.165999,0.209500 - положение рук и оружия для мониторов 16x9&lt;br /&gt;
* '''hands_orientation_16x9'''	= 3.649998,1.050001, -0.050000 - направление (ориентация) рук и оружия для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
* '''item_position'''		= 0,0,0 - позиция оружия относительно рук&lt;br /&gt;
* '''item_orientation'''	= 0,0,0 - ориентация оружия относительно рук&lt;br /&gt;
&lt;br /&gt;
* '''aim_hud_offset_pos'''      = -0.129000,0.017000,-0.001500 - смещение рук с оружием при прицеливании &lt;br /&gt;
* '''aim_hud_offset_rot'''      = -0.012500,0.040000,0.020000 - ориентация рук с оружием при прицеливании&lt;br /&gt;
* '''aim_hud_offset_pos_16x9''' = -0.129000,0.017000,-0.001500 - смещение рук с оружием при прицеливании для мониторов 16x9&lt;br /&gt;
* '''aim_hud_offset_rot_16x9''' = -0.012500,0.040000,0.020000 - ориентация рук с оружием при прицеливании для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
* '''gl_hud_offset_pos'''       = 0,0,0 - смещение рук с оружием при прицеливании из подствольника&lt;br /&gt;
* '''gl_hud_offset_rot'''       = 0,0,0 - ориентация рук с оружием при прицеливании из подствольника&lt;br /&gt;
* '''gl_hud_offset_pos_16x9'''  = 0,0,0 - смещение рук с оружием при прицеливании из подствольника для мониторов 16x9&lt;br /&gt;
* '''gl_hud_offset_rot_16x9'''  = 0,0,0 - ориентация рук с оружием при прицеливании из подствольника для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
===Апгрейды и изнашиваемость===&lt;br /&gt;
Как известно, в ЗП есть возможность апгрейда оружия. За выбор схем при апгрейде отвечают строки:&lt;br /&gt;
&lt;br /&gt;
* '''upgrades'''                = up_gr_firstab_ak74, up_gr_seconab_ak74, up_gr_thirdab_ak74, up_gr_fourtab_ak74, up_gr_fifthab_ak74, * '''up_gr_fifthcd_ak74''' - части апгрейд схемы &lt;br /&gt;
* '''installed_upgrades'''      = - установленные апгрейды&lt;br /&gt;
* '''upgrade_scheme'''          = upgrade_scheme_ak74 - апгрейд-схема&lt;br /&gt;
&lt;br /&gt;
Так-же в ЗП была создана более продуманная схема изнашиваемости, вот строки которые за это отвечают:&lt;br /&gt;
&lt;br /&gt;
* '''misfire_start_condition'''	 = 0.6 - изношенность, при которой появляется шанс осечки&lt;br /&gt;
* '''misfire_end_condition'''	 = 0.1 - изношенность при которой шанс осечки становится константным&lt;br /&gt;
* '''misfire_start_prob'''	 = 0.003 - шанс осечки при изношенности больше чем misfireStartCondition&lt;br /&gt;
* '''misfire_end_prob'''	 = 0.043 - шанс осечки при изношенности больше чем misfireEndCondition&lt;br /&gt;
* '''condition_shot_dec'''       = 0.001 - увеличение изношенности при одиночном выстреле&lt;br /&gt;
* '''condition_queue_shot_dec''' = 0.0012 - увеличение изношенности при выстреле очередью&lt;br /&gt;
Изношенность нового ствола = 1.0&lt;br /&gt;
&lt;br /&gt;
===Основной конфиг===&lt;br /&gt;
Здесь изменений не так много:&lt;br /&gt;
&lt;br /&gt;
Иконка используемая при апгрейде. Координаты отсчитываются с левого верхнего угла по пикселям. Файл с иконками находится по пути '''textures\ui\ui_actor_weapons.dds'''&lt;br /&gt;
&lt;br /&gt;
* '''upgr_icon_x'''			= 304 - координаты по х (горизонтально)&lt;br /&gt;
* '''upgr_icon_y'''			= 627 - координаты по у (вертикально)&lt;br /&gt;
* '''upgr_icon_width'''		= 295 - ширина иконки&lt;br /&gt;
* '''upgr_icon_height'''   	= 110 - высота иконки&lt;br /&gt;
&lt;br /&gt;
* * '''scopes_sect'''				= scope_ak74, scope_x2.7_ak74, scope_live_detector_ak74, scope_night_ak74 - ссылки на вторичный конфиг прицела&lt;br /&gt;
&lt;br /&gt;
* '''[scope_ak74]''' - собственно сам вторичный конфиг&lt;br /&gt;
* '''scope_name''' 					= wpn_addon_scope - ссылка на конфиг прицела&lt;br /&gt;
* '''scope_x'''              	= 47 - расположение иконки установленного прицела на иконке оружия  по x(в пикселях)&lt;br /&gt;
* '''scope_y'''                 = 0 - по у&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана:&lt;br /&gt;
&lt;br /&gt;
* [[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
* [[Участник:Ya.D|Ya.D]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
Статья средняя, но не сказано про параметр патронов &amp;quot;explosive&amp;quot;. Нет подствольников и ракет, а именно патронов! Даже в оригинальном файле &amp;quot;weapons.ltx&amp;quot; в свойствах патронов 5.45x39  для АК к конце всегда есть строка &amp;quot;explosive = off&amp;quot;.  Достаточно изменить её на &amp;quot;explosive = on&amp;quot; и при выстреле таким снарядом мы увидим как в месте попадания разгорается и тухнет оранжевое пламя. Но это всего лишь анимация, так что если будете делать такие патроны, не забывайте увеличить их бронебойную способность и останавливающее действие. Кстати, это не только для патронов АК сделать можно, а для любых всего одной строкой. Удачи!&lt;br /&gt;
&lt;br /&gt;
Немного поправил '''Chriotmao''' 05.09.2013&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%80%D0%B8%D1%87%D0%B8%D0%BD%D1%8B_%D0%B2%D1%8B%D0%BB%D0%B5%D1%82%D0%BE%D0%B2_%D0%B8%D0%B3%D1%80%D1%8B_(%D1%80%D0%B0%D0%B7%D0%B1%D0%B8%D1%80%D0%B0%D0%B5%D0%BC_%D0%BB%D0%BE%D0%B3%D0%B8)</id>
		<title>Причины вылетов игры (разбираем логи)</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%80%D0%B8%D1%87%D0%B8%D0%BD%D1%8B_%D0%B2%D1%8B%D0%BB%D0%B5%D1%82%D0%BE%D0%B2_%D0%B8%D0%B3%D1%80%D1%8B_(%D1%80%D0%B0%D0%B7%D0%B1%D0%B8%D1%80%D0%B0%D0%B5%D0%BC_%D0%BB%D0%BE%D0%B3%D0%B8)"/>
				<updated>2017-01-27T17:31:18Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.4.83 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:&lt;br /&gt;
* В текстовом редакторе нажать Ctrl+V (Вставить)&lt;br /&gt;
* Посмотреть лог игры включая лог вылета в файле xray_имя_пользователя.log в папке C:\Documents and Settings\All Users\Документы\STALKER-***\logs&lt;br /&gt;
* Посмотреть непосредственно в окне багтрекера (только в ЧН и ЗП).&lt;br /&gt;
Ну приступим. Начнём с простых:&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : wave&amp;amp;&amp;amp;wave-&amp;gt;length()&lt;br /&gt;
Function      : CSoundRender_Source::LoadWave&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xrSound\SoundRender_Source_loader.cpp&lt;br /&gt;
Line          : 65&lt;br /&gt;
Description   : Can't open wave file:&lt;br /&gt;
Arguments     : d:\stalker\gamedata\sounds\music\sound.ogg&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Здесь игра не может открыть звуковой OGG-файл под названием sound в папке d:\stalker\gamedata\sounds\music\&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CRender::texture_load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\Texture.cpp&lt;br /&gt;
Line          : 295&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find texture 'act\act_corp_monolit'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не может найти текстуру act_corp_monolit из папки textures\act&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CModelPool::Instance_Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp&lt;br /&gt;
Line          : 111&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find model file 'physics\mesh.ogf'.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найдена трёхмерная OGF-модель mesh.ogf из папки meshes\physics.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : SG&lt;br /&gt;
Function      : CRender::model_CreateParticles&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender_R2\r2.cpp&lt;br /&gt;
Line          : 330&lt;br /&gt;
Description   : Particle effect or group doesn't exist&lt;br /&gt;
Arguments     : hit_fx\hit_water_00&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найдена система частиц (партикл) hit_water_00 в директории hit_fx файла particles.xr (подробно опишу позже).&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CResourceManager::_GetBlender&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\ResourceManager.cpp&lt;br /&gt;
Line          : 49&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Shader 'models\antigas_glass' not found in library.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найден шейдер models\antigas_glass в библиотеке шейдеров.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fs&lt;br /&gt;
Function      : CResourceManager::_CreateVS&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\ResourceManager_Resources.cpp&lt;br /&gt;
Line          : 185&lt;br /&gt;
Description   : shader file doesnt exist&lt;br /&gt;
Arguments     : d:\stalker\gamedata\shaders\r2\deffer_impl_flat.vs&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найден файл шейдера deffer_impl_flat.vs.&lt;br /&gt;
&amp;lt;tt&amp;gt;--Added by Герр. Роммель&lt;br /&gt;
Да нет. Тут проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Нужно скачивать исправление шейдеров от товарища Haron.&lt;br /&gt;
Для ЗП (ЧН) это может ещё быть из-за отсутствия thm-ок для текстур террейна уровня!&amp;lt;/tt&amp;gt;&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression : fatal error&lt;br /&gt;
Function : out_of_memory_handler&lt;br /&gt;
File : D:\prog_repository\sources\trunk\xrCore\xrDebugNew.cpp&lt;br /&gt;
Line : 336&lt;br /&gt;
Description : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments : Out of memory. Memory request: 55965 K &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Нехватка оперативной памяти.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression : fatal error&lt;br /&gt;
Function : CInifile::r_string&lt;br /&gt;
File :E:\stalker\sources\trunk\xrCore\Xr_ini.cpp&lt;br /&gt;
Line : 352&lt;br /&gt;
Description : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments : Can't find variable ammo_mag_size in [wpn_addon_grenade_launcher]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найдена переменная ammo_mag_size в секции [wpn_addon_grenade_launcher].&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CScriptEngine::lua_error&lt;br /&gt;
File          : D:\xray-svn\xr_3da\xrGame\script_engine.cpp&lt;br /&gt;
Line          : 74&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : LUA error: C stack overflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Переполнение стека. Смотрим внимательно: lua_error. Ошибка, возможно, в скриптах.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression : vertex || show_restrictions(m_object)&lt;br /&gt;
Function : CPatrolPathManager::select_point&lt;br /&gt;
File : E:\stalker\sources\trunk\xr_3da\xrGame\patrol_path_manager.cpp&lt;br /&gt;
Line : 155&lt;br /&gt;
Description : any vertex in patrol path [sniper_3_walk] in inaccessible for object [stalker_0002]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер) который якобы двигался по пути sniper_3_walk попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.&lt;br /&gt;
&lt;br /&gt;
То же самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места, где НПС запрещено находиться, будь то рестриктор или аномалия в схеме обхода аномалий.&lt;br /&gt;
Также этот вылет наблюдается при попытке отправить НПС за пределы места работ параметр out_rest = &amp;quot;имя_рестриктора&amp;quot; в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить, допустим, к остановке - получите этот самый вылет.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression : e_entity&lt;br /&gt;
Function : xrServer::Process_event_reject&lt;br /&gt;
File : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp&lt;br /&gt;
Line : 12&lt;br /&gt;
Description : entity not found. id_parent=7540 id_entity=44047 frame=2075050&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Возникают иногда произвольно при смерти неписей. Причина — движок, отрабатывая лут, изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression : fatal error&lt;br /&gt;
Function : CScriptEngine::lua_error&lt;br /&gt;
File : D:\xray-svn\xr_3da\xrGame\script_engine.cpp&lt;br /&gt;
Line : 74&lt;br /&gt;
Description : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments : LUA error: e:\stalker\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Ошибка распространённая. На первый взгляд кажется, что ошибка как раз в скриптах, но всё может быть иначе. В одной из пиратских версий игры этот вылет наблюдается особенно часто из-за криво модифицированного файла &amp;quot;XR_3DA.exe&amp;quot;. Если же вы уверены, что у вас лицензионная версия игры, можно попробовать сделать так: открываем файл _g.script блокнотом, закомменчиваем 20 строку (ставим перед строкой --) и идём к тому месту где поймали вылет. Так мы получим более развёрнутый ответ.&lt;br /&gt;
[[Участник:Призрак]]: Автор прав в том что вылет очень распространен, но так его исправлять нельзя, так как nil передается в эту функцию только при каком-то форс-мажоре. Поэтому необходимо перейти в _g.script в функцию printf и перед log1(string.format(fmr,..)) дописать: get_console():execute(&amp;quot;load &amp;quot;..fmt). После этого запустить еще раз игру и посмотреть при передачи какой строки игра вылетает. Потом найти эту строку в скриптах игры и прикинуть почему аргумент (у нас это аргумент №2 (bad argument #2)) равен nil.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : assertion failed&lt;br /&gt;
Function      : _VertexStream::Lock&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\R_DStreams.cpp&lt;br /&gt;
Line          : 44&lt;br /&gt;
Description   : (bytes_need&amp;lt;=mSize) &amp;amp;&amp;amp; vl_Count&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Проблема возникает при убийстве НПС\мутанта. Типичный вылет по нехватке ресурсов. &lt;br /&gt;
[[Участник:Призрак]] - Встречается в основном на больших локациях. Но не на всех. На болотах из ЧН такой вылет встречается, а вот с локации aver от Кости V такого вылета нет. Однако для данного вылета есть таблетка, в виде правленого экзешника. Искать на АМК-форуме.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : IRender_Visual::Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\FBasicVisual.cpp&lt;br /&gt;
Line          : 58&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Invalid visual&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Неправильный визуал (модель) НПС.&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : !phrase_dialog-&amp;gt;m_PhraseVector.empty()&lt;br /&gt;
Function      : CPhraseDialog::SayPhrase&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\PhraseDialog.cpp&lt;br /&gt;
Line          : 140&lt;br /&gt;
Description   : No available phrase to say, dialog[esc_dialog]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
В диалоге esc_dialog нет доступной для отображения фразы (скажем, все заткнуты инфопоршенами).&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : motion_ID.valid()&lt;br /&gt;
Function      : CKinematicsAnimated::ID_Cycle&lt;br /&gt;
File          : D:\prog_repository\sources\trunk\Layers\xrRender\SkeletonAnimated.cpp&lt;br /&gt;
Line          : 210&lt;br /&gt;
Description   : ! MODEL: can't find cycle:&lt;br /&gt;
Arguments     : death_init&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Игра не нашла в модели трёхмерную анимацию с именем death_init.&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
--------------&lt;br /&gt;
* Автор статьи — '''Pihan13'''&lt;br /&gt;
* Дополнил статью — '''Fireman3000'''&lt;br /&gt;
* Частично использовалась информация с сайта http://forum.stalker-simbion.ru/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt; '''Не стесняемся — дополняем, если знаем о чём идёт речь.''' &amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Дополнение к статье(От Fireman3000):&lt;br /&gt;
Извините, если я где-нибудь неправильно пишу. Уж не родился я Колмогором :(&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CScriptEngine::lua_error&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp&lt;br /&gt;
Line          : 73&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : LUA error: ...hadow of chernobyl\gamedata\scripts\xr_danger.script:116: attempt to index field 'ignore_types' (a nil value)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Причина вылета в том что игра не понимает значения 0 в danger_ignore.Проще говоря в логике какого то персонажа параметр danger_ignore = 0 либо в минусовом значении. Либо его вообще нету&lt;br /&gt;
&lt;br /&gt;
P.S. Также может быть причина в том, что в логике у какого-то АИ что-то неправильно указано. Для исправления рекомендую вставить строчку перед 116: get_console():execute(self.object:name()). То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой. --[[Участник:Rekongstor|Rekongstor]] 14:01, 2 июня 2011 (UTC)&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CInifile::r_string&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp&lt;br /&gt;
Line          : 352&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find variable class in [test_no_klass_npc]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найден класс персонажа. Возможно, НПС не прописан под своим классом в gamedata\npc_profile.xml, либо в creatures\spawn_section.ltx, либо в gameplay\character_desc.xml&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CInifile::r_section&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp&lt;br /&gt;
Line          : 342&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't open section 'bandage_test_kick1'&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Игра не может найти секцию. Это может быть предмет, НПС и многое другое. Возможно, вы написали название с ошибками. Либо когда добавляли его в: продажу, скрипт, НПС , выпадение из НПС, а в редких случаях это может быть иммунитет чего либо(определить потом трудно). Часто такое бывает связано с названием секции.&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CInifile::r_string&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp&lt;br /&gt;
Line          : 352&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find variable remove_time in [vehicle_btr]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Не найдена переменная remove_time в секции [vehicle_btr]. А в данном случае ошибка в том что если вы делали предмет как физическую модель(то бишь, которую нельзя использовать, говорить и вообще он похож на декорации типа деревьев, столов и прочего хлама) то необходимо указывать remove_time в его секции.&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : fatal error&lt;br /&gt;
Function      : CScriptEngine::lua_error&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp&lt;br /&gt;
Line          : 73&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : LUA error: ...dow of chernobyl\gamedata\scripts\test_kick.script:34: attempt to call method 'section' (a nil value)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту.&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Expression    : rpoints[0].size()&lt;br /&gt;
Function      : game_sv_Deathmatch::Create&lt;br /&gt;
File          : D:\prog_repository\sources\trunk\xrGame\game_sv_deathmatch.cpp&lt;br /&gt;
Line          : 99&lt;br /&gt;
Description   : rpoints for players not found&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
На мультиплеерной карте не найдены точки респавна игроков. В SDK должен быть красный пацанчик. Настроить Team = 0&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : xrServer::Process_update&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\xrServer_process_update.cpp&lt;br /&gt;
Line          : 37&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Beer from the creator of 'WP_SHOTG'&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Такое иногда бывает, когда ты (ГГ) или НПС заряжает дробовик или другое оружие со значением tri_state_reload = true.&lt;br /&gt;
Это глюк. в игре что-то сбивается, и когда у дробовика максимальное количество заряженных патронов скажем 6, он заряжается за 6 и дальше.. дальше.. дальше.. и так пока не произойдёт вылет с вышеуказанным логом. вылет не значительный и редкий, но если он случается слишком часто, можно в конфигах всех дробовиков и ружей поменять значение tri_state_reload = true на tri_state_reload = false.&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CInifile::r_string&lt;br /&gt;
File          : D:\prog_repository\sources\trunk\xrCore\Xr_ini.cpp&lt;br /&gt;
Line          : 477&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find variable bound_rect in [level_map]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Такой лог бывает когда подключаешь локацию из ТЧ в ЗП. Причина проста - в ЗП уровнях файл строчка bound_rect пишется в файле gamedata\levels\имя_уровня\level.ltx, а в ТЧ строка bound_rect для каждого уровня непосредственно в файле gamedata\config\game_maps_single.ltx ... &lt;br /&gt;
&amp;lt;br /&amp;gt; Исправить просто, нужно изменить файл gamedata\levels\имя_уровня\level.ltx в подключенной локации, просто перенести строку bound_rect из game_maps_single.ltx в level.ltx перед строчкой texture.   &lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
By Призрак&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression : hGame&lt;br /&gt;
Function : CEngineAPI::Initialize&lt;br /&gt;
File : E:\stalker\patch_1_0004\xr_3da\EngineAPI.cpp&lt;br /&gt;
Line : 65&lt;br /&gt;
Description : Game DLL raised exception during loading or there is no game DLL at all &amp;lt;/pre&amp;gt;&lt;br /&gt;
Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0004 xrGame от 6 патча.&lt;br /&gt;
------------------&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression    : assertion failed&lt;br /&gt;
Function      : CInventory::Eat&lt;br /&gt;
File          : E:\stalker\sources\trunk\xr_3da\xrGame\Inventory.cpp&lt;br /&gt;
Line          : 892&lt;br /&gt;
Description   : pIItem-&amp;gt;m_pCurrentInventory==this&amp;lt;/pre&amp;gt;&lt;br /&gt;
Вылет встречается только на 6 патче при попытке хаванья из трупа. Ищите, исправленную Kolmogor'om, xrGame.dll в Интернете&lt;br /&gt;
-----------------&lt;br /&gt;
&amp;lt;pre&amp;gt;[error]Expression    : error handler is invoked!&lt;br /&gt;
[error]Function      : invalid_parameter_handler&lt;br /&gt;
[error]File          : E:\stalker\sources\trunk\xrCore\xrDebugNew.cpp&lt;br /&gt;
[error]Line          : 804&lt;br /&gt;
[error]Description   : &amp;lt;/pre&amp;gt;&lt;br /&gt;
Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (читал, сам не получал его)&lt;br /&gt;
Или же если данный вылет происходит при вызове класса, то проблема в том что в методе __init() класса прописано super()&lt;br /&gt;
-----------------&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression : !m_error_code&lt;br /&gt;
Function : raii_guard::~raii_guard&lt;br /&gt;
File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp&lt;br /&gt;
Line : 748&lt;br /&gt;
Description : d:\stalker cop\gamedata\scripts\bind_stalker.script:231: attempt to index global 'ИМЯ_ФАЙЛА' (a nil value)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Вылет происходит в двух случаях - когда скрипт пытается вызвать функцию из несуществующего файла или когда в файле допущена синтаксическая ошибка.&lt;br /&gt;
-----------------&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CScriptEngine::lua_error&lt;br /&gt;
File          : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp&lt;br /&gt;
Line          : 73&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : LUA error: attempt to call a nil value&amp;lt;/pre&amp;gt;&lt;br /&gt;
Происходит при попытке вызвать класс, которого не существует&lt;br /&gt;
-----------------&lt;br /&gt;
&lt;br /&gt;
Небольшой пример из практики по определению ошибки в особых случаях(для начинающих):&lt;br /&gt;
Игра зависла, картинка на экране не меняется, на Ctrl + Alt+ Delete не реагирует. Только &amp;quot;Холодная перезагрузка&amp;quot; reset. Но при этом обычно в логе нет записи и обычным Ctrl + V ошибку не увидеть.&lt;br /&gt;
Я пользуюсь программой Punto Switcher. Есть в ней опция &amp;quot;дневник&amp;quot;, она ведёт запись всех нажатий клавиш и по нажатию сочетаний клавиш содержимое памяти может записывать в дневник.&lt;br /&gt;
теперь когда игра зависла и картинка на экране не меняется, нажимаете Ctrl + Alt+ Delete. Внешне ничего не изменится, но ОС будет реагировать&lt;br /&gt;
на клавиши, нажимаете сочетание клавиш &amp;quot;записать в дневник&amp;quot;. Делаете перезагрузку, открываете дневник - Ваша ошибка записана.&lt;br /&gt;
&amp;quot;дядя Саша&amp;quot;&lt;br /&gt;
--------------&lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
By tracker.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;Expression    : bone_id!=BI_NONE&lt;br /&gt;
Function      : SArtefactDetectorsSupport::SetVisible&lt;br /&gt;
File          : D:\prog_repository\sources\trunk\xrGame\Artefact.cpp&lt;br /&gt;
Line          : 525&lt;br /&gt;
Description   : link&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Возникает при создании или добавлении чужих артефактов. В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в sdk и выяснением имени косточки с занесением в конфиг.&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;
1.&lt;br /&gt;
Безлоговые вылеты бывают в основном из-за завышенных настроек видео.&lt;br /&gt;
Решение:&lt;br /&gt;
В папке с игрой открыть папку gamedata, папку config, в ней файл alife, открыть любым текстовым редактором (блокнотом, или лучше word pad'ом) и найти строку switch distance = и изменить значение на 5, сохранить изменения.&lt;br /&gt;
&lt;br /&gt;
Это только одна (не сильно вероятная) причина безлогового вылета. если вы знаете ещё одну причину, пожалуйста напишите здесь.&lt;br /&gt;
&lt;br /&gt;
2. Вторая причина неправильно указано название пути в логике НПС или он полностью отсутствует в файле way_ all.spawn. Вылетать будет когда дойдёт время до спавна этого НПС.(дС)&lt;br /&gt;
&lt;br /&gt;
3. Также, безлоговые вылеты происходят из-за ошибок в диалогах.&lt;br /&gt;
--------------&lt;br /&gt;
Expression    : error handler is invoked!&lt;br /&gt;
Function      : invalid_parameter_handler&lt;br /&gt;
File          : D:\prog_repository\sources\trunk\xrCore\xrDebugNew.cpp&lt;br /&gt;
Line          : 815&lt;br /&gt;
Description   : &lt;br /&gt;
&lt;br /&gt;
--------------&lt;br /&gt;
--------------&lt;br /&gt;
Вылет заканчивающийся строкой, то что выше не указываю роли не играет, здесь роль играет только &amp;quot;bad argument #3&amp;quot;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 bad argument #3 to 'format' (string expected, got no value)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если это появилось значит у Вас ошибка в файле с расширением .ltx (обращаю внимание, не путать с файлами .script), которая находится между [....] квадратными скобками в файле. Это может быть секция предмета, секция логики, секция пути файла way_,  т.е. там где присутствуют квадратные скобки.(дС)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:FAQ]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2</id>
		<title>Список инструментов</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2"/>
				<updated>2017-01-24T23:29:15Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.122 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Список инструментов&amp;lt;/span&amp;gt;=&lt;br /&gt;
Эта статья должна представлять собой список используемых в настоящее время инструментов, прямо или косвенно относящихся к модификации игры S.T.A.L.K.E.R. Только Название, ее версия, краткое описание и разработчик. Оформлять в виде таблицы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Текстовые редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://notepad-plus-plus.org/download Notepad++]||Cвободный текстовый  редактор с открытым исходным кодом для Windows с подсветкой синтаксиса большого количества языков программирования и разметки.||Notepad++ team&lt;br /&gt;
|-&lt;br /&gt;
|[http://winmerge.org/downloads/ WinMerge]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||Dean P. Grimm&lt;br /&gt;
|-&lt;br /&gt;
|[http://forum.ru-board.com/topic.cgi?forum=5&amp;amp;topic=24956&amp;amp;glp SciTE]||Кроссплатформeнный  текстовый редактор с широкими возможностями и открытым исходным кодом.||Neil Hodgson&lt;br /&gt;
|-&lt;br /&gt;
|[http://download.cnet.com/Files-Compare-Tool/3000-2248_4-10315688.html Files Compare Tool]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||S&amp;amp;G Team&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Hex-редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.hhdsoftware.com/free-hex-editor Free Hex Editor Neo]||Бесплатный Редактор Шестнадцатеричных, Десятичных и Бинарных Файлов для Windows. Программа имеет возможности по выделению, просмотру, редактированию, замене, отладке и анализу данных.||HHD Software&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.winhex.com/winhex/ WinHex]||Универсальный HEX-редактор для Microsoft Windows.||X-Ways Software Technology AG&lt;br /&gt;
|-&lt;br /&gt;
|[ftp://wa651f5:anonymous@mh-nexus.de/HxDSetupRU.zip HxD]||Свободно распространяемый HEX-редактор с расширенными возможностями.||Mael Horz, Nikolai Mashnin&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;2D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://paintnet.ru/ Paint .NET]||Бесплатный растровый графический редактор для Windows, разработанный на платформе .NET Framework. Штатная возможность работы с форматом .dds||Rick Brewster&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.gimp.ru/ GIMP]||Бесплатный кроссплатформенный растровый графический редактор с открытым исходным кодом.||Spencer Kimball, Peter Mattis, GIMP Team&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.nvidia.ru/object/dds_thumbnail_viewer.html DDS Thumbnail Viewer]||Реализует возможность предпросмотра .dds-файлов небольшого размера в Проводнике OS Windows.||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/jEttg1b8sG9NH NVIDIA Texture Tools for Adobe Photoshop]||Normal map фильтр, dds плагин, mip-map generation script, и cube map shuffler для Photoshop||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.xnormal.net/Downloads.aspx xNormal]||.dds-плагин для Photoshop||xNormal&lt;br /&gt;
|-&lt;br /&gt;
|[http://code.google.com/p/gimp-dds/downloads/list gimp-dds]||.dds-плагин для GIMP||Shawn Kirst&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://charles.hollemeersch.net/sites/default/files/njob_v1_0_0.zip Njob]||Утилита для генерации карт высот, карт нормалей и их конвертации||C. Hollemeersch&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/JkS-yg2LqhzHx Copy Object]||Утилита для копирования объектов в сцене SDK||DukeKan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=446 Texture Copier ]||Программа делалась для упрощения переноса текстур из ТЧ в ЧН/ЗП. Позволяет быстро переносить текстуры из ресурсов одной игры в другую.||V.I.R.U.S.&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=447 Script Syntax Checker]||Утилита для проверка скриптов на ошибки.||Gun12&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;3D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.chumba.ch/chumbalum-soft//files/ms3d184.zip Milkshape 3D]||1.8.4||Низкополигональный 3D-редактор с поддержкой множества игровых форматов.||Mete Ciragan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=424 MS3D Hierarchy Editor]||1.0b||Консольная утилита, позволяющая просматривать иерархию скелета в ms3d-файле и изменять  ее по своему усмотрению.||Sin!&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.deep-shadows.com/hax/3DRipperDX.htm#Download 3D Ripper DX]||1.8.1||Программма позволяет захватывать геометрию, текстуры и шейдеры из большинства трехмерных приложений под DX 6.x, 8.x, 9x. В комплекте также плагины импорта в 3ds Max 5-9/2008, 2009 и 2011.||Roman Lut&lt;br /&gt;
|-&lt;br /&gt;
|[http://cgig.ru/ninjaripper/ Ninja Ripper]||1.1.4||Утилита извлекает 3D модели, текстуры, вершинные и пиксельные шейдеры из программ (преимущественно игр) под D3D11, D3D9, D3D8 (обрабатываются не все методы/техники, но должно работать в 95% игр).||black_ninja&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Официальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=437 SDK 0.4 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.4 для 3DS Max 7-2011, LightWave 3D 7.5/8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=436 SDK 0.5-0.7 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.5-0.7 для 3DS Max 8-2011, LightWave 3D 8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Неофициальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=377 Milkshape 3d 1.8.4 Plugins]||08.08.2009||Плагин экспорта и исправленный плагин импорта для Milkshape3D v.1.8.4.||bardak, KamikaZze&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=454 X-Ray Maya Tools]||01.10.2011||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/ X-Ray Maya Tools]||22.07.2013||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Скрипты&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Mp6jVkV25LrXI X-Ray Max Tools]||08.11.2014||Пак скриптов 3ds max (версии выше 8) для импорта и экспорта объектов X-Ray SDK.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/62861030001.3927839478b0c733b57efc8fa919cf2d/xray_object_import_v03.zip.html X-Ray Object Import]||0.3||Cкрипт для импорта моделей формата x-ray sdk *.object в 3ds max. Добавлена поддержка: physique и групп сглаживания.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/rU1UDbxBsG8uZ X-Ray Invalid]||1.0||Cуть скрипта в том, чтобы проверять модель на ошибки invalide face(s) до экспорта в x-ray sdk *.object.||Den-Stash&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=246 HUD Hands Sources]||1.1||Исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ.||Tambovski&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/stutils/HUD_HANDS_new.rar HUD Hands Sources]||2.0||Обновленные исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ. Модель привязана к костям, сделана камера для контроля анимаций (вид HUD-а как в игре).||Tambovski&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray SDK&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://files.gsc-game.com/st/xray-sdk-setup-v0.4.exe X-Ray SDK SoC]||0.4||Официальный SDK для игры S.T.A.L.K.E.R. - Тень Чернобыля.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=361 X-Ray SDK SoC Patch]||-||Патч для X-Ray SDK 0.4. Исправляет множество багов и проблему с не отображаемой травой в Level Editor. Восстановлены опции xrLC.||GSC, Haron, Neo][&lt;br /&gt;
|-&lt;br /&gt;
|[http://xfiles.gsc-game.com/st/xray-cs-sdk-setup.exe X-Ray SDK CS]||0.5||Официальный SDK для игры S.T.A.L.K.E.R. - Чистое Небо.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=374 X-Ray SDK CS Update]||0.6||Обновление для X-Ray SDK 0.5. Включает в себя: Actor Editor, Particle Editor, Postprocess Editor, Shader Editor, Компилятор AI, а также, набор плагинов 3dsmax 8, 9, 2008, 2009, 2010, 2011. Исправляет: Level Editor.||Loxotron, GSC&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/RozpEA6XmDfXC X-Ray SDK CoP]||0.7||Официальный SDK для S.T.A.L.K.E.R. - Зов Припяти.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/downloads/SDK/xrSDK_COP_patch_10.7z X-Ray SDK CoP Patch]||-|| Патч для X-Ray SDK 0.7. Содержит dll для плагинов Maya, и ActorEditorLevel.cform для кнопки Simulate в AE. ||Loxotron, gsc&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/57220477001.47cd4866c9c4c6cb96af9e1830fa4f92/RUS_SDK_07.rar.html Русификатор X-Ray SDK CoP]||-||Русифицирует интерфейс Level Editor, Actor Editor, Shader Editor, и Particle Editor.||GSC, Genior&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrAI&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=376 AI Compiler]||-||Официальный компилятор AI для SoC.||GSC, Loxotron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrLC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/46414046001.8e0e6656c19e2910fb9a986d4c152f8a/compiliers2010_v3.7z.html Compilers 2010]||3.0||Набор ускоренных компиляторов для CS/CoP SDK.||macron&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61168444001.9a8746add40aaea1d0b948d2da788ab3/Bench_xrLC_extra_v39.7z.html Bench xrLC extra]||3.9||Архив представляет собой пак компиляторов для проектов карт, созданных в SDK STALKER ТЧ.||DIABLO, FL!NT, Haron, Macron, Loxotron, Bardak, Mortarion&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Fakes&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Y7kMpHcG7XkBU Fake Flatness]||2013||Набор фейк-плоскостей (в комплекте лестницы, hom-кубик occ и прочая тематичная дребедень + полезная инфа). Разархивировать в папку с SDK.||Macron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Объекты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/SDK/resources/Stalker_Content.7z Набор объектов]||1.0||Набор моделей и объектов из Сталкера 1.0000, предназначены для расставления на своих картах в редакторе карт, шейдеры и текстуры уже настроены.||UX.Loki&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray Game Asset Tools Pack&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=288 X-Ray Game Asset Tools Pack]||1.0 Final (14.09.2008)||Финальная версия, включает в себя: AI Wrapper 2.2 + converter + acdc pack + milkshape и maya плагины. Представляет собой набор утилит от бардака, необходимых для редактирования всех аспектов игры: враппер для компиляции ии уровней, конвертер для редактирования геометрии и моделей, асдс для редактирования all.spawn. Программы исправно работают как со всеми утекшими билдами игры, так и с ТЧ и ЧН финальных версий.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=348 X-Ray Game Asset Tools Pack Update]||2.0 (08.07.2009)||Обновление исправляет декомпиляцию lod'ов, отображение декомпилированных шейдеров деревьев в Level Editor, и добавляет новый более стабильный компилятор AI||bardak, community&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/converter_2015-06-24.7z X-Ray Game Asset Converter]||24.06.2015||Добавлена команда разбиения *.omf на отдельные *.skl(-skl all). Поддержка извлечения файлов из архивов по маске. Добавлены поиск и удаление дубликатов glow. Исправлено некорректное вычисление вращения зон объемного звука.||bardak, Kolmogor, mnn, gr1ph00n, Neo][, Xiani, Freack, loxotron, NatteFrost, Macron, KD87, abramcumner&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/yk87tB0SfiWFw X-Ray Game Asset Converter UI]||24.06.2015||Реализация конвертера с UI. Работает: конвертирование *.ogf -&amp;gt; *.obj, *.omf -&amp;gt; *.skls(skl), *.dm -&amp;gt; *.obj. Отображается дополнительная информация о выбранном файле. Имеется возможность вытаскивания отдельных анимаций(*.omf -&amp;gt; *.skl) выбирая их из соответствующего списка. Реализован Drag`n`Drop на сам Converter.exe и на окно программы.||bardak, Viнt@rь, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/get/c832c5af23d3.zip X-Ray Game Asset Tools Pack Sources]||Last||Исходники пакета утилит X-Ray Game Asset Tools.||bardak, community&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Компиляторы/декомпиляторы, конвертеры, сопутствующие утилиты&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/rokoY1TaLqpYM level. compiler/decompiler]||0.4||Компилятор/декомпилятор файла level.||bardak, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.env_mod&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26764911000/S.T.A.L.K.E.R.%20level.env_mod%20CDC.7z.html emCDC SoC]||-||Компилятор/декомпилятор level.env_mod SoC.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26765140000/S.T.A.L.K.E.R.%20Clear%20Sky%20level.env_mod%20CDC.7z.html emCDC CS]||-||Компилятор/декомпилятор level.env_mod CS.||bardak&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.ps_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/-bPKTqDu1w5ag level_particle_static_cdc]||0.1||Компилятор/декомпилятор файла level.ps_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.snd_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 sse]||0.32||Компилятор/декомпилятор level.snd_static.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 Snd Static Extractor]||0.1||Компилятор/декомпилятор level.snd_static.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/hofXdTciF9yyY level_sound_static_cdc]||0.2||Компилятор/декомпилятор level.snd_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;game.graph/graph.bin/section4.bin&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=332 ggCDC SoC]||x.4||Компилятор/декомпилятор game.graph SoC.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=386 ggCDC CoP]||x.5||Компилятор/декомпилятор game.graph CoP.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=415 Edge Editor]||2.2||Программа для добавления/удаления ИИ-связей между вершинами в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=261 GraphViewer]||0.1||Программа для просмотра ИИ-связей в game.graph.||IG-2007&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=395 ggEditor]||0.1||Программа для присоединения локаций в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://rghost.ru/51860258 ggEditor Sources]||-||Исходники программы ggEditor.||mmdns&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.anm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=317 anm2ltx]||08.03.09г.||Компилятор/декомпилятор .anm.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogf&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/65380165001.497ef61364b07eeacbf31cd5343c7450/20121229.7z.html MeshTool/OGFViewer]||1.0.5||Кроссплатформенный комплект утилит для просмотра, конвертации разнообразных 3d-моделей и уровней. В том числе и формата движка X-Ray.||NatteFrost, batya&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogg&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=231 Theora]||1.0.0||Пакетный конвертер .ogg в .wav. Дает возможность исправить ошибку &amp;quot;missing ogg-comment&amp;quot;.||Haron&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dcyo0Nt3A3b5g OGG Editor]||-||Утилита предназначена для быстрого просмотра и редактирования звуковых комментариев в уже прогнанных через SDK ogg-файлах, без необходимости включать для этого SDK и иметь wav-версии звуков.||Sin!, Shoker, nihilant&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=393 ffmpeg2theora]||-||Консольный конвертер .avi в .ogm||?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ppe&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=352 PPE Editor]||1.2||Программа для редактирования .ppe-файлов постпроцессинга.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.spawn&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/uWlnpuGwF9zCW Universal ACDC]||1.36 (29.12.2013)||Программа распаковывает файлы *.spawn ТЧ, ЧН, ЗП, и xrCore build, начиная с 1265, а также *.spawn файлы модов (при этом требуется их папка конфигов). Подробности в ReadMe.txt||bardak, Kolmogor, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.thm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=421 thmParser]||15.08.10г.||Парсер формата .thm SoC в .thm CS/CoP.||kalinin11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.xr&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=390 Particle Extractor]||1.2||Компилятор/декомпилятор файла particles.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=383 Game Mtl Extractor]||0.3||Компилятор/декомпилятор файла gamemtl.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/dVSXTDwg1w5_s particles_xr_cdc]||0.2||Компилятор/декомпилятор файла particles.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/V-za1OnD1w5ba gamemtl_xr_cdc]||0.2||Компилятор/декомпилятор файла gamemtl.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dn2ooLS31w5aK lanims_xr_cdc]||0.2||Компилятор/декомпилятор файла lanims.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/DHNWGQkr1w5_0 senvironment_xr_cdc]||0.2||Компилятор/декомпилятор файла senvironment.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/o-lzXzrA1w5cG shaders_xrlc_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders_xrlc.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/pMtlI_BHLzjDz shaders_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders.xr||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.sav&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/60346986001.7e990cb3bbecff1c35a1dbbe7e6f389f/save_unpacker_0_4.rar.html Save Unpacker]||0.4||Распаковщик файлов *.sav сохранений ТЧ, ЧН, ЗП.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Необходимый софт&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/l6osH5PQF9ynj Библиотека Stkutils]||29.12.2013||Эта библиотека необходима для работы большинства компиляторов/декомпиляторов.||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.activestate.com/activeperl/downloads ActivePerl]||-||Эта программа необходима для работы большинства компиляторов/декомпиляторов.||ActiveState&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты, пакеты утилит&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=467 Map dragger]||1.0||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/b2Z3ciYN5x7JM Map dragger]||1.1||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере. Добавлены 3 отдельные настроенные версии: ТЧ, ЧН, и ЗП. Старая удалена за ненадобностью.||XiaNi, aka_sektor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=106 dds2tga]||-||Конвертер .dds в .tga.||nVidia, -=CHE@TER=-&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=188 dds2tga for LE]||-||Специально адаптированный для Level Editor'а Сталкера конвертер текстурок dds в tga||nVidia, russian-stalker&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=418 STALKER Icon Editor]||0.6.3||SIE - это утилита для просмотра и редактирования иконок инвентаря для SOC,CS и COP. В игре они хранятся в файле gamedata\textures\ui\ui_icon_equipment.dds||malandrius&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Распаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/094hymb_r275S WCX]||0.0.3||Возможности: распаковка игровых архивов *.db* игры С.Т.А.Л.К.Е.Р. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ) и &amp;quot;Чистое Небо&amp;quot; (ЧН). Плагин поддерживает как русскую, так и английскую версию архивов от ТЧ.||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/hCfFUj7Tr277b WFX]||0.0.4||Возможности: просмотр и распаковка всего набора игровых архивов *.db* игры S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=217 S.T.A.L.K.E.R. Data Unpacker]||1.0||Распаковщик игровых архивов для русской и английской версий SoC.||?&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.3||Плагин для Total Commander. Позволяет просматривать и распаковывать весь набор игровых архивов *.db* игр S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Mowgli&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=265 Clear Sky unpacker]||1.3||Распаковщик игровых архивов.||Macron, xStream, bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=266 GUI for unpacker]||1.1||GUI для распаковщика от Macron, xStream и bardak.||russian-stalker, Marauder&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=224 Database Extractor]||2.0||Распаковщик для SoC и CS. Показывает список файлов в архиве, что дает возможность извлекать файлы по отдельности.||Don Reba&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.0.2||Системный плагин для Total Commander. Реализует возможность просмотра и распаковки игровых архивов SoC, CS и CoP.||malandrinus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Builds, SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/GNxvG8O75bz4M S.T.A.L.K.E.R. Universal Extractor]||1.3.1||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий (1.0006, 1.5.10, 1.6.02). Распаковка билдов (на данный момент программа насчитывает 15 сборок).||Dordex&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/dovmUpeQmcb34 S.T.A.L.K.E.R. Universal Extractor]||2.0||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий. Распаковка билдов.||Rezzoxe (Омар Гуртуев)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Запаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=149 DB Packer]||1.0||Самодельная утилита для запаковки файлов папки gamedata Теней Чернобыля в .db архив. Подробные разъяснения в .pdf файле.||HIGHLANDER&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61364111001.9e2532413cf3b161e91e2d55829efb75/db_packer_unpkr_3.1.rar.html DB Packer/Unpacker]||3.1||Программа для распаковки и запаковки .db архивов Чистого Неба и Зова Припяти.||Kontro-zzz&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/7XL72RYPmVRyN XrCompress]||1.11||Программа для распаковки и запаковки .db и .xdb архивов с функцией сжатия.||LostAlphaRus&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Категория:Руководства]][[Категория:Программы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%83%D1%81%D1%82%D0%BE%D0%B9_%D1%80%D1%8E%D0%BA%D0%B7%D0%B0%D0%BA_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D1%81%D0%B2%D0%BE%D0%B5%D0%B3%D0%BE_%D1%82%D0%B0%D0%B9%D0%BD%D0%B8%D0%BA%D0%B0</id>
		<title>Пустой рюкзак для создания своего тайника</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%9F%D1%83%D1%81%D1%82%D0%BE%D0%B9_%D1%80%D1%8E%D0%BA%D0%B7%D0%B0%D0%BA_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D1%81%D0%B2%D0%BE%D0%B5%D0%B3%D0%BE_%D1%82%D0%B0%D0%B9%D0%BD%D0%B8%D0%BA%D0%B0"/>
				<updated>2017-01-24T23:29:03Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.122 (обсуждение) к версии 178.218.27.136&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Пустой рюкзак для создания своего тайника&lt;br /&gt;
&lt;br /&gt;
Этим методом можно добавить в Сталкер ТЧ тайник, который вы сами сможете заложить там, где вам угодно.&lt;br /&gt;
&lt;br /&gt;
Итак, приступим: Нам потребуются: Два файла для добавления функции установки тайника (эти файлы обязательны): &lt;br /&gt;
1. bind_stalker.SCRIPT (gamedata/scripts) &lt;br /&gt;
2. devices.LTX (gamedata/config/misc) &lt;br /&gt;
Один файл, чтобы получить рюкзак в игре (в моём случае, Сидорович торгует такими рюкзаками): Trade_trader.LTX (gamedata/config/misc)&lt;br /&gt;
&lt;br /&gt;
Первым делом откройте файл bind_stalker.SCRIPT и найдите следующие строки:&lt;br /&gt;
 &lt;br /&gt;
function actor_binder:on_item_drop (obj)&lt;br /&gt;
    level_tasks.proceed(self.object)&lt;br /&gt;
    --game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
После строк&lt;br /&gt;
--game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
запишите следующее:&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 2/2&lt;br /&gt;
	if obj:section()==&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
		-- запомним id объекта&lt;br /&gt;
		self.rr_id=obj:id()&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Итог:&lt;br /&gt;
function actor_binder:on_item_drop (obj)&lt;br /&gt;
    level_tasks.proceed(self.object)&lt;br /&gt;
    --game_stats.update_drop_item (obj, self.object)&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 2/2&lt;br /&gt;
	if obj:section()==&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
		-- запомним id объекта&lt;br /&gt;
		self.rr_id=obj:id()&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
end&lt;br /&gt;
Далее найдите строки&lt;br /&gt;
game_stats.update (delta, self.object)&lt;br /&gt;
И после них запишите&lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 1/2&lt;br /&gt;
	if self.rr_id~=nil then&lt;br /&gt;
		-- пытаемся получить объект по id&lt;br /&gt;
		local se_obj=alife():object(self.rr_id)&lt;br /&gt;
		-- проверяем, что объекта нет&lt;br /&gt;
		if se_obj==nil or se_obj:section_name()~=&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
			local ruck=alife():create(&amp;quot;active_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id())&lt;br /&gt;
			level.map_add_object_spot_ser(ruck.id, &amp;quot;red_location&amp;quot;, &amp;quot;%c[255,238,155,23]Моя нычка для хабара&amp;quot;)&lt;br /&gt;
			news_manager.send_tip(db.actor, &amp;quot;Тайник заложен.&amp;quot;, nil, nil, 5000)&lt;br /&gt;
		end&lt;br /&gt;
		-- сбросим переменную&lt;br /&gt;
		self.rr_id=nil&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Итог:&lt;br /&gt;
function actor_binder:update(delta)&lt;br /&gt;
	object_binder.update(self, delta)&lt;br /&gt;
 &lt;br /&gt;
	-- DEBUG slowdown&lt;br /&gt;
--	slowdown.update()&lt;br /&gt;
 &lt;br /&gt;
	local time = time_global()&lt;br /&gt;
 &lt;br /&gt;
	game_stats.update (delta, self.object)&lt;br /&gt;
 &lt;br /&gt;
	--&amp;gt;&amp;gt;Treasure rucksack 1/2&lt;br /&gt;
	if self.rr_id~=nil then&lt;br /&gt;
		-- пытаемся получить объект по id&lt;br /&gt;
		local se_obj=alife():object(self.rr_id)&lt;br /&gt;
		-- проверяем, что объекта нет&lt;br /&gt;
		if se_obj==nil or se_obj:section_name()~=&amp;quot;inv_ruck&amp;quot; then&lt;br /&gt;
			local ruck=alife():create(&amp;quot;active_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id())&lt;br /&gt;
			level.map_add_object_spot_ser(ruck.id, &amp;quot;red_location&amp;quot;, &amp;quot;%c[255,238,155,23]Моя нычка для хабара&amp;quot;)&lt;br /&gt;
			news_manager.send_tip(db.actor, &amp;quot;Тайник заложен.&amp;quot;, nil, nil, 5000)&lt;br /&gt;
		end&lt;br /&gt;
		-- сбросим переменную&lt;br /&gt;
		self.rr_id=nil&lt;br /&gt;
	end&lt;br /&gt;
	--&amp;lt;&amp;lt;&lt;br /&gt;
Всё! На это работа с bind_stalker.SCRIPT завершена.&lt;br /&gt;
&lt;br /&gt;
Переходим к файлу devices.LTX. &lt;br /&gt;
В самом конце файла напишите следующее:&lt;br /&gt;
[inv_ruck]:identity_immunities&lt;br /&gt;
GroupControlSection = spawn_group&lt;br /&gt;
discovery_dependency =&lt;br /&gt;
$spawn    = &amp;quot;food and drugs\antirad&amp;quot;&lt;br /&gt;
$prefetch   = 32&lt;br /&gt;
class   = II_ANTIR&lt;br /&gt;
cform           = skeleton&lt;br /&gt;
visual          = equipments\item_rukzak&lt;br /&gt;
description  = enc_tre_ruck&lt;br /&gt;
 &lt;br /&gt;
inv_weight   = 0.3&lt;br /&gt;
inv_name   = tre_ruck&lt;br /&gt;
inv_name_short  = tre_ruck_s&lt;br /&gt;
 &lt;br /&gt;
inv_grid_width		= 2&lt;br /&gt;
inv_grid_height		= 2&lt;br /&gt;
inv_grid_x		= 0&lt;br /&gt;
inv_grid_y		= 0&lt;br /&gt;
cost = 500&lt;br /&gt;
 &lt;br /&gt;
;eatable item&lt;br /&gt;
eat_health = 0&lt;br /&gt;
eat_satiety = 0&lt;br /&gt;
eat_power = 0&lt;br /&gt;
eat_radiation = 0&lt;br /&gt;
eat_alcohol = 0&lt;br /&gt;
wounds_heal_perc = 0&lt;br /&gt;
eat_portions_num = 1&lt;br /&gt;
 &lt;br /&gt;
;food item&lt;br /&gt;
animation_slot  = 4&lt;br /&gt;
 &lt;br /&gt;
;hud item&lt;br /&gt;
hud = wpn_vodka_hud&lt;br /&gt;
 &lt;br /&gt;
[active_ruck]:inventory_box&lt;br /&gt;
visual          = equipments\item_rukzak&lt;br /&gt;
custom_data     = scripts\treasure_inventory_box.ltx&lt;br /&gt;
radius = 1&lt;br /&gt;
Обратите внимание на строку cost = 800. Это цена. Вы можете поставить какую угодно.&lt;br /&gt;
&lt;br /&gt;
Всё. Осталось прописать рюкзак в ассортимент Сидоровича. &lt;br /&gt;
Откройте файл Trade_trader.LTX. Найдите строку [supplies_start] и после неё напишите:&lt;br /&gt;
inv_ruck			= 10,	1&lt;br /&gt;
Цифра 10 значит, что у торговца появится десять рюкзаков, цифра 1 означает вероятность появления (1 = 100%). Готово! Заходим в игру, тестируем.&lt;br /&gt;
ПРИМЕЧАНИЕ. Иконка рюкзака, название и описание в инвентаре будет отображаться некорректно. Редактируйте текстуру в файле ui_inventory.dds (gamedata/textures/ui), координаты x,y в devices.LTX, описание в файле string_table_enc_equipment (gamedata/config/text/rus).&lt;br /&gt;
&lt;br /&gt;
Как забрать рюкзак назад в инвентарь, если тайник нам больше не нужен? &lt;br /&gt;
Открываем файл bind_stalker.script, находим функцию actor_binder:take_item_from_box(box, item) и в самом её начале добавляем такой код:&lt;br /&gt;
-- если это наш тайник и он пустой, т.е. мы забрали из него последний предмет, то...&lt;br /&gt;
if box:section() == &amp;quot;active_ruck&amp;quot; and box:is_inv_box_empty() then&lt;br /&gt;
    level.start_stop_menu(level.main_input_receiver(), true)   -- закрываем окно &amp;quot;обыскивания тайника&amp;quot;&lt;br /&gt;
    level.map_remove_object_spot(box:id(), &amp;quot;red_location&amp;quot;)    -- убираем с тайника метку&lt;br /&gt;
    alife():release(alife():object(box:id()), true)    -- удаляем тайник&lt;br /&gt;
    alife():create(&amp;quot;inv_ruck&amp;quot;, db.actor:position(), db.actor:level_vertex_id(), db.actor:game_vertex_id(), db.actor:id()) -- спавним рюкзак в инвентарь&lt;br /&gt;
end&lt;br /&gt;
Всё. Теперь, когда мы забираем все вещи из рюкзака-тайника, то он перемещается к ГГ в инвентарь.&lt;br /&gt;
&lt;br /&gt;
Были использованы материалы из мода FreeplayStart.&lt;br /&gt;
Статья написана Sanyok_Shevcov, Самара.&lt;br /&gt;
Дополнил: naxac&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-01-18T14:42:20Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.4.188 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье мы научимся создавать новые образцы вооружения. Для начала, мы будем использовать модели из оригинальной игры. Если вы хотите создать оружие, имеющее уникальный внешний вид, ознакомьтесь с [[Создание моделей и их добавление в игру|уроком]] по созданию моделей.&lt;br /&gt;
&lt;br /&gt;
Добавим в игру '''АК101'''.&lt;br /&gt;
&lt;br /&gt;
==Внешний вид==&lt;br /&gt;
&lt;br /&gt;
Позаботимся о том, чтобы наше оружие отличалось внешне от того же '''АК74'''.&lt;br /&gt;
&lt;br /&gt;
===Текстуры===&lt;br /&gt;
&lt;br /&gt;
Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным [[Изменение текстур#Изменение текстур моделей|здесь]]. Итак, основываясь на текстуре '''АК74''', мы сделали вот такую текстуру:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 texture.jpg]]&lt;br /&gt;
&lt;br /&gt;
Файлы текстур мы назвали:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak10.dds'''&lt;br /&gt;
* '''wpn_ak10_bump#.dds'''&lt;br /&gt;
* '''wpn_ak10_bump.dds'''&lt;br /&gt;
&lt;br /&gt;
===Модели===&lt;br /&gt;
&lt;br /&gt;
Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от '''АК74'''. Скопируем папку:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\meshes\weapons\ak74\''' &lt;br /&gt;
&lt;br /&gt;
И назовем её '''ak-101'''. Содержимое, соответственно, переименуем в:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak101.ogf'''&lt;br /&gt;
* '''wpn_ak101_hud.ogf'''.&lt;br /&gt;
&lt;br /&gt;
Теперь пропишем в эти модели созданные нами текстуры. Способ описан [[Изменение текстур#Создание новых visual для использования с новыми объектами|здесь]]'''.&lt;br /&gt;
&lt;br /&gt;
P.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия.&lt;br /&gt;
Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее.&lt;br /&gt;
&lt;br /&gt;
Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно кладите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так:&lt;br /&gt;
argument:can not find section 'название вашего оружия'&lt;br /&gt;
&lt;br /&gt;
===Иконки===&lt;br /&gt;
&lt;br /&gt;
Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан [[Изменение текстур#Изменение иконок предметов|здесь]].&lt;br /&gt;
&lt;br /&gt;
Вот, что получилось в конечном итоге:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 icon.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Конфиги==&lt;br /&gt;
&lt;br /&gt;
Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим '''АК101''' на базе конфигов '''АК74'''. &lt;br /&gt;
&lt;br /&gt;
===Свойства оружия===&lt;br /&gt;
&lt;br /&gt;
Скопируем файл из папки:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\weapons\ak74.ltx'''&lt;br /&gt;
&lt;br /&gt;
Назовем его '''ak101.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Отредактируем свойства по своему усмотрению (но лучше - в соответствии с достоверной информацией о характеристиках оружия, т.к. '''АК101''' - всё-таки оружие реально существующее). Редактирование конфигов оружия подробно описано в отдельном [[Редактирование оружия|уроке]]. В данном случае конфиг был составлен таким образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
[wpn_ak101]:identity_immunities&lt;br /&gt;
GroupControlSection		= spawn_group&lt;br /&gt;
discovery_dependency	= &lt;br /&gt;
$spawn              	= &amp;quot;weapons\ak-101&amp;quot;	; name and section in level editor&lt;br /&gt;
$npc					= on				&lt;br /&gt;
$prefetch 				= 8&lt;br /&gt;
scheduled				= off               ;[] option for ALife Simulator&lt;br /&gt;
cform               	= skeleton&lt;br /&gt;
class               	= WP_AK74			; class of the weapon that corresponding to CPP class&lt;br /&gt;
min_radius          	= 30				; [] for AI&lt;br /&gt;
max_radius          	= 100				; [] for AI&lt;br /&gt;
description				= enc_weapons1_wpn-ak101&lt;br /&gt;
	&lt;br /&gt;
ef_main_weapon_type		= 2&lt;br /&gt;
ef_weapon_type			= 6&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
holder_range_modifier	= 1.0		       ; во сколько раз увеличивается eye_range &lt;br /&gt;
holder_fov_modifier		= 0.7              ; во сколько раз увеличивается eye_fov&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
cost					= 2;4000				&lt;br /&gt;
weapon_class			= assault_rifle		&lt;br /&gt;
	&lt;br /&gt;
ammo_limit				= 210				&lt;br /&gt;
ammo_elapsed			= 30				&lt;br /&gt;
	&lt;br /&gt;
ammo_mag_size			= 30				&lt;br /&gt;
fire_modes				= 1, -1&lt;br /&gt;
&lt;br /&gt;
ammo_class				= ammo_5.56x45_ss190, ammo_5.56x45_ap	  &lt;br /&gt;
grenade_class			= ammo_vog-25, ammo_vog-25p			&lt;br /&gt;
launch_speed			= 0&lt;br /&gt;
&lt;br /&gt;
hand_dependence			= 1									&lt;br /&gt;
single_handed			= 0&lt;br /&gt;
	&lt;br /&gt;
slot 					= 2									&lt;br /&gt;
animation_slot			= 2									&lt;br /&gt;
inv_name	        	= wpn-ak101								&lt;br /&gt;
inv_name_short			= wpn-ak101&lt;br /&gt;
inv_weight			= 3.3								&lt;br /&gt;
&lt;br /&gt;
inv_grid_width			= 5	 &lt;br /&gt;
inv_grid_height			= 2	    &lt;br /&gt;
inv_grid_x				= 11  &lt;br /&gt;
inv_grid_y				= 29&lt;br /&gt;
&lt;br /&gt;
kill_msg_x			= 0&lt;br /&gt;
kill_msg_y			= 28&lt;br /&gt;
kill_msg_width		= 84&lt;br /&gt;
kill_msg_height		= 28&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
;params of weapon recoil&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_base			= 0.15;0.2		&lt;br /&gt;
control_inertion_factor			= 1.1f;1.25f&lt;br /&gt;
&lt;br /&gt;
;отдача&lt;br /&gt;
cam_relax_speed         		=6;5;3.5; 0.15		&lt;br /&gt;
cam_dispersion          		= 0.1;0.15		&lt;br /&gt;
cam_dispersion_inc			= 0.2;0.3		&lt;br /&gt;
cam_dispertion_frac			= 0.8;0.9		&lt;br /&gt;
cam_max_angle				= 10.0	    	&lt;br /&gt;
cam_max_angle_horz			= 20.0		&lt;br /&gt;
cam_step_angle_horz			= 1.1;1		&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_condition_factor 	= 5.7;5	    	 &lt;br /&gt;
misfire_probability 		= 0.0055;0.003	 &lt;br /&gt;
misfire_condition_k			= 0.06;0.05&lt;br /&gt;
condition_shot_dec 			= 0.00035;0.0001	&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
fire_point             		=  0,0.216,0.638			 &lt;br /&gt;
fire_point2            		=  0,0.216,0.730			&lt;br /&gt;
&lt;br /&gt;
flame_particles				= weapons\generic_weapon05	&lt;br /&gt;
smoke_particles				= weapons\generic_shoot_00&lt;br /&gt;
grenade_flame_particles		= weapons\generic_weapon01&lt;br /&gt;
	&lt;br /&gt;
shell_point		 			= 0,0.216,0.174				&lt;br /&gt;
shell_particles	 			= weapons\generic_shells	&lt;br /&gt;
&lt;br /&gt;
PDM_disp_base 				= 1.0&lt;br /&gt;
PDM_disp_vel_factor 		= 1.3&lt;br /&gt;
PDM_disp_accel_factor 		= 1.3&lt;br /&gt;
PDM_crouch	 				= 1.0&lt;br /&gt;
PDM_crouch_no_acc 			= 1.0&lt;br /&gt;
&lt;br /&gt;
; ttc&lt;br /&gt;
hit_power                	= 0.36, 0.4, 0.43, 0.46		&lt;br /&gt;
hit_impulse		 			= 140			&lt;br /&gt;
hit_type 					= fire_wound 	&lt;br /&gt;
fire_distance            	= 1700		&lt;br /&gt;
bullet_speed				= 1000		&lt;br /&gt;
rpm                      	= 750		&lt;br /&gt;
&lt;br /&gt;
use_aim_bullet				= true		&lt;br /&gt;
time_to_aim					= 1.0	&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
silencer_hit_power       	= 0.38&lt;br /&gt;
silencer_hit_impulse	 	= 120&lt;br /&gt;
silencer_fire_distance   	= 250&lt;br /&gt;
silencer_bullet_speed	 	= 600&lt;br /&gt;
&lt;br /&gt;
hud                      	= wpn_ak101_hud				&lt;br /&gt;
&lt;br /&gt;
position         	        = -0.026,-0.172,0			&lt;br /&gt;
orientation      	        = 0,0,0						&lt;br /&gt;
&lt;br /&gt;
;--STRAP PARAMETERS-----------------------------------------------------------------&lt;br /&gt;
strap_position         		= -0.16,-0.40,0.15			&lt;br /&gt;
strap_orientation      		= -10,-5,10					&lt;br /&gt;
strap_bone0					= bip01_spine2&lt;br /&gt;
strap_bone1					= bip01_spine1&lt;br /&gt;
&lt;br /&gt;
visual         		        = weapons\ak-101\wpn_ak101		&lt;br /&gt;
&lt;br /&gt;
light_color					= 0.6,0.5,0.3				&lt;br /&gt;
light_range					= 5							&lt;br /&gt;
light_var_color				= 0.05						&lt;br /&gt;
light_var_range				= 0.5&lt;br /&gt;
light_time 					= 0.2						&lt;br /&gt;
&lt;br /&gt;
ph_mass						= 5							&lt;br /&gt;
&lt;br /&gt;
;addons&lt;br /&gt;
scope_status				= 2							&lt;br /&gt;
silencer_status				= 2							&lt;br /&gt;
grenade_launcher_status		= 0;2							&lt;br /&gt;
&lt;br /&gt;
zoom_enabled				= true						&lt;br /&gt;
scope_zoom_factor	    	= 50						&lt;br /&gt;
&lt;br /&gt;
scope_name 					= wpn_addon_scope			&lt;br /&gt;
scope_x 					= 42						&lt;br /&gt;
scope_y 					= 3&lt;br /&gt;
silencer_name  				= wpn_addon_silencer		&lt;br /&gt;
silencer_x 					= 218						&lt;br /&gt;
silencer_y 					= 13					&lt;br /&gt;
grenade_launcher_name 		= wpn_addon_grenade_launcher&lt;br /&gt;
grenade_launcher_x 			= 116						&lt;br /&gt;
grenade_launcher_y 			= 23&lt;br /&gt;
&lt;br /&gt;
;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))&lt;br /&gt;
snd_draw					= weapons\ak74_draw&lt;br /&gt;
snd_holster					= weapons\generic_holster&lt;br /&gt;
snd_shoot					= weapons\ak74_shot_0&lt;br /&gt;
snd_shoot1					= weapons\ak74_shot_1&lt;br /&gt;
snd_shoot2					= weapons\ak74_shot_2&lt;br /&gt;
snd_shoot3					= weapons\ak74_shot_3		&lt;br /&gt;
snd_empty					= weapons\gen_empty, 0.5&lt;br /&gt;
snd_reload					= weapons\ak74_reload, 0.7, 0.35&lt;br /&gt;
snd_shoot_grenade			= weapons\gen_grenshoot&lt;br /&gt;
snd_reload_grenade			= weapons\gen_grenload, 1.0, 0.8&lt;br /&gt;
snd_switch					= weapons\groza_switch, 1.0, 0.5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
;silencer_flame_particles 	= weapons\generic_weapon01&lt;br /&gt;
silencer_smoke_particles 	= weapons\generic_shoot_00&lt;br /&gt;
&lt;br /&gt;
snd_silncer_shot			= weapons\w_ak74_shot1 &lt;br /&gt;
&lt;br /&gt;
silencer_light_color		= 0.6,0.5,0.3&lt;br /&gt;
silencer_light_range		= 0.01&lt;br /&gt;
silencer_light_var_color	= 0.05&lt;br /&gt;
silencer_light_var_range	= 0.5&lt;br /&gt;
silencer_light_time 		= 0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
;-- HUD DESCRIPTION&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
[wpn_ak101_hud]&lt;br /&gt;
allow_inertion				= true&lt;br /&gt;
&lt;br /&gt;
;similar to corresponding params in weapon section but for 1st person view&lt;br /&gt;
&lt;br /&gt;
shell_point					= -0.065000,0.000000,-0.045000&lt;br /&gt;
shell_dir			     	= 0.0, 1.0, 0.0&lt;br /&gt;
&lt;br /&gt;
fire_point               	= 0.09,0.020,-0.06&lt;br /&gt;
fire_point2              	= 0.30, 0.00, 0.05&lt;br /&gt;
fire_bone               	= wpn_body&lt;br /&gt;
&lt;br /&gt;
orientation             	= 0, 0, 0		&lt;br /&gt;
position                	= 0, 0, 0.05&lt;br /&gt;
visual                  	= weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
&lt;br /&gt;
grenade_bone            	= wpn_grenade	&lt;br /&gt;
&lt;br /&gt;
; animation names&lt;br /&gt;
&lt;br /&gt;
anim_idle					= idle&lt;br /&gt;
anim_idle_aim				= idle_aim&lt;br /&gt;
anim_reload					= reload&lt;br /&gt;
anim_draw					= draw_wo_gl&lt;br /&gt;
anim_holster				= holster_wo_gl&lt;br /&gt;
anim_shoot					= shoot&lt;br /&gt;
			&lt;br /&gt;
; animation names&lt;br /&gt;
; attached grenade launcher [GRENADE fire mode]&lt;br /&gt;
anim_idle_g					= idle_grenade&lt;br /&gt;
anim_idle_g_aim				= idle_g_aim&lt;br /&gt;
anim_reload_g				= reload_grenade&lt;br /&gt;
anim_shoot_g				= shoot_grenade&lt;br /&gt;
anim_switch_grenade_on		= switch_grenade&lt;br /&gt;
anim_switch_grenade_off		= switch_grenade_off&lt;br /&gt;
anim_draw_g					= draw_grenade_mode&lt;br /&gt;
anim_holster_g				= holster_grenade_mode&lt;br /&gt;
&lt;br /&gt;
; attached grenade launcher [NORMAL fire mode]&lt;br /&gt;
anim_idle_gl				= idle_w_gl&lt;br /&gt;
anim_idle_gl_aim			= idle_w_gl_aim&lt;br /&gt;
anim_reload_gl				= reload_w_gl&lt;br /&gt;
anim_draw_gl				= draw_w_gl&lt;br /&gt;
anim_holster_gl				= holster_w_gl&lt;br /&gt;
anim_shoot_gl				= shoot_w_gl&lt;br /&gt;
anim_idle_sprint			= idle_sprint&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;HUD offset in zoom mode (to all)&lt;br /&gt;
;(use CONSOLE: hud_adjust_mode 0,1,2, then keys WSADQE and P to show current value in console)&lt;br /&gt;
&lt;br /&gt;
zoom_offset			= -0.112400,0.016800,-0.115000&lt;br /&gt;
zoom_rotate_x		= 0.000200&lt;br /&gt;
zoom_rotate_y		= 0.017500&lt;br /&gt;
&lt;br /&gt;
zoom_hide_crosshair	= true						&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in NORMAL shoot mode&lt;br /&gt;
&lt;br /&gt;
grenade_normal_zoom_offset			= -0.112500,0.014000,0.000000&lt;br /&gt;
grenade_normal_zoom_rotate_x		= -0.000900&lt;br /&gt;
grenade_normal_zoom_rotate_y		= 0.017200&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in GRENADE mode&lt;br /&gt;
&lt;br /&gt;
grenade_zoom_offset			= -0.039600,-0.433100,0.000000&lt;br /&gt;
grenade_zoom_rotate_x		= -0.538700&lt;br /&gt;
grenade_zoom_rotate_y		= -0.033800&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Регистрация===&lt;br /&gt;
&lt;br /&gt;
Итак, с характеристиками разобрались. Теперь зарегистрируем оружие в файле '''weapons.ltx'''. Для этого пропишем в него строку следующего вида:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#include &amp;quot;w_ak101.ltx&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также, необходимо прописать модели, используемые для отображения оружия, в '''prefetch.ltx''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[...]&lt;br /&gt;
weapons\abakan\wpn_abakan&lt;br /&gt;
weapons\abakan\wpn_abakan_hud&lt;br /&gt;
weapons\ak-101\wpn_ak101&lt;br /&gt;
weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
weapons\ak74\wpn_ak74&lt;br /&gt;
weapons\ak74\wpn_ak74_hud&lt;br /&gt;
[...]&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Так же не забудте в файле '''mp_ranks.ltx''' прописать после '''available_items''' (которое внизу)&lt;br /&gt;
прописать название своего оружия. Это предотвратит вылет при убийстве ГГ а также вылет при выкидывании оружия из инвентаря.&lt;br /&gt;
&lt;br /&gt;
==Добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Осталось добавить оружие в игру. &lt;br /&gt;
&lt;br /&gt;
Выдайте его некоторым NPC ([[Редактирование NPC#Практика|как это сделать?]]), расширьте ассортимент торговцев ([[Редактирование торговцев#Расширяем ассортимент|как это сделать?]]).&lt;br /&gt;
&lt;br /&gt;
А вот как оно будет выглядеть в игре:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Russian_Guns_3.jpeg]]&lt;br /&gt;
&lt;br /&gt;
P.S. При создании нового оружия можно допустить некоторые ошибки в конфиге, что приведёт к вылету игры.&lt;br /&gt;
При таком случае сразу после вылета игры заходим в любой текстовый редактор и нажимаем клавиши Ctrl+V (вставить) и внизу можно увидеть из-за какой ошибки вылетела игра, а там уже дело техники исправить ошибку...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CModelPool::Instance_Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp&lt;br /&gt;
Line          : 111&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find model file 'weapons\gaussmod\wpn_gauss_hud.ogf'.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В данном примере видно, что либо вы не создали папку с необходимой моделью оружия, либо неправильно прописан путь к нужному файлу...&lt;br /&gt;
&lt;br /&gt;
(Чтобы в игре название и описание оружия были не от АК-74 а от нашей АК-101 делаем как написано в этой [http://stalkerin.gameru.net/wiki/index.php/%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BE%D0%B2 статье], всё начиная с &amp;quot;''И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test''&amp;quot; вам понадобится.)&lt;br /&gt;
Информацию о оружии можно найти [http://world.guns.ru здесь.]&lt;br /&gt;
&lt;br /&gt;
'''АК-101''' - ''Автомат Калашникова АК-101 является экспортной модификацией штатного автомата Российской армии АК-74М. Главным (и фактически единственным) отличием АК-101 от АК-74М является калибр - автомат &amp;quot;сотой&amp;quot; серии использует патроны калибра 5.56мм (5.56х45 НАТО) и соответствующие магазины, в остальном автоматы идентичны.''&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана: &lt;br /&gt;
*[[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
&lt;br /&gt;
Статья подправлена:&lt;br /&gt;
*[[Участник:Хемуль04|Хемуль04]]&lt;br /&gt;
&lt;br /&gt;
По материалам мода [[Mod:Russian Guns|Russian Guns]] за авторством: &lt;br /&gt;
*[[Участник:Tony|Tony]]&lt;br /&gt;
*[[Участник:lez0|lez0]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
&lt;br /&gt;
Когда будете прописыватьв конфиге значения &amp;quot;inv_grid_y&amp;quot; и &amp;quot;inv_grid_x&amp;quot; имейте в виду, что отсчет по сетке идет с верхнего левого угла и указывать нужно верхний левый угол картинки, которая должна отображатся в инвентаре. То есть координаты самого первого угла будут 0;0. Самая первая винтовка в файле ...\S.T.A.L.K.E.R\gamedata\textures\ui\ui_icon_equipment.dds это - СВД. И если вы посмотрите ее конфигурационный файл то увидете, что там указаны значения inv_grid_x = 0   inv_grid_y = 0.  Отсчет по оси X идет по горизонтали с лева на право, а по оси Y - сверху вниз по возрастающей. Но считать с начала сетки - очень не удобно, поэтому вычисляйте координаты вашего обьекта по известным координатам уже существующего и реально правильно отображаемого файла в игре. Например мы имеем inv_grid_x= 5 inv_grid_y= 9 для fn2000(координаты верхнего левого угла) и мы хотим узнать координаты гранатф ф1, которая находится рядом. Для этого удобно использовать фотошоп с сеткой 50 на 50 пикселей. (как ее сделать описано по ссылке в статье к которой написана эта поправка.) И так мы видим что граната находится сразу справа порсле винтовки. То есть на 4-й клетке после квадрата угла винтовки без его учета. Она находится спраа, а значит нужно по оси X к 5 прибавить 4, и получится 9. По оси Y координтаы не изменились так как они находятся на одной линии с винтовкой. Таким образом получает коордитаны гранаты 9 по Х и 9 по Y. Если мы посмотрим конфиг гранаты то увидим там &amp;quot;inv_grid_x= 9&amp;quot; &amp;quot;inv_grid_y= 9&amp;quot;. То что и соответствует тому, что мы высчитали. :) Удачи.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8(%D1%87._3)</id>
		<title>Расширенные настройки(ч. 3)</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B0%D1%81%D1%88%D0%B8%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8(%D1%87._3)"/>
				<updated>2017-01-15T08:08:11Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.8.13 (обсуждение) к версии 94.232.52.68&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;3&amp;quot; align=&amp;quot;right&amp;quot; width=&amp;quot;260&amp;quot; cellspacing=&amp;quot;1&amp;quot; style=&amp;quot;background:#5e5e5e;&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 ! style=&amp;quot;background:#ffffff;&amp;quot; align=&amp;quot;left&amp;quot; | Содержание&lt;br /&gt;
 |-&lt;br /&gt;
 | style=&amp;quot;background:#ffffff;&amp;quot; align=&amp;quot;left&amp;quot;|&lt;br /&gt;
{{Шаблон:Содержание руководства по настройке}}&lt;br /&gt;
 |-&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
== Переключатели командной строки ==&lt;br /&gt;
&lt;br /&gt;
Ряд дополнительных команд, которые ты можешь запускать при старте STALKER'а называются Переключателями Командной Строки. Эти «переключатели» - это команды посланные главному исполняемому файлу ''XR_3DA.exe'', говорящие движку выполнить определённые действия при запуске игры. Для использования переключателей командной строки, кликните правой кнопкой мыши на ярлыке STALKER'a и выберите ''«Свойства»''. Далее в поле ''«Объект»'', через пробел от последнего символа, вставьте переключатель(и) которые вы хотите использовать. Например:&lt;br /&gt;
&lt;br /&gt;
''&amp;quot;C:\Program Files\THQ\S.T.A.L.K.E.R. - Shadow of Chernobyl\bin\XR_3DA.exe&amp;quot; -nointro -noprefetch -noshadows''&lt;br /&gt;
&lt;br /&gt;
Переключатели ''-nointro'', ''-noprefetch'' и ''-noshadows'' добавлены для отключения вводных заставок с логотипами, предварительной загрузки информации (ускоряет запуск и загрузку сохранений) и отключения всех не солнечных теней в игре. По другому не возможно использовать предигровые настройки. Ты можешь вернуть настройки в любой момент просто удалив переключатель с ненужной настройкой из ярлыка или создав другой с требуемыми переключателями и использовать его когда ты захочешь запустить игру с другими настройками.&lt;br /&gt;
{{Message_box|&lt;br /&gt;
id = pseudoscience|&lt;br /&gt;
align = left|&lt;br /&gt;
width = 40%|&lt;br /&gt;
backgroundcolor	= #f9f9f9|&lt;br /&gt;
image = Lamp.gif|&lt;br /&gt;
heading	= дополнение от --HikeR 14:17, 31 мая 2007 (MSD)][|&lt;br /&gt;
message = Для различных ситуаций можно создать несколько копий ярлыков для запуска игры с различными параметрами. Например я использую ключ ''-nointro'' для всех вариантов, комбинацию ''-noprefetch -noshadows -nosound -r4xx'' для всяких экспериментов (отключен звук, префетч, тени, форсированно используется DX8, максимально быстрая загрузка), и просто ярлык для обычной игры&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
[[Изображение:STALKER_12.jpg|center|300px]]&lt;br /&gt;
&lt;br /&gt;
Полный список Переключателей Командной Строки для  STALKER'а приведённый ниже сопровождается также кратким пояснение для каждого, где это было возможно. Я протестировал каждый и все переключатели, но некоторые переключатели не имеют видимого эффекта или просто подвешивают игру во время загрузки. Инструкции по предполагаемому использованию наиболее полезных переключателей приведены на протяжении этого гида:&lt;br /&gt;
&lt;br /&gt;
== Полный список ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standart&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Опция||Описание&lt;br /&gt;
|-&lt;br /&gt;
| -_g||Отключает проверку по _g.script?&lt;br /&gt;
|-&lt;br /&gt;
| -batch_benchmark||Запускает бенчмарк&lt;br /&gt;
|-&lt;br /&gt;
| -bug||баг? что-то связанное с отладкой скриптов&lt;br /&gt;
|-&lt;br /&gt;
| -build||Копирует все загружаемые файлы с сервера в корневую папку на локальный комп, т.е с fs_server_root (сервак) -&amp;gt; на ваш комп (fs_root)&lt;br /&gt;
|-&lt;br /&gt;
| -center_screen||Центрирует экран, когда игра запущена в оконном режиме.&lt;br /&gt;
|-&lt;br /&gt;
| -debug_ge||Используется для отладки игровых событий&lt;br /&gt;
|-&lt;br /&gt;
| -depth16||Глубина цветопередачи 16 бит&lt;br /&gt;
|-&lt;br /&gt;
| -designer||Зов Припяти! - убирает многие скриптовые проверки: апдейт погоды, убирание оружия и много чего&lt;br /&gt;
|-&lt;br /&gt;
| -demomode [ ]||Запускает в начале игры заданный в [скобках] ролик с облетом локации&lt;br /&gt;
|-&lt;br /&gt;
| -disasm||записывает в папке логов папку с декомпилеными шейдерами в тестовом виде&lt;br /&gt;
|-&lt;br /&gt;
| -dsound||Использовать DirectSound вместо OpenAL.&lt;br /&gt;
|-&lt;br /&gt;
| -ebuild||Выполняет частичную проверку целостности ресурсов&lt;br /&gt;
|-&lt;br /&gt;
| -file_activity||Записывает в файл активность консоли на протяжении игры.&lt;br /&gt;
|-&lt;br /&gt;
| -fsltx||Инициализация игры через fs.ltx вместо fsgame.ltx Актуально при совмещении X-Ray SDK с игрой. &lt;br /&gt;
|-&lt;br /&gt;
| -gloss||+ ставим любое число и R2_gloss_factor (отражение, намокание поверхностей) становится равным ему без ограничений&lt;br /&gt;
|-&lt;br /&gt;
| -gpu_nopure||Переключает GPU состояние из Pure Hardware (полное ускорение) в Simply Hardware (упрощенное ускорение) режим.&lt;br /&gt;
|-&lt;br /&gt;
| -gpu_ref||Switches the GPU state to Reference mode.&lt;br /&gt;
|-&lt;br /&gt;
| -gpu_sw||Переключает GPU режим в Software Renderer(Программное Ускорение).&lt;br /&gt;
|-&lt;br /&gt;
| -i||Отключает захват устройств ввода&lt;br /&gt;
|-&lt;br /&gt;
| -keep_lua||Lua State машина не пересоздаётся при пересоздании симулятора жизни&lt;br /&gt;
|-&lt;br /&gt;
| -launcher||в билдах запускал функцию из библиотеки XRLauncher.dll (появлялось серое окно с настройками)&lt;br /&gt;
|-&lt;br /&gt;
| -load [savegame]||Загружает указанные сохранения при запуске.&lt;br /&gt;
|-&lt;br /&gt;
| -ltx [filename.ltx]||Загружает и исполняет указанный filename.ltx конфигурационный файл. (имеется ввиду свой аналог system.ltx)&lt;br /&gt;
|-&lt;br /&gt;
| -mblur||Позволяет команде r2_mblur исполнятся правильно, если использована.&lt;br /&gt;
|-&lt;br /&gt;
| -mem_debug||Отладка операций с памятью. В релизной версии не работает&lt;br /&gt;
|-&lt;br /&gt;
| -mt_cdb||Разрешает многопоточное создание Collision-базы. Ускоряет загрузку, но очень негативно влияет на фрагментацию памяти&lt;br /&gt;
|-&lt;br /&gt;
| -nes_texture_storing||Заполняет массив необходимых для уровня текстур&lt;br /&gt;
|-&lt;br /&gt;
| -netsim||Включает симуляцию сети&lt;br /&gt;
|-&lt;br /&gt;
| -no_call_stack_assert||Отключает копирование содержимого Call Stack в буфер обмена и вывод его в лог в случае ошибки&lt;br /&gt;
|-&lt;br /&gt;
| -no_direct_connect||Активирует подключение к localhost даже для сингла (на некоторых машинах и настройках не работает)&lt;br /&gt;
|-&lt;br /&gt;
| -no_memory_usage||Отключает сбор статистики использования памяти (т.к. она иногда валится на компьютерах, где другие процессы создают потоки в процессе S.T.A.L.K.E.R., и в этих потоках |- во время сбора статистики по памяти выделяют память из кучи CRT или кучи, полученной с помощью GetProcessHeap())&lt;br /&gt;
|-&lt;br /&gt;
| -no_occq||ЗП c каким-то патчем - запуск без эффекта ambient occqlusion&lt;br /&gt;
|-&lt;br /&gt;
| -nodf24||Включает оптимизацию карт теней для видеокарт ATI&lt;br /&gt;
|-&lt;br /&gt;
| -nodistort||Удаляет эффекты искажения, например тёплый воздух вокруг огня и сворачивания возле аномалий.&lt;br /&gt;
|-&lt;br /&gt;
| -nointro||Пропустить все вступительные ролики/заставки. в Зове Припяти не работает...&lt;br /&gt;
|-&lt;br /&gt;
| -nojit||Отключает Just-In-Time Debugger. То-есть, если игра слетит - лога в буфере обмена не будет.&lt;br /&gt;
|-&lt;br /&gt;
| -nolog||Отключает ведение лога.&lt;br /&gt;
|-&lt;br /&gt;
| -nonvs||Что-то со stansil-буфером для nvidia (либо исправление бага в драйверах, либо оптимизация)&lt;br /&gt;
|-&lt;br /&gt;
| -noprefetch||Отключает предварительную загрузку ресурсов. Игра загружаются быстрее, игровые тормоза могут усилится или привести к зависанию.&lt;br /&gt;
|-&lt;br /&gt;
| -noshadows||Отключает тени от динамических источников света (кроме солнца). Может добавить FPS.&lt;br /&gt;
|-&lt;br /&gt;
| -nosound||Отключает весь звук в игре.&lt;br /&gt;
|-&lt;br /&gt;
| -overlay [директория]||Назначить другую директорию для сохранённых игр/профилей/конфигурационных файлов. (app_data_root)&lt;br /&gt;
|-&lt;br /&gt;
| -pure_alloc||Устанавливает использование visual allocator по умолчанию&lt;br /&gt;
|-&lt;br /&gt;
| -perfhud_hack||Параметр для обмана nVidia PerfHUD-а, говорит о том, что все рендеры доступны. Видимо, при работе с PerfHUD-ом настоящая проверка доступности рендеров не работает&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| -pack [ ]||паковка.. во что не ясно, возможно в .xdb&lt;br /&gt;
|-&lt;br /&gt;
| -psp||Включает режим вида от третьего лица, но есть баги.&lt;br /&gt;
|-&lt;br /&gt;
| -r2||Запускает STALKER в режиме DX9 Полного динамического освещения.&lt;br /&gt;
|-&lt;br /&gt;
| -r2a||Запускает STALKER в режиме DX9 Объектного динамического освещения.&lt;br /&gt;
|-&lt;br /&gt;
| -r4xx||Запускает STALKER в режиме DX8 Статического освещения.&lt;br /&gt;
|-&lt;br /&gt;
| -silent_error_mode||Окно об ошибке не перекрывает все окна (в билдах именно так работало, думаю ЧН и ЗП работать не будет из-за стороннего отладчика)&lt;br /&gt;
|-&lt;br /&gt;
| -sjitter||Устанавливает #define USE_SJITTER=1 при компиляции шейдеров.&lt;br /&gt;
|-&lt;br /&gt;
| -skinw||Устанавливает #define SKIN_COLOR=1 при компиляции шейдеров.&lt;br /&gt;
|-&lt;br /&gt;
| -skip_memtest|| ЗП отключает проверку кол-ва памяти перед запуском игры - выдает много тормозов, но позволяет ставить текстуры на максимум.&lt;br /&gt;
|-&lt;br /&gt;
|colspan=2|Следующие переключатели устанавливают размер [http://en.wikipedia.org/wiki/Shadow_mapping карты теней], которая влияет на качество всех теней, похожи на внутриигровую настройку ''качество теней''. Здесь ты можешь точно указать точное высшее разрешение качества теней (т.е. ''-smap2048'', ''-smap3072'' и ''-smap4096'') которое увиличивает качество теней, но уменьшает FPS:&lt;br /&gt;
|-&lt;br /&gt;
| -smap1536||Устанавливает размер карты теней 1536x1536&lt;br /&gt;
|-&lt;br /&gt;
| -smap2048||Устанавливает размер карты теней 2048x2048&lt;br /&gt;
|-&lt;br /&gt;
| -smap2560||Устанавливает размер карты теней 2560x2560&lt;br /&gt;
|-&lt;br /&gt;
| -smap3072||Устанавливает размер карты теней 3072x3072&lt;br /&gt;
|-&lt;br /&gt;
| -smap4096||Устанавливает размер карты теней 4096x4096&lt;br /&gt;
|-&lt;br /&gt;
| -ss_tga||Все скриншоты в игре будут делаться в оба формата: .JPG и высокого качества .TGA формат.&lt;br /&gt;
|-&lt;br /&gt;
| -start [ ]||Загрузка уровня в обход меню, требуется много параметров&lt;br /&gt;
|-&lt;br /&gt;
| -sunfilter||Устанавливает #define USE_SUNFILTER=1 при компиляции шейдеров (На земле появляется большое кол-во перпендикулярных взгляду полос, движутся вместе с камерой) &lt;br /&gt;
|-&lt;br /&gt;
| -svcfg||Устанавливает путь к конфигурационному файлу user.ltx&lt;br /&gt;
|-&lt;br /&gt;
| -tsh||Устанавливает #define USE_TSHADOWS=1 при компиляции шейдеров&lt;br /&gt;
|-&lt;br /&gt;
| -tdemo||В старых билдах, что-то связанно с запуском техдемок&lt;br /&gt;
|-&lt;br /&gt;
| -tdemof||В старых билдах, что-то связанно с запуском техдемок&lt;br /&gt;
|-&lt;br /&gt;
| -techdemo||В старых билдах, что-то связанно с запуском техдемок&lt;br /&gt;
|-&lt;br /&gt;
| -tune||Вылет при запуске. по сути отладочный параметр - включает поддержку внешнего профилировщика&lt;br /&gt;
|-&lt;br /&gt;
| -x86||Запрещает использовать оптимизированные функции движка под разный набор инструкций процессора (MMX, 3DNow, SSE, SSE2, SSE3, SSE4_1, SSE4_2 )&lt;br /&gt;
|-&lt;br /&gt;
| -xclsx||Отладочный параметр - скрывает предупреждения и ошибки, не работает в релизной версии&lt;br /&gt;
|-&lt;br /&gt;
| -$||префикс для консольной команды, которая выполнится при старте уровня&lt;br /&gt;
|}&lt;br /&gt;
Eсли у вас есть определённые знания (а не предположения) о том, что эти переключатели делают и это может быть полезно процитировать, тогда пишите [[Обсуждение:Расширенные настройки(ч. 3)|сюда]].&lt;br /&gt;
&lt;br /&gt;
[[Заключение|Следующая страница]] содержит некоторые умозаключения с несколькими полезными подсказками.&lt;br /&gt;
&lt;br /&gt;
[[Категория:Руководства]]&lt;br /&gt;
[[Категория:Справочники]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Создание нового оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BD%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-01-15T08:06:27Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.8.13 (обсуждение) к версии OlegatoR&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В этой статье мы научимся создавать новые образцы вооружения. Для начала, мы будем использовать модели из оригинальной игры. Если вы хотите создать оружие, имеющее уникальный внешний вид, ознакомьтесь с [[Создание моделей и их добавление в игру|уроком]] по созданию моделей.&lt;br /&gt;
&lt;br /&gt;
Добавим в игру '''АК101'''.&lt;br /&gt;
&lt;br /&gt;
==Внешний вид==&lt;br /&gt;
&lt;br /&gt;
Позаботимся о том, чтобы наше оружие отличалось внешне от того же '''АК74'''.&lt;br /&gt;
&lt;br /&gt;
===Текстуры===&lt;br /&gt;
&lt;br /&gt;
Нарисуем для оружия новую текстуру. Подробно останавливаться на этом процессе не буду, ознакомьтесь с примером, приведенным [[Изменение текстур#Изменение текстур моделей|здесь]]. Итак, основываясь на текстуре '''АК74''', мы сделали вот такую текстуру:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 texture.jpg]]&lt;br /&gt;
&lt;br /&gt;
Файлы текстур мы назвали:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak10.dds'''&lt;br /&gt;
* '''wpn_ak10_bump#.dds'''&lt;br /&gt;
* '''wpn_ak10_bump.dds'''&lt;br /&gt;
&lt;br /&gt;
===Модели===&lt;br /&gt;
&lt;br /&gt;
Новых моделей мы пока делать не станем, просто воспользуемся дублированными моделями от '''АК74'''. Скопируем папку:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\meshes\weapons\ak74\''' &lt;br /&gt;
&lt;br /&gt;
И назовем её '''ak-101'''. Содержимое, соответственно, переименуем в:&lt;br /&gt;
&lt;br /&gt;
* '''wpn_ak101.ogf'''&lt;br /&gt;
* '''wpn_ak101_hud.ogf'''.&lt;br /&gt;
&lt;br /&gt;
Теперь пропишем в эти модели созданные нами текстуры. Способ описан [[Изменение текстур#Создание новых visual для использования с новыми объектами|здесь]]'''.&lt;br /&gt;
&lt;br /&gt;
P.S. от Кепа: Вобще, если вы создаёте новое оружие на основе старой модели, то удобней будет прописывать его через файл gamedata\config\misc\unique_items.ltx (в Тени чернобыля). В Чистом небе уникальные стволы лежат в файлах оружия.&lt;br /&gt;
Смысл в том, что вам не нужно бутет переписывать все значения оружия в новый файл, а просто надо добавить ссылки на новые текстуры и описания, и перечислить свойства, которые Вы хотите заменить. Кроме того, создавая отдельный файл модели для нового оружия Вы тупо загружаете одну и туже информацию в память по второму кругу (это нехорошо, да). Всё остальное надо делать также как написано далее.&lt;br /&gt;
&lt;br /&gt;
Если создаете оружие с новой моделью то обязательно не оставляйте её без изменений.Почему-то в игре не может быть двух оружий с одинаковыми моделями.И еще-если вы создаете прототипное оружие(меняете часть конфигов) то обязательно кладите конфиг в соответствующий файл(в ЧН и ЗП это файл с оружием-прототипом,а в ТЧ unique_items) иначе при загрузке игра будет вылетать,примерно так:&lt;br /&gt;
argument:can not find section 'название вашего оружия'&lt;br /&gt;
&lt;br /&gt;
===Иконки===&lt;br /&gt;
&lt;br /&gt;
Добавим в игру иконки, которыми оружие будет отображаться в инвентаре. Способ подробно описан [[Изменение текстур#Изменение иконок предметов|здесь]].&lt;br /&gt;
&lt;br /&gt;
Вот, что получилось в конечном итоге:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:500px-AK101 icon.jpg]]&lt;br /&gt;
&lt;br /&gt;
==Конфиги==&lt;br /&gt;
&lt;br /&gt;
Новое оружие мы будем делать на базе оригинальных конфигурационных файлов. Создадим '''АК101''' на базе конфигов '''АК74'''. &lt;br /&gt;
&lt;br /&gt;
===Свойства оружия===&lt;br /&gt;
&lt;br /&gt;
Скопируем файл из папки:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\weapons\ak74.ltx'''&lt;br /&gt;
&lt;br /&gt;
Назовем его '''ak101.ltx'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Отредактируем свойства по своему усмотрению (но лучше - в соответствии с достоверной информацией о характеристиках оружия, т.к. '''АК101''' - всё-таки оружие реально существующее). Редактирование конфигов оружия подробно описано в отдельном [[Редактирование оружия|уроке]]. В данном случае конфиг был составлен таким образом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
[wpn_ak101]:identity_immunities&lt;br /&gt;
GroupControlSection		= spawn_group&lt;br /&gt;
discovery_dependency	= &lt;br /&gt;
$spawn              	= &amp;quot;weapons\ak-101&amp;quot;	; name and section in level editor&lt;br /&gt;
$npc					= on				&lt;br /&gt;
$prefetch 				= 8&lt;br /&gt;
scheduled				= off               ;[] option for ALife Simulator&lt;br /&gt;
cform               	= skeleton&lt;br /&gt;
class               	= WP_AK74			; class of the weapon that corresponding to CPP class&lt;br /&gt;
min_radius          	= 30				; [] for AI&lt;br /&gt;
max_radius          	= 100				; [] for AI&lt;br /&gt;
description				= enc_weapons1_wpn-ak101&lt;br /&gt;
	&lt;br /&gt;
ef_main_weapon_type		= 2&lt;br /&gt;
ef_weapon_type			= 6&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
holder_range_modifier	= 1.0		       ; во сколько раз увеличивается eye_range &lt;br /&gt;
holder_fov_modifier		= 0.7              ; во сколько раз увеличивается eye_fov&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
cost					= 2;4000				&lt;br /&gt;
weapon_class			= assault_rifle		&lt;br /&gt;
	&lt;br /&gt;
ammo_limit				= 210				&lt;br /&gt;
ammo_elapsed			= 30				&lt;br /&gt;
	&lt;br /&gt;
ammo_mag_size			= 30				&lt;br /&gt;
fire_modes				= 1, -1&lt;br /&gt;
&lt;br /&gt;
ammo_class				= ammo_5.56x45_ss190, ammo_5.56x45_ap	  &lt;br /&gt;
grenade_class			= ammo_vog-25, ammo_vog-25p			&lt;br /&gt;
launch_speed			= 0&lt;br /&gt;
&lt;br /&gt;
hand_dependence			= 1									&lt;br /&gt;
single_handed			= 0&lt;br /&gt;
	&lt;br /&gt;
slot 					= 2									&lt;br /&gt;
animation_slot			= 2									&lt;br /&gt;
inv_name	        	= wpn-ak101								&lt;br /&gt;
inv_name_short			= wpn-ak101&lt;br /&gt;
inv_weight			= 3.3								&lt;br /&gt;
&lt;br /&gt;
inv_grid_width			= 5	 &lt;br /&gt;
inv_grid_height			= 2	    &lt;br /&gt;
inv_grid_x				= 11  &lt;br /&gt;
inv_grid_y				= 29&lt;br /&gt;
&lt;br /&gt;
kill_msg_x			= 0&lt;br /&gt;
kill_msg_y			= 28&lt;br /&gt;
kill_msg_width		= 84&lt;br /&gt;
kill_msg_height		= 28&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
;params of weapon recoil&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_base			= 0.15;0.2		&lt;br /&gt;
control_inertion_factor			= 1.1f;1.25f&lt;br /&gt;
&lt;br /&gt;
;отдача&lt;br /&gt;
cam_relax_speed         		=6;5;3.5; 0.15		&lt;br /&gt;
cam_dispersion          		= 0.1;0.15		&lt;br /&gt;
cam_dispersion_inc			= 0.2;0.3		&lt;br /&gt;
cam_dispertion_frac			= 0.8;0.9		&lt;br /&gt;
cam_max_angle				= 10.0	    	&lt;br /&gt;
cam_max_angle_horz			= 20.0		&lt;br /&gt;
cam_step_angle_horz			= 1.1;1		&lt;br /&gt;
&lt;br /&gt;
fire_dispersion_condition_factor 	= 5.7;5	    	 &lt;br /&gt;
misfire_probability 		= 0.0055;0.003	 &lt;br /&gt;
misfire_condition_k			= 0.06;0.05&lt;br /&gt;
condition_shot_dec 			= 0.00035;0.0001	&lt;br /&gt;
;-----------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
fire_point             		=  0,0.216,0.638			 &lt;br /&gt;
fire_point2            		=  0,0.216,0.730			&lt;br /&gt;
&lt;br /&gt;
flame_particles				= weapons\generic_weapon05	&lt;br /&gt;
smoke_particles				= weapons\generic_shoot_00&lt;br /&gt;
grenade_flame_particles		= weapons\generic_weapon01&lt;br /&gt;
	&lt;br /&gt;
shell_point		 			= 0,0.216,0.174				&lt;br /&gt;
shell_particles	 			= weapons\generic_shells	&lt;br /&gt;
&lt;br /&gt;
PDM_disp_base 				= 1.0&lt;br /&gt;
PDM_disp_vel_factor 		= 1.3&lt;br /&gt;
PDM_disp_accel_factor 		= 1.3&lt;br /&gt;
PDM_crouch	 				= 1.0&lt;br /&gt;
PDM_crouch_no_acc 			= 1.0&lt;br /&gt;
&lt;br /&gt;
; ttc&lt;br /&gt;
hit_power                	= 0.36, 0.4, 0.43, 0.46		&lt;br /&gt;
hit_impulse		 			= 140			&lt;br /&gt;
hit_type 					= fire_wound 	&lt;br /&gt;
fire_distance            	= 1700		&lt;br /&gt;
bullet_speed				= 1000		&lt;br /&gt;
rpm                      	= 750		&lt;br /&gt;
&lt;br /&gt;
use_aim_bullet				= true		&lt;br /&gt;
time_to_aim					= 1.0	&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
silencer_hit_power       	= 0.38&lt;br /&gt;
silencer_hit_impulse	 	= 120&lt;br /&gt;
silencer_fire_distance   	= 250&lt;br /&gt;
silencer_bullet_speed	 	= 600&lt;br /&gt;
&lt;br /&gt;
hud                      	= wpn_ak101_hud				&lt;br /&gt;
&lt;br /&gt;
position         	        = -0.026,-0.172,0			&lt;br /&gt;
orientation      	        = 0,0,0						&lt;br /&gt;
&lt;br /&gt;
;--STRAP PARAMETERS-----------------------------------------------------------------&lt;br /&gt;
strap_position         		= -0.16,-0.40,0.15			&lt;br /&gt;
strap_orientation      		= -10,-5,10					&lt;br /&gt;
strap_bone0					= bip01_spine2&lt;br /&gt;
strap_bone1					= bip01_spine1&lt;br /&gt;
&lt;br /&gt;
visual         		        = weapons\ak-101\wpn_ak101		&lt;br /&gt;
&lt;br /&gt;
light_color					= 0.6,0.5,0.3				&lt;br /&gt;
light_range					= 5							&lt;br /&gt;
light_var_color				= 0.05						&lt;br /&gt;
light_var_range				= 0.5&lt;br /&gt;
light_time 					= 0.2						&lt;br /&gt;
&lt;br /&gt;
ph_mass						= 5							&lt;br /&gt;
&lt;br /&gt;
;addons&lt;br /&gt;
scope_status				= 2							&lt;br /&gt;
silencer_status				= 2							&lt;br /&gt;
grenade_launcher_status		= 0;2							&lt;br /&gt;
&lt;br /&gt;
zoom_enabled				= true						&lt;br /&gt;
scope_zoom_factor	    	= 50						&lt;br /&gt;
&lt;br /&gt;
scope_name 					= wpn_addon_scope			&lt;br /&gt;
scope_x 					= 42						&lt;br /&gt;
scope_y 					= 3&lt;br /&gt;
silencer_name  				= wpn_addon_silencer		&lt;br /&gt;
silencer_x 					= 218						&lt;br /&gt;
silencer_y 					= 13					&lt;br /&gt;
grenade_launcher_name 		= wpn_addon_grenade_launcher&lt;br /&gt;
grenade_launcher_x 			= 116						&lt;br /&gt;
grenade_launcher_y 			= 23&lt;br /&gt;
&lt;br /&gt;
;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))&lt;br /&gt;
snd_draw					= weapons\ak74_draw&lt;br /&gt;
snd_holster					= weapons\generic_holster&lt;br /&gt;
snd_shoot					= weapons\ak74_shot_0&lt;br /&gt;
snd_shoot1					= weapons\ak74_shot_1&lt;br /&gt;
snd_shoot2					= weapons\ak74_shot_2&lt;br /&gt;
snd_shoot3					= weapons\ak74_shot_3		&lt;br /&gt;
snd_empty					= weapons\gen_empty, 0.5&lt;br /&gt;
snd_reload					= weapons\ak74_reload, 0.7, 0.35&lt;br /&gt;
snd_shoot_grenade			= weapons\gen_grenshoot&lt;br /&gt;
snd_reload_grenade			= weapons\gen_grenload, 1.0, 0.8&lt;br /&gt;
snd_switch					= weapons\groza_switch, 1.0, 0.5&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;params when silencer is attached &lt;br /&gt;
;similar to corresponding params without prefix silencer_&lt;br /&gt;
&lt;br /&gt;
;silencer_flame_particles 	= weapons\generic_weapon01&lt;br /&gt;
silencer_smoke_particles 	= weapons\generic_shoot_00&lt;br /&gt;
&lt;br /&gt;
snd_silncer_shot			= weapons\w_ak74_shot1 &lt;br /&gt;
&lt;br /&gt;
silencer_light_color		= 0.6,0.5,0.3&lt;br /&gt;
silencer_light_range		= 0.01&lt;br /&gt;
silencer_light_var_color	= 0.05&lt;br /&gt;
silencer_light_var_range	= 0.5&lt;br /&gt;
silencer_light_time 		= 0.2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
;-- HUD DESCRIPTION&lt;br /&gt;
;-----------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
[wpn_ak101_hud]&lt;br /&gt;
allow_inertion				= true&lt;br /&gt;
&lt;br /&gt;
;similar to corresponding params in weapon section but for 1st person view&lt;br /&gt;
&lt;br /&gt;
shell_point					= -0.065000,0.000000,-0.045000&lt;br /&gt;
shell_dir			     	= 0.0, 1.0, 0.0&lt;br /&gt;
&lt;br /&gt;
fire_point               	= 0.09,0.020,-0.06&lt;br /&gt;
fire_point2              	= 0.30, 0.00, 0.05&lt;br /&gt;
fire_bone               	= wpn_body&lt;br /&gt;
&lt;br /&gt;
orientation             	= 0, 0, 0		&lt;br /&gt;
position                	= 0, 0, 0.05&lt;br /&gt;
visual                  	= weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
&lt;br /&gt;
grenade_bone            	= wpn_grenade	&lt;br /&gt;
&lt;br /&gt;
; animation names&lt;br /&gt;
&lt;br /&gt;
anim_idle					= idle&lt;br /&gt;
anim_idle_aim				= idle_aim&lt;br /&gt;
anim_reload					= reload&lt;br /&gt;
anim_draw					= draw_wo_gl&lt;br /&gt;
anim_holster				= holster_wo_gl&lt;br /&gt;
anim_shoot					= shoot&lt;br /&gt;
			&lt;br /&gt;
; animation names&lt;br /&gt;
; attached grenade launcher [GRENADE fire mode]&lt;br /&gt;
anim_idle_g					= idle_grenade&lt;br /&gt;
anim_idle_g_aim				= idle_g_aim&lt;br /&gt;
anim_reload_g				= reload_grenade&lt;br /&gt;
anim_shoot_g				= shoot_grenade&lt;br /&gt;
anim_switch_grenade_on		= switch_grenade&lt;br /&gt;
anim_switch_grenade_off		= switch_grenade_off&lt;br /&gt;
anim_draw_g					= draw_grenade_mode&lt;br /&gt;
anim_holster_g				= holster_grenade_mode&lt;br /&gt;
&lt;br /&gt;
; attached grenade launcher [NORMAL fire mode]&lt;br /&gt;
anim_idle_gl				= idle_w_gl&lt;br /&gt;
anim_idle_gl_aim			= idle_w_gl_aim&lt;br /&gt;
anim_reload_gl				= reload_w_gl&lt;br /&gt;
anim_draw_gl				= draw_w_gl&lt;br /&gt;
anim_holster_gl				= holster_w_gl&lt;br /&gt;
anim_shoot_gl				= shoot_w_gl&lt;br /&gt;
anim_idle_sprint			= idle_sprint&lt;br /&gt;
&lt;br /&gt;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&lt;br /&gt;
;HUD offset in zoom mode (to all)&lt;br /&gt;
;(use CONSOLE: hud_adjust_mode 0,1,2, then keys WSADQE and P to show current value in console)&lt;br /&gt;
&lt;br /&gt;
zoom_offset			= -0.112400,0.016800,-0.115000&lt;br /&gt;
zoom_rotate_x		= 0.000200&lt;br /&gt;
zoom_rotate_y		= 0.017500&lt;br /&gt;
&lt;br /&gt;
zoom_hide_crosshair	= true						&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in NORMAL shoot mode&lt;br /&gt;
&lt;br /&gt;
grenade_normal_zoom_offset			= -0.112500,0.014000,0.000000&lt;br /&gt;
grenade_normal_zoom_rotate_x		= -0.000900&lt;br /&gt;
grenade_normal_zoom_rotate_y		= 0.017200&lt;br /&gt;
&lt;br /&gt;
; same as above, but for attached grenade launcher for&lt;br /&gt;
; in GRENADE mode&lt;br /&gt;
&lt;br /&gt;
grenade_zoom_offset			= -0.039600,-0.433100,0.000000&lt;br /&gt;
grenade_zoom_rotate_x		= -0.538700&lt;br /&gt;
grenade_zoom_rotate_y		= -0.033800&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Регистрация===&lt;br /&gt;
&lt;br /&gt;
Итак, с характеристиками разобрались. Теперь зарегистрируем оружие в файле '''weapons.ltx'''. Для этого пропишем в него строку следующего вида:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#include &amp;quot;w_ak101.ltx&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Также, необходимо прописать модели, используемые для отображения оружия, в '''prefetch.ltx''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[...]&lt;br /&gt;
weapons\abakan\wpn_abakan&lt;br /&gt;
weapons\abakan\wpn_abakan_hud&lt;br /&gt;
weapons\ak-101\wpn_ak101&lt;br /&gt;
weapons\ak-101\wpn_ak101_hud&lt;br /&gt;
weapons\ak74\wpn_ak74&lt;br /&gt;
weapons\ak74\wpn_ak74_hud&lt;br /&gt;
[...]&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Так же не забудте в файле '''mp_ranks.ltx''' прописать после '''available_items''' (которое внизу)&lt;br /&gt;
прописать название своего оружия. Это предотвратит вылет при убийстве ГГ а также вылет при выкидывании оружия из инвентаря.&lt;br /&gt;
&lt;br /&gt;
==Добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Осталось добавить оружие в игру. &lt;br /&gt;
&lt;br /&gt;
Выдайте его некоторым NPC ([[Редактирование NPC#Практика|как это сделать?]]), расширьте ассортимент торговцев ([[Редактирование торговцев#Расширяем ассортимент|как это сделать?]]).&lt;br /&gt;
&lt;br /&gt;
А вот как оно будет выглядеть в игре:&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Russian_Guns_3.jpeg]]&lt;br /&gt;
&lt;br /&gt;
P.S. При создании нового оружия можно допустить некоторые ошибки в конфиге, что приведёт к вылету игры.&lt;br /&gt;
При таком случае сразу после вылета игры заходим в любой текстовый редактор и нажимаем клавиши Ctrl+V (вставить) и внизу можно увидеть из-за какой ошибки вылетела игра, а там уже дело техники исправить ошибку...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Expression    : fatal error&lt;br /&gt;
Function      : CModelPool::Instance_Load&lt;br /&gt;
File          : E:\stalker\patch_1_0004\xr_3da\xrRender\ModelPool.cpp&lt;br /&gt;
Line          : 111&lt;br /&gt;
Description   : &amp;lt;no expression&amp;gt;&lt;br /&gt;
Arguments     : Can't find model file 'weapons\gaussmod\wpn_gauss_hud.ogf'.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В данном примере видно, что либо вы не создали папку с необходимой моделью оружия, либо неправильно прописан путь к нужному файлу...&lt;br /&gt;
&lt;br /&gt;
(Чтобы в игре название и описание оружия были не от АК-74 а от нашей АК-101 делаем как написано в этой [http://stalkerin.gameru.net/wiki/index.php/%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D0%BD%D0%BE%D0%B2%D1%8B%D1%85_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%BE%D0%B2 статье], всё начиная с &amp;quot;''И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test''&amp;quot; вам понадобится.)&lt;br /&gt;
Информацию о оружии можно найти [http://world.guns.ru здесь.]&lt;br /&gt;
&lt;br /&gt;
'''АК-101''' - ''Автомат Калашникова АК-101 является экспортной модификацией штатного автомата Российской армии АК-74М. Главным (и фактически единственным) отличием АК-101 от АК-74М является калибр - автомат &amp;quot;сотой&amp;quot; серии использует патроны калибра 5.56мм (5.56х45 НАТО) и соответствующие магазины, в остальном автоматы идентичны.''&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана: &lt;br /&gt;
*[[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
&lt;br /&gt;
Статья подправлена:&lt;br /&gt;
*[[Участник:Хемуль04|Хемуль04]]&lt;br /&gt;
&lt;br /&gt;
По материалам мода [[Mod:Russian Guns|Russian Guns]] за авторством: &lt;br /&gt;
*[[Участник:Tony|Tony]]&lt;br /&gt;
*[[Участник:lez0|lez0]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
&lt;br /&gt;
Когда будете прописыватьв конфиге значения &amp;quot;inv_grid_y&amp;quot; и &amp;quot;inv_grid_x&amp;quot; имейте в виду, что отсчет по сетке идет с верхнего левого угла и указывать нужно верхний левый угол картинки, которая должна отображатся в инвентаре. То есть координаты самого первого угла будут 0;0. Самая первая винтовка в файле ...\S.T.A.L.K.E.R\gamedata\textures\ui\ui_icon_equipment.dds это - СВД. И если вы посмотрите ее конфигурационный файл то увидете, что там указаны значения inv_grid_x = 0   inv_grid_y = 0.  Отсчет по оси X идет по горизонтали с лева на право, а по оси Y - сверху вниз по возрастающей. Но считать с начала сетки - очень не удобно, поэтому вычисляйте координаты вашего обьекта по известным координатам уже существующего и реально правильно отображаемого файла в игре. Например мы имеем inv_grid_x= 5 inv_grid_y= 9 для fn2000(координаты верхнего левого угла) и мы хотим узнать координаты гранатф ф1, которая находится рядом. Для этого удобно использовать фотошоп с сеткой 50 на 50 пикселей. (как ее сделать описано по ссылке в статье к которой написана эта поправка.) И так мы видим что граната находится сразу справа порсле винтовки. То есть на 4-й клетке после квадрата угла винтовки без его учета. Она находится спраа, а значит нужно по оси X к 5 прибавить 4, и получится 9. По оси Y координтаы не изменились так как они находятся на одной линии с винтовкой. Таким образом получает коордитаны гранаты 9 по Х и 9 по Y. Если мы посмотрим конфиг гранаты то увидим там &amp;quot;inv_grid_x= 9&amp;quot; &amp;quot;inv_grid_y= 9&amp;quot;. То что и соответствует тому, что мы высчитали. :) Удачи.&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2</id>
		<title>Список инструментов</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%BE%D0%B2"/>
				<updated>2017-01-15T08:06:23Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.8.13 (обсуждение) к версии 151.249.130.249&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Список инструментов&amp;lt;/span&amp;gt;=&lt;br /&gt;
Эта статья должна представлять собой список используемых в настоящее время инструментов, прямо или косвенно относящихся к модификации игры S.T.A.L.K.E.R. Только Название, ее версия, краткое описание и разработчик. Оформлять в виде таблицы.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Текстовые редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://notepad-plus-plus.org/download Notepad++]||Cвободный текстовый  редактор с открытым исходным кодом для Windows с подсветкой синтаксиса большого количества языков программирования и разметки.||Notepad++ team&lt;br /&gt;
|-&lt;br /&gt;
|[http://winmerge.org/downloads/ WinMerge]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||Dean P. Grimm&lt;br /&gt;
|-&lt;br /&gt;
|[http://forum.ru-board.com/topic.cgi?forum=5&amp;amp;topic=24956&amp;amp;glp SciTE]||Кроссплатформeнный  текстовый редактор с широкими возможностями и открытым исходным кодом.||Neil Hodgson&lt;br /&gt;
|-&lt;br /&gt;
|[http://download.cnet.com/Files-Compare-Tool/3000-2248_4-10315688.html Files Compare Tool]||Свободно распространяемая программа для визуального сравнения текстовых файлов.||S&amp;amp;G Team&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Hex-редакторы&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.hhdsoftware.com/free-hex-editor Free Hex Editor Neo]||Бесплатный Редактор Шестнадцатеричных, Десятичных и Бинарных Файлов для Windows. Программа имеет возможности по выделению, просмотру, редактированию, замене, отладке и анализу данных.||HHD Software&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.winhex.com/winhex/ WinHex]||Универсальный HEX-редактор для Microsoft Windows.||X-Ways Software Technology AG&lt;br /&gt;
|-&lt;br /&gt;
|[ftp://wa651f5:anonymous@mh-nexus.de/HxDSetupRU.zip HxD]||Свободно распространяемый HEX-редактор с расширенными возможностями.||Mael Horz, Nikolai Mashnin&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;2D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://paintnet.ru/ Paint .NET]||Бесплатный растровый графический редактор для Windows, разработанный на платформе .NET Framework. Штатная возможность работы с форматом .dds||Rick Brewster&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.gimp.ru/ GIMP]||Бесплатный кроссплатформенный растровый графический редактор с открытым исходным кодом.||Spencer Kimball, Peter Mattis, GIMP Team&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.nvidia.ru/object/dds_thumbnail_viewer.html DDS Thumbnail Viewer]||Реализует возможность предпросмотра .dds-файлов небольшого размера в Проводнике OS Windows.||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/jEttg1b8sG9NH NVIDIA Texture Tools for Adobe Photoshop]||Normal map фильтр, dds плагин, mip-map generation script, и cube map shuffler для Photoshop||nVidia&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.xnormal.net/Downloads.aspx xNormal]||.dds-плагин для Photoshop||xNormal&lt;br /&gt;
|-&lt;br /&gt;
|[http://code.google.com/p/gimp-dds/downloads/list gimp-dds]||.dds-плагин для GIMP||Shawn Kirst&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=70%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://charles.hollemeersch.net/sites/default/files/njob_v1_0_0.zip Njob]||Утилита для генерации карт высот, карт нормалей и их конвертации||C. Hollemeersch&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/JkS-yg2LqhzHx Copy Object]||Утилита для копирования объектов в сцене SDK||DukeKan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=446 Texture Copier ]||Программа делалась для упрощения переноса текстур из ТЧ в ЧН/ЗП. Позволяет быстро переносить текстуры из ресурсов одной игры в другую.||V.I.R.U.S.&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=447 Script Syntax Checker]||Утилита для проверка скриптов на ошибки.||Gun12&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;3D графика&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.chumba.ch/chumbalum-soft//files/ms3d184.zip Milkshape 3D]||1.8.4||Низкополигональный 3D-редактор с поддержкой множества игровых форматов.||Mete Ciragan&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=424 MS3D Hierarchy Editor]||1.0b||Консольная утилита, позволяющая просматривать иерархию скелета в ms3d-файле и изменять  ее по своему усмотрению.||Sin!&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.deep-shadows.com/hax/3DRipperDX.htm#Download 3D Ripper DX]||1.8.1||Программма позволяет захватывать геометрию, текстуры и шейдеры из большинства трехмерных приложений под DX 6.x, 8.x, 9x. В комплекте также плагины импорта в 3ds Max 5-9/2008, 2009 и 2011.||Roman Lut&lt;br /&gt;
|-&lt;br /&gt;
|[http://cgig.ru/ninjaripper/ Ninja Ripper]||1.1.4||Утилита извлекает 3D модели, текстуры, вершинные и пиксельные шейдеры из программ (преимущественно игр) под D3D11, D3D9, D3D8 (обрабатываются не все методы/техники, но должно работать в 95% игр).||black_ninja&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Плагины&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Официальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=437 SDK 0.4 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.4 для 3DS Max 7-2011, LightWave 3D 7.5/8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=436 SDK 0.5-0.7 Plugins for 3DS Max, Maya, LightWave 3D]||02.02.2011||Официальные плагины экспорта в игровой формат под СДК 0.5-0.7 для 3DS Max 8-2011, LightWave 3D 8.0 и Maya 7-2010.||GSC&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Неофициальные&amp;lt;/span&amp;gt;=====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=377 Milkshape 3d 1.8.4 Plugins]||08.08.2009||Плагин экспорта и исправленный плагин импорта для Milkshape3D v.1.8.4.||bardak, KamikaZze&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=454 X-Ray Maya Tools]||01.10.2011||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/ X-Ray Maya Tools]||22.07.2013||Расширение добавляет поддержку импорта файлов в формате .ogf, .dm, .object, .omf, .skl, .skls, а также экспорта .object и .skl. Спроектировано работать в качестве частичной замены официальных плагинов от GSC, т.е. совместимо со вспомогательными скриптами, .mb/.ma файлами и экспортёром (xrayMaya_export.mll).||bardak, surfer, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Скрипты&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Mp6jVkV25LrXI X-Ray Max Tools]||08.11.2014||Пак скриптов 3ds max (версии выше 8) для импорта и экспорта объектов X-Ray SDK.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/62861030001.3927839478b0c733b57efc8fa919cf2d/xray_object_import_v03.zip.html X-Ray Object Import]||0.3||Cкрипт для импорта моделей формата x-ray sdk *.object в 3ds max. Добавлена поддержка: physique и групп сглаживания.||Den-Stash&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/rU1UDbxBsG8uZ X-Ray Invalid]||1.0||Cуть скрипта в том, чтобы проверять модель на ошибки invalide face(s) до экспорта в x-ray sdk *.object.||Den-Stash&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=246 HUD Hands Sources]||1.1||Исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ.||Tambovski&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/stutils/HUD_HANDS_new.rar HUD Hands Sources]||2.0||Обновленные исходники рук с костями для 3д макса 8.0 и выше в формате .max, теперь вам будет гораздо легче создать собственный худ. Модель привязана к костям, сделана камера для контроля анимаций (вид HUD-а как в игре).||Tambovski&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray SDK&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://files.gsc-game.com/st/xray-sdk-setup-v0.4.exe X-Ray SDK SoC]||0.4||Официальный SDK для игры S.T.A.L.K.E.R. - Тень Чернобыля.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=361 X-Ray SDK SoC Patch]||-||Патч для X-Ray SDK 0.4. Исправляет множество багов и проблему с не отображаемой травой в Level Editor. Восстановлены опции xrLC.||GSC, Haron, Neo][&lt;br /&gt;
|-&lt;br /&gt;
|[http://xfiles.gsc-game.com/st/xray-cs-sdk-setup.exe X-Ray SDK CS]||0.5||Официальный SDK для игры S.T.A.L.K.E.R. - Чистое Небо.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=374 X-Ray SDK CS Update]||0.6||Обновление для X-Ray SDK 0.5. Включает в себя: Actor Editor, Particle Editor, Postprocess Editor, Shader Editor, Компилятор AI, а также, набор плагинов 3dsmax 8, 9, 2008, 2009, 2010, 2011. Исправляет: Level Editor.||Loxotron, GSC&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/RozpEA6XmDfXC X-Ray SDK CoP]||0.7||Официальный SDK для S.T.A.L.K.E.R. - Зов Припяти.||GSC&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/downloads/SDK/xrSDK_COP_patch_10.7z X-Ray SDK CoP Patch]||-|| Патч для X-Ray SDK 0.7. Содержит dll для плагинов Maya, и ActorEditorLevel.cform для кнопки Simulate в AE. ||Loxotron, gsc&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/57220477001.47cd4866c9c4c6cb96af9e1830fa4f92/RUS_SDK_07.rar.html Русификатор X-Ray SDK CoP]||-||Русифицирует интерфейс Level Editor, Actor Editor, Shader Editor, и Particle Editor.||GSC, Genior&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrAI&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=376 AI Compiler]||-||Официальный компилятор AI для SoC.||GSC, Loxotron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;xrLC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/46414046001.8e0e6656c19e2910fb9a986d4c152f8a/compiliers2010_v3.7z.html Compilers 2010]||3.0||Набор ускоренных компиляторов для CS/CoP SDK.||macron&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61168444001.9a8746add40aaea1d0b948d2da788ab3/Bench_xrLC_extra_v39.7z.html Bench xrLC extra]||3.9||Архив представляет собой пак компиляторов для проектов карт, созданных в SDK STALKER ТЧ.||DIABLO, FL!NT, Haron, Macron, Loxotron, Bardak, Mortarion&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Fakes&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Y7kMpHcG7XkBU Fake Flatness]||2013||Набор фейк-плоскостей (в комплекте лестницы, hom-кубик occ и прочая тематичная дребедень + полезная инфа). Разархивировать в папку с SDK.||Macron&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Объекты&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.stalkerin.gameru.net/downloads/SDK/resources/Stalker_Content.7z Набор объектов]||1.0||Набор моделей и объектов из Сталкера 1.0000, предназначены для расставления на своих картах в редакторе карт, шейдеры и текстуры уже настроены.||UX.Loki&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;X-Ray Game Asset Tools Pack&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=288 X-Ray Game Asset Tools Pack]||1.0 Final (14.09.2008)||Финальная версия, включает в себя: AI Wrapper 2.2 + converter + acdc pack + milkshape и maya плагины. Представляет собой набор утилит от бардака, необходимых для редактирования всех аспектов игры: враппер для компиляции ии уровней, конвертер для редактирования геометрии и моделей, асдс для редактирования all.spawn. Программы исправно работают как со всеми утекшими билдами игры, так и с ТЧ и ЧН финальных версий.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=348 X-Ray Game Asset Tools Pack Update]||2.0 (08.07.2009)||Обновление исправляет декомпиляцию lod'ов, отображение декомпилированных шейдеров деревьев в Level Editor, и добавляет новый более стабильный компилятор AI||bardak, community&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/downloads/converter_2015-06-24.7z X-Ray Game Asset Converter]||24.06.2015||Добавлена команда разбиения *.omf на отдельные *.skl(-skl all). Поддержка извлечения файлов из архивов по маске. Добавлены поиск и удаление дубликатов glow. Исправлено некорректное вычисление вращения зон объемного звука.||bardak, Kolmogor, mnn, gr1ph00n, Neo][, Xiani, Freack, loxotron, NatteFrost, Macron, KD87, abramcumner&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/yk87tB0SfiWFw X-Ray Game Asset Converter UI]||24.06.2015||Реализация конвертера с UI. Работает: конвертирование *.ogf -&amp;gt; *.obj, *.omf -&amp;gt; *.skls(skl), *.dm -&amp;gt; *.obj. Отображается дополнительная информация о выбранном файле. Имеется возможность вытаскивания отдельных анимаций(*.omf -&amp;gt; *.skl) выбирая их из соответствующего списка. Реализован Drag`n`Drop на сам Converter.exe и на окно программы.||bardak, Viнt@rь, community&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Исходники&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://bitbucket.org/stalker/xray_re-tools/get/c832c5af23d3.zip X-Ray Game Asset Tools Pack Sources]||Last||Исходники пакета утилит X-Ray Game Asset Tools.||bardak, community&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Компиляторы/декомпиляторы, конвертеры, сопутствующие утилиты&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/rokoY1TaLqpYM level. compiler/decompiler]||0.4||Компилятор/декомпилятор файла level.||bardak, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.env_mod&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26764911000/S.T.A.L.K.E.R.%20level.env_mod%20CDC.7z.html emCDC SoC]||-||Компилятор/декомпилятор level.env_mod SoC.||bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/26765140000/S.T.A.L.K.E.R.%20Clear%20Sky%20level.env_mod%20CDC.7z.html emCDC CS]||-||Компилятор/декомпилятор level.env_mod CS.||bardak&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.ps_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/-bPKTqDu1w5ag level_particle_static_cdc]||0.1||Компилятор/декомпилятор файла level.ps_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;level.snd_static&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 sse]||0.32||Компилятор/декомпилятор level.snd_static.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=382 Snd Static Extractor]||0.1||Компилятор/декомпилятор level.snd_static.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/hofXdTciF9yyY level_sound_static_cdc]||0.2||Компилятор/декомпилятор level.snd_static.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;game.graph/graph.bin/section4.bin&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=332 ggCDC SoC]||x.4||Компилятор/декомпилятор game.graph SoC.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=386 ggCDC CoP]||x.5||Компилятор/декомпилятор game.graph CoP.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=415 Edge Editor]||2.2||Программа для добавления/удаления ИИ-связей между вершинами в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=261 GraphViewer]||0.1||Программа для просмотра ИИ-связей в game.graph.||IG-2007&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=395 ggEditor]||0.1||Программа для присоединения локаций в game.graph.||Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://rghost.ru/51860258 ggEditor Sources]||-||Исходники программы ggEditor.||mmdns&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.anm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=317 anm2ltx]||08.03.09г.||Компилятор/декомпилятор .anm.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogf&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/65380165001.497ef61364b07eeacbf31cd5343c7450/20121229.7z.html MeshTool/OGFViewer]||1.0.5||Кроссплатформенный комплект утилит для просмотра, конвертации разнообразных 3d-моделей и уровней. В том числе и формата движка X-Ray.||NatteFrost, batya&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogg&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=231 Theora]||1.0.0||Пакетный конвертер .ogg в .wav. Дает возможность исправить ошибку &amp;quot;missing ogg-comment&amp;quot;.||Haron&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dcyo0Nt3A3b5g OGG Editor]||-||Утилита предназначена для быстрого просмотра и редактирования звуковых комментариев в уже прогнанных через SDK ogg-файлах, без необходимости включать для этого SDK и иметь wav-версии звуков.||Sin!, Shoker, nihilant&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ogm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=393 ffmpeg2theora]||-||Консольный конвертер .avi в .ogm||?&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.ppe&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=352 PPE Editor]||1.2||Программа для редактирования .ppe-файлов постпроцессинга.||SmanxX1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.spawn&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/uWlnpuGwF9zCW Universal ACDC]||1.36 (29.12.2013)||Программа распаковывает файлы *.spawn ТЧ, ЧН, ЗП, и xrCore build, начиная с 1265, а также *.spawn файлы модов (при этом требуется их папка конфигов). Подробности в ReadMe.txt||bardak, Kolmogor, K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.thm&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=421 thmParser]||15.08.10г.||Парсер формата .thm SoC в .thm CS/CoP.||kalinin11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.xr&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=390 Particle Extractor]||1.2||Компилятор/декомпилятор файла particles.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=383 Game Mtl Extractor]||0.3||Компилятор/декомпилятор файла gamemtl.xr|| Kolmogor&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/dVSXTDwg1w5_s particles_xr_cdc]||0.2||Компилятор/декомпилятор файла particles.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/V-za1OnD1w5ba gamemtl_xr_cdc]||0.2||Компилятор/декомпилятор файла gamemtl.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/Dn2ooLS31w5aK lanims_xr_cdc]||0.2||Компилятор/декомпилятор файла lanims.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/DHNWGQkr1w5_0 senvironment_xr_cdc]||0.2||Компилятор/декомпилятор файла senvironment.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/o-lzXzrA1w5cG shaders_xrlc_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders_xrlc.xr||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/pMtlI_BHLzjDz shaders_xr_cdc]||0.2||Компилятор/декомпилятор файла shaders.xr||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;*.sav&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/60346986001.7e990cb3bbecff1c35a1dbbe7e6f389f/save_unpacker_0_4.rar.html Save Unpacker]||0.4||Распаковщик файлов *.sav сохранений ТЧ, ЧН, ЗП.||K.D.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Необходимый софт&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/l6osH5PQF9ynj Библиотека Stkutils]||29.12.2013||Эта библиотека необходима для работы большинства компиляторов/декомпиляторов.||K.D.&lt;br /&gt;
|-&lt;br /&gt;
|[http://www.activestate.com/activeperl/downloads ActivePerl]||-||Эта программа необходима для работы большинства компиляторов/декомпиляторов.||ActiveState&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Утилиты, пакеты утилит&amp;lt;/span&amp;gt;==&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=467 Map dragger]||1.0||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере.||XiaNi&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/b2Z3ciYN5x7JM Map dragger]||1.1||Программа для компоновки карт локаций в одну глобальную карту, позволяет вычислять координаты каждого изображения, и т.д. Работает в браузере. Добавлены 3 отдельные настроенные версии: ТЧ, ЧН, и ЗП. Старая удалена за ненадобностью.||XiaNi, aka_sektor&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=106 dds2tga]||-||Конвертер .dds в .tga.||nVidia, -=CHE@TER=-&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=188 dds2tga for LE]||-||Специально адаптированный для Level Editor'а Сталкера конвертер текстурок dds в tga||nVidia, russian-stalker&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=418 STALKER Icon Editor]||0.6.3||SIE - это утилита для просмотра и редактирования иконок инвентаря для SOC,CS и COP. В игре они хранятся в файле gamedata\textures\ui\ui_icon_equipment.dds||malandrius&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Распаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/094hymb_r275S WCX]||0.0.3||Возможности: распаковка игровых архивов *.db* игры С.Т.А.Л.К.Е.Р. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ) и &amp;quot;Чистое Небо&amp;quot; (ЧН). Плагин поддерживает как русскую, так и английскую версию архивов от ТЧ.||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/hCfFUj7Tr277b WFX]||0.0.4||Возможности: просмотр и распаковка всего набора игровых архивов *.db* игры S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Malandrinus&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=217 S.T.A.L.K.E.R. Data Unpacker]||1.0||Распаковщик игровых архивов для русской и английской версий SoC.||?&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.3||Плагин для Total Commander. Позволяет просматривать и распаковывать весь набор игровых архивов *.db* игр S.T.A.L.K.E.R. &amp;quot;Тени Чернобыля&amp;quot; (ТЧ), &amp;quot;Чистое Небо&amp;quot; (ЧН) и &amp;quot;Зов Припяти&amp;quot; (ЗП).||Mowgli&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=265 Clear Sky unpacker]||1.3||Распаковщик игровых архивов.||Macron, xStream, bardak&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=266 GUI for unpacker]||1.1||GUI для распаковщика от Macron, xStream и bardak.||russian-stalker, Marauder&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=224 Database Extractor]||2.0||Распаковщик для SoC и CS. Показывает список файлов в архиве, что дает возможность извлекать файлы по отдельности.||Don Reba&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://wincmd.ru/plugring/stalker_db_explorer.html S.T.A.L.K.E.R. db explorer]||0.0.2||Системный плагин для Total Commander. Реализует возможность просмотра и распаковки игровых архивов SoC, CS и CoP.||malandrinus&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Builds, SoC, CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://yadi.sk/d/GNxvG8O75bz4M S.T.A.L.K.E.R. Universal Extractor]||1.3.1||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий (1.0006, 1.5.10, 1.6.02). Распаковка билдов (на данный момент программа насчитывает 15 сборок).||Dordex&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/dovmUpeQmcb34 S.T.A.L.K.E.R. Universal Extractor]||2.0||Универсальный распаковщик игровых архивов серии S.T.A.L.K.E.R. Распаковка ТЧ, ЧН, и ЗП всех версий. Распаковка билдов.||Rezzoxe (Омар Гуртуев)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;Запаковщики игровых архивов&amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;SoC&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=getit&amp;amp;lid=149 DB Packer]||1.0||Самодельная утилита для запаковки файлов папки gamedata Теней Чернобыля в .db архив. Подробные разъяснения в .pdf файле.||HIGHLANDER&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span style=&amp;quot;color:#043b7f&amp;quot;&amp;gt;CS, CoP&amp;lt;/span&amp;gt;====&lt;br /&gt;
{| class=&amp;quot;wide&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!!width=20%|Название||width=5%|Версия||width=65%|Краткое описание||width=10%|Разработчик&lt;br /&gt;
|-&lt;br /&gt;
|[http://narod.ru/disk/61364111001.9e2532413cf3b161e91e2d55829efb75/db_packer_unpkr_3.1.rar.html DB Packer/Unpacker]||3.1||Программа для распаковки и запаковки .db архивов Чистого Неба и Зова Припяти.||Kontro-zzz&lt;br /&gt;
|-&lt;br /&gt;
|[https://yadi.sk/d/7XL72RYPmVRyN XrCompress]||1.11||Программа для распаковки и запаковки .db и .xdb архивов с функцией сжатия.||LostAlphaRus&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Категория:Руководства]][[Категория:Программы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BB%D0%B0%D0%B3%D0%B5%D1%80%D1%8F</id>
		<title>Добавление лагеря</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BB%D0%B0%D0%B3%D0%B5%D1%80%D1%8F"/>
				<updated>2017-01-12T11:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.7.181 (обсуждение) к версии 77.37.210.38&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Настройка секции==&lt;br /&gt;
&lt;br /&gt;
Для добавления лагеря необходимо поставить объект '''Spawn Element -&amp;gt; ai -&amp;gt; smart_terrain'''. В его '''Properties -&amp;gt; Custom data''' нужно прописать следующее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[smart_terrain]&lt;br /&gt;
&lt;br /&gt;
targets = имя_соседнего_smart_terrain, имя_соседнего_smart_terrain, имя_соседнего_smart_terrain...&lt;br /&gt;
sim_type = тип_лагеря&lt;br /&gt;
squad_capacity = количество_отрядов&lt;br /&gt;
group_id = уникальный_номер&lt;br /&gt;
spawn_point = точка_спауна&lt;br /&gt;
att_restr = space_restrictor_атакующих&lt;br /&gt;
def_restr = space_restrictor_обороняющихся&lt;br /&gt;
sim_avail = {условие} false/true, {условие} false/true...&lt;br /&gt;
respawn_sector = true/false&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Описание параметров==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard highlight&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Параметр||Описание&lt;br /&gt;
|-&lt;br /&gt;
|'''targets'''&lt;br /&gt;
||Имена smart terrain’ов, которые можно атаковать из этого лагеря, через запятую. Желательно создавать симметричную связь между лагерями, то есть если у лагеря '''A''' в '''targets''' есть лагерь '''B''', то у лагеря '''B''' в '''targets''' должен быть лагерь '''A'''.&lt;br /&gt;
|-&lt;br /&gt;
|'''sim_type'''&lt;br /&gt;
||Тип лагеря. Может быть: '''territory''' (важные точки, например, левелченжеры, и ключевые точки, например, базы группировок; захват этих точек приводит к появлению дополнительных отрядов), '''resource''' (точки, которые увеличивают ресурсы группировки, что приводит к появлению более крутых бойцов), '''default''' (все остальные лагеря).&lt;br /&gt;
|-&lt;br /&gt;
|'''squad_capacity'''&lt;br /&gt;
||Количество отрядов, которые могут разместиться в этом лагере. Чем больше лагерь – тем больше в нём должно быть отрядов. Количество работ в лагере (см. ниже) должно быть равным или более '''[количество_человек_в_отряде] * [squad_capacity]'''. На данный момент в каждом отряде пять человек.&lt;br /&gt;
|-&lt;br /&gt;
|'''group_id'''&lt;br /&gt;
||Уникальный (для соответствующего уровня) номер '''smart terrain’а'''. Этот номер будет являться номером '''group’ы''' отрядов, находящихся в этом лагере. На одном уровне не должно быть двух лагерей с одинаковыми '''group_id'''.&lt;br /&gt;
|-&lt;br /&gt;
|'''spawn_point'''&lt;br /&gt;
||Патрульный путь, в нулевой точке которого будут появляться новые отряды.&lt;br /&gt;
|-&lt;br /&gt;
|'''att_restr'''&lt;br /&gt;
||'''Space restrictor''', за пределы которого не могут выйти бойцы, атакующие этот лагерь. Должен включать в свои пределы '''cover'ы''' для атакующих, но не давать им забиваться в дальние углы.&lt;br /&gt;
|-&lt;br /&gt;
|'''def_restr'''&lt;br /&gt;
||'''Space restrictor''', за пределы которого не могут выйти бойцы, защищающие этот лагерь. Должен включать в свои пределы '''cover'ы''' для обороняющихся, но не давать им забиваться в дальние углы.&lt;br /&gt;
|-&lt;br /&gt;
|'''sim_avail'''&lt;br /&gt;
||Через запятую указываются значения, которые, в зависимости от условий, определяют доступность '''(true)''' или недоступность '''(false)''' лагеря для симуляции.&lt;br /&gt;
|-&lt;br /&gt;
|'''respawn_sector'''&lt;br /&gt;
||Значение, разрешающее '''(true)''' или запрещающее '''(false)''' подспаун новых отрядов группировки в этом лагере (при условии, что игрок находится достаточно далеко).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''''Note: Также каждому лагерю необходимо добавить работы. Для этого нужно расставить соответствующие пути работ. Более подробную информацию можно получить из статьи [[Работы универсальных лагерей]].'''''&lt;br /&gt;
&lt;br /&gt;
'''''Note: Необходимо ставить объект Spawn Element -&amp;gt; ai -&amp;gt; graph point в центре каждого smart_terrain’а и на середине пути от него к лагерями, которые указаны в его targets. Это делается для того, чтобы в оффлайне передвижение отрядов хорошо смотрелось на карте.'''''&lt;br /&gt;
&lt;br /&gt;
[[Категория:A-Life]][[Категория:SDK_CS]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F</id>
		<title>Редактирование оружия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A0%D0%B5%D0%B4%D0%B0%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D1%80%D1%83%D0%B6%D0%B8%D1%8F"/>
				<updated>2017-01-12T11:43:55Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.7.181 (обсуждение) к версии 77.37.210.38&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие положения==&lt;br /&gt;
&lt;br /&gt;
Сегодня мы разберем то, каким образом можно редактировать оружие в игре - от характеристик до описания.&lt;br /&gt;
Характеристики оружия хранятся здесь:&lt;br /&gt;
&lt;br /&gt;
''...\S.T.A.L.K.E.R\gamedata\config\weapons\w_[...].ltx''&lt;br /&gt;
&lt;br /&gt;
==Разбор структуры конфига==&lt;br /&gt;
&lt;br /&gt;
Возьмем, для примера, конфиг '''w_g36.ltx'''. Он делится на разделы:&lt;br /&gt;
&lt;br /&gt;
===Первый раздел===&lt;br /&gt;
&lt;br /&gt;
Здесь хранится общая информация о оружии, ссылки на спавн и т.д.&lt;br /&gt;
Нас интересуют следующие строки:&lt;br /&gt;
&lt;br /&gt;
* '''description''' = enc1weapons1_wpn_g36 - ссылка на string_id, из которая игра подгружает описание этого оружия.&lt;br /&gt;
* '''ef_main_weapon_type''' = 2 - основной тип, к которому принадлежит оружие&lt;br /&gt;
* '''ef_weapon_type''' = 6 - подтип, к которому принадлежит оружие&lt;br /&gt;
* '''default_to_ruck''' = false - значит, если при пустой ячейке под автомат, подобрать автомат он будет помещён в ячейку; если true автомат в ячейку помещён не не будет.&lt;br /&gt;
* '''sprint_allowed''' = true - эта строка означает, что с оружием можно бегать.&lt;br /&gt;
&lt;br /&gt;
===Второй раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит модификаторы, которые даются к углу зрения/дальности обзора NPC, держащего это оружие в руках:&lt;br /&gt;
&lt;br /&gt;
* '''holder_range_modifier''' = 1.85 - во сколько раз увеличивается eye_range ботов. Он производит умножение дальности обзора ботов с данным оружием в руках.&lt;br /&gt;
* '''holder_fov_modifier''' = 0.3 - во сколько раз увеличивается eye_fov ботов. При редактировании этого параметра случаются проблемы с обзором нпс - могут не увидеть монстра в упор.&lt;br /&gt;
&lt;br /&gt;
Следующие значения могут находится в другой части файла, но относятся они к обзору.&lt;br /&gt;
&lt;br /&gt;
* '''min_radius''' = 30 - минимальное расстояние с которого боты начинают использовать данное оружие. Для всего оружия кроме снайперских винтовок, гранат и гранатомётов рекомендуется ставить 0. Используется для того, чтобы боты с гранатомётами и снайперками переключались при приближении врага на второе оружие, а также не бросали гранаты себе под ноги.&lt;br /&gt;
* '''max_radius''' = 100 - максимальное расстояние на котором боты используют данное оружие. Рекомендуется делать максимально большим каким возможно, учитывая при этом точность оружия. Вы наверно часто сталкивались с ситуациями, когда отстреливаете ботов с дальней дистанции они целятся в Вас, ходят из стороны в сторону, но не стреляют. Данные баги связаны с недостаточным размером данного параметра. Ограничивать данный параметр стоит для пистолетов, дробовиков и огнемёта.&lt;br /&gt;
&lt;br /&gt;
===Третий раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит данные о самом оружии, его некоторых характеристиках:&lt;br /&gt;
&lt;br /&gt;
* '''cost''' = 2200000 - базовая цена (торговцы умножают её на некоторый коэффициент)&lt;br /&gt;
* '''weapon_class''' = assault_rifle - класс оружия (здесь - штурмовая винтовка)&lt;br /&gt;
	&lt;br /&gt;
* '''ammo_mag_size''' = 300 - размер магазина&lt;br /&gt;
* '''ammo_class''' = ammo_5.56x45_ss190, ammo_5.56x45_ap - типы используемых патронов&lt;br /&gt;
* '''grenade_class''' = ammo_m209 - тип используемых гранат&lt;br /&gt;
* '''fire_modes''' = 1, -1 - режимы ведения огня (одиночными и бесконечными очередями соответственно)&lt;br /&gt;
&lt;br /&gt;
* '''hand_dependence''' = 1 - зависимость о рук (?) - возможно, речь идет о качании ствола&lt;br /&gt;
* '''single_handed''' = 0 - держится ли только в одной руке&lt;br /&gt;
&lt;br /&gt;
* '''slot''' = 2 - слот в инвентаре&lt;br /&gt;
* '''animation_slot''' = 2 - вид анимации (для пистолета/для винтовки)&lt;br /&gt;
&lt;br /&gt;
* '''inv_name''' = wpn-g36 - ссылка на имя, отображаемое в инвентаре, тоже берется из string table, как и описание&lt;br /&gt;
* '''inv_name_short''' = wpn-g36 - имя отображаемое при наведении прицела на предмет, к примеру лежащий на земле; в данном случае используется то же самое&lt;br /&gt;
* '''inv_weight''' = 3.6 - вес&lt;br /&gt;
&lt;br /&gt;
* '''inv_grid_width''' = 5 - длина иконки (кол-во клеток по х)&lt;br /&gt;
* '''inv_grid_height''' = 2 - высота иконки (кол-во клеток по у)&lt;br /&gt;
* '''inv_grid_x''' = 0 - координаты первого угла иконки по x&lt;br /&gt;
* '''inv_grid_y''' = 10 - координаты первого угла иконки по y&lt;br /&gt;
&lt;br /&gt;
===Четвертый раздел===&lt;br /&gt;
&lt;br /&gt;
В четвертом разделе хранится информация о износе/отдаче оружия.&lt;br /&gt;
Практически все параметры там снабжены комментариями, поэтому приведу лишь самые интересные:&lt;br /&gt;
&lt;br /&gt;
* '''cam_relax_speed''' = 5.7 - скорость возврата в исходное положение&lt;br /&gt;
* '''cam_dispersion''' = 0.2 - увеличения угла (в градусах) при первом выстреле&lt;br /&gt;
&lt;br /&gt;
* '''fire_dispersion_condition_factor''' = 5 - увеличение дисперсии в процентах при максимальном износе. Мало кто понимает, но этот параметр указан не в градусах - это множитель. 5 - это 5000% разброса при максимальном износе. Подобный разброс IRL можно получить только рассверлив ПМ перфоратором. Все стволы в оригинальной игре имеют множитель 5, а начиная с CS маразм разработчиков начал крепчать и многие стволы получили значение 15. В CoP эта тенденция усилилась и ещё больше стволов получили значение 15. Каждый нормальный модер уменьшит это значение. Для пистолетов рекомендуется 3 - 4, автоматов 2 - 2.5, снайперок 1 - 1.5&lt;br /&gt;
* '''misfire_probability''' = 0.003	- вероятность осечки при максимальном износе &lt;br /&gt;
* '''misfire_condition_k''' = 0.05 - коэффициент. Проще не трогать, т.к. настроить два параметра для каждого ствола в оружейном паке  гораздо легче чем три. Может понабиться только для оружия с небольшим настрелом типа ВСС.&lt;br /&gt;
* '''condition_shot_dec''' = 0.0002 - увеличение износа при каждом выстреле. Если вписать -1, то оружие полностью отремонтируется после первого выстрела.&lt;br /&gt;
&lt;br /&gt;
===Пятый раздел===&lt;br /&gt;
&lt;br /&gt;
Здесь хранится множество параметров, из которых наиболее интересны эти:(PDM - это параметр качания ствола в руках ГГ при движении в режиме прицеливания. добавил дядяСаша imgal@mail.ru)&lt;br /&gt;
&lt;br /&gt;
*'''PDM_disp_base''' = 3.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ (Главный Герой) стоит на месте в полный рост;&lt;br /&gt;
&lt;br /&gt;
*'''PDDM_disp_vel_factor''' = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ крутит оружием или бежит;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_disp_accel_factor''' = 1.3 - множитель, на который умножается базовая дисперсия оружия, когда ГГ бежит в спринте;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_crouch''' = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ идет пригнувшись;&lt;br /&gt;
&lt;br /&gt;
*'''PDM_crouch_no_acc''' = 1.0 - множитель, на который умножается базовая дисперсия оружия, когда ГГ стоит на месте, пригнувшись;&lt;br /&gt;
&lt;br /&gt;
* '''hit_power''' = 0.50, 0.54, 0.57, 0.60 - сила выстрела, зависит от ранга: новичок, опытный, ветеран и мастер соответственно.&lt;br /&gt;
* '''hit_impulse''' = 105 - импульс пули (сила, которую летящая пуля передает жертве, влияет на поведение ragdoll-тела. Чем больше поставишь, тем дальше улетит. Если сделать большое отрицательное значение, то жертвы будут прилетать к ГГ)&lt;br /&gt;
* '''hit_type''' = fire_wound - тип причиняемых повреждений, в данном случае - пулевые ранения (параметр в синглплеере ни на что не влияет)&lt;br /&gt;
&lt;br /&gt;
* '''fire_distance''' = 600 - максимальная дистанция полета пули, затем она падает на землю и исчезает.  Логично прописать значение эффективного огня(пистолеты-пулеметы 50-200м, пистолеты 50м, дробовики 30м и нож полметра), но не имеет смысла устанавливать значение больше радиуса алайфа: ведь за его пределами никого нет.) &lt;br /&gt;
* '''bullet_speed''' = 925 - начальная скорость пули&lt;br /&gt;
* '''rpm''' = 600 - скорострельность выстрел/минута&lt;br /&gt;
&lt;br /&gt;
* '''hud''' = wpn_g36_hud - внешний вид оружия от 1-ого лица&lt;br /&gt;
&lt;br /&gt;
===Шестой раздел===&lt;br /&gt;
* '''= x, y, z'''&lt;br /&gt;
* '''position'''                = -0.026, -0.132, 0.0 - позиция оружия на спине по отношению к НПС при виде от 3-его лица&lt;br /&gt;
* '''orientation'''             = 0, 0, 0 - вращение оружия на спине НПС при виде от 3-его лица&lt;br /&gt;
&lt;br /&gt;
''Примечание''&lt;br /&gt;
В ЧН\ЗП будет выглядеть так:&lt;br /&gt;
* '''position'''                = -0.026, -0.132, 0.0 - позиция оружия в руках НПС&lt;br /&gt;
* '''orientation'''             = 0, 0, 0 - вращение оружия в руках НПС&lt;br /&gt;
* '''strap_position'''          = -0.26,-0.11,0.25  - позиция оружия на спине по отношению к НПС при виде от 3-его лица                             &lt;br /&gt;
* '''strap_orientation'''       = -15,-9,110 - вращение оружия на спине НПС при виде от 3-его лица&lt;br /&gt;
&lt;br /&gt;
===Седьмой раздел===&lt;br /&gt;
&lt;br /&gt;
Содержит описания визуальной стороны оружия и некоторые другие параметры:&lt;br /&gt;
&lt;br /&gt;
* '''startup_ammo''' = 90 - как нетрудно догадаться, стартовое количество патронов (в синглплеере ни на что не влияет)&lt;br /&gt;
* '''visual''' = weapons\g36\wpn_g36.ogf - модель оружия, используемая NPC, а также игроком при виде от третьего лица&lt;br /&gt;
&lt;br /&gt;
* '''ph_mass''' = 4 - физическая масса, используемая при расчетах&lt;br /&gt;
&lt;br /&gt;
* '''scope_status''' = 2 - ситуация со съемным прицелом&lt;br /&gt;
* '''silencer_status''' = 1 - ситуация с несъемным глушителем&lt;br /&gt;
* '''grenade_launcher_status''' = 0 - ситуация с отсутствующим подствольным гранатометом&lt;br /&gt;
&lt;br /&gt;
* Параметры:&lt;br /&gt;
** '''0''' - нет, новый прикрепить нельзя &lt;br /&gt;
** '''1''' - уже есть, несъемный &lt;br /&gt;
** '''2''' - нет, но можно установить&lt;br /&gt;
&lt;br /&gt;
* '''zoom_enabled''' = true - есть ли зум (прицеливание)&lt;br /&gt;
* '''scope_zoom_factor''' = 33.3 - какой зум дает прицеливание (здесь 60/33.3 = 1.8х)&lt;br /&gt;
* '''scope_texture'''	= wpn\wpn_crosshair_g36 - текстура прицельной сетки&lt;br /&gt;
&lt;br /&gt;
* '''shell_point''' = 0.15, 0.0, -0.05 - точка вылета гильз&lt;br /&gt;
* '''shell_dir''' = 0.0, 1.0, 0.0   - точка выброса пороховых газов из ствольной коробки.&lt;br /&gt;
&lt;br /&gt;
* '''fire_point''' = -0.000000,0.062000,0.134000 - точка выстрела&lt;br /&gt;
* '''fire_point2''' = 0.30, 0.00, 0.05 - точка выстрела из подствольного гранатомета&lt;br /&gt;
* '''fire_bone''' = wpn_body&lt;br /&gt;
* '''orientation'''  = 0, 0, 0 - ориентация ствола оружия в направлении точки попадания пули(это центр монитора). Некоторые мододелы ориентируют оружие по линии прицеливания- это не правильно, ибо пуля вылетает из ствола, а не из прицела.&lt;br /&gt;
* '''position'''  = 0, 0, 0 - позиция. Первая координата отвечает за перемещение в стороны (положительная - вправо, отрицательная - влево), вторая - перемещение по высоте (положительная - вверх, отрицательная - вниз), третья - перемещение по горизонтали (положительная - вперед, отрицательная - назад)&lt;br /&gt;
* '''visual''' = weapons\g36\wpn_g36_hud.ogf - модель, отображаемая у нас в руках&lt;br /&gt;
&lt;br /&gt;
==Изменение описаний==&lt;br /&gt;
&lt;br /&gt;
Описания оружия хранятся в файле:&lt;br /&gt;
''...\S.T.A.L.K.E.R\gamedata\config\text\rus\string_table_enc_weapons.xml''&lt;br /&gt;
&lt;br /&gt;
В нем хранятся строки с названиями и описаниями, на которые ссылаются конфиги оружия. Например, тот же '''G36''' ссылается сюда:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;[...]&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_weapons1_wpn-g36&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Штурмовая винтовка немецкого производства, представляющая собой первоклассный образец &lt;br /&gt;
современного оружия - лёгкого, надёжного и эргономичного.\n Боеприпасы:\n обычный 5,56x45 мм &lt;br /&gt;
SS109,\n бронебойный 5,56x45 мм АР.&amp;lt;/text&amp;gt;&lt;br /&gt;
[...]&lt;br /&gt;
	&amp;lt;string id=&amp;quot;wpn-g36&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;ГП37&amp;lt;/text&amp;gt;&lt;br /&gt;
[...]&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Меняя их содержимое, мы меняем описания/названия данного оружия.&lt;br /&gt;
&lt;br /&gt;
==Нововведения в ЗП==&lt;br /&gt;
===HUD===&lt;br /&gt;
HUD модель была разделена на 2 части - руки и, собственно, само оружие. Это было сделано для того, чтобы добиться смены визуалов рук при смене комбинизона. Из-за этого (и не только из-за этого) большая часть конфига, находящаяся под &amp;quot;[wpn_xxx_hud]:hud_base&amp;quot; претерпела некоторые изменения - о них я и расскажу.&lt;br /&gt;
&lt;br /&gt;
'''Добавлены:'''&lt;br /&gt;
&lt;br /&gt;
* '''hands_position'''		= 0.020500,-0.206999,0.261999 - положение рук и оружия &lt;br /&gt;
* '''hands_orientation'''	= 3.349998,2.599999,-0.050000 - направление (ориентация) рук и оружия &lt;br /&gt;
* '''hands_position_16x9'''	= 0.020500, -0.165999,0.209500 - положение рук и оружия для мониторов 16x9&lt;br /&gt;
* '''hands_orientation_16x9'''	= 3.649998,1.050001, -0.050000 - направление (ориентация) рук и оружия для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
* '''item_position'''		= 0,0,0 - позиция оружия относительно рук&lt;br /&gt;
* '''item_orientation'''	= 0,0,0 - ориентация оружия относительно рук&lt;br /&gt;
&lt;br /&gt;
* '''aim_hud_offset_pos'''      = -0.129000,0.017000,-0.001500 - смещение рук с оружием при прицеливании &lt;br /&gt;
* '''aim_hud_offset_rot'''      = -0.012500,0.040000,0.020000 - ориентация рук с оружием при прицеливании&lt;br /&gt;
* '''aim_hud_offset_pos_16x9''' = -0.129000,0.017000,-0.001500 - смещение рук с оружием при прицеливании для мониторов 16x9&lt;br /&gt;
* '''aim_hud_offset_rot_16x9''' = -0.012500,0.040000,0.020000 - ориентация рук с оружием при прицеливании для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
* '''gl_hud_offset_pos'''       = 0,0,0 - смещение рук с оружием при прицеливании из подствольника&lt;br /&gt;
* '''gl_hud_offset_rot'''       = 0,0,0 - ориентация рук с оружием при прицеливании из подствольника&lt;br /&gt;
* '''gl_hud_offset_pos_16x9'''  = 0,0,0 - смещение рук с оружием при прицеливании из подствольника для мониторов 16x9&lt;br /&gt;
* '''gl_hud_offset_rot_16x9'''  = 0,0,0 - ориентация рук с оружием при прицеливании из подствольника для мониторов 16x9&lt;br /&gt;
&lt;br /&gt;
===Апгрейды и изнашиваемость===&lt;br /&gt;
Как известно, в ЗП есть возможность апгрейда оружия. За выбор схем при апгрейде отвечают строки:&lt;br /&gt;
&lt;br /&gt;
* '''upgrades'''                = up_gr_firstab_ak74, up_gr_seconab_ak74, up_gr_thirdab_ak74, up_gr_fourtab_ak74, up_gr_fifthab_ak74, * '''up_gr_fifthcd_ak74''' - части апгрейд схемы &lt;br /&gt;
* '''installed_upgrades'''      = - установленные апгрейды&lt;br /&gt;
* '''upgrade_scheme'''          = upgrade_scheme_ak74 - апгрейд-схема&lt;br /&gt;
&lt;br /&gt;
Так-же в ЗП была создана более продуманная схема изнашиваемости, вот строки которые за это отвечают:&lt;br /&gt;
&lt;br /&gt;
* '''misfire_start_condition'''	 = 0.6 - изношенность, при которой появляется шанс осечки&lt;br /&gt;
* '''misfire_end_condition'''	 = 0.1 - изношенность при которой шанс осечки становится константным&lt;br /&gt;
* '''misfire_start_prob'''	 = 0.003 - шанс осечки при изношенности больше чем misfireStartCondition&lt;br /&gt;
* '''misfire_end_prob'''	 = 0.043 - шанс осечки при изношенности больше чем misfireEndCondition&lt;br /&gt;
* '''condition_shot_dec'''       = 0.001 - увеличение изношенности при одиночном выстреле&lt;br /&gt;
* '''condition_queue_shot_dec''' = 0.0012 - увеличение изношенности при выстреле очередью&lt;br /&gt;
Изношенность нового ствола = 1.0&lt;br /&gt;
&lt;br /&gt;
===Основной конфиг===&lt;br /&gt;
Здесь изменений не так много:&lt;br /&gt;
&lt;br /&gt;
Иконка используемая при апгрейде. Координаты отсчитываются с левого верхнего угла по пикселям. Файл с иконками находится по пути '''textures\ui\ui_actor_weapons.dds'''&lt;br /&gt;
&lt;br /&gt;
* '''upgr_icon_x'''			= 304 - координаты по х (горизонтально)&lt;br /&gt;
* '''upgr_icon_y'''			= 627 - координаты по у (вертикально)&lt;br /&gt;
* '''upgr_icon_width'''		= 295 - ширина иконки&lt;br /&gt;
* '''upgr_icon_height'''   	= 110 - высота иконки&lt;br /&gt;
&lt;br /&gt;
* * '''scopes_sect'''				= scope_ak74, scope_x2.7_ak74, scope_live_detector_ak74, scope_night_ak74 - ссылки на вторичный конфиг прицела&lt;br /&gt;
&lt;br /&gt;
* '''[scope_ak74]''' - собственно сам вторичный конфиг&lt;br /&gt;
* '''scope_name''' 					= wpn_addon_scope - ссылка на конфиг прицела&lt;br /&gt;
* '''scope_x'''              	= 47 - расположение иконки установленного прицела на иконке оружия  по x(в пикселях)&lt;br /&gt;
* '''scope_y'''                 = 0 - по у&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана:&lt;br /&gt;
&lt;br /&gt;
* [[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
* [[Участник:Ya.D|Ya.D]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;br /&gt;
Статья средняя, но не сказано про параметр патронов &amp;quot;explosive&amp;quot;. Нет подствольников и ракет, а именно патронов! Даже в оригинальном файле &amp;quot;weapons.ltx&amp;quot; в свойствах патронов 5.45x39  для АК к конце всегда есть строка &amp;quot;explosive = off&amp;quot;.  Достаточно изменить её на &amp;quot;explosive = on&amp;quot; и при выстреле таким снарядом мы увидим как в месте попадания разгорается и тухнет оранжевое пламя. Но это всего лишь анимация, так что если будете делать такие патроны, не забывайте увеличить их бронебойную способность и останавливающее действие. Кстати, это не только для патронов АК сделать можно, а для любых всего одной строкой. Удачи!&lt;br /&gt;
&lt;br /&gt;
Немного поправил '''Chriotmao''' 05.09.2013&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%81%D0%B8-%D0%B2%D1%8B%D0%B1%D1%80%D0%BE%D1%81%D0%B0_%D0%BD%D0%B0_%D0%AF%D0%BD%D1%82%D0%B0%D1%80%D1%8C</id>
		<title>SoC. Добавление пси-выброса на Янтарь</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%81%D0%B8-%D0%B2%D1%8B%D0%B1%D1%80%D0%BE%D1%81%D0%B0_%D0%BD%D0%B0_%D0%AF%D0%BD%D1%82%D0%B0%D1%80%D1%8C"/>
				<updated>2016-12-28T22:00:02Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.203 (обсуждение) к версии 178.45.129.153&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Категория:Скрипты]]В этот туторе я хочу объяснить, как добавить похожий пси-выброс на Янтарь как в ЧН. Правда есть один недостаток. Он появляется всегда в начале, как загружаешь любой сейв на Янтаре, но думаю,&lt;br /&gt;
это не сильный недостаток. Автор не я, благодарность &amp;lt;b&amp;gt;Shadows&amp;lt;/b&amp;gt; за скрипт выброса из его &amp;lt;b&amp;gt;&amp;quot;Shadows Addon&amp;quot;&amp;lt;/b&amp;gt; aka &amp;lt;b&amp;gt;Phantoms Zone&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;Автор статьи: &amp;lt;b&amp;gt;LaRento&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Автор скрипта: &amp;lt;b&amp;gt;Shadows&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Ну что ж, начнём.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создаём функцию пси-выброса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Для этого создаём новый скрипт. Пускай &amp;lt;b&amp;gt;yantar_psy_blowout.script&amp;lt;/b&amp;gt; и пишем туда:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;lua&amp;gt;-- Пси-Выброс на Янтаре by Shadows&lt;br /&gt;
function update()&lt;br /&gt;
yantar_psy_blowout()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local next_blowout = 0 -- назначаем локальную переменную для обозначения времени до сл. выброса&lt;br /&gt;
local effects_off = 0 -- назначаем локальную переменную для обозначения времени до ост. выброса&lt;br /&gt;
function yantar_psy_blowout()&lt;br /&gt;
if level.name()==&amp;quot;l08_yantar&amp;quot; then -- имя локации, на которой будет пси-выброс&lt;br /&gt;
if not has_alife_info(&amp;quot;yan_labx16_switcher_3_end&amp;quot;) and next_blowout &amp;lt; time_global() then&lt;br /&gt;
next_blowout = time_global() + 300000 -- время между пси-выбросами&lt;br /&gt;
effects_off = time_global() + 30000 -- его длительность&lt;br /&gt;
db.actor.psy_health = -0.45 -- количество пси-здоровья, которое отнимается при нём(однако это не работает из-за ошибки автора скрипта)&lt;br /&gt;
play_sound([[characters_voice\scenario\yantar\psy_voices_1]]) -- звук при выбросе&lt;br /&gt;
play_sound([[ambient\blowout]]) -- звук при выбросе&lt;br /&gt;
level.add_call(yantar_psy_blowout_timer, yantar_psy_blowout_off) -- выполняем проверку, если глобальное время больше времени на остановку выброса, то останавливаем его&lt;br /&gt;
level.add_pp_effector(&amp;quot;psy_antenna.ppe&amp;quot;, 1875, true) -- вызываем эффект пси-излучения &lt;br /&gt;
level.add_pp_effector(&amp;quot;yantar_underground_psi.ppe&amp;quot;, 1876, false) -- вызываем эффект пси-излучения &lt;br /&gt;
level.add_cam_effector(&amp;quot;camera_effects\\shell_shock.anm&amp;quot;, 396, false, &amp;quot;&amp;quot;) -- вызываем эффект камеры&lt;br /&gt;
level.add_cam_effector(&amp;quot;camera_effects\\earthquake.anm&amp;quot;, 397, false, &amp;quot;&amp;quot;) -- вызываем эффект камеры&lt;br /&gt;
end&lt;br /&gt;
end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function yantar_psy_blowout_timer()&lt;br /&gt;
return time_global() &amp;gt; effects_off -- проверяем, что глобальное время больше заданного на остановку пси-выброса&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function yantar_psy_blowout_off()&lt;br /&gt;
level.remove_pp_effector(1875) -- удаляем эффект&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function play_sound(sound,obj)&lt;br /&gt;
if obj == nil then obj = db.actor end&lt;br /&gt;
snd = xr_sound.get_safe_sound_object(sound)&lt;br /&gt;
snd:play_no_feedback(obj,sound_object.s2d,0,vector(),1.0)&lt;br /&gt;
end&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Регистрация в bind_stalker.script ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Открываем &amp;lt;b&amp;gt;bind_stalker.script&amp;lt;/b&amp;gt; и после &amp;lt;br&amp;gt;&amp;lt;pre&amp;gt;function actor_binder:update(delta)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;Пишем это:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;pre&amp;gt;yantar_psy_blowout.update()&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;Всё, готово. Правда вам необходимо добавить звук &amp;lt;b&amp;gt;blowout.ogg&amp;lt;/b&amp;gt;&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D0%B0%D1%82%D0%B5%D0%B9_%D0%B2_PDA</id>
		<title>SoC. Добавление статей в PDA</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D0%B0%D1%82%D0%B5%D0%B9_%D0%B2_PDA"/>
				<updated>2016-12-28T21:58:59Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.203 (обсуждение) к версии 195.189.123.205&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Добавление статьи==&lt;br /&gt;
&lt;br /&gt;
На примере статьи из '''Artefact Activation Mod''' разберем их добавление в '''PDA''':&lt;br /&gt;
&lt;br /&gt;
* Добавим в файл '''config\gameplay\encyclopedia_zone.xml''' новую статью:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
    &amp;lt;!-------------------------------- Activation - Basic -----------------------------&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;article id=&amp;quot;zone_anomalies_activation_basic&amp;quot; name=&amp;quot;zone_anomalies_activation-basic&amp;quot; group=&amp;quot;Anomalies&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;texture x=&amp;quot;500&amp;quot; y=&amp;quot;150&amp;quot; width=&amp;quot;100&amp;quot; height=&amp;quot;100&amp;quot;&amp;gt;'''ui\ui_icon_photo'''&amp;lt;/texture&amp;gt;&lt;br /&gt;
        &amp;lt;text&amp;gt;enc_zone_anomalies_activation_basic&amp;lt;/text&amp;gt;&lt;br /&gt;
    &amp;lt;/article&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Здесь:&lt;br /&gt;
&lt;br /&gt;
** '''article id''' - внутреннее имя статьи, именно на него ссылаются в файлах игры&lt;br /&gt;
** '''name''' - имя статьи, отображаемое в игре, подгружается из строкового массива&lt;br /&gt;
** '''texture''' - картинка и её позиция в статье, в данном случае мы использовали обычный белый шум&lt;br /&gt;
** '''text''' - текст статьи, отображаемый в игре, подгружается из строкового массива&lt;br /&gt;
&lt;br /&gt;
* Добавим в, например, '''config\gameplay\info_l01escape.xml''' (инфопорции уровня &amp;quot;Кордон&amp;quot;) ссылку на получение статьи - скажем, к трупу у туннеля, при обыске которого выдается информация о аномалиях в туннеле (вы его обнаруживаете, проходя второе спецзадание от Сидоровича). Найдем эти строки и дополним их:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
	&amp;lt;!-- труп у аномалии --&amp;gt;&lt;br /&gt;
	&amp;lt;info_portion id=&amp;quot;esc_tutorial_dead_novice&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;article&amp;gt;tutorial_moving_anomaly&amp;lt;/article&amp;gt;&lt;br /&gt;
		'''&amp;lt;article&amp;gt;zone_anomalies_activation_basic&amp;lt;/article&amp;gt;'''&lt;br /&gt;
	&amp;lt;/info_portion&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Главное - никогда не путайте '''article id''', '''name''' и '''text''' статьи. Я в данном примере это сделать легко. Лучше называйте их непохожими друг на друга названиями.&lt;br /&gt;
&lt;br /&gt;
* Так как в статье у нас есть такое поле:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
        &amp;lt;text&amp;gt;enc_zone_anomalies_activation_basic&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Да и название тоже не написано прямо, а ссылается на определенную строку, то добавим этот самый '''text''' в '''config\text\rus\string_table_enc_zone.xml''', в нашем случае:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_zone_anomalies_activation-basic&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;Активация - базис&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
	&amp;lt;string id=&amp;quot;enc_zone_anomalies_activation_basic&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;text&amp;gt;С артефактами связана, помимо всего прочего, ''(ну, и так далее, там большой текст)''...&amp;lt;/text&amp;gt;&lt;br /&gt;
	&amp;lt;/string&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Дополнительно==&lt;br /&gt;
&lt;br /&gt;
Чтобы статья добавлялась при получении определенного задания, в '''..._task.xml''' (вместо '''...''' стоит название уровня) нужно прописать конструкцию вида:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;article&amp;gt;название_задания_descr&amp;lt;/article&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
И добавить статью с соответствующим id.&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
Статья создана: [[Участник:BAC9-FLCL|BAC9-FLCL]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83</id>
		<title>3dsmax. Создание моделей и их добавление в игру</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3dsmax._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B5%D0%B9_%D0%B8_%D0%B8%D1%85_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%B8%D0%B3%D1%80%D1%83"/>
				<updated>2016-12-28T21:58:58Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.203 (обсуждение) к версии Xenus-Ghost&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Создание моделей и добавление в игру==&lt;br /&gt;
&lt;br /&gt;
Итак, для работы нам понадобятся следующие инструменты:&lt;br /&gt;
&lt;br /&gt;
* '''Autodesk 3D Studio Max''' версий '''6''','''7''' или '''8''' (на других вроде плагин экспорта не работает, но я не уверен)&lt;br /&gt;
* '''3DS Max STALKER Plug-In''' для экспорта в формат object (.obj)&lt;br /&gt;
* '''S.T.A.L.K.E.R. SDK'''&lt;br /&gt;
&lt;br /&gt;
При создании собственных текстур потребуется:&lt;br /&gt;
&lt;br /&gt;
* '''Adobe Photoshop'''&lt;br /&gt;
* '''DDS-плагин''' от nVidia&lt;br /&gt;
&lt;br /&gt;
Приступим к креативу. Пример будем рассматривать на примитивной модели кубика.&lt;br /&gt;
&lt;br /&gt;
'''1)''' Запускаем 3DS Max и создаем наш кубик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_1.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''2)''' Далее накладываем на него текстуру. Запускаем редактор материалов (кнопка «М» по дефолту), выбираем тип материала, нажав на кнопку Standart (1), и в раскрывшемся списке выбираем S.T.A.L.K.E.R. Mtl (2), далее, в свитке Blinn Basic Parameters, щелкаем на маленькую кнопку напротив Diffuse (3), в раскрывшемся списке выбираем Bitmap (4), и выбираем требуемую текстуру из папки gamedata нашего SDK. Для примера я выбрал ...gamedata\textures\wpn\wpn_pkm_lenta.dds.&lt;br /&gt;
&lt;br /&gt;
Далее назначаем нашу текстуру для кубика и настраиваем ее внешний вид либо в самом Редакторе Материалов, либо, если объект сложный, - модификатором Unwrap UVW (кто работает в 3DS Max - знает). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_2.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''3)''' После текстуривания нашего объекта отмасштабируем его до нормальных размеров игры (для облегчения этого процесса я импортирую в сцену какую-нибудь модель из игры, например, АК-74), и приступаем к созданию костей. &lt;br /&gt;
&lt;br /&gt;
Идем в Create -&amp;gt; Systems -&amp;gt; Bones и создаем пару костей внутри нашей коробки приблизительно такого вида (см. рисунок). Первую косточку обзываем, например, kost, вторую можно не трогать и вообще ее можно потом удалить.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_3.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''4)''' Теперь выделяем нашу коробку и в закладке Modify добавляем ей модификатор Physique (1). В свертке модификатора жмем кнопку Attach to Node (2), кликаем по нашей косточке с именем kost и в развернувшемся списке выбираем Riquid (3) и жмем Initialize (4) (см. рисунок).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_4.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''5)''' Далее, в свитке Physique level of Detail меняем параметр Skin Update на Rigid, в дереве модификатора Physique выбираем вершины нашего объекта (Vertex), выделяем все вершины нашего кубика при нажатой кнопке Select, выбираем тип вершин Rigid (4), жмем кнопку Assign to Link (5) и кликаем по нашей косточке.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_5.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''6)''' Теперь все готово к экспорту в формат object (.obj), который понимает Actor Editor из SDK. Идем на закладку Utilites и жмем кнопку S.T.A.L.K.E.R. Export (1) (кнопка эта у вас там будет находиться при правильной настройке плагина). Выделяем наш кубик и жмем кнопку Export Skin. Сохраняем, наблюдая лог в окошке на отсутствие ошибок.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_6.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''7)''' Запускаем Actor Editor из комплекта SDK и загружаем нашу сохраненную модель и видим приблизительно следующую картину:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_7.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''8)''' В панели Object Items видим характеристики нашего объекта (нас интересуют только Surfaces и Bones). В Surfaces задаются материалы и шейдеры для нашего объекта. Раскрываем список Surfaces, выбираем 01-Default (это я забыл материал в Максе обозвать) и устанавливаем параметры:&lt;br /&gt;
&lt;br /&gt;
* '''Shader:''' models/model &lt;br /&gt;
* '''Compile:''' def_shaders/def_vertex&lt;br /&gt;
* '''Game Mtl:''' objects/small_box&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_8.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''9)''' Видимо использовать можно и другие, но я еще не разобрался до конца.&lt;br /&gt;
&lt;br /&gt;
Далее настраиваем нашу косточку. Раскрываем список Bones, выбираем нашу kost. Далее жмем напротив Generate Shape кнопку All, настраиваем вес параметром Mass, можно настроить материал параметром Game Material (я оставил default_object) затем выбираем тип баунд_бокса нажатием кнопки Type. Я выбрал Box. Его кстати можно потом вращать, двигать и масштабировать.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Model_Tutorial_9.jpg]]&lt;br /&gt;
&lt;br /&gt;
'''10)''' После настройки параметров экспортируем нашу коробочку в .ogf-файл из меню File -&amp;gt; Export, и подменяем полученной моделью, например, болт. Далее ходим и швыряемся магазинами от ПКМ в головы зазевавшимся неписям :)&lt;br /&gt;
&lt;br /&gt;
==Авторы==&lt;br /&gt;
&lt;br /&gt;
'''Статья создана:''' [[Участник:tambovski|tambovski]].&lt;br /&gt;
[[Категория: Wireframe]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B0_.thm</id>
		<title>Файл формата .thm</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB_%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B0_.thm"/>
				<updated>2016-12-28T21:58:57Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.203 (обсуждение) к версии 217.118.90.55&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Что это такое и зачем они нужны? ===&lt;br /&gt;
&lt;br /&gt;
Эти файлы могут использоваться во всех частях Сталкера (в ТЧ реже - чтобы дать конкретной текстуре параметры, не затрагивая textures.ltx). В ТЧ работают начиная с версии 1.0004. Используются для выставления параметров текстур — bump, detail и прочее. Имеют вид ''название_текстуры.thm'' и ''название_текстуры_bump.thm'' для bump текстур. Без них игра не подставляет текстуре нужные параметры и следовательно они получаются «плоские», хуже чем на статическом освещении. Для сравнения приведу картинки&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[Изображение:No thm.jpg|thumb|Без thm]]&lt;br /&gt;
[[Изображение:With thm.jpg|thumb|C thm]]&lt;br /&gt;
&lt;br /&gt;
=== Как их создать? Какие параметры нужны? ===&lt;br /&gt;
&lt;br /&gt;
Для создания этих файлов нужен официальный СДК версии 0.5/0.6/0.7. С версией 0.4 есть нюанс (о нём примечании). Для начала, скачайте эту программу [http://stalkerin.gameru.net/downloads/stutils/dds2tgaLE.rar dds2tgaLE (373 KБ)] и установите её в папку import вашего СДК. Она нужна для быстрого перевода текстур из формата DDS в TGA, нужный СДК. Теперь, допустим, мы хотим сделать файл .thm для текстуры ''prop_plitka_lab''. Копируем текстуру ''prop_plitka_lab'' и ''prop_plitka_lab_bump'' в папку import, запускаем файл START.BAT — заместо dds мы получили tga текстуры. Теперь, в нашем случае, копируем их в папку ''rawdata\textures\prop''. Далее заходим в Level Editor, щёлкаем по кнопке Images и выбираем пункт Check New Textures&lt;br /&gt;
&lt;br /&gt;
[[Изображение:One.jpg]]&lt;br /&gt;
&lt;br /&gt;
В появившемся окошке жмём ОК и видим появившееся окно с текстурами которые вы добавили. На этом скриншоте отмечено то, что нам понадобится изменять (я уже поставил)&lt;br /&gt;
&lt;br /&gt;
[[Изображение:Two.jpg]]&lt;br /&gt;
&lt;br /&gt;
Итак, в секции Bump в параметре Mode ставим Use — для различных текстур, а Use parallax — для текстур типа кирпичной кладки, кафеля (как в данной текстуре) и тп. В параметре Texture выбираем тестуру bump — ''prop_plitka_lab_bump''. В секции Detalis в параметрах Use as Diffuse и/или Use as Bump (R2) ставим галочку. Как расставить эти параметры грамотно? Обратимся к textures.ltx. Ищем нашу текстуру в нём, первое что находится:&lt;br /&gt;
 prop\prop_plitka_lab = detail\detail_tile_det2, 6.000000, usage[diffuse_or_bump]&lt;br /&gt;
Значит ставим галочки в параметрах Use as Diffuse и Use as Bump (R2). В параметре Texture под этими пунктами выбираем текстуру ''detail\detail_tile_det2'', предварительно сделав импорт этой текстуры в СДК. И в параметре Scale ставим 6.0. Ищем по файлу дальше, видим:&lt;br /&gt;
 prop\prop_plitka_lab = bump_mode[use:prop\prop_plitka_lab_bump], material[1.50]&lt;br /&gt;
Здесь пишется bump-текстура и «material», это степень интенсивности отражения света текстурой - чем больше, тем сильнее текстура отражает свет. Только в СДК поставить выше значения 1.0 не получится (не страшно) для того чтобы выставить нужное значение меняем материал.&lt;br /&gt;
;[0.00-0.99] - OrenNayar &amp;lt;-&amp;gt; Blinn&lt;br /&gt;
;[1.00-1.99] - Blinn &amp;lt;-&amp;gt; Phong&lt;br /&gt;
;[2.00-2.99] - Phong &amp;lt;-&amp;gt; Metal&lt;br /&gt;
;[3.00-3.99] - Metal &amp;lt;-&amp;gt;OrenNayar&lt;br /&gt;
&lt;br /&gt;
(нужна картинка, не знаю как вставить)Секция Fade отвечает за закрашивание текстуры определённым цветом или обесцвечивание включая мип уровни, можно настроить на какой процент с каждым мип уровнем будет усиливаться эффект, в первую очередь нужна для детальных текстур и текстур терейна.&lt;br /&gt;
* Enable Calor - включить для цвета&lt;br /&gt;
* Enabled Alpha - включить для альфа канала&lt;br /&gt;
* Delay &amp;quot;n&amp;quot; MIP - пропуск мип уровней, нужно для того что бы настроить то, с какого мип уровня появиться эффект.&lt;br /&gt;
* % of color to fade in - процент на который будет увеличиваться эффект с каждым мип уровнем.&lt;br /&gt;
* Color - Тут выбираем цвет эффекта.&lt;br /&gt;
* Alpha - сам ещё не знаю)&lt;br /&gt;
&lt;br /&gt;
 Вот что ещё находим:&lt;br /&gt;
 prop\prop_plitka_lab = 0&lt;br /&gt;
Здесь выставлен тип текстуры. Смотря по СДК и файлу textures.ltx, я понял так:&lt;br /&gt;
* 0 — 2D Texture&lt;br /&gt;
* 1 — Cube Map&lt;br /&gt;
* 2 — Bump Map&lt;br /&gt;
* 3 — Normal Map&lt;br /&gt;
* 4 — Terrain&lt;br /&gt;
По textures.ltx всё. Жмём ОК и ищем полученные изображения и их .thm файлы в папке СДК\…\gamedata\textures\…&lt;br /&gt;
Кстати, когда будете копировать готовые thm файлы, не забудьте скопировать не только ''prop_plitka_lab'' и ''prop_plitka_lab_bump'', но и ''prop_plitka_lab_bump#''. Уже можно их опробовать в игре&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Примечание по СДК 0.4===&lt;br /&gt;
&lt;br /&gt;
В СДК версии 0.4 создаются файлы thm, больше размером и с другим форматом, чем в ЧН/ЗП. Поэтому они не работают в них. Но есть способ как превратить эти файлы для ЧН/ЗП (из формата СДК 0.4 перевести в современный):&lt;br /&gt;
переделать их с помощью утилиты — [http://stalkerin.gameru.net/modules.php?name=Downloads&amp;amp;d_op=viewtheoned&amp;amp;lid=421 thmParser], как использовать описано внутри.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Примечание по ошибке thm===&lt;br /&gt;
Иногда после процессов редактирования текстуры, бампа, thm в игре можно встретить баг: определенная текстура покрывается непонятной сеткой, немного напоминающей шахматную доску. Причиной этому может быть: &lt;br /&gt;
* отсутствие бапма, которого привязывает к текстуре thm&lt;br /&gt;
* неправильное название бампа (возможно, по невнимательности допустили ошибку)&lt;br /&gt;
* thm-файл устаревший, там указан другой бамп (могли забыть перебросить новый thm из СДК)&lt;br /&gt;
Лечение: проверяем наличие бампа, его название. Если что, прогоняем привязку текстуры к бампу через СДК еще один раз, получаем новый thm, копируем с заменой обновленные файлы из СДК в геймдату &lt;br /&gt;
&lt;br /&gt;
'''Автор статьи: [http://www.gameru.net/forum/index.php?showuser=13071 Ork]'''&lt;br /&gt;
&lt;br /&gt;
'''За помощь и поддержку спасибо [http://www.gameru.net/forum/index.php?showuser=11669 XaK] и BuS777'''&lt;br /&gt;
&lt;br /&gt;
'''Дополнил:''' FantomICW&lt;br /&gt;
&lt;br /&gt;
[[Категория:Texturing]]&lt;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%AD%D0%BD%D1%86%D0%B8%D0%BA%D0%BB%D0%BE%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F</id>
		<title>SoC. Энциклопедия</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=SoC._%D0%AD%D0%BD%D1%86%D0%B8%D0%BA%D0%BB%D0%BE%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F"/>
				<updated>2016-12-28T21:58:56Z</updated>
		
		<summary type="html">&lt;p&gt;OlegatoR: Откат правок 5.228.2.203 (обсуждение) к версии 91.218.192.254&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;====Как получить всю инфу в энциклопедию в начале новой игры====&lt;br /&gt;
Разбирать добавление статьи в энциклопедию я не буду, а просто раскажу как выдать всю инфу в начале игры.&lt;br /&gt;
Открываем файл '''gamedata\scripts\bind_stalker.script''' и  ищем строки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
			self.object:give_info_portion(&amp;quot;storyline_actor_start&amp;quot;)&lt;br /&gt;
			_G.g_start_avi = true&lt;br /&gt;
			printf(&amp;quot;*AVI* RUN START AVI&amp;quot;)			&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
--		if not has_alife_info(&amp;quot;encyclopedy&amp;quot;) then		-раскомпилитим &lt;br /&gt;
&lt;br /&gt;
--			self.object:give_info_portion(&amp;quot;encyclopedy&amp;quot;)	-		эти&lt;br /&gt;
&lt;br /&gt;
--		end						-			строки&lt;br /&gt;
&lt;br /&gt;
		if not has_alife_info(&amp;quot;global_dialogs&amp;quot;) then&lt;br /&gt;
			self.object:give_info_portion(&amp;quot;global_dialogs&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		if not has_alife_info(&amp;quot;level_changer_icons&amp;quot;) then&lt;br /&gt;
			self.object:give_info_portion(&amp;quot;level_changer_icons&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		level_tasks.add_lchanger_location()&lt;br /&gt;
&lt;br /&gt;
		self.bCheckStart = false&lt;br /&gt;
		&lt;br /&gt;
	end		&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь, когда вы начнете игру, у вас добавятся все стандартные статьи из игры... Просто, да?&lt;br /&gt;
Мы не ограничемся только ими, добавим статьи про оружие, машины и т.п., а так же ваши, добавленные...&lt;br /&gt;
Инфопоршну &amp;quot;энциклопедия&amp;quot; игра берет из файла '''gamedata\config\gamplay\info_known_objects.xml'''.&lt;br /&gt;
Открываем и смотрим структуру:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;?xml version='1.0' encoding=&amp;quot;windows-1251&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;game_information_portions&amp;gt;&lt;br /&gt;
&amp;lt;info_portion id=&amp;quot;encyclopedy&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-medusa&amp;lt;/article&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-cristall-flower&amp;lt;/article&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-night-star&amp;lt;/article&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ну и так далее... Чтоб добавить инфу, например о ПМм, просто пишем между любыми артиклами(например):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;game_information_portions&amp;gt;&lt;br /&gt;
&amp;lt;info_portion id=&amp;quot;encyclopedy&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-medusa&amp;lt;/article&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-cristall-flower&amp;lt;/article&amp;gt;&lt;br /&gt;
  &amp;lt;article&amp;gt;weapons1_wpn-pm&amp;lt;/article&amp;gt;			-теперь нам будут выдавать инфу о ПМм&lt;br /&gt;
  &amp;lt;article&amp;gt;zone_artifact_af-night-star&amp;lt;/article&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Объясню где брал инфопоршну ПМм-в '''config\gameplay\encyclopedia_weapons.xml'''. В той же папке есть и файлы с инфопоршнами предметов(еды и т.п.), машин и т.п.&lt;br /&gt;
Добавляем их все... Долго, но что поделать, раз решились сделать:) Если все добавите-игра вылетит. Исправить это легко---просто в '''config\system.ltx''' добавим наши &amp;quot;недостающие&amp;quot; файлы(типа машин и т.п.).&lt;br /&gt;
Открываем и ищем секцию энциклопедии:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[encyclopedia]&lt;br /&gt;
files = encyclopedia_infos, storyline_info_to_diary, encyclopedia_weapons, encyclopedia_mutants, encyclopedia_zone, encyclopedia_social, encyclopedia_equipment, encyclopedia_tutorial&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Через запятую добавляем наши недостающие файлы:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[encyclopedia]&lt;br /&gt;
files = encyclopedia_infos, storyline_info_to_diary, encyclopedia_weapons, encyclopedia_mutants, encyclopedia_zone, encyclopedia_social, encyclopedia_equipment, encyclopedia_tutorial,encyclopedia_vehicles,&lt;br /&gt;
encyclopedia_new&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Вроде все (могу ошибатся:))... Кстати, я советовал бы вам добавлять свои статьи таким же способом-создаем отдельный файл, подключаем его в системе, и работаем дальше с ним... И все равно к какой теме&lt;br /&gt;
относится ваша статья, игра считывает ее из любых файлов секции '''encyclopedia'''. Теперь у нас в ПДА отображаются все возможные статьи...&lt;br /&gt;
&lt;br /&gt;
P.S.-сам обсолютно все статьи все никак не собирусь добавить, так что не знаю,есть ли там какие-либо ошибки... Если вылетела или зависла, открываем блокнот и жмем '''Ctrl+V'''(вставить) и смотрим лог &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;/div&gt;</summary>
		<author><name>OlegatoR</name></author>	</entry>

	</feed>