• Страница 1 из 1
  • 1
Модератор форума: Dimitro  
Как убрать ограничения на урон/хп (больше 2лямов)
JulieSigtuna
Сержант
Как убрать ограничения на урон/хп (больше 2лямов) в ObjectMgr

С меня плюсы,много плюсов!
Сообщение # 1 написано 15.10.2015 в 02:32
p620
Маршал
Цитата JulieSigtuna ()
Как убрать ограничения на урон/хп (больше 2лямов) в ObjectMgr

Не миллионов, а миллиардов. И в двух словах это не описать, дело в том, что такое ограничительное значение выбрано не с потолка, это максимум, который может хранить signed int (32). Чтобы это исправить - Вам нужно будет изменять типы значения во всех процедурах, которые обрабатывают урон, здоровье, ресурс и т.д. Кроме того, неизвестно еще, как на это будет реагировать клиент. Если он не адаптирован под получение 8ми байтовых значений, урон, здоровье и все прочее будет отображаться некорректно.
Сообщение # 2 написано 15.10.2015 в 03:13
JulieSigtuna
Сержант
p620, нет ли таких мануалов?

Добавлено (15.10.2015, 05:10)
---------------------------------------------

Цитата p620 ()
Не миллионов, а миллиардов. И в двух словах это не описать, дело в том, что такое ограничительное значение выбрано не с потолка, это максимум, который может хранить signed int (32). Чтобы это исправить - Вам нужно будет изменять типы значения во всех процедурах, которые обрабатывают урон, здоровье, ресурс и т.д. Кроме того, неизвестно еще, как на это будет реагировать клиент. Если он не адаптирован под получение 8ми байтовых значений, урон, здоровье и все прочее будет отображаться некорректно.

Cможешь ли вообще помочь?
Сообщение # 3 написано 15.10.2015 в 05:10
p620
Маршал
Нет, увы, заниматься этим нет желания. Используйте поиск по форуму для получения дальнейшей информации, хотя вряд ли найдете что-то новое. С другой стороны таких тем достаточно.

В принципе направление я Вам задал - все данные (включая возвращаемые и принимаемые значения функций), относящиеся (которые предназначены для содержания далее упомянутых величин) к урону / количеству здоровья / ресурсу и т.д. меняйте с int32 на int64.
Отдельно смотрите, где формируются пакеты клиенту с этими данными. Если клиент принимает только четыре байта - с этим ничего не сделать со стороны сервера: в лучшем случае такие значения будут отображаться некорректно.
Сообщение # 4 написано 15.10.2015 в 16:13
Mocosin
Капрал
ищи по всему коду базу эту, и там ищи отдельное, куда хп записываются и там изменяй на
Цитата p620 ()
с int32 на int64.
Сообщение # 5 написано 15.10.2015 в 16:54
JulieSigtuna
Сержант
Mocosin, типо все менять? то есть именно где стоит int32?
или именно то что отвечает и за хп и за урон и тд?
Сообщение # 6 написано 15.10.2015 в 22:56
p620
Маршал
Цитата JulieSigtuna ()
то что отвечает и за хп и за урон и тд?

Да, менять ВСЕ int32 на int64 было бы крайне неразумно. И это стоит делать только в том случае, если Вы не ждете от клиента адаптации к этим изменениям.
Сообщение # 7 написано 16.10.2015 в 01:25
  • Страница 1 из 1
  • 1
Поиск: