<?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=Lly</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=Lly"/>
		<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/Lly"/>
		<updated>2026-04-29T19:31:33Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.22.6</generator>

	<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</id>
		<title>Расширенные настройки</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"/>
				<updated>2016-11-26T10:39:13Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14587, сделанной участником 37.204.211.238 (обс.)&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;250&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;
== часть 7: Расширенные настройки ==&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;br&amp;gt;&lt;br /&gt;
Итак - &amp;quot;Расширенные настройки&amp;quot; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
В этой части мы рассмотрим несколько из этих &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;
# Посредством консольных команд&lt;br /&gt;
# Редактированием файла конфигурации User.ltx&lt;br /&gt;
# Параметрами командной строки&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Каждый из этих методов будет рассмотрен в данном материале. В этой части начнём с редактирования User.ltx.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''User.ltx'''&lt;br /&gt;
&lt;br /&gt;
Ваши персональные игровые настройки и настройки клавиш находятся в одном файле по имени &amp;quot;User.ltx&amp;quot;.&amp;lt;br&amp;gt;&lt;br /&gt;
Найти его можно по адресу \Documents and Settings\All Users\Shared Documents\STALKER-SHOC (ENG_XP) или&amp;lt;br&amp;gt;&lt;br /&gt;
\Documents and Settings\All Users\Документы\stalker-shoc\(RU_XP)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
В Windows Vista путь немного другой&amp;lt;br&amp;gt;&lt;br /&gt;
Users\Public\Documents\STALKER-SHOC&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Этот файл автоматически подгружается каждый раз когда запускается Сталкер.&amp;lt;br&amp;gt;&lt;br /&gt;
Из него подбираются все настройки для X-ray engine.&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;
Когда откроете файл вы увидите множество строк с настройками.&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;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Имейте в виду:&lt;br /&gt;
&lt;br /&gt;
# Параметры в файле могут быть изменены если лазать в настройки из интерфейса игры.&lt;br /&gt;
# Все настройки протестированы в консоли и User.ltx. Здесь рассматриваются только те из них, которые влияют на производительность. &lt;br /&gt;
# Стандартные настройки мы не будем рассматривать т.к. они отличаются ровно на столько же, на сколько различаются ваши компьютеры.&lt;br /&gt;
# У каждого своя система и чтобы подобрать настройки именно для вашей машины лучше их сначала протестировать через консоль.'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Параметры и что они дают:'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''bind [action, key]''' - Команда биндинга. Осуществляет привязку к клавише key действия action.&amp;lt;br&amp;gt;&lt;br /&gt;
Чтоб посмотреть весь лист забинженых команд наберите в консоле '''bind_list'''. Кстати тут есть небольшой аргумент.&amp;lt;br&amp;gt;&lt;br /&gt;
Например чтобы забиндить на клавишу '''SPACE''' прыжок - к названию клавиши нужно подставить спереди '''k'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Конечная команда выглядит так: '''bind jump kSPACE'''&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''cam_inert [0.0 - 1.0]''' - Отвечает за плавность камеры, На слабых системах способствует лагам больших значениях.&amp;lt;br&amp;gt;&lt;br /&gt;
Ставим ближе к 0, ели не хотим всё видеть пьяным глазом. Если поставить 1 - камера вообще перестаёт следовать за актёром. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
В общем параметр 0 - профессиональная игра;&amp;lt;br&amp;gt; 0.1-0.99 - для роликов и скриптовых сцен (красиво но играть никак);&amp;lt;br&amp;gt; 1 - для снятия скринов или роликов - камера висит - герой бегает.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''g_always_run [on,off]''' - По дефолту - когда мы нажимаем вперёд - герой бежит, если поставить параметр off - герой будет ходить. Не путаем со спринтом.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 Помним:&lt;br /&gt;
 Что приставки перед параметрами r1_ и r2_ разграничивают настройки для статического освещения (DX8) и динамического(DX9).&lt;br /&gt;
 если вы пользуетесь статическим настраиваем через r1_, угадайте через что настраиваем при Динамическом и Полном Динамическом.&lt;br /&gt;
&lt;br /&gt;
'''r1_dlights [on,off]''' - Отвечает за вкл\выкл Динамических источников света. Но так как мы уже в статическом режиме,&amp;lt;br&amp;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;
'''r1_dlights_clip [10.000 - 150.000]''' - Тут мы можем выставить насколько далеко светит динамический источник света.&amp;lt;br&amp;gt; Но опять же при использовании со статическим светом действует только на фонарик.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''r1_glows_per_frame [2 - 32]''' - Отвечает за количество слепящих источников света - но по тестам - особо на производительность не влияет.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''r1_lmodel_lerp [0.000 - 0.333]''' - меняет коэффициент Линейной интерполяции света ) (Lerp).&amp;lt;br&amp;gt;&lt;br /&gt;
 Коэффициент подсвета некоторых текстур  - в общем меняем и смотрим на оружие. На производительность не влияет&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''r1_ssa_lod_a [16.000 - 96.000]''' - Контролирует глобальный уровень детализации (LOD) для игрового мира, с высоким параметром даёт чёткую проработку объектов и дистанцию обзора - но наглухо убивает ФПС.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''r1_ssa_lod_b [16.000 - 64.000]''' - Похож на предыдущий параметр - но отвечает за детализацию определённых типов объектов игрового мира. Высокие значения на ФПС тоже влияет пагубно.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
'''r1_tf_mipbias [-3.000 - 3.000]''' - Контролирует МИПМАМ уровень чистоты текстуры удалённых объектов. Параметр близкий к -3 даёт кристальную чёткость деревьев на горизонте но ФПС страдает, обратный параметр размывает всё в мыло - но ФПС взлетает.&lt;br /&gt;
При Выключенном Анизонтропном фильтре, этот параметр единственный путь настройки дистанционных текстур в Сталкере.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
допереведу!&lt;br /&gt;
&lt;br /&gt;
'''r2_gi [on,off]''' - Отключено по дефолту, этот параметр контролирует систему Глобального Освещения (GI, Global Illumination), форму освещения с просчетом лучей света и их отражения от поверхности объектов. Есть несколько команд отвечающих за эту настройку: ''r2_gi'' включает и выключает систему освещения, '''r2_gi_refl''' контролирует отражения света от освещенных поверхностей. Однако, включение этот системы освещения в игре крайне пагубно влияет на FPS.&lt;br /&gt;
&lt;br /&gt;
'''r2_aa [on,off]''' - Команда контролирует включение поддельного Антиальясинга за счет шейдера размытия в игре, ввиду того что при технологии Отложенного затенения (Deffered shading) нет возможности использовать обычный способ фильтрации. Эта опция не одно и то же с ползунком Антиальясинг в настройках графики в игре. Поддельный АА не выполняет функцию сглаживания краев, он выполняет простое заблуривание картинки в игре.&lt;br /&gt;
&lt;br /&gt;
'''r2_aa_kernel [0.300 - 0.700]''' - Команда отвечающая ща поддельную функцию Антиальясинга, в том случае,если опция ''r2_aa'' включена. Высокие значения увеличивают размытость. Активация поддельного АА и установка настроек ''r2_aa_kernel'' в значение ''0.3'' дает наиболее приемлемый эффект сглаживания, не выполняя чрезмерного замыливания картинки.&lt;br /&gt;
&lt;br /&gt;
'''r2_aa_break [0.000000 - 1.000000,0.000000 - 1.000000,0.000000 -1.000000]''' - Команда, контролирующая дистанцию на которой работает функция поддельного Антиальясинга. Чем выше значения, тем на более дальние расстояния действует эффект. Однако, поскольку функция основана на векторном расчете, то максимальные расстояния не обязательно обеспечивают максимальное качество. Для эксперимента укажем ''r2_aa_break 0.000000,1.000000,0.000000'', в игре даст четкие объекты вблизи, и размытые вдали.&lt;br /&gt;
&lt;br /&gt;
'''r2_aa_weight [0.000000 - 1.000000,0.000000 - 1.000000,0.000000 - 1.000000]''' - Отвечает за коэффициент размытия при включенной опции поддельного АА, выше значение -больше мыла.&lt;br /&gt;
&lt;br /&gt;
'''r2_allow_r1_lights [on,off]''' - Включает поддержку в R2 использования статического освещения (методов R1). В игре проявляется не реалистично завышенной яркостью у картинки и явным понижением FPS.&lt;br /&gt;
&lt;br /&gt;
'''r2_gloss_factor [0.000 - 10.000]''' - Команда отвечает за коэффициент отражаемого света от объектов (свечение поверхности, глянцевость). Высокие значения повышает уровень свечения, жертвуя FPS. Опытным путем можно добиться довольно реалистичной картинки.&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_fast [on,off]''' - Опция контролирует включение расширенного Bloom эффекта в игре. С ней уже имеющийся Bloom эффект в игре становится более ярким и с более выраженным эффектом дымки. Производительность при этом особо не страдает, так как игра уже использует HDR освещение при включенном Render2(R2- DX9 renderer).&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_kernel_b [0.010 - 1.000]''' - Команда контролирует силу размытия при Bloom эффекте. Больше значение - дольше эффект размытия.&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_kernel_g [1.000 - 7.000]'''&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_kernel_scale [0.500 - 2.000]'''&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_speed [0.000 - 100.000]''' - Команда отвечает за &amp;quot;длительность жизни&amp;quot; Bloom эффекта.&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_bloom_threshold [0.000 - 1.000]''' - Этот параметр контролирует уровень освещенности. Эффект используется в игре по умолчанию, или вы не имеете r2_ls_bloom_fast опция включена. Большие значения уменьшат яркость подсветки bloom эффекта. Используется вместе с HDR, например, если выставить значение 1.000, в игре появляется похожее на DX8 освещение (но с динамической подсветкой). Вы можете экспериментировать с изменением этого значения, а можете быстро достичь желаемого результата. Для примера попробуйте значение 0.350, чтобы достичь несколько более атмосферной картинки.&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_depth_bias [-0.500 - 0.500]''' - Этот параметр определяет, насколько видимый свет от источников света светит. Лучше оставить по умолчанию.&lt;br /&gt;
&lt;br /&gt;
'''r2_ls_depth_scale [0.500 - 1.500]''' - Тоже самое, что и выше, только отвечает за тени.&lt;br /&gt;
&lt;br /&gt;
'''r2_mblur [0.000 - 1.000]''' - Команда контролирует включение кинематографичного эффекта размытия в движении в игре (Motion blur), этот эффект делает передвижение в игре более реалистичным за счет того, что ввиду особенности нашего глаза в жизни человек не фокусируется на &amp;quot;промежуточной картинке&amp;quot; при переводе глаз с одного места на другое. Для включения этой опции необходимо дописать атрибут ''-mblur'' к ярлыку запуска игры STALKER.&lt;br /&gt;
&lt;br /&gt;
'''r2_parallax_h [0.000 - 0.500'''] - Этот параметр отображается контролирует параллакс картографирования, метод используется в целях дальнейшего улучшения внешнего вида глубины на поверхность. Однако в моем опыта изменения этого параметра не визуальный или исполнения воздействия. Люди утверждают, что повышение этого параметра до величины 0,04 помогает им повысить производительность, так что вы можете попробовать это как оно не должно причинить вред или заметной потери качества изображения.&lt;br /&gt;
&lt;br /&gt;
'''r2_slight_fade [0.020 - 2.000]''' - Дальность освещения.&lt;br /&gt;
&lt;br /&gt;
'''r2_ssa_lod_a [16.000 - 96.000]''' - Контролирует систему Level of Detail (LOD) в игре, чем выше параметр, тем четче и проработанней объекты вдали.&lt;br /&gt;
&lt;br /&gt;
'''r2_ssa_lod_b [32.000 - 64.000]''' - Контролирует систему Level of Detail (LOD) в игре, чем выше параметр, тем четче и проработанней некоторые объекты вдали.&lt;br /&gt;
&lt;br /&gt;
'''r2_sun [on,off]''' - Включает\выключает солнце, как источник света.&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_depth_far_bias [-0.500 - 0.500]'''&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_depth_far_scale [0.500 - 1.500]'''&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_depth_near_bias [-0.500 - 0.500]'''&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_depth_near_scale [0.500 - 1.500]'''&lt;br /&gt;
&lt;br /&gt;
Эти параметры влияют на тень. Высокие - более темные тени, низкие - более прозрачные. По-умолчанию - лучшее качество.&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_details [on,off]''' - Тоже-самое, что функция &amp;quot;Тень от травы&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_lumscale [-1.000 - 3.000]''' - Определяет уровень яркости (яркость) от солнечного света, со значениями от нуля или ниже - отключение Солнца.&lt;br /&gt;
&lt;br /&gt;
'''r2_sun_lumscale_amb [0.000 - 3.000]''' - Параметр определяет яркость освещения, вызванным солнцем. &lt;br /&gt;
&lt;br /&gt;
'''r2_tf_mipbias [-3.000 - 3.000]''' - Чёткость текстур вдали. Влияет на ФПС.&lt;br /&gt;
&lt;br /&gt;
'''r2_tonemap [on,off]''' - Эта опция контролирует Tone Mapping. Может улучшить картинку без снижения ФПС.&lt;br /&gt;
&lt;br /&gt;
'''r2_tonemap_lowlum [0.000 - 1.000]''' - Яркость HDR. Лучше оставить по-умолчанию.&lt;br /&gt;
&lt;br /&gt;
'''r2_tonemap_middlegray [0.000 - 2.000]''' - Главный параметр HDR. При значении 1.2 можно добиться HDR эффекта как в Обливионе.&lt;br /&gt;
&lt;br /&gt;
'''r__supersample [1 - 4]''' - Сглаживание (смысла менять нет, ибо в игре оно не работает).&lt;br /&gt;
&lt;br /&gt;
'''r__tf_aniso [1 - 16]''' - Степень анизотропной фильтрации текстур.&lt;br /&gt;
&lt;br /&gt;
'''rs_stats [on,off]''' - Включает область вывода статистики по игре на экран (во время игры), включая информацию по FPS.&lt;br /&gt;
&lt;br /&gt;
'''snd_acceleration [on,off]''' - Этот параметр контролирует аппаратное ускорение звука.&lt;br /&gt;
&lt;br /&gt;
'''snd_cache_size [4 - 32]''' - Этот параметр определяет размер кэша звука. Лучше поставить 32, чтобы избежать заикания.&lt;br /&gt;
&lt;br /&gt;
'''snd_efx [on,off]''' - Включение\отключение звуковых эффектов.&lt;br /&gt;
&lt;br /&gt;
'''snd_targets [4 - 32]''' - Этот параметр определяет количество звуковых каналов. Значение 32 улучшает качество звука.&lt;br /&gt;
&lt;br /&gt;
'''vid_mode [WxH]''' - Управляет разрешением экрана.&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>Lly</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C_%D0%93%D0%93_%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8</id>
		<title>Самый простой способ добавить ГГ деньги</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C_%D0%93%D0%93_%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8"/>
				<updated>2016-11-25T15:09:11Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14577, сделанной участником 5.228.7.202 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;На форумах задавалось много вопросов о том, как добавить ГГ деньги. В основном это были скрипты. Есть один очень простой способ добавления денег.&lt;br /&gt;
