Торговля
Вещи, которые продают торговцы можно отредактировать(добавить/убрать) в файлах с
именем [b]trade_YYY.ltx[.B], где [b]YYY[.B] – это имя торговца(например
[b]trade_barman.ltx[.B])
Итак, поехали:
Структура файла на самом деле очень проста, под зачком ; прописаны сами предметы, а после
него – комментарий(чтоб понятно было). Например ;Аммуниция.
В квадратные скобки заключены([barman_generic_buy]), как бы сказать, “условия”. Лучше показать на примере:
В самом начале(практически) файла trade_barman.ltx идёт строка содержания
[barman_generic_buy], т.е. она означает, что ниже прописанные предметы торговец может купить.
Сами предметы например:
Code
;Артефакты
af_medusa = 1, 0.3
af_cristall_flower = 1, 0.3
af_night_star = 1, 0.3
af_vyvert = 1, 0.3
af_gravi = 1, 0.3
af_gold_fish = 1, 0.3
af_blood = 1, 0.3
af_mincer_meat = 1, 0.3
или
;ADDONS
wpn_addon_scope = 0.7, 0.2
wpn_addon_scope_susat = 0.7, 0.2
Посмотрим какие ещё “условия” содержит этот файл и их значение:
Code
[supplies_start] -начальный ассортимент
[supplies_after_darkvalley] -ассортимент, после выполнения квеста в тёмной долине
[supplies_after_brain] -ассортимент, после “выжигателя мозгов”
[barman_start_sell] -цены по которым торговец(бармен в данн. сл.) продает в начале
[barman_after_darkvalley_sell] -аналогично
[barman_after_brain_sell]
Итак: чтобы добавить предмет к торговцу, после строки [supplies_start], находим интересующую
нас категорию(а это может быть: ;Аммуниция/;Оружие/;Броники/;Медикаменты/;Еда и
др.) и после всех прописанных в данной категории предметов добавляем ещё одну строчку
для своего предмета(а именно название модели(т.к. оно совпадает с названием самого
предмета) и после знака = параметры(о них чуть ниже)). Ну я так и знал что вы ничего не
поймёте, поэтому пример:
Чтобы добавить бармену винтовку Гаусса, находим строки после условия [supplies_start] ;
Code
Оружие
wpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
и внизу прописываем wpn_gauss = N, n.n
*о значениях после знака = см. ниже.
Все имена оружия, амуниции, снаряжения и т.п. можно найти в папках
gamedata\meshes\equipments,
gamedata\meshes\weapons, gamedata\meshes\food.
Заметьте, что wpn_gauss нужно писать без расширения .ogf
Значения:
После знака = у вальтера например стоит цифра 3, а после запятой – 0,6.
Первое, для гаусса у нас стоит N, это количество(в штуках) предметов. Т.е. если поставить
значение 999, то у бармена будет 999 гауссов.
А второе:
1. В разделах supplies вторая цифра это вероятность появления данного предмета.
2. В разделе buy -первая цифра максимальная цена покупки, вторая минимальная (зависит
от отношения торговца к Меченному -рейтинг, репутация)[Предположительно. – прим.]
3. Соответственно в разделах sell -первая цифра минимальная цена продажи, вторая -максимальная
(точнее множитель на "истинную цену" предмета). Tnx GreyL.
В итоге должно получиться:
Code
[supplies_start]
;Оружие
wpn_pb = 3, 0.6
wpn_walther = 3, 0.6
wpn_mp5 = 3, 0.6
wpn_ak74u = 3, 0.5
wpn_gauss = 6, 0.6
И тогда у торговца мы получим ровно 6 винтовок Гаусса.
NPC покупают оружие:
Чтобы обычные сталкеры и др. npc могли покупать у ГГ оружие, нужно править файл
gamedata\config\misc\trade_generic.ltx. Его структура точно такая же, как и у любого другого
торговца.
После строки [generic_buy] находим строку ;Оружие и после неё у каждого вида ставим зачения
N и n.n.
Можно например так:
Code
;Оружие
wpn_pm = 0.08, 0.12
wpn_pb ;NO TRADE
wpn_fort = 0.08, 0.12
wpn_hpsa = 0.08, 0.12
wpn_beretta = 0.08, 0.12
wpn_walther = 0.08, 0.12
wpn_sig220 ;NO TRADE
… …
А чтобы у npc продавалось оружие, нужно проделать тоже самое, только после строки
[generic_sell]
Метод я проверял, вроде как работает.
Чтобы после покупки персонаж не выкидывал купленное оружие(а также чтобы подбирал его с земли),
Code
в файле gamedata\config\creatures\m_stalker.ltx строку can_select_items = off меняем
на can_select_items = on
и строку use_single_item_rule = on меняем на use_single_item_rule = off .