• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
В каком DBC файле редактируется макс стак ауры?
zadrotter
Скаут
В каком DBC файле редактируется макс стак ауры? макс 255 как , например сделать 1000?
Сообщение # 1 написано 20.02.2016 в 20:22
p620
Маршал
`Spell.dbc`, колонка '50', если начинать нумерацию с единицы.
Однако, если хотите поддерживать больше 255 стаков, без правок ядра не обойтись, ибо в ядре переменная для хранения этого значения объявлена следующим образом:
Код
uint8 m_stackAmount;

Что, в свою очередь, означает, что она может хранить только 256 различных значений (2 ** 8). В какой-то степени Вам повезло, в вышеупомянутом `Spell.dbc`, как и в объекте SpellInfo, в который ядро считывает информацию из этой клиентской базы, под эту переменную выделяется четыре байта, хотя и не исключено, что это сделано для упрощения работы с форматом. Кроме того, клиенту скорее всего эти изменения придутся не по вкусу, ибо сейчас пакет формируется с использованием:
Код
data << uint8(aura->GetSpellInfo()->StackAmount ? aura->GetStackAmount() : aura->GetCharges());

И в этом случае масштаб и сложность выполнения правок перевесят всякую причину их проведения, увы.
Сообщение # 2 написано 20.02.2016 в 22:51
M@Z@
Рыцарь
Без ядра можно обойтись если после 255 стака активировать новый спелл с точно таким же эффектом, который будет стакатся до 255 (и так пока до 255,255,255,240 в сумме дают 1тыс)
Сообщение # 3 написано 21.02.2016 в 13:39
  • Страница 1 из 1
  • 1
Поиск: