Мультиплеер игры что это такое

Что такое мультиплеер и что он означает в играх?

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

Так что такое мультиплеер? Сегодня мы решили попробовать дать ответ на этот вопрос и разобраться с тем, что представляют собой многопользовательские игры.

Что такое мультиплеер и история его появления

Данное понятие относится к многопользовательским играм для нескольких человек. Обычно для соединения используется интернет, однако нередко применение локальных сетей и коммутируемых соединений. Первым проектом, созданным для подобных целей, считается «Теннис для двоих», который вышел в далеком 1958 году.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

С появлением приставок разработчики продолжали экспериментировать, добавляя возможность играть в паре на двух геймпадах. Из года в год стали появляться совершенно уникальные проекты, которые использовали идею многопользовательского прохождения и успешно воплощали ее в реальность. Среди таких игр можно отметить «Снайперов» с его первой реализацией «смертельных матчей», F29 Retaliator с воздушными боями PvP и F1GP, которая стала сетевой гонкой. Чуть позже на свет появились игры серии FPS, которые стали большим прорывом на рынке и положили начало киберспорту.

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

Техническая реализация

Многопользовательские игры, для которых достаточно одного компьютера:

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Мультиплеер по сети. Все задействованные компьютеры соединены одной вычислительной сетью.

Правила

Одна «жизнь». Данный режим не подразумевает никакого взаимодействия между игроками, у каждого своя сессия. Управление передается из одних рук в другие, происходит это после «гибели» текущего персонажа.

Личное соревнование. Игроки преследуют свои собственные интересы и иногда сталкиваются друг с другом. Цель — победа над всеми соперниками.

Командное соревновательное прохождение.

«Свободный» режим. В таком мультиплеере игроки могут действовать по своему собственному сценарию. Режим широко используется в ММОРПГ.

Типы мультиплеера на примере трехмерных шутеров

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Типы мультиплеера на примере стратегий реального времени

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Надеемся, что вышеизложенная информация смогла помочь нашим читателям разобраться с вопросом о том, что такое мультиплеер в видеоиграх. В следующей части статьи мы рассмотрим несколько мультиплеерных режимов на примере популярной игры «ГТА».

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

Мультиплеер «ГТА: криминальная Россия»

2004 год запомнился в игровой индустрии выходом одной из самых горячо любимых частей серии GTA под названием «Сан Андреас». Проект быстро собрал вокруг себя большую аудиторию поклонников со всего мира, некоторые из которых так вдохновились криминальной атмосферой любимой игры, что стали собственноручно экспериментировать с движком. Как результат, на свет стали появляться многочисленные моды и дополнения, основанные на мире San Andreas. Некоторые из них стали не менее популярны, чем оригинальная игра.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Мы решили рассказать подробнее о моде «ГТА: Криминальная Россия» и о мультиплеере, который стал его неотъемлемой частью. Дополнение не просто добавляет много новых возможностей, но и полностью меняет сеттинг. Игроки переносятся в Россию девяностых годов, во время, когда на улицах бушевала криминальная активность. Создатели постарались привнести в свой проект как можно больше русского колорита, поэтому данный мод так горячо любим в странах СНГ. Сам игровой процесс мультиплеера практически не отличался от режима синглплеера. Игрокам давались стандартные задания, которые могли выполняться в компании с другими пользователями.

Как начать играть

Клиент серверов «Криминальной России» носит название «Мультиплеер 0 3 7». Для того чтобы начать играть по сети, достаточно скачать все необходимые файлы с официального сайта распространителя. Там же можно найти и другой клиент, который называется «Мультиплеер 0 3», — это более ранняя версия. Разработчики стараются радовать свою аудиторию чем-то новым, поэтому и выпускают обновленные и улучшенные файлы. Для того чтобы начать играть в самую последнюю версию «Криминальной России», мы рекомендуем скачивать мультиплеер «ГТА 0 3 7».

Сторонние проекты

Мультиплеер в «ГТА» является очень важной составляющей игрового процесса. Поэтому совсем не удивительно, что все больше и больше энтузиастов добавляют в свои моды возможность для многопользовательской игры.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Помимо мультиплеера «ГТА: Россия», существует еще несколько популярных серверов. Особого внимания заслуживает Samp Rp, который добавляет еще больше возможностей для командных прохождений. Игровой процесс в мультиплеере «России» не сильно отличается от синглплеера, поэтому, при всей своей неповторимой атмосфере, он может быстро наскучить. Samp Rp, в свою же очередь, помогает воплотить все самые смелые идеи и мечты. Игроки могут посвятить свое время не только заработку средств на одной из понравившихся работ, но и открывать собственные клубы, вступать в банды, записаться на службу в армию и многое другое.

