Как работать с баффером и делать Премиум баффы

Data Location:
NPC id по умолчанию - 40010
Диалоги- gameserver\data\html-en\mods\buffer
XML схема с баффами, уровнями, наборами и стоимостью - gameserver\data\buff_templates.xml

Теперь рассмотрим сам buff_templates.xml формат:

Пример:

Code:
<template menuId="200" target="BUFF_PLAYER">
<consume>
<item id="57" amount="200000" />
</consume>
<produce>
<skill id="1068" level="3" />
<skill id="1040" level="3" />
<skill id="1086" level="2" />
<skill id="1204" level="2" />
<skill id="1077" level="3" />
<skill id="1242" level="2" />
<skill id="1268" level="4" />
</produce>
</template>

menuId - ID on which we address a buffer
target - whom buff, BUFF_PLAYER or BUFF_PET
consume - id and quantity of items.
produce - here is stored buff or schemes of buffs.
Example:
Code:
<consume>
<item id="57" amount="200000" /> снимаем 200000 adena
<item id="4037" amount="0" /> для премиума при 0 просто проверяем наличие предмета в инвентаре
</consume>
Если мы хотим снимать предметы от определенного уровня то:
Code:
<consume>
<item id="57" amount="200000" from_level="20"/> Таким образом чар до 20того будет баффатся бесплатно
</consume>
Если мы хотим баффать сет чарам с минимальным уровнем к примеру от 51:
Code:
<template menuId="126" target="BUFF_PLAYER" minLevel="51">
    <consume>
        <item id="57" amount="200000" />
    </consume>
    <produce>
        <skill id="1068" level="3" />
        <skill id="1040" level="3" />
        <skill id="1086" level="2" />
    </produce>
</template>

Так же вы можете использовать несколько предметов в листе из которых будет вбираться первый из существующих в инвентаре - удобно для премиум аккаунтов с разной длительностью.
Пример:
Code:
  <consume anyFirst="true">
  <item id="6673" amount="0" />
  <item id="4037" amount="0" />
  </consume>

Проверка на наличие премиум аккаунта у игрока:
Code:
<template menuId="124" target="BUFF_PLAYER">
    <consume>
        <item id="57" amount="600000" is_premium_required="true"/>
    </consume>
    <produce>
        <skill id="1068" level="3" />
        <skill id="1040" level="3" />
        <skill id="1086" level="2" />
        <skill id="1204" level="2" />
        <skill id="1077" level="3" />
        <skill id="1242" level="2" />
        <skill id="1268" level="4" />
    </produce>
</template>

produce - здесь указываются сами баффы и их уровни
Example:
Code:
<produce>
<skill id="1068" level="1" />
</produce>

Множество баффов

Code:
<produce>
<skill id="1068" level="3" />
<skill id="1040" level="3" />
<skill id="1086" level="2" />
<skill id="1204" level="2" />
<skill id="1077" level="3" />
<skill id="1242" level="2" />
<skill id="1268" level="4" />
</produce>

Пример для добавления в XML и диалога:

2. Кнопка, с которой мы добавляем диалог
<a action="bypass -h scripts_services.Buffer:act ask=200&reply=1">Fighter 1 lvl</a>

Теперь подробно:
ask=200 - Это menuId к Баффу с XML или сету баффов
&reply=1 - на какую страничку будет возврат. В нашем случаи будет возвращено на 1.htm
_____________________________________________________________
<template menuId="200" target="BUFF_PLAYER">
<consume>
<item id="57" amount="200000" />
</consume>
<produce>
<skill id="1068" level="3" />
<skill id="1040" level="3" />
<skill id="1086" level="2" />
<skill id="1204" level="2" />
<skill id="1077" level="3" />
<skill id="1242" level="2" />
<skill id="1268" level="4" />
</produce>
</template>
 
Last edited:
Это реально без вмешательство в код?
Вопрос задавай корректно. Ты хочешь чтобы сами игроки могли могли создавая профили присваивали им названия? То это не реально из коробки.
 
Подскажите. В баффере есть сонг 305 1 Song of Vengeance в нем код, но код не правильный (ГГ ругает и не баффает) какой верный?

<tr>
<td valign=top><img src=icon.skill0267 width=32 height=32 align=left></td>
<td><a action="bypass -h scripts_services.Buffer:act ask=99924&reply=3">Vengeance</a></td>
<td> - (+) Reflect P.Dam</td>
</tr>
99924 нет
 
Подскажите. В баффере есть сонг 305 1 Song of Vengeance в нем код, но код не правильный (ГГ ругает и не баффает) какой верный?

<tr>
<td valign=top><img src=icon.skill0267 width=32 height=32 align=left></td>
<td><a action="bypass -h scripts_services.Buffer:act ask=99924&reply=3">Vengeance</a></td>
<td> - (+) Reflect P.Dam</td>
</tr>
99924 нет
Не совсем понятно, что ты делаешь
 
Не совсем понятно, что ты делаешь
Это баффер. просто строку добавил сонга (точнее она была) и она не работает....
вот код следующего сонга
<tr>
<td valign=top><img src=icon.skill0267 width=32 height=32 align=left></td>
<td><a action="bypass -h scripts_services.Buffer:act ask=71&reply=3">Warding</a></td>
<td> - (+) m.Def</td>
</tr>
следующий 71, но если ставить 70 - это магнус
 
Это баффер. просто строку добавил сонга (точнее она была) и она не работает....
вот код следующего сонга
<tr>
<td valign=top><img src=icon.skill0267 width=32 height=32 align=left></td>
<td><a action="bypass -h scripts_services.Buffer:act ask=71&reply=3">Warding</a></td>
<td> - (+) m.Def</td>
</tr>
следующий 71, но если ставить 70 - это магнус
Сборка ит?
 
Прочитай пожалуйста внимательно этот мануал

 
Прочитай пожалуйста внимательно этот мануал

Спасибо) но лучше бы просто сказали 81
 
Back
Top