В данной статье я подробно разберу настройку и установку Ядро плагина - Ice RPG: Рассвет нового мира / Rise of a new world (CORE)
Решил вынести в отдельную статью, чтобы не мучиться с редактированием ресурсов. Поскольку мне в лс пришло сообщение, где плагин сыпет ошибками перевода прямо из коробки, я посчитал полезным более подробно показать все нюансы установки и настройки, чтобы при появлении новых модулей более не касаться файлов перевода и конфигов ядра, а у пользователя не составляло труда добавить нужный функционал.
В статье я по шагам буду настраивать конфиги плагина, касаясь файлов перевода.
Начинаем создавать предметы экипировки и расходники
Будет дополняться...
Решил вынести в отдельную статью, чтобы не мучиться с редактированием ресурсов. Поскольку мне в лс пришло сообщение, где плагин сыпет ошибками перевода прямо из коробки, я посчитал полезным более подробно показать все нюансы установки и настройки, чтобы при появлении новых модулей более не касаться файлов перевода и конфигов ядра, а у пользователя не составляло труда добавить нужный функционал.
В статье я по шагам буду настраивать конфиги плагина, касаясь файлов перевода.
Для начала скачаем все необходимые модули:
В целом, пока можем уйти из основного конфига плагина. Опционально можем сразу добавить в него команды, используемые модулями, например, отвечающие за выдачу рпг валюты
Модуль плагина - [Ice RPG] Admin Commands
Плагин добавляет команды, работающие из консоли сервера или клиента с полными правами: rpg_help - выводит список всех доступных команд rpg_equip_list - выводит список всей экипировки, содержащей id и имена rpg_res_list - выводит список всех...
hlmod.net
Модуль плагина - [Ice RPG] Cases / Кейсы
Плагин позволяет создавать используемые расходные предметы, представляющие собой кейсы с рпг наградами: 1. Предметы экипировки 2. Расходники 3. Валюта 4. Уровни 5. Опыт "items" { "step_count" "32" //кол-во шагов при розыгрыше (мин. 5)...
hlmod.net
Модуль плагина - [Ice RPG] Stat - HP
Плагин добавляет возможность использования характеристики HP / здоровье. Идентификатор для добавления в предметы/расходники: hp При добавлении статов важно настроить все конфиги и файлы перевода. Добавить в ice_rpg_core.ini Добавить в...
hlmod.net
Модуль плагина - [Ice RPG] Base Damage Stats
Плагин добавляет 9 основных статов, влияющих на расчет урона. (Если какой-либо из статов не нужен, можете не устанавливать его в конфигах ice_rpg или вырезать из исходника.) 1. Точность - понижает вероятность промахнуться по противнику ( "acc")...
hlmod.net
Модуль плагина - [Ice RPG] Money Giver
Плагин выдает валюту RPG при событиях убийства и конца раунда Настройка осуществляется в конфиг файле ядра, в который необходимо добавить следующие строки: "money_for_kill_chat" "1" //писать ли в чат при получении валюты за убийства...
hlmod.net
Модуль плагина - [Ice RPG] Delete Items
Плагин добавляет возможность игрокам удалять ненужную экипировку, поскольку максимальный размер инвентаря так или иначе ограничен В файл перевода ядра translations/ice_rpg/core.phrases.txt необходимо добавить: "del_item_module" { "ru"...
hlmod.net
Модуль плагина - [Ice RPG] Heal / Лечение (Медик)
Плагин добавляет возможность создавать предметы, которые будут восстанавливать здоровье при использовании Категория: heal "337" { "name" "small_heal_potion" //название предмета в файле перевода "description"...
hlmod.net
Модуль плагина - [Ice RPG] Fix Prices / Покупка по фикс. ценам
Плагин позволяет покупать расходные предметы (ресурсы) по указанным в конфиге ценам за валюту RPG В меню "библиотека предметов", выбрав нужный ресурс, появляется пункт покупки "buy_fix_price" { "ru" "Купить по фикс. цене" "en"...
hlmod.net
В модулях статов я указал, какая характеристика какое обозначение имеет (например "agi" - уворот, и так далее..)
В ice_rpg_core.ini мы находим 2 секции:
"stats_use_descriptions" - тут содержатся настройки описания статов (когда игрок нажимает на нужный стат, ему показывается дополнительная информация)
"stats_translate_mode" - тут указывается, будет ли указано значение стата (например, Защита: 2.5 - такое отображение будет при параметре 1. БанниХоп, Эффекты при выстрелах - так будет выглядеть стат при параметре 0. Это нужно для того, чтобы можно было добавлять статы, работающие просто при наличии у игрока).
Теперь, необходимо добавить статы в файлы перевода:
Поскольку выше мы указали, что все статы будут иметь описание, давайте добавим его
Формирование названия фразы работает по принципу: {stat}_description
По желанию можем указать максимальные значения статов, которые может разогнать себе игрок:
На этот моменте настройки статов закончены, и мы можем использовать их в предметах. При добавлении новых статов необходимо уделить пару минут на действия, проделанные выше.
В ice_rpg_core.ini мы находим 2 секции:
"stats_use_descriptions" - тут содержатся настройки описания статов (когда игрок нажимает на нужный стат, ему показывается дополнительная информация)
"stats_translate_mode" - тут указывается, будет ли указано значение стата (например, Защита: 2.5 - такое отображение будет при параметре 1. БанниХоп, Эффекты при выстрелах - так будет выглядеть стат при параметре 0. Это нужно для того, чтобы можно было добавлять статы, работающие просто при наличии у игрока).
Добавим все имеющиеся статы на момент написания статьи:
"stats_use_descriptions" //имеет ли стат описание? (если 1, необходимо добавить его в stats_descriptions.phrases)
{
"hp" "1"
"def" "1"
"dmg" "1"
"crdmg" "1"
"acc" "1"
"agi" "1"
"defig" "1"
"crch" "1"
"acrch" "1"
"acrdmg" "1"
}
"stats_translate_mode" //отображается ли значение, например "защита 2.5" (указать 1), или будет просто "защита" (указать 0)? (необходимо корректно настроить stats.phrases)
{
"hp" "1"
"def" "1"
"dmg" "1"
"crdmg" "1"
"acc" "1"
"agi" "1"
"defig" "1"
"crch" "1"
"acrch" "1"
"acrdmg" "1"
}
Теперь, необходимо добавить статы в файлы перевода:
stats.phrases.txt:
"Phrases"
{
"def"
{
"#format" "{1:s}"
"ru" "Защита: +{1}%"
"en" "Defence: +{1}%"
}
"dmg"
{
"#format" "{1:s}"
"ru" "Урон: +{1}%"
"en" "Damage: +{1}%"
}
"hp"
{
"#format" "{1:s}"
"ru" "Здоровье: +{1}"
"en" "HP: +{1}"
}
"crdmg"
{
"#format" "{1:s}"
"ru" "Крит. урон: +{1}%"
"en" "Crit. damage: +{1}%"
}
"acc"
{
"#format" "{1:s}"
"ru" "Точность: {1}%"
"en" "Accuracy: {1}%"
}
"agi"
{
"#format" "{1:s}"
"ru" "Уворот: {1}%"
"en" "Agility: {1}%"
}
"defig"
{
"#format" "{1:s}"
"ru" "Игнор защиты: {1}%"
"en" "Defence Ignore: {1}%"
}
"crch"
{
"#format" "{1:s}"
"ru" "Крит. шанс: {1}%"
"en" "Crit. chance: +{1}%"
}
"acrch"
{
"#format" "{1:s}"
"ru" "Анти крит. шанс: {1}%"
"en" "Anti crit. chance: {1}%"
}
"acrdmg"
{
"#format" "{1:s}"
"ru" "Анти крит. урон: {1}%"
"en" "Anti crit. damage: {1}%"
}
}
Поскольку выше мы указали, что все статы будут иметь описание, давайте добавим его
Формирование названия фразы работает по принципу: {stat}_description
stats_descriptions.phrases.txt:
"Phrases"
{
"def_description"
{
"ru" "Понижает получаемый урон"
"en" "Reduces damage taken"
}
"dmg_description"
{
"ru" "Повышает наносимый урон"
"en" "Increases damage dealt"
}
"hp_description"
{
"ru" "Повышает максимальное количество HP"
"en" "Increases maximum HP"
}
"crdmg_description"
{
"ru" "Увеличивает урон при критическом попадании"
"en" "Increases damage on a critical hit"
}
"acc_description"
{
"ru" "Повышает вероятность попадания по противнику"
"en" "Increases the chance of hitting an enemy"
}
"agi_description"
{
"ru" "Повышает вероятность увернуться от атаки противника"
"en" "Increases the chance to dodge enemy attacks"
}
"defig_description"
{
"ru" "Позволяет игнорировать защиту противника при нанесении урона"
"en" "Allows you to ignore enemy defense when dealing damage"
}
"crch_description"
{
"ru" "Увеличивает шанс критического попадания"
"en" "Increases critical hit chance"
}
"acrch_description"
{
"ru" "Понижает шанс критического попадания по вам"
"en" "Reduces your chance of a critical hit."
}
"acrdmg_description"
{
"ru" "Понижает урон при критическом попадании по вам"
"en" "Reduces damage taken from critical hits on you."
}
}
По желанию можем указать максимальные значения статов, которые может разогнать себе игрок:
C-подобный:
"stats_limit" //макс. значения статов
{
"0"
{
"def" "70"
"hp" "45"
}
}
На этот моменте настройки статов закончены, и мы можем использовать их в предметах. При добавлении новых статов необходимо уделить пару минут на действия, проделанные выше.
Мы всё еще находимся в основном конфиге плагина. Давайте добавим группы, по которым будет разбита вся экипировка.
Обязательно добавим наши группы в item_types.phrases.txt
Делаем задел для будущего шмота:
"item_categories" //можно менять местами, добавлять, удалять, не забывая про файл перевода
{
//ид категории название категории
"1" "head" //голова
"2" "upper" //куртка
"3" "lower" //штаны
"4" "hands" //перчатки
"5" "boots" //ботинки
"6" "amulet" //амулет
"7" "ring" //кольцо
//"8" "sword"
//"9" "wings"
}
Обязательно добавим наши группы в item_types.phrases.txt
...:
"Phrases"
{
"head"
{
"ru" "Голова"
"en" "Head"
}
"upper"
{
"ru" "Торс"
"en" "Body"
}
"lower"
{
"ru" "Ноги"
"en" "Legs"
}
"hands"
{
"ru" "Руки"
"en" "Hands"
}
"boots"
{
"ru" "Обувь"
"en" "Boots"
}
"amulet"
{
"ru" "Амулет"
"en" "Amulet"
}
"ring"
{
"ru" "Кольцо"
"en" "Ring"
}
"sword"
{
"ru" "Меч"
"en" "Sword"
}
"wings"
{
"ru" "Крылья"
"en" "Wings"
}
}
В целом, пока можем уйти из основного конфига плагина. Опционально можем сразу добавить в него команды, используемые модулями, например, отвечающие за выдачу рпг валюты
Настроим выдачу рпг валюты и количество покупаемых по фикс. ценам ресурсов:
"money_for_kill_chat" "1" //писать ли в чат при получении валюты за убийства
"money_for_round_chat" "1" //писать ли в чат при получении валюты за конец раунда
"money_for_kill" "15" //валюта за убийство
"money_for_kill_hs" "10" //доп. валюта за убийство в голову
"money_round_end" "15" //валюта за конец раунда
"money_round_win" "10" //доп. валюта за победу в раунде
"fix_price_positions" "1,2,5,10" //пункты с количеством в меню покупки по фикс ценам
Начинаем создавать предметы экипировки и расходники
Выше мы определились с тем, какие группы предметов у нас будут.
Создадим первый предмет:
Ид предмета (в нашем случае 91 должен быть уникальным). Именно это число будет храниться в базе, именно оно будет фигурировать при любых взаимодействиях с предметом.
Категория ("category") - группа предмета. Выше мы указали, что группа 1 - head, то есть голова/шлем
Название предмета должно как-то показываться игроку, для этого укажем фразу перевода с названием и добавим его в equipment.phrases.txt
Класс редкости предмета используется при настройке шансов улучшения в конфиге ядра.
Раз выше мы не создали классы, давайте добавим нужный класс редкости предмета в конфиг ядра и файл перевода
Описание. Для красоты и атмосферы давайте укажем описание предмета (это по желанию..)
"description" "91_descr" - укажем фразу, содержащую описание
"detal_description" - параметр с подробным описанием, на стадии разработки, можем его не касаться
"avaliable_upgrades" - Совместимые с предметом улучшения. Этот параметр отвечает за то, улучшение с каким статом может вставить в предмет игрок. Например, если это строка не содержит "hp", игрок не сможет улучшить данную шмотку никаким улучшением, влияющим на увеличение здоровья.
Перейдем к статам, которые будут в каждом предмете данного айди, то есть базовым статам предмета
Настроим получение предмета при убийстве (дроп). Думаю, что оставил достаточно подробные комментарии, не вижу необходимости расписывать всё.
Чуть подробнее лишь коснусь параметров max_lvl_attacker и min_lvl_target. Они предназначены для двух целей:
1. max_lvl_attacker - Чтобы прокаченным игрокам не выпадали неактуальные шмотки (например, инвентарь игрока 50 уровня не забивался мусорными для него предметами 5 уровня).
2. min_lvl_target - Чтобы за убийство игроков низкого уровня топовому игроку не давались никакие шмотки. Это может побудить топовых игроков заходить друг против друга, чтобы получать дроп. Иными словами, небольшое движение в сторону баланса.
По итогу наш созданный предмет выглядит так:
Создадим первый предмет:
Лёгкий шлем новичка:
"91" //ид предмета
{
"category" "1" //категория
"level" "1" //требуемый уровень
"item_name" "lite_newbie_head" //название предмета (фраза в файле перевода)
"rarity_class" "basic" //класс редкости предмета
"description" "91_descr" //краткое описание (фраза в файле перевода)
"detal_description" "" //детальное описание отдельным пунктом, если пусто - не появится
"avaliable_upgrades" "dmg,def,hp,hp_reg,agi" //улучшения, совместимые с данным предметом
}
Ид предмета (в нашем случае 91 должен быть уникальным). Именно это число будет храниться в базе, именно оно будет фигурировать при любых взаимодействиях с предметом.
Категория ("category") - группа предмета. Выше мы указали, что группа 1 - head, то есть голова/шлем
Название предмета должно как-то показываться игроку, для этого укажем фразу перевода с названием и добавим его в equipment.phrases.txt
equipment.phrases.txt:
"lite_newbie_head"
{
"ru" "Лёгкий шлем новичка"
"en" "Light beginner's helmet"
}
Раз выше мы не создали классы, давайте добавим нужный класс редкости предмета в конфиг ядра и файл перевода
core.phrases.txt:
"basic"
{
"ru" "Обыкновенный"
"en" "Basic"
}
"strong"
{
"ru" "Усиленный"
"en" "Strong"
}
"powerful"
{
"ru" "Необычайно сильный"
"en" "Powerful"
}
"relict"
{
"ru" "Реликвия"
"en" "Relic"
}
"description" "91_descr" - укажем фразу, содержащую описание
Добавим ее в descriptions.phrases.txt:
"91_descr"
{
"ru" "Ничем не примечательный шлем"
"en" "An unremarkable helmet"
}
"detal_description" - параметр с подробным описанием, на стадии разработки, можем его не касаться
"avaliable_upgrades" - Совместимые с предметом улучшения. Этот параметр отвечает за то, улучшение с каким статом может вставить в предмет игрок. Например, если это строка не содержит "hp", игрок не сможет улучшить данную шмотку никаким улучшением, влияющим на увеличение здоровья.
Перейдем к статам, которые будут в каждом предмете данного айди, то есть базовым статам предмета
Укажем их в секции stats:
"stats" //основные свойства предмета
{
"dmg" "1.5" // +1.5% урона
"def" "0.7" // +0.7% зашиты
}
Настроим получение предмета при убийстве (дроп). Думаю, что оставил достаточно подробные комментарии, не вижу необходимости расписывать всё.
Чуть подробнее лишь коснусь параметров max_lvl_attacker и min_lvl_target. Они предназначены для двух целей:
1. max_lvl_attacker - Чтобы прокаченным игрокам не выпадали неактуальные шмотки (например, инвентарь игрока 50 уровня не забивался мусорными для него предметами 5 уровня).
2. min_lvl_target - Чтобы за убийство игроков низкого уровня топовому игроку не давались никакие шмотки. Это может побудить топовых игроков заходить друг против друга, чтобы получать дроп. Иными словами, небольшое движение в сторону баланса.
C-подобный:
"drop"
{
"drop_chance" "5" //шанс дропа при убийстве противника
"max_lvl_attacker" "5" //уровень, до которого игроку может выпасть предмет при убийстве
"min_lvl_target" "1" //мин. уровень жертвы, за убийство которой может выпасть предмет
//в данном примере шанс дропа предмета со свойствами при убийстве не 10%, а 10% от 5%, то есть 10% из общего числа выпавших предметов данного вида
"ability_chance" "10" //шанс того, что дропнувшийся предмет будет с доп. св-вами
//работает по схеме: прокает шанс, получается одно св-во, для второго свойства должен по новой прокнуть этот шанс
"max_abilities" "2" //максимум возможных доп. свойств
//дополнительное свойство предмета (пример записи: vamp:1-5,crdmg:2-4 - вампиризм от 1 до 5, крит урон от 2 до 4)
"abilities" "vamp:1-2,crdmg:1-2" //рандом из доступных в данной строке вариантов (можно float, 1 цифра после запятой)
"min_upgrades" "0" //минимальное кол-во слотов для улучшений
"max_upgrades" "4" //максимальное кол-во слотов для улучшений
"time" "0" //на какое время предмет (0 - навсегда)
}
По итогу наш созданный предмет выглядит так:
Итем:
"91" //ид предмета
{
"category" "1" //категория
"level" "1" //требуемый уровень
"item_name" "lite_newbie_head" //название предмета (фраза в файле перевода)
"rarity_class" "basic" //класс редкости предмета
"description" "91_descr" //краткое описание (фраза в файле перевода)
"detal_description" "" //детальное описание отдельным пунктом, если пусто - не появится
"avaliable_upgrades" "dmg,def,hp,hp_reg,vamp,agi" //улучшения, совместимые с данным предметом
"stats" //основные свойства предмета
{
"dmg" "1.5" // +1.5% урона
"def" "0.7" // +0.7% зашиты
}
"drop"
{
"drop_chance" "5" //шанс дропа при убийстве противника
"max_lvl_attacker" "5" //уровень, до которого игроку может выпасть предмет при убийстве
"min_lvl_target" "1" //мин. уровень жертвы, за убийство которой может выпасть предмет
//в данном примере шанс дропа предмета со свойствами при убийстве не 10%, а 10% от 5%, то есть 10% из общего числа выпавших предметов данного вида
"ability_chance" "10" //шанс того, что дропнувшийся предмет будет с доп. св-вами
//работает по схеме: прокает шанс, получается одно св-во, для второго свойства должен по новой прокнуть этот шанс
"max_abilities" "2" //максимум возможных доп. свойств
//дополнительное свойство предмета (пример записи: vamp:1-5,crdmg:2-4 - вампиризм от 1 до 5, крит урон от 2 до 4)
"abilities" "vamp:1-2,crdmg:1-2" //рандом из доступных в данной строке вариантов (можно float, 1 цифра после запятой)
"min_upgrades" "0" //минимальное кол-во слотов для улучшений
"max_upgrades" "4" //максимальное кол-во слотов для улучшений
"time" "0" //на какое время предмет (0 - навсегда)
}
}
Для начала, определимся с группами наших расходников, по которым они, в том числе, будет отсортированы во всех меню.
Вы можете создать сколько угодно (в пределах разумного!) категорий и размещать предметы в них как душе угодно, однако, должны создать минимум 3:
1. Категория, в которой находятся предметы улучшения экипировки
2. Категория, в которой находятся предметы, увеличивающие шансы на удачное улучшение (дрогоценности)
3. Категория, в которой будут все остальные предметы (поскольку не должно быть предметов без категория)Оффтоп
В примере я добавил 4 категории: улучшения, драгоценности, кейсы, прочие. Мог бы добавить категорию с лечилками или иными зельями, но заленился.
Как таковые, категории создаются в ice_rpg_resources, но улучшения и драгоценности обязательно добавить в конфиг ядра
Также обязательно добавим созданные нами категории в файл перевода
Создадим предмет улучшения экипировки:
Мы создали предмет, добавляющий 1.5% защиты при его вставке в снаряжение.
Поскольку задали имя base_defense_stone, обязательно добавим его в файл перевода
Также параметром description мы указали, что у предмета есть описание
Давайте добавим его. Принцип формирования фразы отличный от предметов экипировки и такой же, как у статов (сам не знаю, почему я так сделал, но можно принять это)
По аналогии добавим один кейс и одну лечилку в соответствующие категории
Не забываем указать имена предметов и их описания в файлах перевода!
Можно заметить, что у созданного кейса нет секции "drop", однако, мы можем спокойно ее добавить, указав шансы.
Шансы дропа работают следующим образом:
Складываются шансы дропа всех предметов (допустим, сумма получилась 250)
Если у предмета small_heal_potion шанс указан 10, то он может выпасть с вероятностью 10/250.
В конфиге ядра можно более детально настроить шансы дропа и количество одновременно получаемых предметов.
Вы можете создать сколько угодно (в пределах разумного!) категорий и размещать предметы в них как душе угодно, однако, должны создать минимум 3:
1. Категория, в которой находятся предметы улучшения экипировки
2. Категория, в которой находятся предметы, увеличивающие шансы на удачное улучшение (дрогоценности)
3. Категория, в которой будут все остальные предметы (поскольку не должно быть предметов без категория)Оффтоп
В примере я добавил 4 категории: улучшения, драгоценности, кейсы, прочие. Мог бы добавить категорию с лечилками или иными зельями, но заленился.
Как таковые, категории создаются в ice_rpg_resources, но улучшения и драгоценности обязательно добавить в конфиг ядра
ice_rpg_core.ini:
"upgrades_category" "upgrades" //название категории, в которой содержатся ресурсы улучшения экипировки (должно совпадать с ice_rpg_resources.ini)
"jewels_category" "jewels" //название категории, в которой содержатся драгоценные камни. Если отсутствует строка или значение, режим шансов и драгоценностей при улучшении будет отключен.
Также обязательно добавим созданные нами категории в файл перевода
resources.phrases.txt:
"upgrades"
{
"ru" "Улучшения экипировки"
"en" "Equipment upgrades"
}
"jewels"
{
"ru" "Драгоценности"
"en" "Jewels"
}
"res_other"
{
"ru" "Прочие"
"en" "Other"
}
"cases_resources"
{
"ru" "Кейсы"
"en" "Cases"
}
Создадим предмет улучшения экипировки:
ice_rpg_resources.ini:
"upgrades"
{
"1" //id
{
"name" "base_defense_stone"
"description" "1"
"stats"
{
"def" "1.5"
}
"drop"
{
"drop_chance" "7"
}
}
}
Поскольку задали имя base_defense_stone, обязательно добавим его в файл перевода
resources.phrases.txt:
"base_defense_stone"
{
"ru" "Обычный защитный камень"
"en" "Base defense stone"
}
Также параметром description мы указали, что у предмета есть описание
Давайте добавим его. Принцип формирования фразы отличный от предметов экипировки и такой же, как у статов (сам не знаю, почему я так сделал, но можно принять это)
resources_descriptions.phrases.txt - добавим _description в имя предмета:
"base_defense_stone_description"
{
"ru" "Обычное улучшение экипировки, повышающее защиту"
"en" "Basic equipment upgrade to increase defence"
}
По аналогии добавим один кейс и одну лечилку в соответствующие категории
В категорию "cases_resources":
"25"
{
"name" "beginner_case"
"usability" "1" //ресурс можно использовать
"usability_group" "63" //номер группы используемых предметов (0-63)
"usability_cooldown" "-1" //кулдаун, в который уйдёт вся группа (-1 - отключить кулдаун, например если при использовании открывается другое меню)
"usability_category" "case" //категория (или несколько через ";", максимум 8) используемого предмета (указывается в модуле)
"usability_item_take" "0" //использование ресурса тратит его количество в инвентаре игрока?
}
В категорию res_other:
"337"
{
"name" "small_heal_potion" //название предмета в файле перевода
"description" "0" //можете выставить 1 и указать описание
"usability" "1"
"usability_group" "10" //группа, предметы в которой уйдут в кулдаун вместе с текущим предметом
"usability_cooldown" "25" //кулдаун
"usability_item_take" "1" //забрать предмет при использовании
"usability_category" "heal" //категория предметов лечения
"step_count" "5" //количество "шагов" лечения
"hp_by_step" "2" //восстанавливаемое хп за шаг
"step_interval" "0.5" //интервал между шагами (не меньше 0.1 и не больше 60.0)
"fix_price" "150"
"drop"
{
"drop_chance" "10"
}
}
Можно заметить, что у созданного кейса нет секции "drop", однако, мы можем спокойно ее добавить, указав шансы.
Шансы дропа работают следующим образом:
Складываются шансы дропа всех предметов (допустим, сумма получилась 250)
Если у предмета small_heal_potion шанс указан 10, то он может выпасть с вероятностью 10/250.
В конфиге ядра можно более детально настроить шансы дропа и количество одновременно получаемых предметов.
Будет дополняться...