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

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=CoP._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%B0_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BD%D0%B0</id>
		<title>CoP. Создание места для сна</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=CoP._%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BC%D0%B5%D1%81%D1%82%D0%B0_%D0%B4%D0%BB%D1%8F_%D1%81%D0%BD%D0%B0"/>
				<updated>2016-09-14T13:51:38Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Здравствуйте, сегодня мы рассмотрим добавление места для сна в ЗП.&lt;br /&gt;
Это моя первая статья, так что прошу сильно ногами не бить....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.''' Итак, мы решили добавить место для сна. Откроем локацию в SDK Level Editor и поставим на карту объект '''Spawn Element--&amp;gt;ai--&amp;gt;space_restrictor'''. В логику пропишите следующее:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[story_object]&lt;br /&gt;
story_id = story_id_места_для_сна&lt;br /&gt;
&lt;br /&gt;
[logic]&lt;br /&gt;
cfg = scripts\sr_sleep.ltx&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
Нажмите '''Compile--&amp;gt;Make game''', скомпилируйте спавн локации с помощью батника '''tool_create_spawn.cmd''' и закиньте новый спавн в игровую папку '''spawns'''.&lt;br /&gt;
&lt;br /&gt;
'''2.''' Потом идем в '''pda.script''', ищем строки&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
local sleep_zones_tbl =&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
{target = &amp;quot;zat_a2_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
{target = &amp;quot;jup_a6_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
{target = &amp;quot;pri_a16_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&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;
local sleep_zones_tbl =&lt;br /&gt;
{&lt;br /&gt;
{target = &amp;quot;zat_a2_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
{target = &amp;quot;jup_a6_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
{target = &amp;quot;pri_a16_sr_sleep_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
{target = &amp;quot;произвольное название вашего места_id&amp;quot;, hint = &amp;quot;st_ui_pda_sleep_place&amp;quot;},&lt;br /&gt;
} &lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3.''' Открываем '''xr_effects.script''', ищем строки&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function sleep(actor, npc)&lt;br /&gt;
local sleep_zones = {&lt;br /&gt;
&amp;quot;zat_a2_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;jup_a6_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;pri_a16_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;actor_surge_hide_2&amp;quot;&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 sleep(actor, npc)&lt;br /&gt;
local sleep_zones = {&lt;br /&gt;
&amp;quot;произвольное название вашего места&amp;quot;,&lt;br /&gt;
&amp;quot;zat_a2_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;jup_a6_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;pri_a16_sr_sleep&amp;quot;,&lt;br /&gt;
&amp;quot;actor_surge_hide_2&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/lua&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Собираем '''all.spawn'''. Готово! Теперь после запуска игры с новым '''all.spawn''' у нас будет спальное место в барже Ноя (координаты брались оттуда).&lt;br /&gt;
&lt;br /&gt;
'''Автор: ZeeK'''&lt;br /&gt;
&lt;br /&gt;
[[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>46.219.85.46</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=CoP:_%D0%A0%D0%B0%D0%B7%D0%B1%D0%BE%D1%80_smart</id>
		<title>CoP: Разбор smart</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=CoP:_%D0%A0%D0%B0%D0%B7%D0%B1%D0%BE%D1%80_smart"/>
				<updated>2014-05-01T07:10:54Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: оформление&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Смарт-террейны добавляются в all.spawn. в секции смарт-террейна указывается кастом-дата, ведущая к конфигу. Варианты настройки конфига:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[smart_terrain]&lt;br /&gt;
squad_id = 34					        --видимо, id отряда РЕСПАВНА в этом смарте(!)&lt;br /&gt;
max_population = 1					--максимальное число отрядов в смарте&lt;br /&gt;
respawn_only_smart = true				--если true, из смарта не удаляются отряды в симуляции.&lt;br /&gt;
respawn_params = respawn@pri_sim_12			--сцылко на секцию параметров респавна&lt;br /&gt;
arrive_dist = 100					--на каком расстоянии от смарта спавнить.&lt;br /&gt;
def_restr = pri_a16_sr_noweap				--некая замена out_restr из ТЧ. Зона, где лагерь. За пределами - лагеря нет.&lt;br /&gt;
safe_restr = pri_surge_hide_a16; pri_a16_sr_light	--зоны, в которых неписи бессмертны&lt;br /&gt;
smart_control = smart_control				--сцылко на секцию контроля смарта&lt;br /&gt;
spawn_point = zat_sim_16_spawn_point 			--точка респавна&lt;br /&gt;
respawn_radius = 150					--радиус респавна. Если актер ближе - не спавнить. По умолчанию, понятно, 150.&lt;br /&gt;
respawn_sector = default				--сектор респавна. Если точка принадлежит группировке и вокруг нет врагов - уменьшаем капасити &lt;br /&gt;
до 1. Рабочих примеров нет. Работоспособность сомнительна&lt;br /&gt;
mutant_lair =						--не работает.&lt;br /&gt;
no_mutant =						--не работает.&lt;br /&gt;
forbidden_point =					--не работает.&lt;br /&gt;
&lt;br /&gt;
[respawn@pri_sim_12]					--параметры респавна - отряды.&lt;br /&gt;
sim_tushkano&lt;br /&gt;
&lt;br /&gt;
[sim_tushkano]&lt;br /&gt;
spawn_squads = simulation_tushkano			--какие отряды респавнить&lt;br /&gt;
spawn_num = {+pri_a18_use_idol_done}2, 0		--сколько респавнить, и когда можно это делать. Если написанно 0 то распавна не будет. Если&lt;br /&gt;
написано 2 то каждый респавн будут спавнится 2 скварда&lt;br /&gt;
&lt;br /&gt;
[smart_control]&lt;br /&gt;
noweap_zone = pri_a16_sr_noweap				--зона принудительного убора оружия&lt;br /&gt;
ignore_zone = pri_surge_hide_a16; pri_a16_sr_light	--зоны, в которых у неписей устанавливаются флаги combat_ignore_cond и &lt;br /&gt;
combat_ignore_keep_when_attacked = true&lt;br /&gt;
alarm_start_sound = {-pri_b305_fifth_cam_end} pri_a16_base_alarm, nil	--озвучка на начало атаки актора&lt;br /&gt;
alarm_stop_sound = {-pri_b305_fifth_cam_end} pri_a16_base_relax, nil	--озвучка на конец атаки актора&lt;br /&gt;
&lt;br /&gt;
[exclusive]&lt;br /&gt;
pri_b35_envoy_after = pripyat\pri_b35_envoy_logic.ltx			--ссылка на эксклюзивные работы для данного смарта.&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Автор: KD87'''&lt;br /&gt;
[[Категория:Конфигурационные файлы]]&lt;/div&gt;</summary>
		<author><name>46.219.85.46</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_WayPoint</id>
		<title>Создание WayPoint</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_WayPoint"/>
				<updated>2014-04-14T17:42:09Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Создадим вейппоинт.&lt;br /&gt;
Не буду говорить все точно, скажу для новичков :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Что такое вейпоинт ==&lt;br /&gt;
WayPoint(он же вейпоинт, ВП,WP) - путь передвижения для отдельного сталкера, состоит из точек путей.&lt;br /&gt;
Чтобы создать ВП, нужно расстыковать all.spawn(не буду описывать, как это делать).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создаем вейпоинт, с одной точкой ==&lt;br /&gt;
Открываете way_название локации и прописываете текст, подобный этому: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;ini&amp;gt;[name_weypoint]&lt;br /&gt;
 points = p0&lt;br /&gt;
 p0:name = wp00&lt;br /&gt;
 p0:position = 185.667572021484,-0.436268001794815,-260.062866210938&lt;br /&gt;
 p0:game_vertex_id = 696&lt;br /&gt;
 p0:level_vertex_id = 415469&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А теперь, подробнее&lt;br /&gt;
 &amp;lt;ini&amp;gt;[name_weypoint] - название пути&lt;br /&gt;
 points = p0 - список точек пути, через запятую (например points = p0,p1,p2 и т.д.)&lt;br /&gt;
 po:name = wp00 название первой точки пути.&lt;br /&gt;
 p0:position - позиции точки пути.&lt;br /&gt;
 p0:game_vertix_id - вертиксы локации&lt;br /&gt;
 p0:level_vertex_id&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Вейпоинт с несколькими точками ==&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;ini&amp;gt;[name_wp]&lt;br /&gt;
 points = p0,p1,p2,p3&lt;br /&gt;
 p0:name = wp00&lt;br /&gt;
 p0:flags = 0x1&lt;br /&gt;
 p0:position = 163.527374267578,-0.432826995849609,-266.167022705078&lt;br /&gt;
 p0:game_vertex_id = 854&lt;br /&gt;
 p0:level_vertex_id = 392698&lt;br /&gt;
 p0:links = p1(1),p3(1)&lt;br /&gt;
&lt;br /&gt;
 p1:name = wp01&lt;br /&gt;
 p1:flags = 0x2&lt;br /&gt;
 p1:position = 176.939651489258,-0.50609302520752,-264.630889892578&lt;br /&gt;
 p1:game_vertex_id = 696&lt;br /&gt;
 p1:level_vertex_id = 406938&lt;br /&gt;
 p1:links = p2(1)&lt;br /&gt;
&lt;br /&gt;
 p2:name = wp02&lt;br /&gt;
 p2:flags = 0x2&lt;br /&gt;
 p2:position = 179.156524658203,-0.430828988552094,-266.572570800781&lt;br /&gt;
 p2:game_vertex_id = 696&lt;br /&gt;
 p2:level_vertex_id = 409212&lt;br /&gt;
&lt;br /&gt;
 p3:name = wp03&lt;br /&gt;
 p3:flags = 0x1&lt;br /&gt;
 p3:position = 161.710388183594,-0.50619900226593,-269.339660644531&lt;br /&gt;
 p3:game_vertex_id = 855&lt;br /&gt;
 p3:level_vertex_id = 390503&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Здесь видно, что в первой точке прописаны все 3 точки. &lt;br /&gt;
 points = p0,p1,p2,p3&lt;br /&gt;
&lt;br /&gt;
=== Небольшое дополнение от ColR_iT касательно приведенного пример ===&lt;br /&gt;
&lt;br /&gt;
 p0:links = p1(1),p3(1) &lt;br /&gt;
&lt;br /&gt;
В этом случае, НПС будучи в точке p0 случайным образом выберет одну из предложенных p1 либо p3.&lt;br /&gt;
Таким образом, в примере выше, НПС в первой точке выберет следующую точку следования, если выберет p1, то далее перейдет в точку p2 и остановится, если p3 - перейдет в нее и так же остановится*.&lt;br /&gt;
&lt;br /&gt;
''*В моих экспериментах, при выборе НПС точки, которая является &amp;quot;конечной&amp;quot;, т.е. той в которой нет перехода на следующую (p3 в примере выше) у меня происходил вылет. Во избежании этого пришлось добавлять еще одну не подалёку на пути следования.''&lt;br /&gt;
&lt;br /&gt;
== Пропишем путь нашему сталкеру ==&lt;br /&gt;
&lt;br /&gt;
Теперь, чтобы по нашему пути ходил дядька нужно прописать ему этот путь. К кастом дате укажите файл до логики (не буду описывать, как это делается)&lt;br /&gt;
 &amp;lt;ini&amp;gt;[logic]&lt;br /&gt;
 active = walker&lt;br /&gt;
 [walker]&lt;br /&gt;
 path_walk = name_wp&lt;br /&gt;
 path_look = name_wp&amp;lt;/ini&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;[esc_gen_lager_walker_1]&lt;br /&gt;
points = p0,p1&lt;br /&gt;
p0:name = name00&lt;br /&gt;
p0:flags = 0x400&lt;br /&gt;
p0:position = -62.564220428467,-9.9675645828247,-56.229484558105&lt;br /&gt;
p0:game_vertex_id = 77&lt;br /&gt;
p0:level_vertex_id = 213868&lt;br /&gt;
p0:links = p1(1)&lt;br /&gt;
&lt;br /&gt;
p1:name = name01&lt;br /&gt;
p1:flags = 0x800&lt;br /&gt;
p1:position = -58.430591583252,-9.94411277771,-47.951900482178&lt;br /&gt;
p1:game_vertex_id = 77&lt;br /&gt;
p1:level_vertex_id = 219640&lt;br /&gt;
p1:links = p0(1)&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Скажем, такой путь можно использовать для look и walk&lt;br /&gt;
&amp;lt;B&amp;gt;p0:flags = 0x400&amp;lt;/B&amp;gt; ОБРАТИМ ВНИМАНИЯ!&lt;br /&gt;
&amp;lt;B&amp;gt;p0:flags = 0x800&amp;lt;/B&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Два этих параметра служат как связь. Если в первом поинте walk стоит флаг 0x400, а в поинте look тоже стоит 0x400, когда НПС\МУТАНТ находится на этой точке, его взгляд направлен согласно флагу&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;big&amp;gt;Дополнительные параметры&amp;lt;/big&amp;gt;&amp;lt;/center&amp;gt; &lt;br /&gt;
Возможно задача дополнительных ключей-параметров&lt;br /&gt;
&lt;br /&gt;
Для нпс к примеру&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;[esc_gen_lager_walker_1]&lt;br /&gt;
points = p0,p1&lt;br /&gt;
p0:name = wp00&amp;lt;u&amp;gt;|a=binocular&amp;lt;/u&amp;gt;&lt;br /&gt;
p0:flags = 0x400&lt;br /&gt;
p0:position = -62.564220428467,-9.9675645828247,-56.229484558105&lt;br /&gt;
p0:game_vertex_id = 77&lt;br /&gt;
p0:level_vertex_id = 213868&lt;br /&gt;
p0:links = p1(1)&lt;br /&gt;
&lt;br /&gt;
p1:name = wp01&lt;br /&gt;
p1:flags = 0x800|&amp;lt;u&amp;gt;a=assault&amp;lt;/u&amp;gt; &lt;br /&gt;
p1:position = -58.430591583252,-9.94411277771,-47.951900482178&lt;br /&gt;
p1:game_vertex_id = 77&lt;br /&gt;
p1:level_vertex_id = 219640&lt;br /&gt;
p1:links = p0(1)&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отыгрывается анимация сначала смотрит в бинокль, потом атака. Если правильно привязать к точкам обзорного пути - получится красиво&lt;br /&gt;
&lt;br /&gt;
Имена анимаций брать отсюда &amp;lt;big&amp;gt;state_mgr_animation_list.script&amp;lt;/big&amp;gt;&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;big&amp;gt;Касательно вертолётов&amp;lt;/big&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Расскажу фишку. Если в логике вертолётов использую путь move и look, плюс с помощью флагов прицепить move к каждой точке look. Можно ставить на wp дополнительный параметр, стрелять. Параметр называется |e&lt;br /&gt;
Можно сделать сценку, как будто вертолёт зачищает местность. Подробнее о ключах для вертолёта&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== См. также ==http://stalkerin.gameru.net/wiki/index.php/%D0%A7%D0%B0%D1%81%D1%82%D1%8C_4#3.12.1._.D0.A1.D1.85.D0.B5.D0.BC.D0.B0_heli_move:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Всем спасибо все свободны&lt;br /&gt;
&lt;br /&gt;
=== Дополнение от Re]Spawner ===&lt;br /&gt;
Andrey K aka forest&lt;br /&gt;
Спасибо вам огромное. Я немножко разъясню для начинающих, что за кастом дата и куда что вставлять.&lt;br /&gt;
Допустим, у вас есть НПС, его профиль и тому подобное. Естественно, вы хотите, чтобы он пошел по вашему пути. Тогда открываете spawn_sections.ltx, в него пишите следующий текст:&lt;br /&gt;
&amp;lt;ini&amp;gt;[esc_respawner_test_wp]:stalker_trader&lt;br /&gt;
character_profile = esc_respawner_test_wp&lt;br /&gt;
spec_rank = veteran&lt;br /&gt;
community = bandit&lt;br /&gt;
use_single_item_rule = off&lt;br /&gt;
can_select_items = off&lt;br /&gt;
custom_data = scripts\esc_respawner_test_wp.ltx&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Где &amp;lt;pre&amp;gt;[esc_respawner_test_wp]:stalker_trader&amp;lt;/pre&amp;gt; - название профиля (точно не помню)&lt;br /&gt;
&amp;lt;pre&amp;gt;character_profile = esc_respawner_test_wp&amp;lt;/pre&amp;gt;  - вот это уже точно название профиля&lt;br /&gt;
&amp;lt;pre&amp;gt;custom_data = scripts\esc_respawner_test_wp.ltx&amp;lt;/pre&amp;gt;  -ссылка на файл логики, куда надо вбивать следующий текст:&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
 [logic]&lt;br /&gt;
 active = walker&lt;br /&gt;
 [walker]&lt;br /&gt;
 path_walk = name_wp&lt;br /&gt;
 path_look = name_wp&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Это все! Так просто ;)&lt;br /&gt;
&lt;br /&gt;
Автор Andrey K aka forest, Дополнил: &amp;lt;big&amp;gt;Re]Spawner&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Категория:SDK]][[Категория:SDK CS]]&lt;/div&gt;</summary>
		<author><name>46.219.85.46</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>2014-03-25T16:04:20Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: Долгожданная перепись статьи. Еще нужно изображения добавлять и другую информацию, но первый шаг сделан. #FantomICW&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'''. К ''bump#'' через '''текстура_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>46.219.85.46</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=CoP._%D0%9E%D1%82%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_intro.</id>
		<title>CoP. Отключение intro.</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=CoP._%D0%9E%D1%82%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_intro."/>
				<updated>2014-01-06T15:53:12Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: орфография&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;1) Откройте любым текстовым редактором файл '''game_tutorials.xml''', что в папке '''gamedata\configs\ui''', распакованных ресурсов &amp;quot;Зова Припяти&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2) Найдите там строку ''&amp;lt;intro_logo&amp;gt;'', и замените весь код между:&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;intro_logo&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/intro_logo&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;global_wnd width=&amp;quot;1024&amp;quot; height=&amp;quot;768&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/global_wnd&amp;gt;&lt;br /&gt;
&amp;lt;item&amp;gt;&lt;br /&gt;
&amp;lt;main_wnd&amp;gt;&lt;br /&gt;
&amp;lt;/main_wnd&amp;gt;&lt;br /&gt;
&amp;lt;/item&amp;gt;&lt;br /&gt;
&amp;lt;/xml&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;
3) В том же файле '''game_tutorials.xml''', найдите строку ''&amp;lt;intro_game&amp;gt;'', и замените весь код между:&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
&amp;lt;intro_game&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/intro_game&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;global_wnd width=&amp;quot;1024&amp;quot; height=&amp;quot;768&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;/global_wnd&amp;gt;&lt;br /&gt;
&amp;lt;item&amp;gt;&lt;br /&gt;
&amp;lt;main_wnd&amp;gt;&lt;br /&gt;
&amp;lt;/main_wnd&amp;gt;&lt;br /&gt;
&amp;lt;/item&amp;gt;&lt;br /&gt;
&amp;lt;/xml&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;
Статью создал: [[aka_sektor]]&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= P.S. =&lt;br /&gt;
&lt;br /&gt;
Параметр запуска '''-nointro''' на ЗП не работает, вот пришлось разобрался с этим раз и навсегда.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные файлы]]&lt;/div&gt;</summary>
		<author><name>46.219.85.46</name></author>	</entry>

	<entry>
		<id>http://stalkerin.gameru.net/wiki/index.php?title=Space_restrictor</id>
		<title>Space restrictor</title>
		<link rel="alternate" type="text/html" href="http://stalkerin.gameru.net/wiki/index.php?title=Space_restrictor"/>
				<updated>2014-01-06T15:50:14Z</updated>
		
		<summary type="html">&lt;p&gt;46.219.85.46: Почистил немного статью&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Начало==&lt;br /&gt;
