![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
Member Сообщений: 92 Спасибо сказали: 23 раза ![]() |
Сам я в скриптах не силён. Поэтому прошу помочь профессионалов.
Проблема: http://www.heroeswt.net/forum/viewtopic.php?f=2&t=2#p8 Выявился баг, которой как я думал недопустит сама игра ((( В таверне могут появлятся одинаковые герои. Теоретически давно была известна эта проблема, но при разработке ни разу на это не натыкался, думал уже в игре заложены некоторые массивы из которых генерятся герои для таверни для разных игроков, но оказалось не так. Техническое задание: В ход красного игрока в начале дня: - Проверяем если текущая дата > даты одновременного хода, то массив доступных героев пустой, отправляем эту информацию синему. Выходим из процедуры. Дата одновременного хода записана в какой-нть v-переменной в формате MWD (например, 116) - Создаём массив из свободных героев: нет у любого игрока или компа, не сидит в любом из замков, не сидит в тюрьме, не сидит ни одного игрока в таверне. Вобщем-то достаточно этих критериев. - Распределяем этот массив пополам случайным образом между красныи и синим игроком. - отправляем синему его половину героев, для красного оставляем свою. При покупке героя в таверне: 1. Проверять если не заполнен массив доступных героев, то работаем в обычном режиме Иначе: 2. Проверяем входит ли вновь появившийся герой в массив доступных 3. если нет, то перегенериваем, переходим в п.2 Доп. требования: - совместимость со скриптами ТЕ План тестирования: - Включить одновременный ход до 111 (создать соответствующую v-переменную и так же выставить 111) - Вставить сохраниние массивов в ЛОГ файл, убедиться что не содержат пересечений - при заказе героя в таверне вставить отладочное сообщение, входит или нет следующий герой в массив - сделать побольше денег и купить много героев красным и синим - убедиться что на 112 (одновременный ход отключён) массив не заполниться и заказ гроев работает по старому. Если кто возьмётся помочь, то вот моя аська - 343-425-087 |
|
|
![]() ![]() |
Текстовая версия | Сейчас: 17 August 2025 - 02:14 |
Copyright by Алексей Крючков
![]() Programming by Degtyarev Dmitry |
|