Перейти к содержимому
Rushcore

Проблема с "тиками" на сервере

В этой теме 52 комментария

Рекомендуемые комментарии

Участник
652 публикации
Сегодня в 06:04:47 пользователь Rushcore сказал:

Как будет решаться проблема?

 

Просто добавили бы слово "минимальное" перед временем перезарядки... 

Получилось бы не "баг, а фича", типа дополнительный штрих к реализму в игре.

  • Ха-Ха 4

Рассказать о публикации


Ссылка на публикацию
1 448
[BEAT]
Участник, Коллекционер
673 публикации
24 193 боя
Сегодня в 14:04:47 пользователь Rushcore сказал:
Скрытый текст

 

Командиры,

Спешим поделиться важной информацией о баге, который в последнее время обсуждали в сообществе. Проблема наблюдается у орудий с высокой скоростью перезарядки: при использовании каскадного режима стрельбы или просто при постоянной стрельбе скорострельность таких орудий снижается. Чем выше скорость перезарядки, тем заметнее проявляется баг. При перерывах в стрельбе или в случае долгой перезарядки он не заметен.

Иными словами, если играть на кораблях со скорострельной артиллерией и вести непрерывный огонь (зажав левую кнопку мыши или постоянно нажимая ее), темп стрельбы начнет "проседать".

Проблема возникает в силу неучтенных, к сожалению, особенностей обмена данными между компьютерами игроков и сервером. Она никак не связана с навыками командиров, модернизациями и другими модификаторами — это часть базовой механики стрельбы, и она работает для всех одинаково.

Работы по исправлению уже ведутся:

  1. Проблему каскадной стрельбы мы планируем исправить в версии 0.11.2 - решение уже есть, но его нужно протестировать и убедиться, что оно не вредит производительности.
  2. Проблему с постоянной стрельбой можно решить только переработав существенную часть основного кода игры; мы немедленно приступаем к этой задаче, но пока что не можем сказать сколько именно времени потребуется. Обязательно будем держать вас в курсе и рассказывать о прогрессе.

Несмотря на то, что эта проблема существовала как часть основной механики игры с момента выпуска и напрямую не влияла на такие аспекты, как навыки командира, мы все же признаем влияние, которое она могла оказать на опыт некоторых игроков. Таким образом, игроки, которые войдут в игру до конца февраля (00:00 UTC, 1 марта), получат 5 дней премиум-аккаунта WoWS.

Мы благодарим вас за внимание к игре. Если вам интересны технические подробности, пожалуйста, ознакомьтесь с информацией ниже.

 

Когда возникла проблема?

Она существовала в игре с самого начала. Видимо, в силу своей неочевидности и того, что в первые годы в игре не было столько скорострельных кораблей, она долгое время оставалась незамеченной.

Как она связана с обменом данными между клиентом и сервером?

В бою одновременно происходят сотни событий, из которых складывается цельная картина. Летят снаряды, идут торпеды, маневрируют корабли и самолеты, все это взаимодействует друг с другом, при этом каждый момент боя должен быть "рассчитан" на сервере и синхронно передан всем игрокам, а от игроков в свою очередь постоянно поступает новая информация. Для оптимизации производительности частота вычислений на сервере регулируется разработчиками. Ее можно измерить так называемыми "тиками", каждый тик — это промежуток между двумя вычислениями состояния боя. Для относительно размеренного темпа World of Warships установлена частота 7 тиков в секунду. И этого достаточно для правильной работы подавляющего большинства механик игры, однако, как выяснилось, непрерывная стрельба в высоком темпе может давать сбои.

Во-первых, когда орудие перезарядилось, выстрелить оно может только в ближайший тик сервера. Если перезарядка закончилась между тиками, то возникает задержка пока сервер "ждет" следующего тика. 1/7 секунды — это очень мало, но при постоянной стрельбе нескольких орудий с быстрой перезарядкой через какое-то время "потерянное" время можно прочувствовать.

