SoC. Генерирование предметов в трупах — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
(→DEATH_GENERIC.LTX) |
|||
(не показаны 10 промежуточные версии 4 участников) | |||
Строка 1: | Строка 1: | ||
===Введение=== | ===Введение=== | ||
− | Разберу,как случайным образом в трупах генеретятся предметы.За спавн предметов отвечают 4 файла в папке "config\misc": | + | Разберу, как случайным образом в трупах генеретятся предметы. За спавн предметов отвечают 4 файла в папке "config\misc": |
-'''''death_generic.ltx''''' | -'''''death_generic.ltx''''' | ||
Строка 13: | Строка 13: | ||
===DEATH_GENERIC.LTX=== | ===DEATH_GENERIC.LTX=== | ||
− | Является главным файлом с | + | Является главным файлом с инклудами остальных. В нём описываются зависимости спавна патронов при наличии определенного оружия (то есть если у НПС есть ТОЗ-34, то заспавненые патроны должны |
быть для него, а не для СВД, например), секция: | быть для него, а не для СВД, например), секция: | ||
<pre>[item_dependence]</pre> | <pre>[item_dependence]</pre> | ||
− | Перечисляются уникальные, квестовые предметы, которые не должны удаляться, если они есть у | + | Перечисляются уникальные, квестовые предметы, которые не должны удаляться, если они есть у НПС, секция: |
<pre>[keep_items]</pre> | <pre>[keep_items]</pre> | ||
Строка 33: | Строка 33: | ||
af_night_star = 0.005</pre> | af_night_star = 0.005</pre> | ||
− | Означает,что артефакт | + | Означает, что артефакт «медуза» заспавнится с вероятностью 1.5%, «кристальная колючка» — с 1% ,а «ночная звезда» — с вероятностью 0.5%. Если стоит 1, то предмет заспавнится со 100% вероятностью. |
− | + | ||
+ | P.S. В «Чистом Небе» и «Зове Припяти» минимальное значение для спавна это 0.01 (1%). Игра больше не понимает значения ниже 1%. | ||
+ | |||
+ | Во всех остальных секциях пишется соответствие на именно эту секцию,например: | ||
<pre>[bandit]:stalker</pre> | <pre>[bandit]:stalker</pre> | ||
− | Это значит,что у всех | + | Это значит, что у всех бандитов генерация предметов точно такая же, как и у сталкеров. Если необходимо задать другой шанс спавна, то просто пишется строка с новым значением, например, у наёмников отключен спавн хлеба, колбасы, водки, однако увеличен шанс сгенеретить энергетический напиток: |
− | например у | + | |
<pre>[killer]:stalker | <pre>[killer]:stalker | ||
Строка 48: | Строка 49: | ||
energy_drink = 0.3</pre> | energy_drink = 0.3</pre> | ||
− | + | Стоит дополнительно оговориться, что учитываются только сотые доли, то есть писать меньше, чем 0.01 не имеет смысла, поскольку в этом случае цифра будет округляться до нуля. Иными словами, шанса меньше 1% в игре не может быть. | |
+ | |||
+ | ==DEATH_ITEMS_BY_LEVEL.LTX== | ||
Генерирование предметов для разных уровней(локаций). | Генерирование предметов для разных уровней(локаций). | ||
Опять таки главной секцией является: | Опять таки главной секцией является: | ||
Строка 54: | Строка 57: | ||
<pre>[default]</pre> | <pre>[default]</pre> | ||
− | А во всех других пишется соответствие на | + | А во всех других пишется соответствие на неё. |
− | В этом файле задается значение,спавнить или нет предмет на уровне: | + | В этом файле задается значение, спавнить или нет предмет на уровне: |
<pre>af_medusa = 1 | <pre>af_medusa = 1 | ||
Строка 65: | Строка 68: | ||
Количественное отношение заспавненных предметов для разных уровней сложности прохождения игры. | Количественное отношение заспавненных предметов для разных уровней сложности прохождения игры. | ||
− | <pre>[item_count_0] - | + | <pre>[item_count_0] -новичок |
[item_count_1] -опытный | [item_count_1] -опытный | ||
[item_count_2] -ветеран | [item_count_2] -ветеран | ||
[item_count_3] -мастер</pre> | [item_count_3] -мастер</pre> | ||
− | Как видите,с каждым уровнем сложности спавн предметов уменьшается.Главной как всегда является первая секция( | + | Как видите, с каждым уровнем сложности спавн предметов уменьшается. Главной как всегда является первая секция(новичок). |
− | Отличительная особенность написания | + | Отличительная особенность написания — это 2 цифры.Первая цифра указывает минимальное количество заспавненных предметов, вторая максимальное. |
− | Если стоит одно значение,то спавнится всегда в | + | Если стоит одно значение, то спавнится всегда в определённом количестве. |
Пример: | Пример: | ||
Строка 81: | Строка 84: | ||
===ДОБАВЛЕНИЕ В ГЕНЕРАЦИЮ НОВОГО ПРЕДМЕТА=== | ===ДОБАВЛЕНИЕ В ГЕНЕРАЦИЮ НОВОГО ПРЕДМЕТА=== | ||
− | Для примера разберу добавление | + | Для примера разберу добавление энергетического напитка «S.T.A.L.K.E.R.» (патч 5, напиток отсутствует). Создание собственного предмета я разбирать не буду, так как такая статья уже имеется, я просто напишу его конфиг: |
− | напишу его конфиг: | + | |
<pre>[energy_drink_stalker]:vodka | <pre>[energy_drink_stalker]:vodka | ||
Строка 113: | Строка 115: | ||
Само собой добавте описание... | Само собой добавте описание... | ||
− | Сделаем | + | Сделаем упрощенное генерирование, то есть для всех: группировок, уровней сложности, локаций оно будет одинаковым... |
Для этого добавим наш энергетик во все главные секции: | Для этого добавим наш энергетик во все главные секции: | ||
Строка 134: | Строка 136: | ||
af_medusa = 1</pre> | af_medusa = 1</pre> | ||
− | Вписывать спавн нашего предмета можно в любое место в этих секциях между другими предметами,не обращая внимание на записи разрабов(;Еда,;Медикаменты и т.п.),так как сделаны они | + | Вписывать спавн нашего предмета можно в любое место в этих секциях между другими предметами, не обращая внимание на записи разрабов (;Еда,;Медикаменты и т.п.), так как сделаны они просто для удобства, игра это не учитывает. |
− | просто для удобства,игра это не учитывает. | + | Всё, новый предмет добавлен в игру, появляться он будет с 20%-ой вероятностью в количестве 1 шт. |
− | + | ||
− | P.S | + | P.S. Учёл пожелания HikeR'a, надеюсь статья оформлена правильно:) |
Автор: [[Участник:Костя.н.ы.ч|Костя.н.ы.ч]] 13:24, 17 сентября 2009 (UTC)]] | Автор: [[Участник:Костя.н.ы.ч|Костя.н.ы.ч]] 13:24, 17 сентября 2009 (UTC)]] | ||
− | |||
[[Категория:Конфигурационные_файлы]] | [[Категория:Конфигурационные_файлы]] |
Текущая версия на 15:39, 8 августа 2015
Содержание
Введение
Разберу, как случайным образом в трупах генеретятся предметы. За спавн предметов отвечают 4 файла в папке "config\misc":
-death_generic.ltx
-death_items_by_communities.ltx
-death_items_by_levels.ltx
-death_items_count.ltx
Разберем их структуру.
DEATH_GENERIC.LTX
Является главным файлом с инклудами остальных. В нём описываются зависимости спавна патронов при наличии определенного оружия (то есть если у НПС есть ТОЗ-34, то заспавненые патроны должны быть для него, а не для СВД, например), секция:
[item_dependence]
Перечисляются уникальные, квестовые предметы, которые не должны удаляться, если они есть у НПС, секция:
[keep_items]
И предметы, относящиеся к патронам (их надо спавнить другим методом), секция:
[ammo_sections]
DEATH_ITEMS_BY_COMMUNITIES.LTX
В ней указывается вероятность заспаунить или нет какой либо предмет в процентах,например:
af_medusa = 0.015 af_cristall_flower = 0.01 af_night_star = 0.005
Означает, что артефакт «медуза» заспавнится с вероятностью 1.5%, «кристальная колючка» — с 1% ,а «ночная звезда» — с вероятностью 0.5%. Если стоит 1, то предмет заспавнится со 100% вероятностью.
P.S. В «Чистом Небе» и «Зове Припяти» минимальное значение для спавна это 0.01 (1%). Игра больше не понимает значения ниже 1%.
Во всех остальных секциях пишется соответствие на именно эту секцию,например:
[bandit]:stalker
Это значит, что у всех бандитов генерация предметов точно такая же, как и у сталкеров. Если необходимо задать другой шанс спавна, то просто пишется строка с новым значением, например, у наёмников отключен спавн хлеба, колбасы, водки, однако увеличен шанс сгенеретить энергетический напиток:
[killer]:stalker ;Еда bread = 0 kolbasa = 0 vodka = 0 energy_drink = 0.3
Стоит дополнительно оговориться, что учитываются только сотые доли, то есть писать меньше, чем 0.01 не имеет смысла, поскольку в этом случае цифра будет округляться до нуля. Иными словами, шанса меньше 1% в игре не может быть.
DEATH_ITEMS_BY_LEVEL.LTX
Генерирование предметов для разных уровней(локаций). Опять таки главной секцией является:
[default]
А во всех других пишется соответствие на неё. В этом файле задается значение, спавнить или нет предмет на уровне:
af_medusa = 1 af_cristall_flower = 0
То есть если стоит цифра 1,то спавним,если 0-не спавним.
DEATH_ITEMS_COUNT.LTX
Количественное отношение заспавненных предметов для разных уровней сложности прохождения игры.
[item_count_0] -новичок [item_count_1] -опытный [item_count_2] -ветеран [item_count_3] -мастер
Как видите, с каждым уровнем сложности спавн предметов уменьшается. Главной как всегда является первая секция(новичок). Отличительная особенность написания — это 2 цифры.Первая цифра указывает минимальное количество заспавненных предметов, вторая максимальное. Если стоит одно значение, то спавнится всегда в определённом количестве. Пример:
bandage = 2 medkit = 1, 2
Значит будет генеретится всегда 2 бинта, и 1 или 2 атпечки.
ДОБАВЛЕНИЕ В ГЕНЕРАЦИЮ НОВОГО ПРЕДМЕТА
Для примера разберу добавление энергетического напитка «S.T.A.L.K.E.R.» (патч 5, напиток отсутствует). Создание собственного предмета я разбирать не буду, так как такая статья уже имеется, я просто напишу его конфиг:
[energy_drink_stalker]:vodka $spawn = "food and drugs\energy_drink_stalker" inv_name = energy_drink_stalker_name inv_name_short = energy_drink_stalker_short_name visual = equipments\drink_stalker.ogf description = enc_equipment_energydrink_stalker cost = 75 inv_grid_width = 1 inv_grid_height = 1 inv_grid_x = 11 inv_grid_y = 0 inv_weight = 0.3 inv_name = drink_stalker eat_health = 0 eat_satiety = 0 eat_power = 1.0 eat_alcohol = 0 eat_radiation = 0 wounds_heal_perc = 0 eat_portions_num = 1 eat_max_power = 0.2 attach_angle_offset = 0.000000, 0.000000, 0.000000 attach_position_offset = 0.087266, -0.078540, 0.052360 attach_bone_name = bip01_r_hand auto_attach = false
Само собой добавте описание... Сделаем упрощенное генерирование, то есть для всех: группировок, уровней сложности, локаций оно будет одинаковым... Для этого добавим наш энергетик во все главные секции:
-death_items_by_communities.ltx
[stalker] energy_drink_stalker =0.2 af_medusa = 0.015
-death_items_by_levels.ltx
[default] energy_drink_stalker = 1 af_medusa = 1
-death_items_count.ltx
[item_count_0] energy_drink_stalker = 1 af_medusa = 1
Вписывать спавн нашего предмета можно в любое место в этих секциях между другими предметами, не обращая внимание на записи разрабов (;Еда,;Медикаменты и т.п.), так как сделаны они просто для удобства, игра это не учитывает. Всё, новый предмет добавлен в игру, появляться он будет с 20%-ой вероятностью в количестве 1 шт.
P.S. Учёл пожелания HikeR'a, надеюсь статья оформлена правильно:)
Автор: Костя.н.ы.ч 13:24, 17 сентября 2009 (UTC)]]