&lt;br /&gt;
Открываете блокнотом файл character_desc_escape.xml (gamedata/config/gameplay)&lt;br /&gt;
и ищете строку:&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;code&amp;gt;&amp;lt;specific_character id=&amp;quot;escape_trader&amp;quot; no_random = &amp;quot;1&amp;quot;&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
спускаетесь чуть ниже и увидите строчку:&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
она то нам и нужна. Копируете эту строчку и открываете файл character_desc_general.xml: (в той же папке):&lt;br /&gt;
&lt;br /&gt;
и ищите:&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;code&amp;gt;&amp;lt;specific_character id=&amp;quot;actor&amp;quot; no_random = &amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
спускайтесь чуть ниже к строчке:&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;reputation&amp;gt;0&amp;lt;/reputation&amp;gt;&lt;br /&gt;
в конце этой строчки жмёте Enter (сделайте пустую строчку между &amp;lt;reputation&amp;gt;0&amp;lt;/reputation&amp;gt; и &amp;lt;visual&amp;gt;actors\hero\stalker_novice&amp;lt;/visual&amp;gt;)&lt;br /&gt;
и просто вставьте строчку 		&amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt; &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Всё, теперь у вас столько же денег сколько и у Сидрыча, то есть бесконечно :) Конечно, если хотите можете сделать их не бесконечными и отрегулировать как хотите&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Автор Dark-Killer&lt;br /&gt;
&lt;br /&gt;
Добавление от Бродяги - чтобы сделать деньги небесконечными в строке &amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt;&amp;lt;/code&amp;gt; &lt;br /&gt;
исправьте &amp;lt;code&amp;gt;infinitive=&amp;quot;1&amp;quot;&amp;lt;/code&amp;gt; на &amp;lt;code&amp;gt;infinitive=&amp;quot;0&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;/div&gt;</summary>
		<author><name>Lly</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_%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%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_%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D0%B0"/>
				<updated>2016-11-25T14:53:15Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14574, сделанной участником 5.228.7.202 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Создание ремонтного набора в Сталкер ТЧ.&lt;br /&gt;
&lt;br /&gt;
1. Открываем файл '''gamedata/config/misc/items.ltx''' и в самом конце пишем:&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
;-------------------------------------------------------------------------------РЕМОНТНЫЙ НАБОР &lt;br /&gt;
[repair_kit]:identity_immunities&lt;br /&gt;
GroupControlSection	= spawn_group&lt;br /&gt;
discovery_dependency	=&lt;br /&gt;
$spawn			= &amp;quot;devices\quest_items\repair_kit&amp;quot;&lt;br /&gt;
$prefetch		= 32&lt;br /&gt;
class			= II_ANTIR&lt;br /&gt;
cform			= skeleton&lt;br /&gt;
visual			= physics\box\box_1c.ogf&lt;br /&gt;
radius			= 1&lt;br /&gt;
description		= &amp;quot;Ящик с инструментами для ремонта. Набор содержит инструменты и детали, &lt;br /&gt;
с помощью которых можно отремонтировать оружие и костюм.&amp;quot;&lt;br /&gt;
inv_name		= &amp;quot;Ремонтный набор&amp;quot;&lt;br /&gt;
inv_name_short		= &amp;quot;Ремонтный набор&amp;quot;&lt;br /&gt;
inv_weight		= 3.0&lt;br /&gt;
inv_grid_width		= 2&lt;br /&gt;
inv_grid_height		= 2&lt;br /&gt;
inv_grid_x		= 4&lt;br /&gt;
inv_grid_y		= 18&lt;br /&gt;
cost			= 500&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	= 3&lt;br /&gt;
animation_slot		= 4&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Теперь открываем файл '''gamedata/scripts/bind_stalker.script''' и после строчек&lt;br /&gt;
&amp;lt;lua&amp;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;lt;/lua&amp;gt;&lt;br /&gt;
Пишем:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
exp_mod.itemuse(obj)	--Ремонтный набор&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Теперь в той же папке создаём скрипт с названием '''exp_mod.script''' и в нём пишем:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
--Скрипт NZK мода&lt;br /&gt;
--Здесь описаны всякие безделушки и мелкие поправки в скриптах&lt;br /&gt;
--by zek &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
--- Скрипт на использование вещей прямо из инвенторя (в данном случае Ремонтного Набора)&lt;br /&gt;
--- Работа с bind_stalker.script/actor_binder:on_item_drop/&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
function itemuse(what)&lt;br /&gt;
     local obj_name = what:name()&lt;br /&gt;
    if (string.find(obj_name, &amp;quot;repair_kit&amp;quot;)) then&lt;br /&gt;
        use_repair_kit(what)&lt;br /&gt;
    -- If you want to add new trigger item, add script this line.&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