Во-вторых, при каскадной стрельбе (непрерывное удержание левой кнопки мыши) проверка на возможность стрельбы происходит раз в два тика, что, опять же вызывает дополнительную задержку.

Как будет решаться проблема?

Для каскадной стрельбы у нас есть потенциальная возможность решить проблему путем настройки параметров. Мы увеличим частоту проверки до одного раза в тик, проверим как скажется на производительности игры. Если тестирование пройдет успешно, мы как можно скорее (надеемся, уже в версии 0.11.2) внесем изменение в игру. 

Что касается непрерывной стрельбы, тут нужно "научить" игру, ее серверную часть, учитывать остаток перезарядки и окончание перезарядки орудия между тиками. Задача существенно сложнее, так как нужно будет переписать часть основного кода игры. Мы уже приступили к работе, но пока еще сложно сказать сколько потребуется времени. Мы постараемся доставить это изменение в надлежащем качестве и как можно быстрее.

Почему нельзя просто повысить частоту тиков?

Подавляющее большинство игровых механик отлично работает с текущей частотой, и серверная часть игры под нее оптимизирована. В World of Warships одновременно происходят самые разные события, игра очень сложная и насыщенная в плане информации, которую нужно обработать серверу. Однако, поскольку темп игры относительно невысокий, вычисления 7 раз в секунду позволяют поддерживать высокий уровень качества и отзывчивости. Проблема со скорострельными орудиями - единственный прецедент, о котором нам известно, связанный с частотой вычислений. И в данном случае разумнее решить эту проблему локально, а не вносить глобальные изменения во взаимодействие клиента и сервера.

А что с балансом кораблей? Нужны ли какие-то изменения?

Проблема, как выяснилось, в игре с самого начала, поэтому все расчеты по балансу и боевой эффективности проводились в одинаковых, равных условиях. Поэтому в данный момент изменения не требуются. Однако, мы будем внимательно следить за статистикой и внесем корректировки если потребуется.

Надеемся, эта информация помогла вам лучше понять, что это за баг и как он влияет на игру. Мы приложим все усилия, чтобы как можно скорее устранить его. Спасибо за ваше понимание.

 

 

 

Я заметил этот баг  сражаясь в блицах и не мог понять что за чертовщина твориться... Спасибо что во первых заметили, во вторых признали  ошибку, в третьих  пояснили, в четвёртых что будете исправлять этот крайне досадный баг, в пятых за компенсацию.

  • Плюс 7
  • Круто 2

Рассказать о публикации


Ссылка на публикацию
Участник, Коллекционер
225 публикаций
4 197 боёв
Сегодня в 15:13:45 пользователь Rushcore сказал:

Все скорострельные корабли подвержены этому багу. Как пример - Смоланд, Друид и им подобные. 

Насчет бесплатной замены перков - к сожалению это не представляется возможным в этом случае, но в качестве компенсации всем игрокам, вошедшим в игру в феврале будет начислено по 5 дней ПА

на 5 дней ПА я заработаю за полчаса-а вот на эоитку для сьроса и переделки перков придется играть очень много и долго. да и голду для сброса перков на кэпах с эсминцев  за полчаса не заработаешь-так что компенсация символическая. но хоть что то чем ничего.

 тогда уточню вопрос- при каком КД в секундах начинает действовать этот баг? 5сек? 3 сек? 2 сек?

  • Круто 2

Рассказать о публикации


Ссылка на публикацию
213
[LEG1O]
Участник
96 публикаций
10 484 боя

Спасибо за честность и открытость! Печально конечно что такие моменты есть, но что поделать...

  • Плюс 3

Рассказать о публикации


Ссылка на публикацию
569
Участник
703 публикации
Сегодня в 13:04:47 пользователь Rushcore сказал:

Командиры,

Спешим поделиться важной информацией о баге, ...

 Да ладно  - переживём, ничего страшного.

Не ошибается тот, кто ничего не делает.

  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
