Support3
23.11.2018, 14:10
Приветствую всех игроков RomeWar!
Эта тема должна была появиться здесь несколько раньше, но её изначальный формат устарел почти сразу после анонсирования, ввиду успешного решения имевшихся проблем.
В итоге, эта тема будет на 95% повествовательной и только, в самом конце, немного дискуссионной.
Как вы знаете, в игре ряд игроков периодически сталкивались с лагами при перемещениях в провинциях. Другие – лагов не замечали. При этом никакой явной связи с характеристиками их ПК, интернетом или браузерами не было.
Мы проводили отдельные тесты по этому поводу, в которых приняло участие большое число игроков. Хочу их всех поблагодарить за активность в этом вопросе!
Оказалась, у лагов было 2 причины.
Первая:
На сервере просчитано время, в течение которого можно сделать шаг (и не дается делать шаг чаще). Это, во-первых, защита от кликеров, во-вторых – уравнивает скорость передвижения игроков (в теории, см. вторую причину), независимо от скорости их интернета или конфигурации ПК, браузера.
У игрока в браузере также не даётся сделать шаг, пока сервер не ответит на предыдущий запрос.
К сожалению, из-за изначальных ошибок в реализации провинций, эти ограничения работали только при ровном нажатии на зелёные стрелочки. Если нажимать чуть мимо – направление передвижения всё равно срабатывало, а вот проверка нет и запрос отправлялся всё равно.
У игрока лошадь/повозка передвигалась, а сервер на эти запросы не реагировал. И в итоге персонажа отбрасывало назад. А если таких запросов набегало у игрока много – сервер считал, что это ускоритель или кликер и соответственно “карал”.
Приношу от лица администрации RomeWar извинения всем игрокам, которые попали в подобную ситуацию.
Сейчас это исправлено.
Вторая:
Если объяснить по простому: при клике в провинциях, запрос уходит от игрока на сервер игры, обрабатывается и возвращается обратно для проверки местонахождения персонажа.
При этом, сам по себе этот запрос- абсолютно незначительный, на его обработку сервер тратит десятые доли миллисекунды и на трафик игрока он тоже никак повлиять не может. По этой причине, скорость интернета также не влияла на этот процесс, потому что эти запросы почти ничего “не весят“. Однако, путь от игрока до сервера и обратно он пройти всё же должен. И эта скорость уже зависит от того, сколько узлов запрос пройдут по “дороге туда-сюда”.
Повлиять на нее игрок не может никак, как и мы. Это зависит от многих факторов и может регулярно меняться. Нагрузку серверу эти запросы не создают тоже.
Если запрос идёт "пользователь-сервер-пользователь" довольно долго, то игрок бежит медленнее (персонаж не сдвинется дальше, пока не придёт ответ с сервера), если запрос возвращается к игроку быстрее - то и лошадь соответственно раньше можно отправить на следующую точку.
Мне посоветовали посмотреть “игру, название которой тут нельзя произносить” и их лес. Якобы там этот вопрос как-то решили. Решили. Пока персонаж там проходит от пункта А к пункту Б, можно выкурить сигарету (но не нужно, потому что это вредно для здоровья!) и разумеется любые запросы успевают вернуться к игроку, где бы он не находился на этой планете.
По этой причине, мы замедлили перемещение в наших провинциях (“время, в течение которого можно сделать шаг”, упомянутое в первой причине, увеличено).
Изначально, именно этот вопрос хотели оставить для обсуждения игрокам, но в итоге пришли к выводу, что одинаковая и понятная скорость перемещения у всех лучше, чем "как повезёт сегодня".
При этом, само передвижение в провинциях ещё можно модифицировать:
- сделать перемещение по зажатию клика (не только для флеша),
- передвижение до точки назначения по клику (даже если эта точка находится далеко от персонажа),
- передвижение с помощью основных и дополнительных (“калькулятор”) клавиш клавиатуру,
- автоматическое перемещение по дорогам между городами до развилки или встречи с противником (да-да, я это подсмотрел там же)
Собственно, данный вопрос мы бы и хотели обсудить с игроками. В каком направлении лучше двигаться для упрощения передвижений? Например, пункты 1 и 2 взаимоисключающие и можно сделать только какой-то один из вариантов.
Всем спасибо за внимание и за игру!
Эта тема должна была появиться здесь несколько раньше, но её изначальный формат устарел почти сразу после анонсирования, ввиду успешного решения имевшихся проблем.
В итоге, эта тема будет на 95% повествовательной и только, в самом конце, немного дискуссионной.
Как вы знаете, в игре ряд игроков периодически сталкивались с лагами при перемещениях в провинциях. Другие – лагов не замечали. При этом никакой явной связи с характеристиками их ПК, интернетом или браузерами не было.
Мы проводили отдельные тесты по этому поводу, в которых приняло участие большое число игроков. Хочу их всех поблагодарить за активность в этом вопросе!
Оказалась, у лагов было 2 причины.
Первая:
На сервере просчитано время, в течение которого можно сделать шаг (и не дается делать шаг чаще). Это, во-первых, защита от кликеров, во-вторых – уравнивает скорость передвижения игроков (в теории, см. вторую причину), независимо от скорости их интернета или конфигурации ПК, браузера.
У игрока в браузере также не даётся сделать шаг, пока сервер не ответит на предыдущий запрос.
К сожалению, из-за изначальных ошибок в реализации провинций, эти ограничения работали только при ровном нажатии на зелёные стрелочки. Если нажимать чуть мимо – направление передвижения всё равно срабатывало, а вот проверка нет и запрос отправлялся всё равно.
У игрока лошадь/повозка передвигалась, а сервер на эти запросы не реагировал. И в итоге персонажа отбрасывало назад. А если таких запросов набегало у игрока много – сервер считал, что это ускоритель или кликер и соответственно “карал”.
Приношу от лица администрации RomeWar извинения всем игрокам, которые попали в подобную ситуацию.
Сейчас это исправлено.
Вторая:
Если объяснить по простому: при клике в провинциях, запрос уходит от игрока на сервер игры, обрабатывается и возвращается обратно для проверки местонахождения персонажа.
При этом, сам по себе этот запрос- абсолютно незначительный, на его обработку сервер тратит десятые доли миллисекунды и на трафик игрока он тоже никак повлиять не может. По этой причине, скорость интернета также не влияла на этот процесс, потому что эти запросы почти ничего “не весят“. Однако, путь от игрока до сервера и обратно он пройти всё же должен. И эта скорость уже зависит от того, сколько узлов запрос пройдут по “дороге туда-сюда”.
Повлиять на нее игрок не может никак, как и мы. Это зависит от многих факторов и может регулярно меняться. Нагрузку серверу эти запросы не создают тоже.
Если запрос идёт "пользователь-сервер-пользователь" довольно долго, то игрок бежит медленнее (персонаж не сдвинется дальше, пока не придёт ответ с сервера), если запрос возвращается к игроку быстрее - то и лошадь соответственно раньше можно отправить на следующую точку.
Мне посоветовали посмотреть “игру, название которой тут нельзя произносить” и их лес. Якобы там этот вопрос как-то решили. Решили. Пока персонаж там проходит от пункта А к пункту Б, можно выкурить сигарету (но не нужно, потому что это вредно для здоровья!) и разумеется любые запросы успевают вернуться к игроку, где бы он не находился на этой планете.
По этой причине, мы замедлили перемещение в наших провинциях (“время, в течение которого можно сделать шаг”, упомянутое в первой причине, увеличено).
Изначально, именно этот вопрос хотели оставить для обсуждения игрокам, но в итоге пришли к выводу, что одинаковая и понятная скорость перемещения у всех лучше, чем "как повезёт сегодня".
При этом, само передвижение в провинциях ещё можно модифицировать:
- сделать перемещение по зажатию клика (не только для флеша),
- передвижение до точки назначения по клику (даже если эта точка находится далеко от персонажа),
- передвижение с помощью основных и дополнительных (“калькулятор”) клавиш клавиатуру,
- автоматическое перемещение по дорогам между городами до развилки или встречи с противником (да-да, я это подсмотрел там же)
Собственно, данный вопрос мы бы и хотели обсудить с игроками. В каком направлении лучше двигаться для упрощения передвижений? Например, пункты 1 и 2 взаимоисключающие и можно сделать только какой-то один из вариантов.
Всем спасибо за внимание и за игру!