--- Собственно процесс использования набора&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
function use_repair_kit(what)&lt;br /&gt;
    local repair_slot_num = 0&lt;br /&gt;
&lt;br /&gt;
    local item_in_slot_1 = db.actor:item_in_slot(1)&lt;br /&gt;
    local item_in_slot_2 = db.actor:item_in_slot(2)&lt;br /&gt;
    local item_in_slot_6 = db.actor:item_in_slot(6)&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_1 ~= nil) then&lt;br /&gt;
        repair_slot_num = 1&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_2 ~= nil) then&lt;br /&gt;
        if (repair_slot_num == 0) then&lt;br /&gt;
            repair_slot_num = 2&lt;br /&gt;
        elseif (repair_slot_num == 1) then&lt;br /&gt;
            if (item_in_slot_1:condition() &amp;gt; item_in_slot_2:condition()) then&lt;br /&gt;
                repair_slot_num = 2&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_6 ~= nil) then&lt;br /&gt;
        if (repair_slot_num == 0) then&lt;br /&gt;
            repair_slot_num = 6&lt;br /&gt;
        elseif  (repair_slot_num == 1) then&lt;br /&gt;
            if (item_in_slot_1:condition() &amp;gt; item_in_slot_6:condition()) then&lt;br /&gt;
                repair_slot_num = 6&lt;br /&gt;
            end&lt;br /&gt;
        elseif  (repair_slot_num == 2) then&lt;br /&gt;
            if (item_in_slot_2:condition() &amp;gt; item_in_slot_6:condition()) then&lt;br /&gt;
                repair_slot_num = 6&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (repair_slot_num == 1) then&lt;br /&gt;
        local rep_point = item_in_slot_1:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_1:set_condition(rep_point)&lt;br /&gt;
    elseif (repair_slot_num == 2) then&lt;br /&gt;
        local rep_point = item_in_slot_2:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_2:set_condition(rep_point)&lt;br /&gt;
    elseif (repair_slot_num == 6) then&lt;br /&gt;
        local rep_point = item_in_slot_6:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_6:set_condition(rep_point)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
4. Всё! Теперь осталось добавить ремонтный набор в арсенал торговцев ('''gamedata/config/misc/trade_trader.ltx'''), подробнее читайте в статье [[SoC. Редактирование торговцев]].&lt;br /&gt;
&lt;br /&gt;
This article was written by SA STALKER RU MODS :)&lt;br /&gt;
&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>Lly</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%B1%D1%80%D0%BE%D0%BD%D0%B8</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%B1%D1%80%D0%BE%D0%BD%D0%B8"/>
				<updated>2016-11-25T14:51:54Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14573, сделанной участником 5.228.7.202 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В данном примере мы будем добавлять новый костюм со 100% защитой от всего =D&amp;lt;br /&amp;gt;&lt;br /&gt;
