Меню сайта
 
Форма входа
 
Мини-чат
200
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Call of Pripyat » Как создать свой мод » Модернизация детектора Сварог (Модернизация детектора Сварог)
Модернизация детектора Сварог
zloty813Дата: Суббота, 22.01.2011, 01:00 | Сообщение # 1
Стрелок
Группа: С.Т.А.Л.К.Е.Р.
Сообщений: 112
Репутация: 0
Статус: Ушёл из Зоны
Итак, все мы знаем что в игре есть супер навороченный детектор сварог. Но! Если он такой навороченный то почему же он не может показать нам радиозоны, термозоны, химзоны, псизоны, телепорты да хоть Жгучий пух в конце то концов. Так вот, показывать их он способен но для этого нужно его "настроить". Откроем: gamedata\configs\misc\devices.ltx и найдем там описание детектора "Сварог":

Code
[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

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

Code
zone_class_34  = zone_teleport
  zone_freq_34  = 0.05, 2

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

Code

<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>

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

Code

<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>

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

[code]<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 скрина:

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

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

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

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


вставляем:

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

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

Code
<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
Урок был взят с сайта: http://stalkerin.gameru.net/wiki/index.php


Имя: Александр
Возраст: 13 Лет
Город: Чусовой

 
Форум » Call of Pripyat » Как создать свой мод » Модернизация детектора Сварог (Модернизация детектора Сварог)
  • Страница 1 из 1
  • 1
Поиск:

 
Наш опрос
Оцените мой сайт
Всего ответов: 26
 
Поиск
 
Статистика
 
Друзья