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

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:
Добавлял локации? Что нужно, в клиенте текстуры, и гео в дп, что то ещё?
Странный вопрос в теме баффера)))
Я обычно качал и кидал что было. Но по хорошему так и надо
 
Странный вопрос в теме баффера)))
Я обычно качал и кидал что было. Но по хорошему так и надо
Ну Мало ли секретики есть. Разобрался уже )) спасибо
 
Почему если бафф стоит 500 адены, а у тебя в инвентаре 499 и меньше, то адена взимается? (но бафф не дается)
 
Доброго времени суток. Есть способ реализовать авто баф пета, тем же бафом, что и хозяина? (что на себя набафал, то и слуге досталось) Если такое возможно, поделитесь
Получилось у кого нибудь?
 
Получилось у кого нибудь?
это к дизу, ядро по всей видимости. Сделай через костыль )))) собери фул баф набор для пета и выведи кнопку и всё ))
 
Ит и классик походу, бафер хорош… интересно без писания скрипта можно ли такое сделать
 
Подскажите в клиенте есть бафы типа "Wind Walk for Beginners" их длительность 1 час от нубо бафера. а как добавить в нубо бафера любой другой баф что-бы его длительность была 1 час ? Может есть у кого то ид всех Beginners баффов?
 
Подскажите в клиенте есть бафы типа "Wind Walk for Beginners" их длительность 1 час от нубо бафера. а как добавить в нубо бафера любой другой баф что-бы его длительность была 1 час ? Может есть у кого то ид всех Beginners баффов?

/data/newbie_buffs ты это ищешь?
 
Видимо, я недостаточно подробно написал. Именно этот файл я и редактирую. Изменения в остальных находящихся в нем template'ах применяются. А вот если значение menuId отрицательное, то нет.
Итого Cleanse баффы решили?
 
Last edited:
Можно ли делать у диалоге баффера одновременно Heal и Cleanse? ======> ("bypass -h scripts_services.Buffer:act ask=-3")
 
Есть вопрос. Сборка ИЛ
Настроил вот так:
в services строка
# Время баффов от НПЦ меняется в altsettings.properties - AltNpcBufferEffectTime
AllowSpawnBuffer = True

заходим в altsettings
################## Настройка баффера #####################
# Увелечение время баффов от баффера
# Пример : 3600 ( 1 час + базовое время)
AltNpcBufferEffectTime = 0
# Множитель времени для баффов при наличии Премиум Аккаунта (AltNpcBufferEffectTime * AltNpcPremiumBufferEffectMul)
# Пример : AltNpcPremiumBufferEffectMul = 1.2 +20% к времени AltNpcBufferEffectTime для Премиум Аккаунта
AltNpcPremiumBufferEffectMul = 3.

И результат 0. От баффера что с ПА, что без него время 20 мин
 
Спасибо) но лучше бы просто сказали 81
Кстати, до сих пор на сборке не верный id или байпас... как правильно сказать и картинка wardind`а. Blessing of Queen 1 лвла. Немного странно... Но мало ли кому пригодиться
 
Last edited:
Есть вопрос. Сборка ИЛ
Настроил вот так:
в services строка
# Время баффов от НПЦ меняется в altsettings.properties - AltNpcBufferEffectTime
AllowSpawnBuffer = True

заходим в altsettings
################## Настройка баффера #####################
# Увелечение время баффов от баффера
# Пример : 3600 ( 1 час + базовое время)
AltNpcBufferEffectTime = 0
# Множитель времени для баффов при наличии Премиум Аккаунта (AltNpcBufferEffectTime * AltNpcPremiumBufferEffectMul)
# Пример : AltNpcPremiumBufferEffectMul = 1.2 +20% к времени AltNpcBufferEffectTime для Премиум Аккаунта
AltNpcPremiumBufferEffectMul = 3.

И результат 0. От баффера что с ПА, что без него время 20 мин
Code:
# Пример : 3600 ( 1 час + базовое время)
AltNpcBufferEffectTime = 0
3600 - это 1 час, у тебя же стоит "0", а это значит "0 + базовое время", т.е. как было 20 мин, так и осталось.
Что касается ПА:
AltNpcPremiumBufferEffectMul = 3. - т.е. 0*3=0 - простая математика)
 
Code:
# Пример : 3600 ( 1 час + базовое время)
AltNpcBufferEffectTime = 0
3600 - это 1 час, у тебя же стоит "0", а это значит "0 + базовое время", т.е. как было 20 мин, так и осталось.
Что касается ПА:
AltNpcPremiumBufferEffectMul = 3. - т.е. 0*3=0 - простая математика)
Т.е. мне нужно в место 0 поставить 1?
Мне нужно от баффера 20 мин для людей без ПА и 60 для людей с ПА
 
Back
Top