Совершенно новый костюм добавлять не будем, возьмём за основу существующий костюм сталкера.&amp;lt;br /&amp;gt;&lt;br /&gt;
Нам понадобится любой текстовый редактор ([http://notepad-plus.sourceforge.net/ru/site.htm Notepad++], Блокнот, WordPad или что там у Вас),&amp;lt;br /&amp;gt;&lt;br /&gt;
Фотошоп + [https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop dds плагин] (для работы с текстурами и иконками) и файлы игры:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\misc\outfit.ltx'''    — здесь добавим наш костюм и его хар-ки &lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\misc\trader_trader.ltx'''    — здесь выдадим его торговцу на продажу &lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\text\rus\string_table_outfit.xml'''    — здесь впишем название и описание костюма в игре&lt;br /&gt;
&lt;br /&gt;
Итак, по порядку. Открываем при помощи текстового редактора файл outfit.ltx.&amp;lt;br /&amp;gt;&lt;br /&gt;
Берём любой костюм, копируем всю его секцию и вставляем, например, в конец файла.&lt;br /&gt;
Вот теперь и приступим:&lt;br /&gt;
&amp;lt;ini&amp;gt;;---------------------------------------------------------------------------------------------&lt;br /&gt;
;		КОСТЮМ ЧАКА НОРРИСА&lt;br /&gt;
;---------------------------------------------------------------------------------------------&lt;br /&gt;
[chuck_norris_outfit]:outfit_base    ; имя секции нашей брони&lt;br /&gt;
GroupControlSection	= spawn_group&lt;br /&gt;
discovery_dependency =&lt;br /&gt;
$spawn 		= &amp;quot;outfit\chuck_norris_outfit&amp;quot;&lt;br /&gt;
;$prefetch 	= 32&lt;br /&gt;
class		= E_STLK&lt;br /&gt;
cform           = skeleton&lt;br /&gt;
visual          = equipments\novice_suit      ; модель костюма, лежащего на земле (обычно в папке gamedata\meshes\equipments)&lt;br /&gt;
actor_visual	= actors\hero\stalker_novice.ogf ; модель игрока, одетого в костюм (обычно в папке gamedata\meshes\actor\hero)&lt;br /&gt;
&lt;br /&gt;
ef_equipment_type = 3 ; предпочтительность одевания брони НПС (не используется)&lt;br /&gt;
&lt;br /&gt;
inv_name	  = chuck_norris_outfit ; ссылка на строку, содержащую название костюма в файле string_table_outfit.xml&lt;br /&gt;
inv_name_short    = chuck_norris_outfit ; ссылка на строку с названием костюма на земле&lt;br /&gt;
description       = chuck_norris_outfit_desc ; ссылка на строку  описанием костюма&lt;br /&gt;
inv_weight        = 2.0 ; вес костюма в кг&lt;br /&gt;
inv_grid_x        = 12 ; координата X левого верхнего угла иконки инвентаря из файла gamedata\textures\ui\ui_icon_equipment.dds&lt;br /&gt;
inv_grid_y        = 21 ; координата Y левого верхнего угла иконки инвентаря из файла gamedata\textures\ui\ui_icon_equipment.dds&lt;br /&gt;
inv_grid_width    = 2 ; размер иконки по оси X&lt;br /&gt;
inv_grid_height   = 2 ; размер иконки по оси Y&lt;br /&gt;
full_icon_name    = npc_icon_novice_outfit ; имя иконки&lt;br /&gt;
                                                 &lt;br /&gt;
cost		  = 100000 ; базовая цена костюма&lt;br /&gt;
slot		  = 6 ; слот, на который цепляем костюм (для брони всегда 6)&lt;br /&gt;
full_scale_icon   = 6,6 ; иконка игрока в полный рост в инвентаре (обычно из файла gamedata\textures\ui\ui_icons_***.dds)&lt;br /&gt;
nightvision_sect  = effector_nightvision_good ; тип ПНВ (смотрим секции [effector_nightvision_***]&lt;br /&gt;
                                              ; в файле gamedata\config\misc\postprocess.ltx)&lt;br /&gt;
                                              ; если ПНВ не нужно, то убираем/комментируем строчку&lt;br /&gt;
&lt;br /&gt;
sprint_allowed = true ; можно ли бегать в костюме (true) или нет (false)&lt;br /&gt;
bones_koeff_protection = exo_helmet_damage&lt;br /&gt;
additional_inventory_weight  = 1000 ; на сколько увеличится максимальный переносимый вес в кг&lt;br /&gt;
additional_inventory_weight2 = 1000 ; на сколько увеличится максимальный переносимый вес в кг&lt;br /&gt;
immunities_sect   = sect_chuck_norris_outfit_immunities ; ссылка на секцию износостойкости костюма (см.ниже)&lt;br /&gt;
&lt;br /&gt;
; показатели защиты игрока нашим костюмом (от 0 (это 0%) до 0.99 (это 100%))&lt;br /&gt;
burn_protection          = 0.99 ; ожог&lt;br /&gt;
strike_protection        = 0.99 ; удар&lt;br /&gt;
shock_protection         = 0.99 ; электрошок&lt;br /&gt;
wound_protection         = 0.99 ; разрыв&lt;br /&gt;
radiation_protection     = 0.99 ; радиация&lt;br /&gt;
telepatic_protection     = 0.99 ; телепатия&lt;br /&gt;
chemical_burn_protection = 0.99 ; химический ожог&lt;br /&gt;
explosion_protection     = 0.99 ; взрыв&lt;br /&gt;
fire_wound_protection    = 0.99 ; пулестойкость&lt;br /&gt;
&lt;br /&gt;
[sect_chuck_norris_outfit_immunities] ; секция износостойкости самого костюма&lt;br /&gt;
                                      ; от 0 (в огне не горит, в воде не тонет) до 1 (лучше на него даже не дышать)&lt;br /&gt;
burn_immunity		= 0.0&lt;br /&gt;
strike_immunity		= 0.0&lt;br /&gt;
shock_immunity		= 0.0&lt;br /&gt;
wound_immunity		= 0.0&lt;br /&gt;
radiation_immunity	= 0.0&lt;br /&gt;
telepatic_immunity	= 0.0&lt;br /&gt;
chemical_burn_immunity	= 0.0&lt;br /&gt;
explosion_immunity	= 0.0&lt;br /&gt;
fire_wound_immunity	= 0.0&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее откроем '''string_table_outfit.xml'''&amp;lt;br /&amp;gt;&lt;br /&gt;
И в конце, но ДО закрывающего тега '''&amp;lt;/string_table&amp;gt;''' допишем следующее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;string id=&amp;quot;chuck_norris_outfit&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;chuck_norris_outfit_desc&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;text&amp;gt;Бывшие портки Чака Норриса.\nТеперь победить вас может только сам Чак Норрис.&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/string&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее открываем '''файл trader_trader.ltx''' - это файл конфигурации магазина Cидоровича.&amp;lt;br /&amp;gt;&lt;br /&gt;
Находим секцию '''[supplies_start]'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавляем строчку chuck_norris_outfit	= 1,  1 (в запасах на начало игры появится 1 костюм с вероятностью 100%)&lt;br /&gt;
&lt;br /&gt;
Крутим вниз до '''[trader_start_sell]'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавляем строчку chuck_norris_outfit	= 1,  1 (цена костюма будет ровно той, что прописана в конфиге)&lt;br /&gt;
&lt;br /&gt;
Если хотим свою иконку костюму, смотрим [http://stalkerin.gameru.net/wiki/index.php/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D1%83%D1%80#.D0.98.D0.B7.D0.BC.D0.B5.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BA.D0.BE.D0.BD.D0.BE.D0.BA_.D0.BF.D1.80.D0.B5.D0.B4.D0.BC.D0.B5.D1.82.D0.BE.D0.B2 тут].&lt;br /&gt;
&lt;br /&gt;
После всего этого кидаем всё по папочкам в gamedata и начинаем новую игру.&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;/div&gt;</summary>
		<author><name>Lly</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=CS._Smart_covers/C%D0%BC%D0%B0%D1%80%D1%82_%D0%BA%D0%B0%D0%B2%D0%B5%D1%80%D1%8B</id>
		<title>CS. Smart covers/Cмарт каверы</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=CS._Smart_covers/C%D0%BC%D0%B0%D1%80%D1%82_%D0%BA%D0%B0%D0%B2%D0%B5%D1%80%D1%8B"/>
				<updated>2016-11-25T12:25:56Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Смарткаверы - это спаун объект, который управляет анимациями  NPC. Используется для создания сценок со сложной анимацией. Тип смарткавера (анимации которые может использовать NPC в смарткавере), зависят от параметра '''description'''(выбирается в Level editor).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Боевые  смарткаверы,  управляют  боевыми  анимациями,  их  могут  использовать  NPC  в универсальной боевой схеме. Так же, боевые смарткаверы могут использоваться для построения скриптовых  сцен.  Набор аниамций  используемый  NPC в  смарткавере,  зависит  от  выбранной бойницы  (лупхолы).  NPC может  вести  огонь  из  смарткавера  только  если  противник  находится внутри радиуса действия лупхолы. Названия лупхол для боевых смарткаверов смотреть в файле: [http://yadi.sk/d/wAt4QA7m7GMvS Combat loopholes.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Анимационные смарткаверы, настраиваются аналогично боевым, но используют специальные анимации,  используются  только  для  скриптовых  сцен.  Названия  лупхол  для  анимационных смарткаверов смотреть в файле: [http://yadi.sk/d/RFA_EpCR7GMwk Lead loopholes.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''[smartcover]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''cover_name''' = ''cover_1'' – имя смарткавера, обязательный параметр&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''loophole_name''' = ''lh1'' – имя лупхолы, какие лупхолы доступны, зависит от типа смартка-вера (в боевых смарткаверах, имя лупхолы)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''cover_state''' = ''fire_target'' – состояние NPC смарткавере:&lt;br /&gt;
&lt;br /&gt;
* fire_target – стреляет по цели,&lt;br /&gt;
&lt;br /&gt;
* fire_no_lookout_target – стреляет по цели не высовываясь,&lt;br /&gt;
&lt;br /&gt;
* idle_target – спрятался,&lt;br /&gt;
&lt;br /&gt;
* lookout_target – выглядывает,&lt;br /&gt;
&lt;br /&gt;
* default_behaviour – прячется, выглядывает, если есть цель, атакует&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''use_in_combat''' = ''true'' – использование смарткавера в бою, если не поставить этот пара-метр NPC будет срываться в универсальную боевую схему&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''target_enemy''' =  – цель, куда стрелять: '''actor''' или ''story_id''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''target_path''' = ''&amp;lt;path_name&amp;gt;'' – будет стрелять в первую точку указанного пути&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''idle_min_time''' – настройка таймингов между анимациями&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''idle_max_time''' – настройка таймингов между анимациями&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''lookout_min_time''' – настройка таймингов между анимациями&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''lookout_max_time''' – настройка таймингов между анимациями&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''ВНИМАНИЕ!'''  Перед тем как прописать в смарткавере лупхолу, нужно убедиться что лупхола с&lt;br /&gt;
таким названием есть в этом смарткавере (см. в файлах '''[http://yadi.sk/d/wAt4QA7m7GMvS Combat loopholes.pdf]''', '''[http://yadi.sk/d/RFA_EpCR7GMwk Lead loopholes.pdf]''').&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Смарткаверы используют стандартные сигналы:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''enemy_in_fov''' – противник находится в лупхоле&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''enemy_not_in_fov''' – противник не находится в лупхоле&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Иллюстрации =&lt;br /&gt;
&lt;br /&gt;
http://storage6.static.itmages.ru/i/13/0704/h_1372891757_5387931_d6d688e38d.jpg&amp;lt;br /&amp;gt;&lt;br /&gt;
http://storage6.static.itmages.ru/i/13/0704/h_1372891758_6148910_a9681c5c64.jpg&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= * * * =&lt;br /&gt;
&lt;br /&gt;
Статья взята из файла Gamedesigner_education.pdf, найденного в составе X-Ray SDK 0.7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Авторы ==&lt;br /&gt;
&lt;br /&gt;
Статья создана: [[GSC Game World]]&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавил на stalkerin: [[aka_sektor]]&lt;br /&gt;
&lt;br /&gt;
[[Категория:SDK CS]][[Категория:SDK COP]]&lt;/div&gt;</summary>
		<author><name>Lly</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C_%D0%93%D0%93_%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8</id>
		<title>Самый простой способ добавить ГГ деньги</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%B0%D0%BC%D1%8B%D0%B9_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9_%D1%81%D0%BF%D0%BE%D1%81%D0%BE%D0%B1_%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C_%D0%93%D0%93_%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8"/>
				<updated>2016-11-25T12:23:44Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14569, сделанной участником 5.228.1.7 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;На форумах задавалось много вопросов о том, как добавить ГГ деньги. В основном это были скрипты. Есть один очень простой способ добавления денег.&lt;br /&gt;
&lt;br /&gt;
Открываете блокнотом файл character_desc_escape.xml (gamedata/config/gameplay)&lt;br /&gt;
и ищете строку:&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;code&amp;gt;&amp;lt;specific_character id=&amp;quot;escape_trader&amp;quot; no_random = &amp;quot;1&amp;quot;&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
спускаетесь чуть ниже и увидите строчку:&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt;&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
она то нам и нужна. Копируете эту строчку и открываете файл character_desc_general.xml: (в той же папке):&lt;br /&gt;
&lt;br /&gt;
и ищите:&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;code&amp;gt;&amp;lt;specific_character id=&amp;quot;actor&amp;quot; no_random = &amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
спускайтесь чуть ниже к строчке:&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;reputation&amp;gt;0&amp;lt;/reputation&amp;gt;&lt;br /&gt;
в конце этой строчки жмёте Enter (сделайте пустую строчку между &amp;lt;reputation&amp;gt;0&amp;lt;/reputation&amp;gt; и &amp;lt;visual&amp;gt;actors\hero\stalker_novice&amp;lt;/visual&amp;gt;)&lt;br /&gt;
и просто вставьте строчку 		&amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt; &lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Всё, теперь у вас столько же денег сколько и у Сидрыча, то есть бесконечно :) Конечно, если хотите можете сделать их не бесконечными и отрегулировать как хотите&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Автор Dark-Killer&lt;br /&gt;
&lt;br /&gt;
Добавление от Бродяги - чтобы сделать деньги небесконечными в строке &amp;lt;code&amp;gt;&amp;lt;money min=&amp;quot;100000&amp;quot; max=&amp;quot;100000&amp;quot; infinitive=&amp;quot;1&amp;quot;/&amp;gt;&amp;lt;/code&amp;gt; &lt;br /&gt;
исправьте &amp;lt;code&amp;gt;infinitive=&amp;quot;1&amp;quot;&amp;lt;/code&amp;gt; на &amp;lt;code&amp;gt;infinitive=&amp;quot;0&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;/div&gt;</summary>
		<author><name>Lly</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_%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%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_%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BD%D0%B0%D0%B1%D0%BE%D1%80%D0%B0"/>
				<updated>2016-11-25T12:23:06Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14568, сделанной участником 5.228.1.7 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Создание ремонтного набора в Сталкер ТЧ.&lt;br /&gt;
&lt;br /&gt;
1. Открываем файл '''gamedata/config/misc/items.ltx''' и в самом конце пишем:&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
;-------------------------------------------------------------------------------РЕМОНТНЫЙ НАБОР &lt;br /&gt;
[repair_kit]:identity_immunities&lt;br /&gt;
GroupControlSection	= spawn_group&lt;br /&gt;
discovery_dependency	=&lt;br /&gt;
$spawn			= &amp;quot;devices\quest_items\repair_kit&amp;quot;&lt;br /&gt;
$prefetch		= 32&lt;br /&gt;
class			= II_ANTIR&lt;br /&gt;
cform			= skeleton&lt;br /&gt;
visual			= physics\box\box_1c.ogf&lt;br /&gt;
radius			= 1&lt;br /&gt;
description		= &amp;quot;Ящик с инструментами для ремонта. Набор содержит инструменты и детали, &lt;br /&gt;
с помощью которых можно отремонтировать оружие и костюм.&amp;quot;&lt;br /&gt;
inv_name		= &amp;quot;Ремонтный набор&amp;quot;&lt;br /&gt;
inv_name_short		= &amp;quot;Ремонтный набор&amp;quot;&lt;br /&gt;
inv_weight		= 3.0&lt;br /&gt;
inv_grid_width		= 2&lt;br /&gt;
inv_grid_height		= 2&lt;br /&gt;
inv_grid_x		= 4&lt;br /&gt;
inv_grid_y		= 18&lt;br /&gt;
cost			= 500&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	= 3&lt;br /&gt;
animation_slot		= 4&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Теперь открываем файл '''gamedata/scripts/bind_stalker.script''' и после строчек&lt;br /&gt;
&amp;lt;lua&amp;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;lt;/lua&amp;gt;&lt;br /&gt;
Пишем:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
exp_mod.itemuse(obj)	--Ремонтный набор&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3. Теперь в той же папке создаём скрипт с названием '''exp_mod.script''' и в нём пишем:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
--Скрипт NZK мода&lt;br /&gt;
--Здесь описаны всякие безделушки и мелкие поправки в скриптах&lt;br /&gt;
--by zek &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
--- Скрипт на использование вещей прямо из инвенторя (в данном случае Ремонтного Набора)&lt;br /&gt;
--- Работа с bind_stalker.script/actor_binder:on_item_drop/&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
function itemuse(what)&lt;br /&gt;
     local obj_name = what:name()&lt;br /&gt;
    if (string.find(obj_name, &amp;quot;repair_kit&amp;quot;)) then&lt;br /&gt;
        use_repair_kit(what)&lt;br /&gt;
    -- If you want to add new trigger item, add script this line.&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
--- Собственно процесс использования набора&lt;br /&gt;
------------------------------------------------------------------------&lt;br /&gt;
function use_repair_kit(what)&lt;br /&gt;
    local repair_slot_num = 0&lt;br /&gt;
&lt;br /&gt;
    local item_in_slot_1 = db.actor:item_in_slot(1)&lt;br /&gt;
    local item_in_slot_2 = db.actor:item_in_slot(2)&lt;br /&gt;
    local item_in_slot_6 = db.actor:item_in_slot(6)&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_1 ~= nil) then&lt;br /&gt;
        repair_slot_num = 1&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_2 ~= nil) then&lt;br /&gt;
        if (repair_slot_num == 0) then&lt;br /&gt;
            repair_slot_num = 2&lt;br /&gt;
        elseif (repair_slot_num == 1) then&lt;br /&gt;
            if (item_in_slot_1:condition() &amp;gt; item_in_slot_2:condition()) then&lt;br /&gt;
                repair_slot_num = 2&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (item_in_slot_6 ~= nil) then&lt;br /&gt;
        if (repair_slot_num == 0) then&lt;br /&gt;
            repair_slot_num = 6&lt;br /&gt;
        elseif  (repair_slot_num == 1) then&lt;br /&gt;
            if (item_in_slot_1:condition() &amp;gt; item_in_slot_6:condition()) then&lt;br /&gt;
                repair_slot_num = 6&lt;br /&gt;
            end&lt;br /&gt;
        elseif  (repair_slot_num == 2) then&lt;br /&gt;
            if (item_in_slot_2:condition() &amp;gt; item_in_slot_6:condition()) then&lt;br /&gt;
                repair_slot_num = 6&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if (repair_slot_num == 1) then&lt;br /&gt;
        local rep_point = item_in_slot_1:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_1:set_condition(rep_point)&lt;br /&gt;
    elseif (repair_slot_num == 2) then&lt;br /&gt;
        local rep_point = item_in_slot_2:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_2:set_condition(rep_point)&lt;br /&gt;
    elseif (repair_slot_num == 6) then&lt;br /&gt;
        local rep_point = item_in_slot_6:condition() + 10&lt;br /&gt;
        if (rep_point &amp;gt; 1) then&lt;br /&gt;
            rep_point = 1&lt;br /&gt;
        end&lt;br /&gt;
        item_in_slot_6:set_condition(rep_point)&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
