Как редактировать систему Промо кодов

Включение:
gameserver/config/services.properties
##### Сервис промо кодов #####
# Для конфигурации и промо кодов нужно редактировать файл data/promocodes.xml
# Байпас для НПЦ <a action="bypass -h scripts_services.PromoCodeService:showPromo">Активировать промо код</a>
PromoCodeServiceEnable = False
# Вызов промо кода командой .promo .promocode
PromoCodeCommandEnable = False

Местонахождение:
gameserver/data/promocodes.xml

Теперь рассмотрим разные варианты настроек:

1. Базовый
Code:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE list SYSTEM "promocodes.dtd">
<list>
    <code name="HELLO" limitByUser="false">
        <date from="12:00 12.12.2012" to="12:00 13.13.2013" /> <!-- format HH:mm dd.MM.yyyy -->
        <item id="57" count="212" /> <!-- Min: 1 Max: 2147483647 -->
        <exp val="11" /> <!-- Min: 1 Max: 2147483647 -->
        <sp val="111" /> <!-- Min: 1 Max: 2147483647 -->
        <addLevel val="1" /> <!-- Min: 1 Max: 80 -->
    </code>
</list>

name="HELLO" - сам промо код который вы будете распространять и который будет вводить игрок
limitByUser="false" - если выставить в True тогда промо код будет действовать на аккаунты которые вы вручную добавите в таблицу promocode_users
date from="12:00 12.12.2012" to="12:00 13.13.2013" - время с которого начинает действовать промо код и когда завершиться
<item id="57" count="212" /> Предмет который будет выдан
<exp val="11" /> Сколько будет начислено Exp
<sp val="111" /> Сколько будет начислено SP
<addLevel val="1" /> Сколько будет добавлено к текущему уровню
2. Расширенный
Code:
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE list SYSTEM "promocodes.dtd">
<list>
    <code name="HELLO" limitByUser="false" limit="100">
        <date from="12:00 12.12.2012" to="12:00 13.13.2013" /> <!-- format HH:mm dd.MM.yyyy -->
        <item id="57" count="212" /> <!-- Min: 1 Max: 2147483647 -->
        <exp val="11" /> <!-- Min: 1 Max: 2147483647 -->
        <sp val="111" /> <!-- Min: 1 Max: 2147483647 -->
        <setLevelval="80" /> <!-- Min: 1 Max: 80 -->
    </code>
</list>
<code name="HELLO" limitByUser="false" limit="100"> при таком условии данный промо код смогут игроки использовать только 100 раз суммарно, на разных аккаунтах. 1 аккаунт может его использовать только 1 раз.
<code name="HELLO" limitByUser="false" limit="100" minLevel="76"> при таком условии данный промо код смогут игроки достигшие 76 и более уровня.
<setLevelval="80" /> - при таком параметре не будет надбавляться уровень, а сразу устанавливать указанный. Допустим игрок ввел код и у него был 1 уровень, он станет 80 уровня.
<item id="7575" count="1" enchant="3"/> - Теперь пример с выдачей заточенного оружия. В данном варианте будет выдан Draconic Bow с заточкой +3
 
Last edited:
Всем привет.
Я честноговоря удивлен тому, что на 5 страницах нет ни единого вопроса похожего на тот, что я задам.

Ситуация в следующем. Нет HTML сервисах/промо, мало того даже каталога такого нет как promo.
View attachment 4888
Я смотрел и в _ru и в _en папках - нету.
Возможно у кого завалялся такой файлик - поделитесь пожалуйста, либо дайте хоть экшены с кнопок, которые будут толкать введенный промик в БД для сверки, а остальное я уже сам сделаю. Просто садиться на клиентский из интерфейса - это анриал. он выглядит так:
View attachment 4889
А редактировать его хз где, если знаете тоже - подскажите, я постараюсь сделать.


Саму htmlку сделал, но на кнопке нет никого эшена, вот он то мне и нужен. поделитесь, пожалуйста.
View attachment 4890


Заранее благодарю.
Если кто хочет редактировать само окно для Интерфейского .

CouponEventWnd

1734818448020.webp1734818469001.webp
1734820064044.webp
 
Last edited:
5 минут туда-сюда и готово

1734821108534.webp1734821266285.webp


Переделанный текст .

1734821937639.webp


P.S. Думаю ничего сложного теперь не должно быть , но если будут проблемы то можно написать гайд в руководства ( если @Deazer одобрит :cool:
Так то по сути новый лучше выглядит , хотя каждому своё.
 
Last edited:
Back
Top