Про лагокомпенсацию, CRDT и эксперименты Либета

Jan 10, 2015 01:33

Что такое эксперимент Либета: в большинстве экспериментов у человека время принятия решения типа 0.1 сек, но EEG датчик на башке показывает, что сигнал появляется ДО того, как человек сам поймет, что он собирается сделать ( Read more... )

муравьи, gamedev, мысли

Leave a comment

fi_mihej January 10 2015, 06:48:52 UTC
В игре, которую сейчас разрабатываем (online-FPS) - моя лагокомпенцация работает с реальной задержкой около секунды (если у этого игрока херовый инет). Можно и больше - просто такое ограничение на данный момент выставил. На играбельность не влияет. Делалось именно для того что бы игрокам не нужно было делать ручной предикшен при стрельбе, а можно было просто стрелять ровно в тушку при любых условиях - вплоть до 3g-инета.

Reply

wizzard0 January 11 2015, 18:59:49 UTC
И часто у тебя пинг на 3G бывает 20-50 мс?

Reply

fi_mihej January 12 2015, 04:49:33 UTC
Не, ну я ж в этом каменте чисто про батлу говорю. Кто ж в батлу-то по 3g играет?

Reply

fi_mihej January 10 2015, 11:09:29 UTC
Вопервых в реальных условиях - всем пофигу. Абсолютно. :)
А во вторых - как повезет. Могут и оба умереть. Специфика: защиту от читерства нам надо делать на серверной стороне т.к. доверять клиенту (по техническим причинам) нельзя. Потому твой сценарий - даже не в списке интересных. :)

Reply

wizzard0 January 10 2015, 11:17:50 UTC
> Вопервых в реальных условиях - всем пофигу. Абсолютно. :)
Воистину, счастье в неведении!

> Специфика: защиту от читерства нам надо делать на серверной стороне т.к. доверять клиенту (по техническим причинам) нельзя
Лагокомпенсация и античит имеют мало общего. Тем не менее, из-за плохой лагокомпенсации люди будут обзывать друг друга читерами, при том, что никто из них не читерил.

> А во вторых - как повезет. Могут и оба умереть
Вот на этом месте поподробнее. Какой именно механизм позволяет им это сделать? Дьявол в деталях.

Reply

fi_mihej January 10 2015, 11:20:39 UTC
Скажем так: никто не уйдет обиженным. Если ты выпустил рожек в тушку, или пулю в голову - то ты получишь свои очки. Потому воплей о "читерстве" не будет.

Reply

wizzard0 January 10 2015, 11:23:14 UTC
Рожки в тушку! :)

Будут-будут. Потому что "он не мог меня увидеть, я вообще за стеной стоял, у него волхак!!!111"

Reply

fi_mihej January 10 2015, 11:26:09 UTC
Так ведь он-то сначала выйдет из-за стены, а уже потом застрелит :)

Reply

wizzard0 January 10 2015, 11:33:25 UTC
Ох. Ладно, попробую расписать один из примеров детальнее. Для разных лагокомпенсаторов детали сценария могут отличаться, но в общих чертах как-то так:

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

Reply

fi_mihej January 10 2015, 11:42:31 UTC
Вообще-то я и втом коменте понял что ты имеешь в виду. Проблемы нет: решена автоматически. Даже в конкретно твоем сценарии никто никого в читерстве не заподозрит.

Reply

wizzard0 January 10 2015, 11:46:29 UTC
> Проблемы нет: решена автоматически.

Если нету, то лагокомпенсация у вас работает не так, как в CS и BF4, и мне очень интересно, в чем отличие, но я не могу понять.

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

Reply

fi_mihej January 10 2015, 11:22:27 UTC
>> Вопервых в реальных условиях - всем пофигу. Абсолютно. :)
>Воистину, счастье в неведении!

Мы не симулятор дуэлей ковбойских делаем, а FPS. :)

Reply

wizzard0 January 10 2015, 11:24:27 UTC
Пока что получается не FPS, а симулятор драк холодным оружием и подручными предметами. Сеттинг-то хоть фентезийный, надеюсь?

Reply

fi_mihej January 10 2015, 11:28:04 UTC
Фентезийный, фентезийный. С мечами и рогатками. Будет. Когда через десять лет напишем код, а потом еще через 20 - протестим как оно играется. Лол. Ты сильно много желчи льешь безосновательно, ничего не зная о реальной ситуации. Выглядит - не очень. :)

Reply

wizzard0 January 10 2015, 11:37:22 UTC
> ничего не зная о реальной ситуации
Ну я сугубо с твоих слов пытаюсь представить, как у вас дела обстоят. Копировать CS хорошо и правильно, но надо отдавать себе отчет в том, что он под маленькие пинги делался, а более 30-50 мс надо совсем по-другому.

Reply

fi_mihej January 10 2015, 11:46:11 UTC
Ну блин. Я ж не на крештест алгоритм выставляю в деталях его расписывая, а просто к слову сказал что даже в играх задержка в секунду (или больше) - при правильном алгоритме - эффективной роли, для наблюдателя, не играет. И я не говорил что идет копирование CS. О каком копировании может быть речь, когда я сначала дело продумал, а уже потом узнал что у CS в очень общих чертах - что-то очень похожее (чисто по словесному описанию)?

Reply


Leave a comment

Up