4. Всё! Теперь осталось добавить ремонтный набор в арсенал торговцев ('''gamedata/config/misc/trade_trader.ltx'''), подробнее читайте в статье [[SoC. Редактирование торговцев]].&lt;br /&gt;
&lt;br /&gt;
This article was written by SA STALKER RU MODS :)&lt;br /&gt;
&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>Lly</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=%D0%A1%D0%BF%D0%B0%D0%B2%D0%BD_%D1%82%D0%B5%D0%BB%D0%B5%D0%BF%D0%BE%D1%80%D1%82%D0%BE%D0%B2_%D0%B2_%D0%A2%D0%A7</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%82%D0%B5%D0%BB%D0%B5%D0%BF%D0%BE%D1%80%D1%82%D0%BE%D0%B2_%D0%B2_%D0%A2%D0%A7"/>
				<updated>2016-11-25T11:15:22Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Создаем файл bind_mteleport.script. В него просто копируем, ничего не меняем:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
-- ************************************************&lt;br /&gt;
-- **                    Imp                     **&lt;br /&gt;
-- **       Биндер самодельных телепортов        **&lt;br /&gt;
-- ** Поддерживает работу самопальных телепортов **&lt;br /&gt;
-- ************************************************&lt;br /&gt;
&lt;br /&gt;
local teleport_binders ={}	-- Список телепортов&lt;br /&gt;
&lt;br /&gt;
function abs_comp(a,b)&lt;br /&gt;
	-- Служебная функция вычисления разности&lt;br /&gt;
	if( a &amp;lt; b) then&lt;br /&gt;
		return (b - a)&lt;br /&gt;
	else&lt;br /&gt;
		return (a - b)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function teleportate(x,y,z)&lt;br /&gt;
-- Функция телепортации&lt;br /&gt;
	local a = vector()&lt;br /&gt;
	-- Задаем координаты&lt;br /&gt;
	a.x = x&lt;br /&gt;
	a.y = y&lt;br /&gt;
	a.z = z&lt;br /&gt;
&lt;br /&gt;
	-- Сама телепортация&lt;br /&gt;
	db.actor:set_actor_position(a)&lt;br /&gt;
&lt;br /&gt;
	-- Звуковое сопровождение&lt;br /&gt;
	local snd_obj = xr_sound.get_safe_sound_object([[affects\tinnitus3a]])&lt;br /&gt;
	snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function actor_update(delta)&lt;br /&gt;
	local i,v,acter_poz,s&lt;br /&gt;
&lt;br /&gt;
	-- Получим позицию актера (что-бы каждый раз не запрашивать)&lt;br /&gt;
	acter_poz = db.actor:position()&lt;br /&gt;
&lt;br /&gt;
	-- Проверяем наши телепорты&lt;br /&gt;
	for i, v in pairs(teleport_binders) do&lt;br /&gt;
		s = v.parametrs&lt;br /&gt;
&lt;br /&gt;
		local obj = level.object_by_id( i )&lt;br /&gt;
		if obj ~= nil then&lt;br /&gt;
		-- Наш телепорт в онлайне проверяем дальше&lt;br /&gt;
			if s.teleporte ~= nil and s.teleporte ~= false then&lt;br /&gt;
				-- Телепорт запущен&lt;br /&gt;
				if ( time_global() &amp;lt;= s.time ) then&lt;br /&gt;
					-- Если время отведенное на показ спецэфектов&lt;br /&gt;
					-- прошло, производим телепортацию&lt;br /&gt;
					teleportate(s.poz_x,s.poz_y,s.poz_z)&lt;br /&gt;
					if s.rotate ~= nil then&lt;br /&gt;
						db.actor:set_actor_direction(s.rotate)&lt;br /&gt;
					end&lt;br /&gt;
					s.teleporte = false&lt;br /&gt;
				end&lt;br /&gt;
				return&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			-- Пороверим не забрел-ли актер в наш телепорт&lt;br /&gt;
			if (abs_comp(s.x, acter_poz.x)&amp;lt; v.parametrs.radius  and&lt;br /&gt;
			    abs_comp(s.z, acter_poz.z)&amp;lt; v.parametrs.radius  and&lt;br /&gt;
			    abs_comp(s.y, acter_poz.y)&amp;lt; v.parametrs.z_radius) then&lt;br /&gt;
				-- Актер в зоне действия телепорта, запустим телепорт&lt;br /&gt;
				s[&amp;quot;teleporte&amp;quot;] = true&lt;br /&gt;
				s[&amp;quot;time&amp;quot;] = time_global() + 500&lt;br /&gt;
&lt;br /&gt;
				-- Запускаем спецэфекты телепортации&lt;br /&gt;
				level.add_pp_effector (&amp;quot;teleport.ppe&amp;quot;, 2006, false)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function bind( obj )&lt;br /&gt;
	obj:bind_object( restrictor_teleport( obj ) ) &lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
----------------------------------------------------------------------------------------------------&lt;br /&gt;
class &amp;quot;restrictor_teleport&amp;quot; ( object_binder )&lt;br /&gt;
&lt;br /&gt;
function restrictor_teleport:__init(obj, char_ini) super(obj)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function restrictor_teleport:net_spawn(data)&lt;br /&gt;
	local char_ini = system_ini()&lt;br /&gt;
