Добрый вечер.
Прошу прощения за поздний апдейт, отвлекся и обо все позабыл. По-быстрому расскажу о событиях прошлой недели.
Конечно, самая главная новость – старт подачи заявок на ЗБТ. Уже в первый день мы получили более 300 заявок, а сколько их набежало сейчас, сложно представить. Bloo закончил админскую страничку, Crogge ее протестирует, запустит, и мы начнем сортировку кандидатов и отбор тех, кто войдет в первую волну. В свою очередь, Asura решает, в каком порядке будет тестироваться контент. Скоро мы выберем первых 10 тестеров, а узнают они об этом 16 декабря, когда получат письма.
А тем временем Asura продолжает работать над отладкой ядра. Возможно, вы уже видели небольшой ролик (
https://vid.me/AKJM) (Внимание! Музыка способна нанести вам моральную травму. И вот такую музыку он слушает все время), где Asura показывает, как сервер обрабатывает команду alt+f4 и разрывы связи. После дисконнекта персонаж еще какое-то время остается на сервере и находится в бою (если на момент разрыва связи он сражался с кем-либо). Также Asura работает над другими недавно найденными проблемами; не могу припомнить, над чем именно. Еще он продолжает работу над инстансами и переносом персонажей между серверами (примечание переводчика – речь не идет о трансфере между игровыми рилмами, а о переходе с одного кластерного сервера на другой – положим, с Восточных Королевств в Калимдор и обратно. Как все вы, наверное, помните, одна из главных фишек Crestfall’a - кластеринг, как у Blizzard, где каждый континент и инстансы существуют на отдельных серверах).
Rodeg все еще болеет, а мы желаем ему скорейшего выздоровления. Он приступит к работе так быстро, как только сможет. Другие члены команды также продолжают корпеть над своими задачами.
Я же решил освежить в памяти программирование и пополнить свои знания в этой области, чтобы смочь делать небольшие фиксы ядра. Когда-то я неплохо знал ASM/C, но мое С++ кунг-фу недостаточно сильно. Но я все-таки смог осилить SQL и сделать небольшой глобальный фикс, посвященный бонусным значениям угрозы для всех способностей - за вычетом одной. Если вкратце, то большинство умений воина (а также много от других классов) дают бонусное значение к угрозе, когда наносят урон. В некоторых случаях это фиксированное значение (например, максимальный ранг Sunder Armor, насколько я помню, дает 261 бонусной угрозы на цели). В других случаях это процент (Mind Blast дает два очка угрозы вместо одного, то же верно для Execute, Searing Pain и других умений). А вот в третьем случае часть умений работают совсем по-особому, там при расчете бонусной угрозы играет роль количество ХП моба или другие уникальные для каждого случая параметры. И в этом последнем случае данные об этих умениях как на серверах МаНГОСа, так и на нашем сервере были просто ужасны. Поэтому я хочу поблагодарить Roadblock’a и Walgrave за помощь в вычислении верных значений для тех умений, данные о которых были недостоверны или их просто не сохранилось на настоящее время.
В общем, все это я поправил, протестировал, и работает все просто отлично, за одним исключением - Battle Shout. По механике создания угрозы он работает аналогично исцеляющим умениям, так что я их внимательно изучил, чтобы экстраполировать полученные знания на Battle Shout. Я примерно представляю, как должен работать код в этом случае, но моих знаний недостаточно, чтобы отладить его для правильной работы этого умения. Также я поправил формулу для генерации ярости от нанесенного урона, но опять же за исключением некоторых случаев, где требуется вмешательство в ядро сервера. Тут у Asura гораздо больше опыта. Так что я могу ограничиться простыми фиксами, а он уже возьмет на себя работу над более запутанными случаями, но вместе мы сможем быстрее править умения и таланты классов. Чудес ожидать не стоит, но, надеюсь, скорость работы над правками во время ЗБТ значительно возрастет, как только я войду в курс дела. Уйдет на это, наверное, что-то около недели.
Из-за более важных новостей о старте ЗБТ в прошлом объявлении я не упомянул, что работа над проками завершена. Я произвел кое-какие вычисления и, похоже, мне удалось разгадать принципы, по которым построена система итемизации Blizzard. Похоже, что предмет определенного уровня имеет какое-то количество «очков», которые уже тратятся на характеристики, силу атаки, силу заклинаний, урон в секунду и т. д. У предмета уже может быть базовое значение урона в секунду и базовое количество очков (в зависимости от типа предмета и его уровня). И уже потом дизайнеры тратят эти очки на то чтобы придать предмету характеристики, проки и т. д. Если дизайнерам нужно больше очков, они добирают их от базового значения урона в секунду или количества брони. Вот поэтому у многих предметов для пользующихся магией классов меньшее значение урона в секунду, чем у прочих предметов того же уровня.
Так что если у предмета есть базовое значение урона в секунду/брони для его уровня, и, положим, общее число характеристик равно 20, можно вычислить, сколько у него «очков». Зная, сколько «стоит» дополнительное значение урона в секунду, можно вычислить соотношение конвертации характеристик в урон в секунду. А уже на основании полученных знаний можно выяснить, сколько урона в секунду стоит значение характеристик в 20.
А если известно, какое количество характеристик = определенное значение урона в секунду, и известно, сколько урона наносится тем или иным проком, а также скорость оружия, уже можно вычислить точное число срабатываний в секунду.
Понятно, что данные будут не 100% верными, тем более что лично я уверен, что Blizzard в работе над некоторыми типами предметов использовали еще какие-то дополнительные факторы (возможно, скорость оружия), а также намеренно сделали некоторые предметы того же уровня лучшими, чем другие такого же уровня (обычно это награды за трудную квестовую цепочку). Однако формула, которую я использую, уже хорошо показала себя на основе собранных данных о проках двухнедельной давности. Я применил эту формулу ко всем предметам, о которых данных на настоящий момент не сохранилось, и результаты были довольно неплохими. И этот метод уж всяко лучше, чем догадки, на которых до сих пор строилась итемизация на других серверах ваниллы.
Что же, на сегодня хватит, и время уже позднее. Напоминаю, что у нас осталась всего неделя до старта беты и теперь я буду публиковать по апдейту каждые две недели вместо режима раз в неделю. Таким образом у меня высвободится больше времени для работы над сервером. Следующего апдейта стоит ожидать не ранее 19 декабря (соответственно 12 его не будет). Но меня можно найти как тут, так и в Дискорде, где я с удовольствием пообщаюсь с вами.
Вот и все на сегодня. Как всегда, задавайте вопросы, оставляйте комментарии, и спасибо за интерес к Crestfall’у.