Участник
652 публикации
В 11.02.2022 в 10:48:15 пользователь Bombramshmeeg сказал:

тогда уточню вопрос- при каком КД в секундах начинает действовать этот баг? 5сек? 3 сек? 2 сек?

этот "баг" действует на всё, что имеет перезарядку. Но эффект проявляется на скорострелах.

 

ГК стреляет только тогда, когда орудия заряжены. Соответственно повторно стрелять, можно только когда время для перезарядки прошло (1 секунда или 30 секунд, без разницы). Проверка прошло ли время происходит каждые примерно 0.14 секунд. (если зажата ЛКМ, то каждые 0.28 секунд)

 

Это и есть максимальная задержка между отчетом когда прошло время на перезарядку и временем, когда орудия готовы. Другими словами, чтоб соответствовать текущей механики игры, в ТТХ лодок должно быть указано время перезарядки не числом, а диапазоном. Например "1,5 - 1,78 секунды" вместо "1,5 секунды".  

 

 

Изменено пользователем anonym_NrqFVMe7dyUt
исправлена математика
  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
55 650
[UN-SE]
Бета-тестер, Коллекционер
23 438 публикаций

Спасибо

Рассказать о публикации


Ссылка на публикацию
5 440
[9-MAY]
Бета-тестер, Коллекционер
1 667 публикаций
9 041 бой
В 11.02.2022 в 15:48:12 пользователь Rushcore сказал:

Это не приведет к апу дпм, а лишь установит значения, которые и должны быть, так как из-за бага они не корректные

 

Подозреваю, что без напильника не обойдётся…

Рассказать о публикации


Ссылка на публикацию
234
[LI_LU]
Старший бета-тестер, Коллекционер
211 публикация
31 336 боёв

Замечал такое,но списывал на лаги интернета,и как-то не сильно мешало... Но все равно спасибо за быстрое реагирование и компенсацию...

  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
1 970
[J2SDF]
Бета-тестер, Бета-тестер, Бета-тестер, Коллекционер
3 599 публикаций
19 360 боёв
В 11.02.2022 в 15:46:21 пользователь Denarg сказал:

Не совсем понял, почему так

Разве исправление бага не будет являться неким апом дпм скорострелок? Это же надо будет скомпенсировать для сохранения баланса?

Это просто позволит обычным игрокам сравниться с багоюзерами, которые опытным путем установили, что при закликикании противник дохнет быстрее. При дуэли эсм на эсм довольно очевидной была (и есть) разница между зажиманием кнопки и стрельбой залпами по готовности закликивая мышью. Кстати, после устранения бага все равно стрельба залпами предпочтительней (догадайтесь, почему).

Более очевидного объснения хватало для игроков, стремящихся повысить свой скилл, для выбора лучшего из вариантов. 

  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
Участник
2 376 публикаций
Сегодня в 21:48:34 пользователь AkAsha2_2 сказал:

Это просто позволит обычным игрокам сравниться с багоюзерами, которые опытным путем установили, что при закликикании противник дохнет быстрее. При дуэли эсм на эсм довольно очевидной была (и есть) разница между зажиманием кнопки и стрельбой залпами по готовности закликивая мышью. Кстати, после устранения бага все равно стрельба залпами предпочтительней (догадайтесь, почему).

Более очевидного объснения хватало для игроков, стремящихся повысить свой скилл, для выбора лучшего из вариантов. 

 

В 11.02.2022 в 14:04:47 пользователь Rushcore сказал:

Иными словами, если играть на кораблях со скорострельной артиллерией и вести непрерывный огонь (зажав левую кнопку мыши или постоянно нажимая ее), темп стрельбы начнет "проседать".

Я так понял, что при закликивании проблема тоже есть. То есть независимо от способа ведения непрерывного огня проблема все равно существует

Если я ошибся и не так понял, то этот баг гораздо менее страшный, чем я подумал в начале (стрельбу обычно веду дабл кликом)

  • Круто 1

Рассказать о публикации