----------------------------------------------------------&lt;br /&gt;
Значит, распаковываем алл.спавн с помощью ACDC...Распаковали.&lt;br /&gt;
Откроем, например, alife_l02_garbage.ltx.&lt;br /&gt;
В самом конце допишем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[2145]&lt;br /&gt;
; cse_abstract properties&lt;br /&gt;
section_name = space_restrictor&lt;br /&gt;
name = sgm_kvest&lt;br /&gt;
position = 41.297409057617,0.44233170151711,-299.86953735352&lt;br /&gt;
direction = 0,0,0&lt;br /&gt;
&lt;br /&gt;
; cse_alife_object properties&lt;br /&gt;
game_vertex_id = 253&lt;br /&gt;
distance = 0&lt;br /&gt;
level_vertex_id = 214760&lt;br /&gt;
object_flags = 0xffffff3e&lt;br /&gt;
custom_data = &amp;lt;&amp;lt;END&lt;br /&gt;
[logic]&lt;br /&gt;
active = sr_idle&lt;br /&gt;
[sr_idle]&lt;br /&gt;
on_actor_inside = %+story_sgm_kvest2_3%&lt;br /&gt;
END&lt;br /&gt;
&lt;br /&gt;
; cse_shape properties&lt;br /&gt;
shapes = shape0&lt;br /&gt;
shape0:type = box&lt;br /&gt;
shape0:axis_x = 6.5,0,0&lt;br /&gt;
shape0:axis_y = 0,6.5,0&lt;br /&gt;
shape0:axis_z = 0,0,6.5&lt;br /&gt;
shape0:offset = 0,0,0&lt;br /&gt;
; cse_alife_space_restrictor properties&lt;br /&gt;
restrictor_type = 3&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Где&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;[2145] - порядковый номер&lt;br /&gt;
section_name = space_restrictor - имя секции (нам надо space_restrictor)&lt;br /&gt;
name = svalka_prikol - личное имя (задаём любое)&lt;br /&gt;
position = - позиции (место, где будем спавнить его)&lt;br /&gt;
direction = - поворот рестриктра (не трогаем...)&lt;br /&gt;
game_vertex_id = - геймвертекс &lt;br /&gt;
level_vertex_id = - левелвертекс&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если вы хотите сделать сферический space_restrictor, то вместо &lt;br /&gt;
&amp;lt;code&amp;gt;shape0:axis_x = 6.5,0,0&lt;br /&gt;
shape0:axis_y = 0,6.5,0&lt;br /&gt;
shape0:axis_z = 0,0,6.5&lt;br /&gt;
shape0:offset = 0,0,0&amp;lt;/code&amp;gt;&lt;br /&gt;
пишем:&lt;br /&gt;
&amp;lt;code&amp;gt;shape0:offset = 0,0,0&lt;br /&gt;
shape0:radius = 44.6438484191895&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Примечание: координаты спавна, game_vertex_id и level_vertex_id можно получить с помощью следующей функции:''&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;lua&amp;gt;&lt;br /&gt;
function main_menu:OnButton_credits_clicked()&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;
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;
просто допишите её в ui_main_menu.script, в самом конце.&lt;br /&gt;
&lt;br /&gt;
==Логика==&lt;br /&gt;
&lt;br /&gt;
===Выдача infoportions===&lt;br /&gt;
Теперь логика для рестриктора:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[logic]&lt;br /&gt;
active = sr_idle&lt;br /&gt;
&lt;br /&gt;
[sr_idle]&lt;br /&gt;
on_actor_inside = %+имя инфопоршня%&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/ini&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;
[logic]&lt;br /&gt;
active = sr_idle&lt;br /&gt;
&lt;br /&gt;
[sr_idle]&lt;br /&gt;
on_timer = 100000| %=start_small_reject% sr_idle2&lt;br /&gt;
&lt;br /&gt;
[sr_idle2]&lt;br /&gt;
on_timer = 100000| %=start_small_reject% sr_idle&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Такая логика будет запускать каждые 100 сек. эффекты выброса.&lt;br /&gt;
&lt;br /&gt;
===Проверка на наличие и выдача infoportion===&lt;br /&gt;
&amp;lt;ini&amp;gt;&lt;br /&gt;
[logic]&lt;br /&gt;
active = sr_idle&lt;br /&gt;
&lt;br /&gt;
[sr_idle]&lt;br /&gt;
on_actor_inside = {+test_condition} nil %+test_result%&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/ini&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''{+test_condition}'' - это проверка (условие) наличия у ГГ инфопоршня ''test_condition''. Если у ГГ данный инфопоршень есть, то рестриктор выдаст новый инфопоршень (''test_result'').&lt;br /&gt;
&lt;br /&gt;
==Shapes==&lt;br /&gt;
Двигаем дальше.&amp;lt;br&amp;gt;&lt;br /&gt;
shapes = тут вписываем названия шейпов&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Пример:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
shapes = shape0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;shape0:type = - это тип шейпа. Ставить или box,или sphere.&lt;br /&gt;
box - коробка&lt;br /&gt;
sphere - сфера&lt;br /&gt;
&lt;br /&gt;
shape0:axis_x = ваша цифра,0,0&lt;br /&gt;
shape0:axis_y = 0,ваша цифра,0&lt;br /&gt;
shape0:axis_z = 0,0,ваша цифра&lt;br /&gt;
- это размеры шейпа.&lt;br /&gt;
&lt;br /&gt;
restrictor_type - тип рестриктра.&amp;lt;/code&amp;gt;&lt;br /&gt;
Я везде ставлю restrictor_type = 3, поэтому сказать не могу на что влияет значение.&amp;lt;br /&amp;gt;&lt;br /&gt;
Ну вот и всё.Думаю всё чётко и ясно.Будут вопросы обращайтесь.&amp;lt;br /&amp;gt;&lt;br /&gt;
ПС: спасибо р-09 за объяснение некоторых моментов с логикой.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Статью написал:&lt;br /&gt;
'''джЭдай, SGMTeam.'''&amp;lt;br&amp;gt;&lt;br /&gt;
Статью преобразовывал в вики (неправильный перенос строк, ошибки с отсутствием некоторых знаков, запись в категорию) - '''Rekongstor'''&lt;br /&gt;
&lt;br /&gt;
[[Категория:Конфигурационные файлы]] [[Категория:Скрипты]]&lt;/div&gt;</summary>
		<author><name>46.219.85.46</name></author>	</entry>

	</feed>