CoP. Модернизация детектора Сварог — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

CoP. Модернизация детектора Сварог — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
(GPGIrYny)
(Отмена правки 10305 участника 188.163.66.141 (обсуждение))
Строка 1: Строка 1:
yVHwNP <a href="http://kyyuqxfwyuto.com/">kyyuqxfwyuto</a>, [url=http://eyyadwxnrfdv.com/]eyyadwxnrfdv[/url], [link=http://qillsutcbaup.com/]qillsutcbaup[/link], http://qpdyfryhanuo.com/
+
Итак, все мы знаем что в игре есть супер навороченный детектор сварог. Но! Если он такой навороченный то почему же он не может показать нам радиозоны, термозоны, химзоны, псизоны, телепорты да хоть Жгучий пух в конце то концов. Так вот, показывать их он способен но для этого нужно его "настроить". Откроем: gamedata\configs\misc\devices.ltx и найдем там описание детектора "Сварог":
 +
 
 +
<ini>
 +
  [detector_scientific]:detector_elite
 +
$spawn = "devices\detector_scientific"
 +
class = DET_SCIE
 +
 +
visual = dynamics\devices\dev_detector_4\dev_detector_4.ogf
 +
 +
inv_name = st_detector4
 +
inv_name_short = st_detector4
 +
description = st_detector4_descr
 +
hud = detector_scientific_hud
 +
 +
inv_grid_width = 1
 +
inv_grid_height = 1
 +
inv_grid_x = 19
 +
inv_grid_y = 21
 +
cost = 45000
 +
 +
; elite x="0.00096" y="0.0035"
 +
ui_p = -0.02904,0.01,0.0364
 +
ui_r = 0,90,0
 +
 +
af_radius = 20
 +
af_vis_radius = 15
 +
 +
af_class_27 = af_oasis_heart
 +
af_sound_27_ = detectors\art_beep1
 +
af_freq_27 = 0.05, 2
 +
 +
zone_class_1 = zone_mine_acidic_weak
 +
zone_class_2 = zone_mine_acidic_average
 +
zone_class_3 = zone_mine_acidic_strong
 +
zone_class_4 = zone_mine_electric_weak
 +
zone_class_5 = zone_mine_electric_average
 +
zone_class_6 = zone_mine_electric_strong
 +
zone_class_7 = zone_mine_gravitational_weak
 +
zone_class_8 = zone_mine_gravitational_average
 +
zone_class_9 = zone_mine_gravitational_strong
 +
zone_class_10 = zone_mine_thermal_weak
 +
zone_class_11 = zone_mine_thermal_average
 +
zone_class_12 = zone_mine_thermal_strong
 +
zone_class_13 = zone_mine_steam_weak
 +
zone_class_14 = zone_mine_steam_average
 +
zone_class_15 = zone_mine_steam_strong
 +
zone_class_16 = zone_mine_acidic_big
 +
zone_class_17 = zone_mine_chemical_weak
 +
zone_class_18 = zone_mine_chemical_average
 +
zone_class_19 = zone_mine_chemical_strong
 +
zone_class_20 = zone_buzz_weak
 +
zone_class_21 = zone_buzz_average
 +
zone_class_22 = zone_buzz_strong
 +
zone_class_23 = zone_mine_static_weak
 +
zone_class_24 = zone_mine_static_average
 +
zone_class_25 = zone_mine_static_strong
 +
zone_class_26 = zone_witches_galantine_weak
 +
zone_class_27 = zone_witches_galantine_average
 +
zone_class_28 = zone_witches_galantine_strong
 +
zone_class_29 = zone_mine_gravitational_big
 +
zone_class_30 = zone_gravi_zone
 +
zone_class_31 = zone_zharka_static_weak
 +
zone_class_32 = zone_zharka_static_average
 +
zone_class_33 = zone_zharka_static_strong
 +
 +
zone_freq_1 = 0.05, 2
 +
zone_freq_2 = 0.05, 2
 +
zone_freq_3 = 0.05, 2
 +
zone_freq_4 = 0.05, 2
 +
zone_freq_5 = 0.05, 2
 +
zone_freq_6 = 0.05, 2
 +
zone_freq_7 = 0.05, 2
 +
zone_freq_8 = 0.05, 2
 +
zone_freq_9 = 0.05, 2
 +
zone_freq_10 = 0.05, 2
 +
zone_freq_11 = 0.05, 2
 +
zone_freq_12 = 0.05, 2
 +
zone_freq_13 = 0.05, 2
 +
zone_freq_14 = 0.05, 2
 +
zone_freq_15 = 0.05, 2
 +
zone_freq_16 = 0.05, 2
 +
zone_freq_17 = 0.05, 2
 +
zone_freq_18 = 0.05, 2
 +
zone_freq_19 = 0.05, 2
 +
zone_freq_20 = 0.05, 2
 +
zone_freq_21 = 0.05, 2
 +
zone_freq_22 = 0.05, 2
 +
zone_freq_23 = 0.05, 2
 +
zone_freq_24 = 0.05, 2
 +
zone_freq_25 = 0.05, 2
 +
zone_freq_26 = 0.05, 2
 +
zone_freq_27 = 0.05, 2
 +
zone_freq_28 = 0.05, 2
 +
zone_freq_29 = 0.05, 2
 +
zone_freq_30 = 0.05, 2
 +
zone_freq_31 = 0.05, 2
 +
zone_freq_32 = 0.05, 2
 +
zone_freq_33 = 0.05, 2
 +
</ini>
 +
 
 +
И припишем к нему две новые строчки, для примера:
 +
 
 +
<ini>
 +
zone_class_34 = zone_teleport
 +
zone_freq_34 = 0.05, 2
 +
</ini>
 +
 
 +
Поясню, этим мы говорим движку, что девайс определяет еще одну (34-ю) аномальную зону. В данном случае телепорт. Но вот ведь незадача, он её определяет но не показывает на дисплее. А вот тут и начинается интересное. В конфиге детектора имя аномалии берется из файла gamedata\configs\ui\ui_detector_artefact.xml файл содержит в себе имена аномальных зон и ссылки на ID текстуры для отображения этих самых зон. Для каждой зоны использованны 2 имени, для примера:
 +
 
 +
<xml>
 +
<palette id="zone_mine_acidic_weak" width="0.004" height="0.004" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_inGame2_Detector_icon_acid_big</texture>
 +
</palette>
 +
 +
<palette id="zone_mine_acidic_weak" width="0.0065" height="0.0065" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
 +
</palette>
 +
</xml>
 +
 
 +
Создадим в нем новые секции:
 +
 
 +
<xml>
 +
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_inGame2_Detector_icon_acid_big</texture>
 +
</palette>
 +
 +
<palette id="zone_teleport" width="0.0065" height="0.0065" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
 +
</palette>
 +
</xml>
 +
 
 +
Теперь наш детектор будет показывать телепорты, но отображаться они будут значком химической аномалии. А как минимум тупо. Коректим наши новые строки:
 +
 
 +
<xml>
 +
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_inGame2_Detector_icon_teleport</texture>
 +
</palette>
 +
 +
<palette id="zone_teleport" width="0.0065" height="0.0065" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
 +
</palette>
 +
</xml>
 +
 
 +
Вторую секцию не трогаем, так как она не используется(но обязательна(х.з. мож быть в мультиплере)
 +
 
 +
Теперь нам нужно нарисовать иконку для отображения телепорта, для чего мы используем файлик gamedata\textures\ui\ui_actor_sleep_screen.dds и PhotoShop с [http://developer.nvidia.com/object/photoshop_dds_plugins.html DDS плагином], для примера приведу 2 скрина:
 +
 
 +
[[Изображение:Scrin original ui actor sleep screen.jpg|800px|Оригинальная шкурка]]
 +
 
 +
[[Изображение:Scrin modified ui actor sleep screen.jpg|800px|Измененная шкурка]]
 +
 
 +
Итак, теперь вычисляем адрес иконки:
 +
 
 +
[[Изображение:Vichislenie adresa ikonki.jpg|800px]]
 +
 
 +
[[Изображение:Vichislenie razmera ikonki.jpg|800px]]
 +
 
 +
Получили: 139х530; 34х34.
 +
 
 +
Записываем на бумажке =) и открываем файлик gamedata\configs\ui\textures_descr\ui_actor_pda_icons.xml и после строки:
 +
 
 +
<xml>
 +
<texture id="ui_inGame2_Detector_icon_gravity_big" x="105" y="532" width="34" height="34" />
 +
</xml>
 +
 
 +
вставляем:
 +
 
 +
<xml>
 +
<texture id="ui_inGame2_Detector_icon_teleport" x="139" y="530" width="34" height="34" />
 +
</xml>
 +
 
 +
Вот, собственно, и все. Теперь детектор будет отображать телепорт стрелочкой. Кстати: размер иконки на экране детектора меняется в
 +
 
 +
<xml>
 +
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
 +
<texture shader="hud\p3d">ui_inGame2_Detector_icon_teleport</texture>
 +
</palette>
 +
</xml>
 +
 
 +
'''Меняем 0.004 на 0.006 или 0.008 ниже приведен скрин с использованным значением 0.008'''
 +
 
 +
 
 +
[[Изображение:Rezultat dobavlenija detektora.jpg|800px|Итог]]
 +
 
 +
 
 +
Автор: [[Участник:WincentDark69|WincentDark69]]
 +
 
 +
[[Категория:Конфигурационные_файлы]]

Версия 05:55, 19 мая 2011

Итак, все мы знаем что в игре есть супер навороченный детектор сварог. Но! Если он такой навороченный то почему же он не может показать нам радиозоны, термозоны, химзоны, псизоны, телепорты да хоть Жгучий пух в конце то концов. Так вот, показывать их он способен но для этого нужно его "настроить". Откроем: gamedata\configs\misc\devices.ltx и найдем там описание детектора "Сварог":

 
 [detector_scientific]:detector_elite
 $spawn 				= "devices\detector_scientific"
 class				= DET_SCIE
 
 visual			= dynamics\devices\dev_detector_4\dev_detector_4.ogf
 
 inv_name		= st_detector4
 inv_name_short	= st_detector4
 description		= st_detector4_descr
 hud			= detector_scientific_hud
 
 inv_grid_width		= 1
 inv_grid_height		= 1
 inv_grid_x		= 19
 inv_grid_y		= 21
 cost			= 45000
 
 ; elite x="0.00096" y="0.0035"
 ui_p			= -0.02904,0.01,0.0364
 ui_r			= 0,90,0
 
 af_radius		= 20
 af_vis_radius		= 15
 
 af_class_27		= af_oasis_heart
 af_sound_27_		= detectors\art_beep1
 af_freq_27		= 0.05, 2
 
 zone_class_1		= zone_mine_acidic_weak
 zone_class_2		= zone_mine_acidic_average
 zone_class_3		= zone_mine_acidic_strong
 zone_class_4		= zone_mine_electric_weak
 zone_class_5		= zone_mine_electric_average
 zone_class_6		= zone_mine_electric_strong
 zone_class_7		= zone_mine_gravitational_weak
 zone_class_8		= zone_mine_gravitational_average
 zone_class_9		= zone_mine_gravitational_strong
 zone_class_10		= zone_mine_thermal_weak
 zone_class_11		= zone_mine_thermal_average
 zone_class_12		= zone_mine_thermal_strong
 zone_class_13		= zone_mine_steam_weak
 zone_class_14		= zone_mine_steam_average
 zone_class_15		= zone_mine_steam_strong
 zone_class_16		= zone_mine_acidic_big
 zone_class_17		= zone_mine_chemical_weak
 zone_class_18		= zone_mine_chemical_average
 zone_class_19		= zone_mine_chemical_strong
 zone_class_20		= zone_buzz_weak
 zone_class_21		= zone_buzz_average
 zone_class_22		= zone_buzz_strong
 zone_class_23		= zone_mine_static_weak
 zone_class_24		= zone_mine_static_average
 zone_class_25		= zone_mine_static_strong
 zone_class_26		= zone_witches_galantine_weak
 zone_class_27		= zone_witches_galantine_average
 zone_class_28		= zone_witches_galantine_strong
 zone_class_29		= zone_mine_gravitational_big
 zone_class_30		= zone_gravi_zone
 zone_class_31		= zone_zharka_static_weak
 zone_class_32		= zone_zharka_static_average
 zone_class_33		= zone_zharka_static_strong
 
 zone_freq_1		= 0.05, 2
 zone_freq_2		= 0.05, 2
 zone_freq_3		= 0.05, 2
 zone_freq_4		= 0.05, 2
 zone_freq_5		= 0.05, 2
 zone_freq_6		= 0.05, 2
 zone_freq_7		= 0.05, 2
 zone_freq_8		= 0.05, 2
 zone_freq_9		= 0.05, 2
 zone_freq_10		= 0.05, 2
 zone_freq_11		= 0.05, 2
 zone_freq_12		= 0.05, 2
 zone_freq_13		= 0.05, 2
 zone_freq_14		= 0.05, 2
 zone_freq_15		= 0.05, 2
 zone_freq_16		= 0.05, 2
 zone_freq_17		= 0.05, 2
 zone_freq_18		= 0.05, 2
 zone_freq_19		= 0.05, 2
 zone_freq_20		= 0.05, 2
 zone_freq_21		= 0.05, 2
 zone_freq_22		= 0.05, 2
 zone_freq_23		= 0.05, 2
 zone_freq_24		= 0.05, 2
 zone_freq_25		= 0.05, 2
 zone_freq_26		= 0.05, 2
 zone_freq_27		= 0.05, 2
 zone_freq_28		= 0.05, 2
 zone_freq_29		= 0.05, 2
 zone_freq_30		= 0.05, 2
 zone_freq_31		= 0.05, 2
 zone_freq_32		= 0.05, 2
 zone_freq_33		= 0.05, 2
 

И припишем к нему две новые строчки, для примера:

 
 zone_class_34		= zone_teleport
 zone_freq_34		= 0.05, 2
 

Поясню, этим мы говорим движку, что девайс определяет еще одну (34-ю) аномальную зону. В данном случае телепорт. Но вот ведь незадача, он её определяет но не показывает на дисплее. А вот тут и начинается интересное. В конфиге детектора имя аномалии берется из файла gamedata\configs\ui\ui_detector_artefact.xml файл содержит в себе имена аномальных зон и ссылки на ID текстуры для отображения этих самых зон. Для каждой зоны использованны 2 имени, для примера:

 
<palette id="zone_mine_acidic_weak" width="0.004" height="0.004" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_inGame2_Detector_icon_acid_big</texture>
</palette>
 
<palette id="zone_mine_acidic_weak" width="0.0065" height="0.0065" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
</palette>
 

Создадим в нем новые секции:

 
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_inGame2_Detector_icon_acid_big</texture>
</palette>
 
<palette id="zone_teleport" width="0.0065" height="0.0065" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
</palette>
 

Теперь наш детектор будет показывать телепорты, но отображаться они будут значком химической аномалии. А как минимум тупо. Коректим наши новые строки:

 
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_inGame2_Detector_icon_teleport</texture>
</palette>
 
<palette id="zone_teleport" width="0.0065" height="0.0065" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_temp_ad4_mine_acidic</texture>
</palette>
 

Вторую секцию не трогаем, так как она не используется(но обязательна(х.з. мож быть в мультиплере)

Теперь нам нужно нарисовать иконку для отображения телепорта, для чего мы используем файлик gamedata\textures\ui\ui_actor_sleep_screen.dds и PhotoShop с DDS плагином, для примера приведу 2 скрина:

Оригинальная шкурка

Измененная шкурка

Итак, теперь вычисляем адрес иконки:

Vichislenie adresa ikonki.jpg

Vichislenie razmera ikonki.jpg

Получили: 139х530; 34х34.

Записываем на бумажке =) и открываем файлик gamedata\configs\ui\textures_descr\ui_actor_pda_icons.xml и после строки:

 
<texture id="ui_inGame2_Detector_icon_gravity_big" x="105" y="532" width="34" height="34" />
 

вставляем:

 
<texture id="ui_inGame2_Detector_icon_teleport" x="139" y="530" width="34" height="34" />
 

Вот, собственно, и все. Теперь детектор будет отображать телепорт стрелочкой. Кстати: размер иконки на экране детектора меняется в

 
<palette id="zone_teleport" width="0.004" height="0.004" stretch="1" alignment="c">
<texture shader="hud\p3d">ui_inGame2_Detector_icon_teleport</texture>
</palette>
 

Меняем 0.004 на 0.006 или 0.008 ниже приведен скрин с использованным значением 0.008


Итог


Автор: WincentDark69

Другие места
LANGUAGE