Ссылка на публикацию
945
[GRAND]
Участник
936 публикаций
8 683 боя

Интересненько. :cap_popcorn:

Рассказать о публикации


Ссылка на публикацию
2 528
[MAHAN]
Участник
3 076 публикаций
13 745 боёв
Сегодня в 21:48:34 пользователь AkAsha2_2 сказал:

Кстати, после устранения бага все равно стрельба залпами предпочтительней.

Неоднозначно. По поводу добить шотного противника - ДА. По поводу нанести урон противнику, который готов отсветиться - ДА. По поводу нанести урон ББшками при отворачивающем противнике (потому что через пару секунд ББшки будут уже малоэффективны) - ДА.

 

При каскадной стрельбе с ГК кораблей с быстрой перезарядкой кроме нанесения урона есть еще и оказание психологического эффекта на ряд игроков (конечно, не на всех). Такие игроки начинают совершать в бою больше ошибок, если находятся под огнем с постоянным попаданием по ним без перерыва (даже без значительного урона). Я сам наблюдаю это при игре на эсминцах с базовой перезарядкой в 5 сек или больше. При стрельбе залпами такой эффект психологического давления при перезарядке вашего ГК в 5 сек или больше сглажен.

 

Вы сами как аргументируете то, что после устранения бага стрельба залпами все равно останется предпочтительнее?

Изменено пользователем 1977VelvetRabbit
  • Плохо 1

Рассказать о публикации


Ссылка на публикацию
1 970
[J2SDF]
Бета-тестер, Бета-тестер, Бета-тестер, Коллекционер
3 599 публикаций
19 360 боёв
В 12.02.2022 в 22:54:05 пользователь Denarg сказал:

Я так понял, что при закликивании проблема тоже есть. То есть независимо от способа ведения непрерывного огня проблема все равно существует

если кто то зажал кнопку, для него проблема существует. 

Я почему завел речь про эсмов, там все очень быстро происходит, кто готов морально начинать стрелять может имея 1/3 хп переиграть фуллового систер шипа.

Потому что пока тот допустим довернет орудия и правильно возьмет упреждение, получит уже три залпа, а если дуэль на сближении, они скорее всего попадут. Если ухитриться еще торпеду ему скинуть, он будет вообще счастлив и отправится в порт.

Если как бы готовы стрелять оба, но один зажал ЛКМ и на что то надеется, у меня для него плохе новости. При прочих равных он уже поиграл. Даже не из за падения КД согласно этому багу. 

Есть еще пара моментов. Бывает, кд между башнями больше кд орудия. И вообще стреляя побашенно, теряешь (количество пушек в башнях кроме первой) выстрелов. 

Сегодня в 00:41:04 пользователь 1977VelvetRabbit сказал:

сглажен

Это если НЕ попадать.

При попадании несколькими залпами, противник, видя, сколько у него хп, и почему еще даже не попав ни разу, впадает в тихую панику. А еще лучше, когда он даже не выстрелил ни разу, а с трех залпов потерял уже треть ХП или больше. Он то прекрасно понимает, что ему надо догонять врага по урону. При каскадной стрельбе кстати есть одна проблема. Если вдруг противнику пришло в голову менять курс чтобы сбить вам прицел, это можно использовать, чтобы гарантированно по нему попадать в определенные моменты времени. Естественно, стреляя залпом. При каскадной стрельбе, вне этих моментов, часть снарядов уйдет в молоко.

Еще могу сказать что каскадная стрельба в условиях волнения, которое задает крен или дифферент кораблю, щтука невозможная в принципе, если орудия не стабилизированы.

  • Плюс 1
  • Скучно 1

Рассказать о публикации


Ссылка на публикацию
1 965
[LST-W]
Участник, Коллекционер, Викигвардия
621 публикация
В 11.02.2022 в 19:48:13 пользователь le_pin сказал:

Проверка прошло ли время происходит каждые примерно 0.14 секунд. (если зажата ЛКМ, то каждые 0.28 секунд)

 