&lt;br /&gt;
	-- Если это телепорт то занесем его в специальный список телепортов&lt;br /&gt;
	if self.teleport == true then&lt;br /&gt;
		teleport_binders[self.object:id()] = self&lt;br /&gt;
&lt;br /&gt;
		-- Заполним таблицу параметров&lt;br /&gt;
		self[&amp;quot;parametrs&amp;quot;] = {}&lt;br /&gt;
		if char_ini:line_exist(self.section, &amp;quot;radius&amp;quot;) then&lt;br /&gt;
			self.parametrs[&amp;quot;radius&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;radius&amp;quot;))&lt;br /&gt;
		else&lt;br /&gt;
			self.parametrs[&amp;quot;radius&amp;quot;] = 2 -- Дефолтный радиус по xy&lt;br /&gt;
		end&lt;br /&gt;
		if char_ini:line_exist(self.section, &amp;quot;z_radius&amp;quot;) then&lt;br /&gt;
			self.parametrs[&amp;quot;z_radius&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;z_radius&amp;quot;))&lt;br /&gt;
		else&lt;br /&gt;
			self.parametrs[&amp;quot;z_radius&amp;quot;] = self.parametrs[&amp;quot;radius&amp;quot;] -- если радиус высоты не задан то задаем равным радиусу xy&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- Запомним позицию что-бы каждый раз не считать&lt;br /&gt;
		local s_obj = alife():object(self.object:id())&lt;br /&gt;
		self.parametrs[&amp;quot;x&amp;quot;] = tonumber(s_obj.position.x);&lt;br /&gt;
		self.parametrs[&amp;quot;y&amp;quot;] = tonumber(s_obj.position.y);&lt;br /&gt;
		self.parametrs[&amp;quot;z&amp;quot;] = tonumber(s_obj.position.z);&lt;br /&gt;
&lt;br /&gt;
		-- Запомним координаты куда телепортимся&lt;br /&gt;
		self.parametrs[&amp;quot;poz_x&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;poz_x&amp;quot;))&lt;br /&gt;
		self.parametrs[&amp;quot;poz_y&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;poz_y&amp;quot;))&lt;br /&gt;
		self.parametrs[&amp;quot;poz_z&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;poz_z&amp;quot;))&lt;br /&gt;
&lt;br /&gt;
		if char_ini:line_exist(self.section, &amp;quot;rotate&amp;quot;) then&lt;br /&gt;
			self.parametrs[&amp;quot;rotate&amp;quot;] = tonumber(char_ini:r_string(self.section, &amp;quot;rotate&amp;quot;))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return true&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function restrictor_teleport:net_destroy()&lt;br /&gt;
	-- Удаляем наш телепорт&lt;br /&gt;
	teleport_binders[self.object:id()] = nil&lt;br /&gt;
	self.parametrs = nil&lt;br /&gt;
	object_binder.net_destroy(self)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function restrictor_teleport:reload(section)&lt;br /&gt;
	local char_ini = system_ini()&lt;br /&gt;
&lt;br /&gt;
	self.section = section&lt;br /&gt;
	-- Если это телепорт то &lt;br /&gt;
	if char_ini ~= nil and char_ini:line_exist(self.section, &amp;quot;teleport&amp;quot;) then&lt;br /&gt;
		self[&amp;quot;teleport&amp;quot;] = true&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
В файле bind_stalker прописываем спавн и обновление телепортатора. Находим:&lt;br /&gt;
function actor_binder:update(delta) &lt;br /&gt;
&lt;br /&gt;
В ней найдем вызов обновления рестрикторов bind_restrictor.actor_update(delta) под которым вставим строку с вызовом нашей функции обновления: bind_mteleport.actor_update(delta) &lt;br /&gt;
&lt;br /&gt;
Мы запрограммировали телепорт. Осталось его заспавнить. В config\misc\zone_teleport.ltx в конце пишем:&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[m_teleport]:zone_teleport&lt;br /&gt;
teleport			= standart&lt;br /&gt;
script_binding          	= bind_mteleport.bind&lt;br /&gt;
;Параметры нашего телепорта&lt;br /&gt;
radius				= 2&lt;br /&gt;
;Высота захвата телепорта&lt;br /&gt;
z_radius			= 2&lt;br /&gt;
&lt;br /&gt;
;Куда телепортируемся (телепортация всегда идет в пределах карты)&lt;br /&gt;
poz_x				= 22.78&lt;br /&gt;
poz_y				= 20.35&lt;br /&gt;
poz_z				= 659.24&lt;br /&gt;
&lt;br /&gt;
; Угол зрения при появлении. Если параметра нет то не меняется.&lt;br /&gt;
rotate = 1.5&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
Теперь создаем файл create_teleport.script в gamedata/scripts, и в него суем:&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function create_teleport()&lt;br /&gt;
	local obj&lt;br /&gt;
	local a = vector()  -- тип переменной&lt;br /&gt;
	a.x = x  -- подставьте вектор&lt;br /&gt;
	a.y = y  -- подставьте вектор&lt;br /&gt;
	a.z = z  -- подставьте вектор&lt;br /&gt;
	obj = alife():create(&amp;quot;m_teleport&amp;quot;,a,lvertex,gvertex)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
Теперь в том-же bind_stalker.script под bind_restrictor.actor_update(delta) в функции function actor_binder:update(delta) пишем &amp;quot;create_teleport.create_teleport&amp;quot; БЕЗ КАВЫЧЕК.&lt;br /&gt;
ГОТОВО!&lt;/div&gt;</summary>
		<author><name>Lly</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=3ds_Max._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BB%D0%BE%D0%BC%D0%B0%D1%8E%D1%89%D0%B5%D0%B3%D0%BE%D1%81%D1%8F_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%B0_(%D0%B4%D0%BD%D0%B5%D0%B2%D0%BD%D0%B8%D0%BA_%D0%B8%D1%81%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)</id>
		<title>3ds Max. Создание ломающегося предмета (дневник исследования)</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=3ds_Max._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BB%D0%BE%D0%BC%D0%B0%D1%8E%D1%89%D0%B5%D0%B3%D0%BE%D1%81%D1%8F_%D0%BF%D1%80%D0%B5%D0%B4%D0%BC%D0%B5%D1%82%D0%B0_(%D0%B4%D0%BD%D0%B5%D0%B2%D0%BD%D0%B8%D0%BA_%D0%B8%D1%81%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)"/>
				<updated>2016-11-25T10:58:48Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;''Автор:'' '''Neo]['''&lt;br /&gt;