Мультиплеер и мошенничество

Люди, обожающие проводить время в играх с мультиплеером, не раз сталкивались с таким понятием, как читерство. Что же это означает? Мошенничество в видеоиграх может иметь разные проявления и одну общую цель — получить преимущество над другими игроками.

Многие лиги сами устанавливают допустимые изменения в играх, относя все остальные действия к мошенничеству. Что не рекомендуется?

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Когда дело касается игрового читерства, геймерам нужно быть предельно внимательными. Маскировка некоторых мошеннических программ может ввести в заблуждение даже специального наблюдателя, стоящего у монитора. К примеру, «наводчики» могут быть активизированы после одновременного нажатия двух рандомных кнопок.

Источник

Игры, стоявшие у истоков мультиплеера

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

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

Истоки сетевой игры

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Первые многопользовательские игры появились еще в 40-х годах прошлого века. На тот момент, чтобы поиграть с друзьями на разных компьютерах, необходимо было соединить их вместе с помощью сетевого кабеля. Интернет официально появился только в 1983 году, но еще до этого программисты со всего мира предпринимали попытки объединить пользователей ПК одной сетью.

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

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

10 игр, которые застряли в производственном аду

Bioware делает первые шаги

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

В проекте было несколько серверов, на каждом из которых могло играть по 96 игроков и 1 мастер подземелья. Neverwinter Nights полностью строилась на правилах Dungeons & Dragons, поэтому сразу же стала понятной для огромного количества людей по всему миру. Даже поклонники «настолок» оценили старания Bioware и большинство из них от привычных посиделок в закрытых клубах с друзьями перешли в игру, в которую можно было играть не выходя из дома. На тот момент единственным минусом проекта было отсутствие глобального чата. Группы игроков могли лишь переписываться в своих отдельных чатах, которые они создавали перед входом в игровую сессию. Тем не менее полноценный мультиплеер в Neverwinter Nights все-таки был, и это стало отправной точкой для сетевого режима в видеоиграх.

Doom показывает новый формат сетевой игры

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Спустя 3 года после первых попыток сделать сетевой режим в видеоигре, выходит первый Doom. Сразу становится ясно, что для совместной игры по локальной сети создатели позаимствовали идеи Bioware. Тем не менее их проект был совершенно в другом жанре, так что разработчикам хотелось сделать доступ к мультиплееру более удобным и понятным.

В 1996 году выходит масштабное обновление для Doom, которое привносит в него полноценный многопользовательский режим. Причем сделан он был в привычном для современных геймеров виде. Разработчики использовали сервис под названием DWANGO, который разработали программисты из Хьюстона. Основной задачей DWANGO был подбор игроков. То есть несколько игроков заходили в мультиплеер, запускали подбор соперников и просто ждали, пока сторонний сервис свяжет их друг с другом. Даже на то время система работала достаточно быстро и через несколько лет перекочевала в Doom II, а затем в Duke Nukem 3D и другие проекты.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Первые серьезные игроки на рынке

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

В свою очередь, Meridian 59, которую выпустили в 1996 году, предлагала вид от первого лица, в ней были полностью отрисованные локации, пользовательский интерфейс, инвентарь главного героя, карта и многое другое, что уже давно стало классикой жанра. Многие популярные сегодня MMORPG позаимствовали у Meridian 59 кучу механик. Например, именно здесь впервые появилась внутриигровая почтовая система, залы гильдий, голосование внутри группы игроков, кастомизация предметов и выделенные каналы связи с конкретными игроками.

Стратегии врываются в мультиплеер

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Meridian 59 стала легендарной игрой, но в середине 90-х геймеры уже успели устать от бесконечного потока ролевых игр. Очень вовремя, а именно под конец 1996 года, выходит дополнение под названием Gold для стратегии Command & Conquer. Это обновление привносит в игру полноценный многопользовательский режим, который постепенно начинают заимствовать другие разработчики стратегий. Например, уже в 1997 году Microsoft подсмотрела, как реализован сетевой режим у конкурентов, и быстро прикрутила его к своей Age of Empires.

