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

Включение:
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:
Здравствуйте, скажите пожалуйста как мне сделать одноразовые промо коды?
 
я не понимаю почему не работает промо на классике если править xml? После правки нужно релогать данную настройку?
 
Last edited:
я не понимаю почему не работает промо на классике если править xml? После правки нужно релогать данную настройку?
да, в админке релогай промокоды, что бы новое загрузилось
 
Всем привет, работает у кого проверка таким способом?
<code name="TEST1" limitByIP="true" limitByUser="false" limit="21" minLevel="10">
Не срабатывает почему то.

Разобрался.
 
Last edited:
есть возможность сделать промокод только для новых рег? например с проверкой на дату создания аккаунта/чара
 
есть возможность сделать промокод только для новых рег? например с проверкой на дату создания аккаунта/чара
а чем тебе уровень не подходит ?
 
Back
Top