Открывающиеся сундуки и их опции

Путь: gameserver/data/capsule_items.xml

1. Структура файла capsule_items.xml
XML:
<?xml version="1.0" encoding="UTF-8"?>
<list>
    <!-- Пример 1: Обычная коробка с равными шансами -->
    <capsule itemId="22000" consume="true">
        <item id="22006" min="3" max="3" chance="20.55555" />
        <item id="22007" min="2" max="2" chance="14.01515" />
        <item id="22008" min="1" max="1" chance="6.16666" />
        <!-- ... остальные предметы ... -->
        <item id="22025" min="5" max="5" chance="12.77777" />
    </capsule>

    <!-- Пример 2: Премиум-версия той же коробки -->
    <capsule itemId="22001">
        <item id="22007" min="3" max="3" chance="27.27272" />
        <item id="22008" min="2" max="2" chance="9" />
        <!-- ... -->
        <!-- Премиум-награды (работают только у игроков с Premium/PA) -->
        <premium_item id="8749" min="1" max="1" chance="15" />
        <premium_item id="8750" min="1" max="1" chance="15" />
    </capsule>

    <!-- Пример 3: Требуется предмет для открытия -->
    <capsule itemId="9599" requiredItemId="9600" requiredItemAmount="1">
        <item id="9600" min="1" max="2" chance="4" />
        <item id="9601" min="1" max="2" chance="10" />
        <item id="9602" min="1" max="1" chance="1" />
    </capsule>

    <!-- Пример 4: Зачарованные предметы -->
    <capsule itemId="21799">
        <item id="21793" min="1" max="1" enchant_min="0" enchant_max="0" chance="100" />
        <item id="21794" min="1" max="1" enchant_min="0" enchant_max="0" chance="100" />
        <!-- все предметы из сета -->
    </capsule>
</list>

2) Полный список атрибутов
Для тега <capsule>:
  • itemId - ID капсулы (обязательно)
  • requiredItemId- ID предмета, который требуется для открытия (0 = не требуется)
  • requiredItemAmount - количество требуемого предмета
  • consume="true|false"- удалять ли саму капсулу после использования (по умолчанию true)

Для тегов <item> и <premium_item>:
  • id - ID награды
  • min / max - количество (если min=max - фиксированное)
  • chance - шанс в процентах с точностью до 5 знаков после запятой (сумма ≤ 100.00)
  • enchant_min / enchant_max - зачарование (если min=max - фиксированное, иначе рандом в диапазоне)
Важно:
  • Из списка <item> и <premium_item> одновременно выпадает только ОДИН предмет (или ничего, если сумма шансов < 100%).
  • Все предметы с chance="100" выпадают всегда (фиксированные награды).
  • Премиум-награды работают только у игроков с активным Premium Account.

3) Как добавить новую коробку
  1. Открой gameserver/data/capsule_items.xml
  2. Добавь новый блок <capsule itemId="ТВОЙ_ID">
  3. Заполни <item> и при желании <premium_item>
  4. Сохрани файл
  5. Перезагрузить сервер
 
Last edited:
А нет фичи что бы при нажатии например 2 раза ПКМ открывалась вся стопка сундуков? Про команду .openbox в курсе.
 
Это
А нет фичи что бы при нажатии например 2 раза ПКМ открывалась вся стопка сундуков? Про команду .openbox в курсе.
интерфейс фичи уже
 
тут больше не к интерфейсу вопрос, а что бы фильтр пакетов не обосрался
Если бомбить сервер пакетом UseItem то фильтр оборвет этот экшен, на дабл клик можно вообще поплыть башкой и придумать какой-то кастом из серии вызвать HTML и в нем указывать кол во открытия.
Но я таким не буду заниматься, можете вешаться на листенер и пилить самостоятельно
 
Подскажите пожалуйста, возможно кто сталкивался.
Нужна реализация для такой задумки
Есть коробка - стартовая. Для всех расс одна и та же.
При открытии коробки открывалось диалоговое окно с выбором того или инного итема из списка представленном в сундуке. После получения итема - сундук пропадает.

То есть это не шансовая коробка, а именно с возможностью выбора игроком того или инного итема, к примеру - магу нужен посох или блант, и вот пусть сам выбирает что он хочет юзать.
 
Подскажите пожалуйста, возможно кто сталкивался.
Нужна реализация для такой задумки
Есть коробка - стартовая. Для всех расс одна и та же.
При открытии коробки открывалось диалоговое окно с выбором того или инного итема из списка представленном в сундуке. После получения итема - сундук пропадает.

То есть это не шансовая коробка, а именно с возможностью выбора игроком того или инного итема, к примеру - магу нужен посох или блант, и вот пусть сам выбирает что он хочет юзать.
Механика похожа на эвент l2Day, Может из него что получится сделать
Но куда проще это сделать через мультиселы
 
Механика похожа на эвент l2Day, Может из него что получится сделать
Но куда проще это сделать через мультиселы
да хотелось сделать так, что бы в город даже не ломились за шмотками, а прям в стартовых локах по этапу шли и одевались.
 
да хотелось сделать так, что бы в город даже не ломились за шмотками, а прям в стартовых локах по этапу шли и одевались.
Тогда мультисел в комьюнити борде
 
Обновил гайд, добавился лист для премиум игроков. Описание вложил нового механизма
 
Если установить потребляемый предмет и тот что открывается с одним id, то при недостаче потребляемых они просто исчезнут, вместо того что бы написать что их не хватает.
 
Если установить потребляемый предмет и тот что открывается с одним id, то при недостаче потребляемых они просто исчезнут, вместо того что бы написать что их не хватает.
Ничего более нелогично и иррационального я никогда не слышал… Просто не делай так и все.
 
Ничего более нелогично и иррационального я никогда не слышал… Просто не делай так и все.
Сделал это как альтернативную систему крафта :) Ладно, перешёл на мультиселлы, но идея хорошая.
 
Подскажите пожалуйста, возможно кто сталкивался.
Нужна реализация для такой задумки
Есть коробка - стартовая. Для всех расс одна и та же.
При открытии коробки открывалось диалоговое окно с выбором того или инного итема из списка представленном в сундуке. После получения итема - сундук пропадает.

То есть это не шансовая коробка, а именно с возможностью выбора игроком того или инного итема, к примеру - магу нужен посох или блант, и вот пусть сам выбирает что он хочет юзать.
ну можно через jar вообще забахать атво определение класса игрока и предоставлять ему предметы согласно его классу из этой коробки.
 
Если установить потребляемый предмет и тот что открывается с одним id, то при недостаче потребляемых они просто исчезнут, вместо того что бы написать что их не хватает.
Что за ересь ты написал)
1-1=0, суть уловил?
 
Back
Top