Следом за Microsoft волну многопользовательских режимов в одиночных играх подхватила и Activision. Все в том же 1997 году издается NetStorm: Islands At War, которую разрабатывала студия Titanic Entertainment. Сетевой режим был рассчитан одновременно на 8 игроков. При этом проект привлекал внимание тем, что не был похож на классические RTS того времени. Здесь игрок управлял всего несколькими движущимися юнитами, которые защищали его личные острова под предводительством жрецов. Для победы необходимо было захватить всех жрецов оппонента. Многие любители достойных старых стратегий даже сегодня считают, что NetStorm: Islands At War опередил свое время, и не только за счет мультиплеера.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Стратегии прошлого, в которые стоит поиграть сегодня – Часть 2

RPG наносят ответный удар

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

До конца 1997 года многие студии экспериментировали с добавлением сетевого режима в свои проекты, но удачно получалось далеко не у всех. Тем не менее попытки продолжались и в итоге привели к тому, что на свет появилась первая полноценная MMORPG под названием Ultima Online. На самом деле, серия Ultimate выходила еще с 1981 года, но разработчики никак не решались полностью перевести ее в интернет, хотя игра как будто была создана для этого.

Успех проекта был просто ошеломительным. Многие поклонники RPG играют в Ultima Online даже сегодня, потому что создатели продолжают ее поддерживать и даже выпускают масштабные обновления. К слову, это первая многопользовательская игра, для которой делали крупные аддоны, как для World of Warcraft. Также именно здесь появилась привычная для нас система PvP, и основное внимание уделяли именно ей.

Благодаря всем инновациям, которые Ultima Online привнесла в многопользовательские игры, в 1998 году появилась первая часть Lineage. Создатели особо не рассчитывали на успех, но в итоге в первые дни собрали более 3 миллионов подписчиков. Изюминкой «Линейки» стала система формирования групп, в которые объединялись игроки и затем вступали в масштабные войны. Вместе с этим группы могли обзавестись собственным замком, а потом периодически защищать его в кровавых осадах. Масштабы были просто запредельными, и именно Lineage подарила игровой индустрии несколько ключевых механик, которые мы видим в современных MMORPG.

Мультиплеер становится обычным делом

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Вплоть до 1998 года игры с сетевыми режимами делало лишь небольшое количество известных, на то время, разработчиков. Крупные игроки на рынке уже поняли, что за мультиплеером будущее и просто начали развивать свои сервисы для совместной игры в интернете. Студии поменьше пытались придумать собственные системы, чтобы прикрутить к играм сетевой режим, но получалось это далеко не у всех. В те времена создавать что-то новое было довольно сложно, и никто из игроделов не собирался делиться друг с другом своими наработками.

По сути, последнюю инновацию по части мультилпеера в индустрию привнесла Blizzard. На то время студия была крепким середняком, но после выхода StarCraft и запуска клиента Battle.net, разработчики мгновенно залетели на место «короля» игровой индустрии.

Инновация Battle.net заключалась в том, что теперь у простого геймера была удобная программа, которая предоставляла доступ к сетевому режиму. При этом через нее он мог общаться с друзьями, искать себе напарников для игровых сессий, и все это было максимально удобно. А самое главное, что для доступа к мультиплееру достаточно было зарегистрироваться в Battle.net, и больше никаких «танцев с бубном», как в других играх, где сетевой режим был в качестве дополнения. Примеру Blizzard последовали многие студии и постепенно начали выпускать свои собственные сервисы, чтобы геймеры могли играть друг с другом без лишних проблем.

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

Источник

Мультиплеер

Многопо́льзовательская игра́ — компьютерная игра, в которую одновременно играют несколько человек.

Содержание

История

Первой многопользовательской игрой считается Tennis for Two (1958). Игра была сделана для аналоговой ЭВМ и выводила игровое поле на осциллографе. Игра Maze War стала и первой реализацией

Уже первые приставки (Pong, Magnavox Odyssey) имели два контроллера, что позволяло играть вдвоём.

Наиболее значимыми сетевыми играми для IBM-совместимых компьютеров были:

Классификация

По технической реализации

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

По правилам

По организации связи

По принципу организации связи между компьютерами сетевые игры делятся на:

LAN party

За рубежом проводятся так называемые LAN party. Снимают зал, в нём проводится локальная сеть, и участники приносят туда свои компьютеры. В первую очередь LAN party является ареной для соревнований и местом общения любителей игр.

