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

CoP. Эффект разнообразия артефактов — различия между версиями

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

Перейти к: навигация, поиск
(оформление, орфография)
 
Строка 7: Строка 7:
 
Вот исправленный конфиг медузы:
 
Вот исправленный конфиг медузы:
  
  [af_medusa]:af_base
+
  <ini>[af_medusa]:af_base
 
  $spawn = "artefacts\gravitational_1_medusa"
 
  $spawn = "artefacts\gravitational_1_medusa"
 
  class = ARTEFACT  ; будет подпрыгивать
 
  class = ARTEFACT  ; будет подпрыгивать
Строка 56: Строка 56:
 
  chemical_burn_immunity = 0
 
  chemical_burn_immunity = 0
 
  explosion_immunity = 0
 
  explosion_immunity = 0
  fire_wound_immunity  = 0
+
  fire_wound_immunity  = 0</ini>
  
 
Сразу же после него вписываем что то вроде:
 
Сразу же после него вписываем что то вроде:
  
[af_medusa_mini]:af_medusa
+
<ini> [af_medusa_mini]:af_medusa
 
  $spawn = "artefacts\my_addon_af_medusa_mini"
 
  $spawn = "artefacts\my_addon_af_medusa_mini"
 
  inv_weight = 0.3
 
  inv_weight = 0.3
Строка 86: Строка 86:
 
  cost = 5500
 
  cost = 5500
 
   
 
   
  radiation_restore_speed = -0.004
+
  radiation_restore_speed = -0.004</ini>
  
 
Я в данном случае создал еще три артефакта которые в игре будут полностью похожи на медузу (Название, описание, свойства) С разницей лишь в том что все четыре Медузы будут по разному стоить, имеют разный вес, и по разному выводят радиацию. Далее нам необходимо добавить их в игру.
 
Я в данном случае создал еще три артефакта которые в игре будут полностью похожи на медузу (Название, описание, свойства) С разницей лишь в том что все четыре Медузы будут по разному стоить, имеют разный вес, и по разному выводят радиацию. Далее нам необходимо добавить их в игру.
Строка 110: Строка 110:
 
Дописываем по аналогии:
 
Дописываем по аналогии:
  
     <palette id="af_medusa_mini" width="0.0015" height="0.0015" stretch="1" alignment="c">
+
     <xml><palette id="af_medusa_mini" width="0.0015" height="0.0015" stretch="1" alignment="c">
 
       <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
 
       <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
 
     </palette>
 
     </palette>
Строка 119: Строка 119:
 
       <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
 
       <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
 
     </palette>
 
     </palette>
 +
</xml>
  
 
'''И'''
 
'''И'''
  
     <palette id="af_medusa_mini" width="0.0011" height="0.0011" stretch="1" alignment="c">
+
     <xml><palette id="af_medusa_mini" width="0.0011" height="0.0011" stretch="1" alignment="c">
 
       <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
 
       <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
 
     </palette>
 
     </palette>
Строка 130: Строка 131:
 
     <palette id="af_medusa_super" width="0.0011" height="0.0011" stretch="1" alignment="c">
 
     <palette id="af_medusa_super" width="0.0011" height="0.0011" stretch="1" alignment="c">
 
       <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
 
       <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
     </palette>
+
     </palette></xml>
  
 
'''3) gamedata\configs\scripts\локация\anomaly\аномалия.ltx'''
 
'''3) gamedata\configs\scripts\локация\anomaly\аномалия.ltx'''
Строка 136: Строка 137:
 
Делаем из:
 
Делаем из:
  
  [anomal_zone]
+
  <ini>[anomal_zone]
 
  layers_count = 1
 
  layers_count = 1
 
  respawn_tries = 2
 
  respawn_tries = 2
Строка 145: Строка 146:
 
  start_artefact = af_medusa
 
  start_artefact = af_medusa
 
  coeff = 3
 
  coeff = 3
  artefact_ways = zaton_zanaveska_af_way
+
  artefact_ways = zaton_zanaveska_af_way</ini>
  
 
Вот это
 
Вот это
  
[anomal_zone]
+
<ini> [anomal_zone]
 
  layers_count = 1
 
  layers_count = 1
 
  respawn_tries = 2
 
  respawn_tries = 2
Строка 158: Строка 159:
 
  start_artefact = af_medusa_mini
 
  start_artefact = af_medusa_mini
 
  coeff = 3, 3, 2, 1
 
  coeff = 3, 3, 2, 1
  artefact_ways = zaton_zanaveska_af_way