Это и есть максимальная задержка между отчетом когда прошло время на перезарядку и временем, когда орудия готовы. Другими словами, чтоб соответствовать текущей механики игры, в ТТХ лодок должно быть указано время перезарядки не числом, а диапазоном. Например "1,5 - 1,528 секунды" вместо "1,5 секунды".   

Интересная у вас математика... Тик семь раз в секунду, что соответствует 0,14 секунды, соответственно два тика - 0,28 секунды. Т.о. если зажата левая кнопка мыши и перезарядка уже произошла, но выстрел не успел в текущий тик, то он произойдет через два тика. Допустим, в игре, благодаря работе перков (или других причин) в какой-то момент времени в у нас скорострельность стала равна 1,5 секунды, но выстрел не был обработан сервером и произойдет еще через 0,28 секунды, следовательно между выстрелами будет 1,78 секунды (а не 1,528)

Изменено пользователем Paladin_61RUS
  • Плюс 3

Рассказать о публикации


Ссылка на публикацию
1 970
[J2SDF]
Бета-тестер, Бета-тестер, Бета-тестер, Коллекционер
3 599 публикаций
19 360 боёв
Сегодня в 00:50:40 пользователь Paladin_61RUS сказал:

Интересная у вас математика... Тик семь раз в секунду, что соответствует 0,14 секунды, соответственно два тика - 0,28 секунды. Т.о. если зажата левая кнопка мыши и перезарядка уже произошла, но выстрел не успел в текущий тик, то он произойдет через два тика. Допустим, в игре, благодаря работе перков (или других причин) в какой-то момент времени в у нас скорострельность стала равна 1,5 секунды, но выстрел не был обработан сервером и произойдет еще через 0,28 секунды, следовательно между выстрелами будет 1,78 секунды (а не 1,528)

Причем такое изменение сокорости перезарядки вполне ощутимо человеческой реакцией. Я в свое время. например. получил интересный опыт, так как засек это явление на уровне ощущений, рассказал другим, но мне особо никто не поверил) Хотя местами соглашались, что надо стрелять залпами.

Сегодня в 00:41:04 пользователь 1977VelvetRabbit сказал:

По поводу добить шотного противника - ДА

Эсминцы, с их то хп, цели по умолчанию шотные даже для самих себя. По крайней мере, пока пройдет КД например линкора, эсм может и утопить протиника, попадая всеми залпами.

  • Плюс 4

Рассказать о публикации


Ссылка на публикацию
Участник
48 публикаций
14 382 боя

Спасибо, что проблему таки взяли в оборот.
Обратите внимание, что порой пуск торпед также может испытывать (точно испытывал) подобные проблемы: при сведении ГК или торпедного аппарата (области торпедного спуска) нажимаешь лкм, но снаряды/торпеды могут не запуститься (при пинге 30-40). На мой обывательский взгляд, здесь может быть та же причина. Подскажите, спасибо

Изменено пользователем Vladimir_the_Great
  • Плюс 1

Рассказать о публикации


Ссылка на публикацию
Участник
652 публикации
Сегодня в 15:50:40 пользователь Paladin_61RUS сказал:

Интересная у вас математика... Тик семь раз в секунду, что соответствует 0,14 секунды, соответственно два тика - 0,28 секунды. Т.о. если зажата левая кнопка мыши и перезарядка уже произошла, но выстрел не успел в текущий тик, то он произойдет через два тика. Допустим, в игре, благодаря работе перков (или других причин) в какой-то момент времени в у нас скорострельность стала равна 1,5 секунды, но выстрел не был обработан сервером и произойдет еще через 0,28 секунды, следовательно между выстрелами будет 1,78 секунды (а не 1,528)

ой не могу, математик, блин со степенью... пора свою математику делать, с новыми правилами сложения дробей :)

конечно вы правы, 1,78 не 1,528. Миль пардон и спасибо, что заметили.

  • Плюс 3

Рассказать о публикации


Ссылка на публикацию

×