Другие причины организации LAN party:

Зачастую любители моддинга и разгона компьютеров показывают свои достижения на LAN party.

В бывшем СССР LAN party не распространены из-за низкого уровня жизни (стоимость аренды, трудности транспортировки компьютеров, всеобъемлющее использование доступных нелицезионных копий игр.

Типы многопользовательской игры в 3D-шутерах

Типы многопользовательской игры в стратегиях в реальном времени

Массовые онлайн-игры

Мошенничество в сетевых играх

Мошенничество, или «читерство» (англ. cheat — мошенничество) — беда сетевых компьютерных игр.

Само определение понятия «мошенничество» туманно. Классическое определение мошенничества как «получение нечестного преимущества» не годится, так как остаётся непонятным смысл слова «нечестный». Мошенничеством определённо является применение «наводчиков» (англ. aimbot ), которые стреляют быстро и без промаха. Перенастройка управления мошенничеством, разумеется, не является. Но всё, что находится между ними, является спорным. Даже настройка драйверов может оказаться вне закона (например, убирание тумана ускоряет игру, но увеличивает видимость, поэтому в некоторых играх это расценивается как мошенничество). Поэтому большинство лиг определяют, какие изменения игры разрешены, и все остальное считается мошенничеством.

Некоторые мошеннические программы настолько замаскированы, что даже человек, приставленный к монитору мошенника, может не заметить подвоха. Например, наводчик может активизироваться при одновременном нажатии кнопок «Влево» и «Вправо».

См. также

Полезное

Смотреть что такое «Мультиплеер» в других словарях:

Crysis — Разработчик … Википедия

Call of Duty: Black Ops — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей … Википедия

Battlefield 2 — Разработчик Digital Illusions CE Издатель Electronic Arts Локализатор … Википедия

Call of Duty: Modern Warfare 2 — Разработчик Infinity Ward … Википедия

Крайзис — Crysis Разработчик Издатели Electronic Arts Steam) Локализатор Софт Клаб Дизайнеры … Википедия

Нанокостюм — Crysis Разработчик Издатели Electronic Arts Steam) Локализатор Софт Клаб Дизайнеры … Википедия

Napoleon: Total War — Обложка игры Разработчик Creative Assembly Издатели … Википедия

Черепашки Мутанты Ниндзя 2: Битва Нексуса — Разработчик Konami Издатель Konami Дата выпуска October 19, 2004 … Википедия

Crysis Warhead — Обложка Crysis Warhead Разработчики Crytek Budapest (будапештский офис) … Википедия

Grand Theft Auto: Liberty City Stories — У этого термина существуют и другие значения, см. Grand Theft Auto (значения). Grand Theft Auto: Liberty City Stories … Википедия

Источник

Мультиплеер в быстрых играх (части I, II)

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Разработка игры — само по себе непростое занятие. Но мультиплеерные игры создают совершенно новые проблемы, требующие разрешения. Забавно, что у наших проблем всего две причины: человеческая натура и законы физики. Законы физики привнесут проблемы из области теории относительности, а человеческая натура не даст нам доверять сообщениям с клиента.

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

Часть I

Проблема читерства

Вся наша головная боль начинается с читерства.

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

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

Есть много вещей которые можно сделать чтобы предотвратить читерство. Но самый главный принцип(и наверное самый глубокий) очень прост: не доверяй игроку. Всегда ожидайте худшего — что игрок будет пытаться вас обмануть.

Авторитарный сервер и наивный клиент

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

Конечно, сервер может быть взломан, но эта тема выходит за рамки данной серии статей. Тем не менее, использование авторитарного сервера предотвращает широкий спектр читов. Например, вы не можете доверять клиенту уровень жизней игрока. Взломанный клиент может изменить локальную информацию и сообщить что у игрока 100000% жизней, но сервер знает что жизней всего 10% и если игрока атакуют, он умрет вне зависимости от того, что об этом думает клиент.

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

— Я на (10, 10)
А секундой позже:

При этом возможно он «прошел» через стену или двигается быстрее чем ему положено.

А вот правильная парадигма. Сервер знает что игрок находится в позиции (10, 10); клиент говорит: «Я хочу подвинуться на единицу вправо». Сервер обновляет позицию игрока на (11, 10), производя все необходимые проверки, а затем отвечает игроку: «Вы на (11, 10)»:

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

Разбираемся с сетями

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