+
  artefact_ways = zaton_zanaveska_af_way</ini>
  
 
Вот собственно и всё (осталось только добавить в торговлю)
 
Вот собственно и всё (осталось только добавить в торговлю)
Строка 175: Строка 176:
 
Вот тут есть правило что если мы используем иммунитеты то они должны вписываться вот так:
 
Вот тут есть правило что если мы используем иммунитеты то они должны вписываться вот так:
  
  [af_cristall_flower_mini]:af_cristall_flower
+
  <ini>[af_cristall_flower_mini]:af_cristall_flower
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  inv_weight = 0.4
 
  inv_weight = 0.4
Строка 193: Строка 194:
 
  chemical_burn_immunity = 0
 
  chemical_burn_immunity = 0
 
  explosion_immunity = 0
 
  explosion_immunity = 0
  fire_wound_immunity  = 0
+
  fire_wound_immunity  = 0</ini>
  
 
А не вот так:
 
А не вот так:
  
  [af_cristall_flower_mini]:af_cristall_flower
+
  <ini>[af_cristall_flower_mini]:af_cristall_flower
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  inv_weight = 0.4
 
  inv_weight = 0.4
Строка 207: Строка 208:
 
   
 
   
 
  [af_cristall_flower_mini_absorbation]
 
  [af_cristall_flower_mini_absorbation]
  telepatic_immunity = 0.01
+
  telepatic_immunity = 0.01</ini>
  
 
Во втором случае при спавне артефакта игра вылетит с ошибкой типа не найден '''burn_immunity''' в '''af_cristall_flower_mini_absorbation''' тоесть af_cristall_flower_mini_absorbation должен содержать все иммунитеты даже если их значение ноль.
 
Во втором случае при спавне артефакта игра вылетит с ошибкой типа не найден '''burn_immunity''' в '''af_cristall_flower_mini_absorbation''' тоесть af_cristall_flower_mini_absorbation должен содержать все иммунитеты даже если их значение ноль.
Строка 213: Строка 214:
 
Хотя впринципе можно создать в файле секцию:
 
Хотя впринципе можно создать в файле секцию:
  
  [af_bla_bla_bla_absorbation]
+
  <ini>[af_bla_bla_bla_absorbation]
 
  burn_immunity = 0
 
  burn_immunity = 0
 
  strike_immunity = 0
 
  strike_immunity = 0
Строка 222: Строка 223:
 
  chemical_burn_immunity = 0
 
  chemical_burn_immunity = 0
 
  explosion_immunity = 0
 
  explosion_immunity = 0
  fire_wound_immunity  = 0
+
  fire_wound_immunity  = 0</ini>
  
 
А все следующие иммунитеты писать вот так:
 
А все следующие иммунитеты писать вот так:
  
[af_cristall_flower_mini]:af_cristall_flower
+
<ini> [af_cristall_flower_mini]:af_cristall_flower
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  $spawn = "artefacts\my_addon_af_cristall_flower_mini"
 
  inv_weight = 0.4
 
  inv_weight = 0.4
Строка 236: Строка 237:
 
   
 
   
 
  [af_cristall_flower_mini_absorbation]:af_bla_bla_bla_absorbation
 
  [af_cristall_flower_mini_absorbation]:af_bla_bla_bla_absorbation
  telepatic_immunity = 0.01
+
  telepatic_immunity = 0.01</ini>
  
Не пробовал но должно работать =)
+
Не пробовал, но должно работать =)
  
 
В итоге если создать для каждого артефакта 3 можно и больше дублей и добавить их все в аномалии и торговлю то сложится впечатление что каждый конкретный артефакт может быть разным.
 
В итоге если создать для каждого артефакта 3 можно и больше дублей и добавить их все в аномалии и торговлю то сложится впечатление что каждый конкретный артефакт может быть разным.

Текущая версия на 13:33, 28 июля 2013

Давным давно читал на форуме GSC такое предложение: Сделайте так чтобы артефакты были более уникальны. Тоесть каждая Медуза имела отличия от такой же Медузы.

Честно говоря идея хорошая, я тоже считаю неправильным то что каждая найденая мной Медуза весит пол килограмма выводит 2 условные единицы радиации и стоит 4000 рублей (тут конечно есть разброс цен у торгашей) дети ведь не рождаются с весом ровно 3200 со светлыми волосами и голубыми глазами. Менять можно впринципе любые параметры, но на практике столкнулся с тем что приходится поднимать общую радиоизлучаемость артефактов до минимума равного 5-6 и максисума равного 12-13.

НАЧНЕМ

Вот исправленный конфиг медузы:

[af_medusa]:af_base
 $spawn				= "artefacts\gravitational_1_medusa"
 class				= ARTEFACT  	; будет подпрыгивать
 visual				= dynamics\artefacts\af_medusa.ogf
 description			= st_af_medusa_descr
 inv_name			= st_af_medusa_name
 inv_name_short		= st_af_medusa_name
 inv_weight			= 0.5
 
 inv_grid_x			= 9
 inv_grid_y			= 4
 
 cost				= 4000
 
 jump_height			= .5    	; высота прыжка
 
 particles				= artefact\af_gravi_idle
 det_show_particles		= artefact\af_gravi_show
 det_hide_particles		= artefact\af_gravi_hide
 
 af_rank				= 1
 
 lights_enabled = true
 
 trail_light_color 		= 0.4,0.4,0
 trail_light_range 		= 2.0
 
 ;скорости увеличения (уменьшения)
 health_restore_speed		= 0
 radiation_restore_speed		= -0.003
 satiety_restore_speed		= 0
 power_restore_speed			= 0
 bleeding_restore_speed		= 0
 hit_absorbation_sect		= af_medusa_absorbation
 
 additional_inventory_weight		= 0
 additional_inventory_weight2	= 0
 
 artefact_activation_seq		= af_activation_bold
 
 [af_medusa_absorbation]
 burn_immunity 			= 0				;коэффициенты иммунитета
 strike_immunity 		= 0
 shock_immunity 			= 0
 wound_immunity 			= 0
 radiation_immunity 		= 0
 telepatic_immunity 		= 0
 chemical_burn_immunity 	= 0
 explosion_immunity 		= 0
 fire_wound_immunity  	= 0

Сразу же после него вписываем что то вроде:

 [af_medusa_mini]:af_medusa
 $spawn				= "artefacts\my_addon_af_medusa_mini"
 inv_weight			= 0.3
 
 cost				= 3500
 
 radiation_restore_speed		= -0.002
 
 ;------------------------------------------------------------------------------------------
 
 [af_medusa_maxi]:af_medusa
 $spawn				= "artefacts\my_addon_af_medusa_maxi"
 inv_weight			= 0.7
 
 cost				= 4500
 
 radiation_restore_speed		= -0.004
 
 ;------------------------------------------------------------------------------------------
 
 [af_medusa_super]:af_medusa
 $spawn				= "artefacts\my_addon_af_medusa_super"
 inv_weight			= 0.3
 
 cost				= 5500
 
 radiation_restore_speed		= -0.004

Я в данном случае создал еще три артефакта которые в игре будут полностью похожи на медузу (Название, описание, свойства) С разницей лишь в том что все четыре Медузы будут по разному стоить, имеют разный вес, и по разному выводят радиацию. Далее нам необходимо добавить их в игру.

1) gamedata\configs\misc\devices.ltx

Дописываем по аналогии секции:

af_class_40		= af_medusa_mini
af_sound_40_		= detectors\art_beep1
af_freq_40			= 0.05, 2
af_class_41		= af_medusa_maxi
af_sound_41_		= detectors\art_beep1
af_freq_41			= 0.05, 2
af_class_42		= af_medusa_super
af_sound_42_		= detectors\art_beep1
af_freq_42			= 0.05, 2

К нужному детектору. Не забывая при этом сместить номера последующих секций в следующих детекторах если приписываете на Отклик, Медведь или Велес (detector_simple, detector_advanced, detector_elite)

2) gamedata\configs\ui\ui_detector_artefact.xml

Дописываем по аналогии:

<palette id="af_medusa_mini" width="0.0015" height="0.0015" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
    </palette>
    <palette id="af_medusa_maxi" width="0.0015" height="0.0015" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
    </palette>
    <palette id="af_medusa_super" width="0.0015" height="0.0015" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_temp_ad3_artefact</texture>
    </palette>
 

И

<palette id="af_medusa_mini" width="0.0011" height="0.0011" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
    </palette>
    <palette id="af_medusa_maxi" width="0.0011" height="0.0011" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
    </palette>
    <palette id="af_medusa_super" width="0.0011" height="0.0011" stretch="1" alignment="c">
      <texture shader="hud\p3d">ui_inGame2_Detector_icon_artefact</texture>
    </palette>

3) gamedata\configs\scripts\локация\anomaly\аномалия.ltx

Делаем из:

[anomal_zone]
 layers_count = 1
 respawn_tries = 2
 max_artefacts = 3
 ;applying_force_xz = 200
 ;applying_force_y = 200 
 artefacts = af_medusa
 start_artefact = af_medusa
 coeff = 3
 artefact_ways = zaton_zanaveska_af_way

Вот это

 [anomal_zone]
 layers_count = 1
 respawn_tries = 2
 max_artefacts = 3
 ;applying_force_xz = 200
 ;applying_force_y = 200 
 artefacts = af_medusa, af_medusa_mini, af_medusa_maxi, af_medusa_super
 start_artefact = af_medusa_mini
 coeff = 3, 3, 2, 1
 artefact_ways = zaton_zanaveska_af_way

Вот собственно и всё (осталось только добавить в торговлю)


Да как же всё =)

Очень вероятно кто то захочет провернуть такое со всеми артефактами (у меня ушло около 7-8 часов (долго искал БАГ).

Так вот в случае с Медузой мы не использовали секцию иммунитетов которые даёт артефакт: hit_absorbation_sect

К примеру:

hit_absorbation_sect		= af_cristall_flower_mini_absorbation

Вот тут есть правило что если мы используем иммунитеты то они должны вписываться вот так:

[af_cristall_flower_mini]:af_cristall_flower
 $spawn				= "artefacts\my_addon_af_cristall_flower_mini"
 inv_weight			= 0.4
 
 cost				= 2500
 
 radiation_restore_speed		= 0.006
 hit_absorbation_sect		= af_cristall_flower_mini_absorbation
 
 [af_cristall_flower_mini_absorbation]
 burn_immunity 			= 0
 strike_immunity 		= 0
 shock_immunity 		= 0
 wound_immunity 		= 0
 radiation_immunity 		= 0
 telepatic_immunity 		= 0.01
 chemical_burn_immunity 	= 0
 explosion_immunity 		= 0
 fire_wound_immunity  		= 0

А не вот так:

[af_cristall_flower_mini]:af_cristall_flower
 $spawn				= "artefacts\my_addon_af_cristall_flower_mini"
 inv_weight			= 0.4
 
 cost				= 2500
 
 radiation_restore_speed		= 0.006
 hit_absorbation_sect		= af_cristall_flower_mini_absorbation
 
 [af_cristall_flower_mini_absorbation]
 telepatic_immunity 		= 0.01

Во втором случае при спавне артефакта игра вылетит с ошибкой типа не найден burn_immunity в af_cristall_flower_mini_absorbation тоесть af_cristall_flower_mini_absorbation должен содержать все иммунитеты даже если их значение ноль.

Хотя впринципе можно создать в файле секцию:

[af_bla_bla_bla_absorbation]
 burn_immunity 			= 0
 strike_immunity 		= 0
 shock_immunity 		= 0
 wound_immunity 		= 0
 radiation_immunity 		= 0
 telepatic_immunity 		= 0
 chemical_burn_immunity 	= 0
 explosion_immunity 		= 0
 fire_wound_immunity  		= 0

А все следующие иммунитеты писать вот так:

 [af_cristall_flower_mini]:af_cristall_flower
 $spawn				= "artefacts\my_addon_af_cristall_flower_mini"
 inv_weight			= 0.4
 
 cost				= 2500
 
 radiation_restore_speed		= 0.006
 hit_absorbation_sect		= af_cristall_flower_mini_absorbation
 
 [af_cristall_flower_mini_absorbation]:af_bla_bla_bla_absorbation
 telepatic_immunity 		= 0.01

Не пробовал, но должно работать =)

В итоге если создать для каждого артефакта 3 можно и больше дублей и добавить их все в аномалии и торговлю то сложится впечатление что каждый конкретный артефакт может быть разным.

--Rekongstor 11:30, 13 января 2011 (UTC) Я смотрю на это и предлагаю сделать кое-что. Ведь есть возможность записи в консоль параметров и в итоге можно сделать для каждого артефакта свой разброс параметров.

--WincentDark69 Можно сделать и разброс, но. К примеру мы используем: Стоимость, Восстановление здоровья, Насышение организма радиацией, Вес. Во первых я не вкурсе как сделать расброс веса. Во вторых если даже прописать расброс цен от 5000 до 25000 то, где при этом будем влияние получившегося артефакта на стоимость (может получится что то типа "суперский арт (Медузу) торговец купит за 5361 а за совершенно бесполезный арт ("Медузу") предложит 23787" к примеру)


Автор: WincentDark69

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