&lt;br /&gt;
== Структура статьи ==&lt;br /&gt;
Раз это дневник, а не полноценная статья, то структура несколько странная получилась. Если интересен сам процесс исследования, то можно читать по порядку, иначе можно сразу перейти к секции ''Создание модели''.&lt;br /&gt;
== Введение ==&lt;br /&gt;
Ну что, я пока тоже не знаю как это сделать, но на то это и дневник, чтобы записывать сюда ход исследований. Разбираться буду на каком-нибудь примере. Возьму для разбора деревянный ящик.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Поехали ==&lt;br /&gt;
Первым делом решил посмотреть, что из себя представляет модель деревянного ящика, нашёл две модели:&lt;br /&gt;
*gamedata\meshes\objects\dynamics\box\box_wood_01.ogf&lt;br /&gt;
*gamedata\meshes\physics\box\box_wood_01.ogf&lt;br /&gt;
Просмотрев модели в этих директориях, остановился на gamedata\meshes\physics\box\box_wood_01.ogf.&lt;br /&gt;
Хотя в обоих случаях присутствует папка \prt\, из названия ясно, что это части объектов(part), т.е. их также необходимо отдельно моделить, жаль, что xray + ode не считают это в динамике. Хотя для стекла-то нет частей, через опыты понятно, что стекло ломается по полигонам.&lt;br /&gt;
Ну да ладно разговор не об этом.&lt;br /&gt;
&lt;br /&gt;
Есть целая модель, есть части, значит... Значит надо как-то указать эти части, правильно конфиг объекта. Иду искать. Нахожу:&lt;br /&gt;
*gamedata\config\models\objects\box_wood_01.ltx&lt;br /&gt;
&lt;br /&gt;
Меня заинтересовала секция:&lt;br /&gt;
&amp;lt;code ini&amp;gt;&lt;br /&gt;
[destroyed]&lt;br /&gt;
physics\box\prt\box_wood_01_prt1&lt;br /&gt;
physics\box\prt\box_wood_01_prt2&lt;br /&gt;
physics\box\prt\box_wood_01_prt3&lt;br /&gt;
physics\box\prt\box_wood_01_prt4&lt;br /&gt;
physics\box\prt\box_wood_01_prt5&lt;br /&gt;
physics\box\prt\box_wood_01_prt6&lt;br /&gt;
physics\box\prt\box_wood_01_prt7&lt;br /&gt;
&lt;br /&gt;
[autoremove_parts]&lt;br /&gt;
time = 15&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
Значит со структурой ломающихся объектов разобрались.&lt;br /&gt;
&lt;br /&gt;
== Создание модели ==&lt;br /&gt;
&lt;br /&gt;
Теперь перенести бы это на процесс создания, первым делом попробуем подобрать необходимые шейдеры. Пошёл смотреть [[Описание шейдеров XRayMtl]].&lt;br /&gt;
Добавлю, что:&lt;br /&gt;
* Engine - отображение текстуры в движке игры.&lt;br /&gt;
* Compiler - используется при компиляции уровня.&lt;br /&gt;
* Material - игровой материал (wallmark, sound и др.). &lt;br /&gt;
&lt;br /&gt;
Выбрал:&lt;br /&gt;
*Engine - models/model(Основной шейдер для динамических объектов)&lt;br /&gt;
*Compiler - def_vertex(Основной vertex shader, раз физический объект, вершинный шейдер значит по любому нужен)&lt;br /&gt;
*Material - objects/large_furnitura(Материал деревянных изделий)&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	= Update|&lt;br /&gt;
message = Так как объект не компилится стандартными средствами, то шейдеры Compiler и Material можно не указывать}}&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Попробую повторить тот же самый ящик, запускаю макс, быстренько моделю подобие ящика и частей на которые он будет распадаться. Для всего ящика ставлю настройки шейдеров, которые написаны выше, для частей же просто как для деревянный досок([[Пресеты XRay материалов]]).&lt;br /&gt;
{|&lt;br /&gt;
|[[Изображение:3D-max-test-box.jpg|thumb|400px|Тестовый ящик]]&lt;br /&gt;
|}&lt;br /&gt;
Экспортирую ящик и каждую из частей отдельно.&lt;br /&gt;
Далее после экспорта в ogf с занесением в custom data модели почти копии файла gamedata\config\models\objects\box_wood_01.ltx и спавна в редакторе как destroyable_objects, натыкаюсь на кучу ошибок в редакторе, толи что-то неправильно, толи...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Update:''' При загрузке уровня получаю следующий лог:&lt;br /&gt;
&amp;lt;pre&amp;gt;  stack trace:&lt;br /&gt;
&lt;br /&gt;
  001B:0049B5FF XR_3DA.exe, CCF_Skeleton::CCF_Skeleton()&lt;br /&gt;
  001B:01CC39FF xrGame.dll&lt;br /&gt;
  001B:01C8AA2B xrGame.dll&lt;br /&gt;
  001B:01C82A34 xrGame.dll&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Изображение:3D-max-bone-test-box.jpg|thumb|left|400px|Добавление костей]]&lt;br /&gt;
Хм, после раздумий делаю выводы, что надо делать также как и оружие или персов. Ну что ж будем делать.&lt;br /&gt;
&lt;br /&gt;
Открываю сцену в максе, добавляю 2 кости: Create-&amp;gt; System -&amp;gt; Bones. Первую назову link, вторая может называться хоть как, без разницы.&lt;br /&gt;
&lt;br /&gt;
[[Изображение:3d-max-init.gif|frame|Инициализация скелета]]&lt;br /&gt;
Теперь применю к мешу ящика модификатор Physique. Проинициализурем скелет, нажатием на кнопку Attach to Node и выбрав кость link.&amp;lt;br /&amp;gt;&lt;br /&gt;
Теперь небольшое отступление по поводу этого модификатора. Раскрыв свиток модификатора, мы видим там следующее:&lt;br /&gt;
*Envelope – Настройка веса вершин и привязке к кости с помощью огибающих&lt;br /&gt;
*Link – Настройка параметров костей&lt;br /&gt;
*Bulge – Редактор выпуклостей&lt;br /&gt;
*Tendons – Редактор сухожилий&lt;br /&gt;
*Vertex – Настройка типа вершин и привязка к кости.&amp;lt;br /&amp;gt;&lt;br /&gt;
Но меня интересует только Envelope и Vertex. Настрою привязку вершин к кости, учитывая, чтобы ни одна вершина не осталась непривязанной. Иду в Vertex.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Типы вершин:&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot; size=&amp;quot;101%&amp;quot;&amp;gt;+&amp;lt;/font&amp;gt;  Деформируемые вершины (мягкие)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot; size=&amp;quot;101%&amp;quot;&amp;gt;+&amp;lt;/font&amp;gt;  Недеформируемые вершины (Твердые)&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot; size=&amp;quot;101%&amp;quot;&amp;gt;+&amp;lt;/font&amp;gt;  Пустые вершины без весa и привязки к кости&amp;lt;br /&amp;gt;&lt;br /&gt;
Сам ящик твердый, и поэтому мы используем для него rigid вершины. Счала надо очистить вершины от других костей, нажимаем select, выделяем вершины, переключаемся на синие вершины, нажимаем Assign to link и тыкаем на желтую полоску кости link. Вес и привязка сняты, теперь переключаемся на зеленые и опять тыкаем на линк, привязка назначена.&lt;br /&gt;
&lt;br /&gt;
Теперь экспортируем модель нашего ящика через Export Skin, а части простым экспортом(Export Editor Objects). Я сохранил модель ящика под именем test_box, а частей как test_box_prt{номер части}.&lt;br /&gt;
&lt;br /&gt;
== Дальнейшая настройка и конвертирование в *.ogf ==&lt;br /&gt;
[[Изображение:SDK-Actor-Ed-preferences.gif|thumb|400px|Настройка Actor Editor-a]]&lt;br /&gt;
Запускаем Actor Editor, для удобства работы изменим некоторые настройки программы, а именно Preferences -&amp;gt; Objects -&amp;gt; Skeleton, поставим все галочки.&lt;br /&gt;
Теперь загрузим наш объект(File-&amp;gt; Load...). &lt;br /&gt;
&lt;br /&gt;
=== Настройка объекта ===&lt;br /&gt;
&lt;br /&gt;
Первым делом настроим наш объект в целом, как я уже говорил в секции про исследование, что части объекта задаются конфигом. Для первого своего разрушаемого объекта я взял конфиг от ящика(gamedata\config\models\objects\box_wood_01.ltx), скопировал его, переименовал в test_box.ltx, далее немного изменил его в соответствии со своей задумкой. &lt;br /&gt;
&lt;br /&gt;
Поменял только пути к частям:&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot; align=&amp;quot;left&amp;quot;&lt;br /&gt;
! Оригинал(box_wood_01.ltx) || Наш конфиг(test_box.ltx)&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code ini&amp;gt;[destroyed]&lt;br /&gt;
physics\box\prt\box_wood_01_prt1&lt;br /&gt;
physics\box\prt\box_wood_01_prt2&lt;br /&gt;
physics\box\prt\box_wood_01_prt3&lt;br /&gt;
physics\box\prt\box_wood_01_prt4&lt;br /&gt;
physics\box\prt\box_wood_01_prt5&lt;br /&gt;
physics\box\prt\box_wood_01_prt6&lt;br /&gt;
physics\box\prt\box_wood_01_prt7&amp;lt;/code&amp;gt;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; | &amp;lt;code ini&amp;gt;[destroyed]&lt;br /&gt;
physics\test_box\prt\test_box_prt1&lt;br /&gt;
physics\test_box\prt\test_box_prt2&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
Остальное пока оставил без изменений. &lt;br /&gt;
Загрузим получившийся конфиг в User Data объекта, т.е. в Object Item выбираем Object, в нижней части Item Properties, щёлкаем по полю User Data. Откроется диалог в котором нажимаем Load и ищем наш конфиг.&amp;lt;br /&amp;gt;&lt;br /&gt;
Всё с настройкой объекта закончили, перейдём к настройке геометрии.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Настройка геометрии ===&lt;br /&gt;
В Object Items развернём свиток Bones, в нашем случае будет одна кость с имненем link, выбираем её.&lt;br /&gt;
В свойствах пункт Bones -&amp;gt; Global -&amp;gt; Generate Shape нажимае All. Идём ниже по списку:&lt;br /&gt;
*Bones -&amp;gt; Bone -&amp;gt; Game Material указываем материал для нашей кости. Материал выбирается только из папки objects\, в соответствии с тем, какой материал хотим для нашего объекта, смотри [[Описание шейдеров XRayMtl]]. В нашем случае я выбрал objects/large_furnitura, что соответствует материалу деревянных изделий.&lt;br /&gt;
*Bones -&amp;gt; Bone -&amp;gt; Mass - масса нашего объекта, я поставил 2.&lt;br /&gt;
*Bones -&amp;gt; Bone -&amp;gt; Shape -&amp;gt; Type - форма геометрии, в нашем случае Box.&lt;br /&gt;
&lt;br /&gt;
Далее нужно настроить геометрию так, как хотите, чтобы ваш объект коллизил с другими, т.е. после того, как type установлен в Box,&lt;br /&gt;
должен появиться белый полупрозрачный шейп, это коллижен для пули и физики. Можно дополнительно редактировать шейп, например инструментом Scale.&lt;br /&gt;
&lt;br /&gt;
Всё наш ящик готов к экспорту в ogf.&amp;lt;br /&amp;gt;&lt;br /&gt;
File -&amp;gt; Export -&amp;gt; Export OGF... сохраняем файл как: gamedata\meshes\physics\test_box\test_box.ogf&lt;br /&gt;
&lt;br /&gt;
Теперь поочерёдно загружаем части нашего объекта, ничего не меняя экспортим их как: gamedata\meshes\physics\test_box\prt\test_box_prt{номер части в соотв. с конфигом}.ogf&lt;br /&gt;
&lt;br /&gt;
== Ставим наш ящик на карту ==&lt;br /&gt;
Наш ящик ставится, как энтити destroyable_object. Переводим редактор в режим Spawn Element и добавляем на карту энтити physics/destroyable_object.&lt;br /&gt;
&lt;br /&gt;
Далее в свойствах энтити устанавливаем нашу модель в свойстве Model/Visual. Всё можно компилировать уровень и идти ломать её, вот как это примерно выглядит в игре.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|[[Изображение:Ss pavel 06-11-07 23-54-58 (ww).jpg|thumb|400px|Ломающийся объект в игре]]&lt;br /&gt;
|[[Изображение:Ss pavel 06-11-07 23-55-08 (ww).jpg|thumb|400px|Ломающийся объект в игре]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Что дальше? ==&lt;br /&gt;
А дальше постараемся вспомнить все ролики GSC, FinalCountDown(проект &amp;quot;Игромании&amp;quot;) и постараемся восстановить всё, что видели в них. Шкаф с отпадывающими дверками, &amp;quot;самодельные&amp;quot; бьющиеся лампы и т.д.&lt;br /&gt;
&lt;br /&gt;
== Благодарности ==&lt;br /&gt;
*Юрию Негробову - за помощь в настройке объекта в Actor Editor-е.&lt;br /&gt;
[[Категория:Wireframe]]&lt;/div&gt;</summary>
		<author><name>Lly</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%B1%D1%80%D0%BE%D0%BD%D0%B8</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%B1%D1%80%D0%BE%D0%BD%D0%B8"/>
				<updated>2016-11-25T10:36:36Z</updated>
		
		<summary type="html">&lt;p&gt;Lly: Отмена правки 14564, сделанной участником 5.228.1.7 (обс.)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;В данном примере мы будем добавлять новый костюм со 100% защитой от всего =D&amp;lt;br /&amp;gt;&lt;br /&gt;
Совершенно новый костюм добавлять не будем, возьмём за основу существующий костюм сталкера.&amp;lt;br /&amp;gt;&lt;br /&gt;
Нам понадобится любой текстовый редактор ([http://notepad-plus.sourceforge.net/ru/site.htm Notepad++], Блокнот, WordPad или что там у Вас),&amp;lt;br /&amp;gt;&lt;br /&gt;
Фотошоп + [https://developer.nvidia.com/nvidia-texture-tools-adobe-photoshop dds плагин] (для работы с текстурами и иконками) и файлы игры:&lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\misc\outfit.ltx'''    — здесь добавим наш костюм и его хар-ки &lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\misc\trader_trader.ltx'''    — здесь выдадим его торговцу на продажу &lt;br /&gt;
&lt;br /&gt;
'''gamedata\config\text\rus\string_table_outfit.xml'''    — здесь впишем название и описание костюма в игре&lt;br /&gt;
&lt;br /&gt;
Итак, по порядку. Открываем при помощи текстового редактора файл outfit.ltx.&amp;lt;br /&amp;gt;&lt;br /&gt;
Берём любой костюм, копируем всю его секцию и вставляем, например, в конец файла.&lt;br /&gt;
Вот теперь и приступим:&lt;br /&gt;
&amp;lt;ini&amp;gt;;---------------------------------------------------------------------------------------------&lt;br /&gt;
;		КОСТЮМ ЧАКА НОРРИСА&lt;br /&gt;
;---------------------------------------------------------------------------------------------&lt;br /&gt;
[chuck_norris_outfit]:outfit_base    ; имя секции нашей брони&lt;br /&gt;
GroupControlSection	= spawn_group&lt;br /&gt;
discovery_dependency =&lt;br /&gt;
$spawn 		= &amp;quot;outfit\chuck_norris_outfit&amp;quot;&lt;br /&gt;
;$prefetch 	= 32&lt;br /&gt;
class		= E_STLK&lt;br /&gt;
cform           = skeleton&lt;br /&gt;
visual          = equipments\novice_suit      ; модель костюма, лежащего на земле (обычно в папке gamedata\meshes\equipments)&lt;br /&gt;
actor_visual	= actors\hero\stalker_novice.ogf ; модель игрока, одетого в костюм (обычно в папке gamedata\meshes\actor\hero)&lt;br /&gt;
&lt;br /&gt;
ef_equipment_type = 3 ; предпочтительность одевания брони НПС (не используется)&lt;br /&gt;
&lt;br /&gt;
inv_name	  = chuck_norris_outfit ; ссылка на строку, содержащую название костюма в файле string_table_outfit.xml&lt;br /&gt;
inv_name_short    = chuck_norris_outfit ; ссылка на строку с названием костюма на земле&lt;br /&gt;
description       = chuck_norris_outfit_desc ; ссылка на строку  описанием костюма&lt;br /&gt;
inv_weight        = 2.0 ; вес костюма в кг&lt;br /&gt;
inv_grid_x        = 12 ; координата X левого верхнего угла иконки инвентаря из файла gamedata\textures\ui\ui_icon_equipment.dds&lt;br /&gt;
inv_grid_y        = 21 ; координата Y левого верхнего угла иконки инвентаря из файла gamedata\textures\ui\ui_icon_equipment.dds&lt;br /&gt;
inv_grid_width    = 2 ; размер иконки по оси X&lt;br /&gt;
inv_grid_height   = 2 ; размер иконки по оси Y&lt;br /&gt;
full_icon_name    = npc_icon_novice_outfit ; имя иконки&lt;br /&gt;
                                                 &lt;br /&gt;
cost		  = 100000 ; базовая цена костюма&lt;br /&gt;
slot		  = 6 ; слот, на который цепляем костюм (для брони всегда 6)&lt;br /&gt;
full_scale_icon   = 6,6 ; иконка игрока в полный рост в инвентаре (обычно из файла gamedata\textures\ui\ui_icons_***.dds)&lt;br /&gt;
nightvision_sect  = effector_nightvision_good ; тип ПНВ (смотрим секции [effector_nightvision_***]&lt;br /&gt;
                                              ; в файле gamedata\config\misc\postprocess.ltx)&lt;br /&gt;
                                              ; если ПНВ не нужно, то убираем/комментируем строчку&lt;br /&gt;
&lt;br /&gt;
sprint_allowed = true ; можно ли бегать в костюме (true) или нет (false)&lt;br /&gt;
bones_koeff_protection = exo_helmet_damage&lt;br /&gt;
additional_inventory_weight  = 1000 ; на сколько увеличится максимальный переносимый вес в кг&lt;br /&gt;
additional_inventory_weight2 = 1000 ; на сколько увеличится максимальный переносимый вес в кг&lt;br /&gt;
immunities_sect   = sect_chuck_norris_outfit_immunities ; ссылка на секцию износостойкости костюма (см.ниже)&lt;br /&gt;
&lt;br /&gt;
; показатели защиты игрока нашим костюмом (от 0 (это 0%) до 0.99 (это 100%))&lt;br /&gt;
burn_protection          = 0.99 ; ожог&lt;br /&gt;
strike_protection        = 0.99 ; удар&lt;br /&gt;
shock_protection         = 0.99 ; электрошок&lt;br /&gt;
wound_protection         = 0.99 ; разрыв&lt;br /&gt;
radiation_protection     = 0.99 ; радиация&lt;br /&gt;
telepatic_protection     = 0.99 ; телепатия&lt;br /&gt;
chemical_burn_protection = 0.99 ; химический ожог&lt;br /&gt;
explosion_protection     = 0.99 ; взрыв&lt;br /&gt;
fire_wound_protection    = 0.99 ; пулестойкость&lt;br /&gt;
&lt;br /&gt;
[sect_chuck_norris_outfit_immunities] ; секция износостойкости самого костюма&lt;br /&gt;
                                      ; от 0 (в огне не горит, в воде не тонет) до 1 (лучше на него даже не дышать)&lt;br /&gt;
burn_immunity		= 0.0&lt;br /&gt;
strike_immunity		= 0.0&lt;br /&gt;
shock_immunity		= 0.0&lt;br /&gt;
wound_immunity		= 0.0&lt;br /&gt;
radiation_immunity	= 0.0&lt;br /&gt;
telepatic_immunity	= 0.0&lt;br /&gt;
chemical_burn_immunity	= 0.0&lt;br /&gt;
explosion_immunity	= 0.0&lt;br /&gt;
fire_wound_immunity	= 0.0&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее откроем '''string_table_outfit.xml'''&amp;lt;br /&amp;gt;&lt;br /&gt;
И в конце, но ДО закрывающего тега '''&amp;lt;/string_table&amp;gt;''' допишем следующее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;xml&amp;gt;&amp;lt;string id=&amp;quot;chuck_norris_outfit&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;chuck_norris_outfit_desc&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;text&amp;gt;Бывшие портки Чака Норриса.\nТеперь победить вас может только сам Чак Норрис.&amp;lt;/text&amp;gt;&lt;br /&gt;
&amp;lt;/string&amp;gt;&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Далее открываем '''файл trader_trader.ltx''' - это файл конфигурации магазина Cидоровича.&amp;lt;br /&amp;gt;&lt;br /&gt;
Находим секцию '''[supplies_start]'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавляем строчку chuck_norris_outfit	= 1,  1 (в запасах на начало игры появится 1 костюм с вероятностью 100%)&lt;br /&gt;
&lt;br /&gt;
Крутим вниз до '''[trader_start_sell]'''&amp;lt;br /&amp;gt;&lt;br /&gt;
Добавляем строчку chuck_norris_outfit	= 1,  1 (цена костюма будет ровно той, что прописана в конфиге)&lt;br /&gt;
&lt;br /&gt;
Если хотим свою иконку костюму, смотрим [http://stalkerin.gameru.net/wiki/index.php/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D1%83%D1%80#.D0.98.D0.B7.D0.BC.D0.B5.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5_.D0.B8.D0.BA.D0.BE.D0.BD.D0.BE.D0.BA_.D0.BF.D1.80.D0.B5.D0.B4.D0.BC.D0.B5.D1.82.D0.BE.D0.B2 тут].&lt;br /&gt;
&lt;br /&gt;
После всего этого кидаем всё по папочкам в gamedata и начинаем новую игру.&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные_файлы]]&lt;/div&gt;</summary>
		<author><name>Lly</name></author>	</entry>

	</feed>