Давайте поговорим о физике. Предположим что вы находитесь в Сан-Франциско и подключаетесь к серверу в Нью-Йорке. Это примерно 4000 километров. Так как ничто не может передвигаться быстрее скорости света, в лучшем случае сигнал дойдет за 13 миллисекунд. Но весьма маловероятно, что у вас будет такая хорошая связь. В реальном мире информация не идет прямым путем, причем не со скоростью света.
Так что давайте предположим, что это занимает 50 мс. И это практически лучший сценарий. А что если вы подключаетесь к серверу в Токио? А что если линия связи перегружена? В таких случаях задержки доходят до половины секунды.

Вернемся к нашему примеру. Пусть клиент отправляет сообщение:

— Я нажал на стрелку вправо.

Сервер получает запрос через 50 мс и сразу отправляет обратно обновленное состояние.

Это сообщение дойдет до пользователя еще через 50 мс.

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

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Резюмируя

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

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

Часть II

Введение

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

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

Предсказание на стороне клиента

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

Мы можем использовать это если игра достаточно детермениртована (то есть результат определен командами и предыдущим состоянием).

Предположим что у нас лаг 100 мс и время перемещения персонажа составляет 100 мс. При использовании наивной реализации, время действия составит 200 мс.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

Так что вместо того чтобы отправлять команду и ждать пока придет новое игровое состояние чтобы отрендерить его, мы можем отправить команду и начать рендерить результат как если бы команда уже была выполнена. И, разумеется, надо ждать от сервера результата — «настоящего» состояния игры, которое по большей части будет совпадать с локальным состоянием.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

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

Проблемы синхронизации

В предыдущем примере я аккуратно подобрал числа чтобы все отлично работало. Давайте немного изменим сценарий. Лаг будет составлять 250 мс, а анимация передвижения на одну единицу будет длиться 100 мс. А еще давайте игрок дважды быстро нажмет на стрелку вправо.

При использовании текущего подхода вот что произойдет:

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Мы столкнулись с интересной проблемой на t = 250 мс, когда нам пришло новое состояние. Клиент предсказал x = 12, но сервер говорит что x = 11. Так как сервер авторитарный, клиент должен передвинуть персонажа обратно на x = 11. Но позже, на t = 350, сервер говорит что x = 12, так что персонаж опять прыгает, но на этот раз вперед.

С точки зрения игрока, он нажал на стрелку вправо дважды, так что персонаж переместился на две единицы вправо, постоял там 50 мс, прыгнул на единицу влево, постоял там 100 мс и прыгнул на единицу вправо. Конечно, это совершенно неприемлимо.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Согласование с сервером

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

Но обойти эту проблему не так уж сложно. Давайте будем добавлять к каждому запросу от клиента его номер. А сервер при ответе будет добавлять номер последнего обработанного запроса. И давайте хранить на клиенте копию всех команд, отправляемых на сервер.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Итак, на t = 250 клиенту приходит «x = 11, последняя команда #1». Клиент удаляет все команды до #1 включительно, но оставляет копию #2, о которой еще не знает сервер. Он применяет полученное от сервера состояние (x = 11), а затем применяет ввод, который еще не виден серверу. В данном случае #2 «вправо на 1 единицу». Конечный результат x = 12, что соответствует истине.

Далее, на t=350, от сервера приходит новое состояние: «x = 12, последняя команда #2». Клиент удаляет все копии команд до #2 включительно, а затем применяет состояние x=12(ничего не изменилось). Так как более нет необработанных команд, на этом все заканчивается, с корректным результатом.

Мультиплеер игры что это такое. Смотреть фото Мультиплеер игры что это такое. Смотреть картинку Мультиплеер игры что это такое. Картинка про Мультиплеер игры что это такое. Фото Мультиплеер игры что это такое

Итоги

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

Но не стоит на самом деле обновлять жизни персонажа, пока сервер не пришлет обновленное состояние.

Из-за сложностей игрового состояния, которое не всегда легко откатить, возможно не стоит убивать персонажа даже если уровень его жизни упал ниже нуля. Что если что другой игрок вылечился прямо перед вашей атакой, но сервер еще об этом не сообщил?

Прим. перев. Я бы убивал персонажа сразу, но обеспечил персистентность(возможность откатывания состояний). Так будет проще писать переносимый код, выполняющийся и на сервере и на клиенте. В любом случае, как вы убедитесь в этом позже, это придется делать.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *