Как стать автором
Обновить

Как я одержал победу над создателем чита для MMO-игры

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров18K

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

Так вот, однажды до нас дошли слухи, что для нашей игры появился чит, который начал вызывать у игроков негодование. На тот момент у нас трудилось всего четыре программиста, а поскольку этот факт кому-то нужно было расследовать, я выступил добровольцем. Игроки были уверены, что противникам удавалось убить их в игре исключительно благодаря читу. Мы старались убедить людей, что изучаем проблему, но при этом понятия не имели, насколько велик её масштаб.
Читать дальше →

Постмортем: портирование Skyforge на Nintendo Switch

Время на прочтение4 мин
Количество просмотров3.2K

Портирование игр не всегда проходит беспроблемно — одни проекты можно легко портировать, другие — нет. Все зависит от типа игры, платформ и других факторов.

После успешного переноса Warface на Switch мы в студии Allods Team решили портировать нашу MMO Skyforge. Что-то далось очень легко, а что-то — сложнее. Ниже мы перечислим пять вещей, с которыми все прошло как надо, и пять вещей, с которыми возникли трудности.

Читать далее

Myst Online: Uru Live, снова в строю

Время на прочтение1 мин
Количество просмотров1.1K
Интересная своей уникальностью MMOAdventure Myst Online снова возродилась, подобно фениксу из пепла, и на этот раз абсолютно на бесплатной основе. Для кого вышесказанное ни о чем не говорит, поясню. Этот проект тянет свою историю с 2003 года, именно в этом году вышла игра Uru: Ages Beyond Myst, включающая в себя сетевую часть, и позволяющая коллективно решать головоломки игры, игра подразумевала платную подписку для игры через интернет, однако проект не получил широкого распространения и следовательно оказался финансово не успешным, поэтому в 2006 году было принято решение заморозить проект, что не помешало выйти еще 2-м дополнениям к однопользовательской части игры. В 2007 году дистрибьютор игр GameTap попытался возродить проект под именем Myst Online: Uru Live, однако безуспешно, проект опять не смог окупить себя, и уже в 2008 году был снова закрыт, при этом Cyan Worlds получила права на свою разработку. В конце 2008 года Cyan объявил о том что в ближайшее время сделают проект открытым, включая клиентскую и серверную части. И вот 8 февраля 2010 года, был запущен сервер этой удивительной игры, проект получил имя «Myst Online: URU Live Again», так-же разработчики уверяют что работают над подготовкой игры для предоставления ее исходников широкой общественности, что ж, поживем увидим, а пока на сайте игры уже можно скачать клиент, зарегистрироваться, и попробовать себя в качестве исследователя загадочного мира, построенного исчезнувшей цивилизацией D'ni. Так-же разработчики принимают взносы, направленные на дальнейшее развитие проекта.

MMORPG без лишних деталей: год спустя

Время на прочтение2 мин
Количество просмотров20K
Здравствуй, сообщество.

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

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

MMO с нуля. С помощью Netty и Unreal Engine. Часть 1

Время на прочтение58 мин
Количество просмотров53K
Всем привет! В нескольких статьях я хотел бы поделиться опытом создания подобия ММО игры используя Unreal Engine и Netty. Возможно архитектура и мой опыт кому-то пригодится и поможет начать создавать свой игровой сервер в противовес unreal dedicated server, который слегка прожорлив или заменить собой фреймворки для разработки многопользовательских игр такие как Photon.

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

Часть 1. Общая картина, сборка библиотек, подготовка клиента и сервера к обмену сообщениями
Часть 2. Наращивание игрового функционала + алгоритм Diamond Square


MMO с нуля. Часть 2. Наращивание функционала + алгоритм Diamond Square

Время на прочтение127 мин
Количество просмотров15K
Всем привет! В предыдущей части мы разобрались с базовой архитектурой, сетью и обменом сообщениями. Нарастим теперь функционал. Сделаем возможность войти, зарегистрироваться получив при этом сессионный id, который можно в будущем использовать для управления клиентом в процессе игры. Далее мы добавим чат, по сути все работает по его принципу: получили сообщение — разослали подписантам. Сделаем возможность создавать игровые комнаты, где будем собирать игроков и отправлять в бой. Синхронизировать перемещение клиентов и напоследок проверять выстрел на проверочном сервере. Будет много кода, я продолжаю пошаговое описание, чтобы можно было быстро разобраться и воспроизвести для своих нужд. Для тех, кто не знаком с первой частью, но хочет вынести для себя что-то полезное здесь и сейчас, я добавил реализацию алгоритма генерации фрактальных ландшафтов Diamond Square, в начало. Happy coding!

Часть 1. Общая картина, сборка библиотек, подготовка клиента и сервера к обмену сообщениями
Часть 2. Наращивание игрового функционала + алгоритм Diamond Square


Читать дальше →

Другое видение скучных GTD планировщиков через призму RPG игр

Время на прочтение12 мин
Количество просмотров14K

10 слов об идее.


GTD планировщик в виде многопользовательской RPG для команд разработчиков, вот.

Коротко.


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

Lol, это шутка? Да, так и есть, это шутка. Но в каждой шутке, как говорится, есть доля шутки.

…Говоря о лени и ММО, сейчас я задумываюсь, если мне так влом утром вставать на работу, если мне так лень было ходить на пары, если мне нужно огромное количество усилий потратить, чтобы заставить себя наконец открыть Flex Builder и дописать этот глупый проект, почему я 4 месяца не получая за это зарплаты, вставал в 6 часов утра и весь день «работал» в игре? …

Дла заинтересовавшихся или тех, кому просто любопытно — велкам за хабракат. А вот пока картинка на затравку.



Читать дальше

Почему настало время настоящих браузерных 3D-игр!

Время на прочтение11 мин
Количество просмотров37K
Сегодня перед нами открывается масса возможностей по созданию невероятных проектов, которые игроки смогут видеть, не закрывая своего браузера. Речь не просто о красивой “ферме” (их делают давно и успешно, откровений в этой области я не расскажу). Речь о проектах совсем иного рода.

Полноценный шутер в полном 3D? Легко.
MMORPG в соседней от «хабра» вкладке? Тоже не проблема.


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

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

Примечание: материал подготовлен на основе доклада на прошедшей конференции DevGAMM 2014. Под катом немного картинок, но много текста, некоторые расчетные числа по разработке и ряд полезных метрик.

image

Читать дальше →

Ивент для Unity-разработчиков в Харькове

Время на прочтение1 мин
Количество просмотров2.8K
Открылась регистрация на шестую встречу uDev Tech Events! Тема ивента – «Разработка MMO RTS на Unity».

13 апреля Client Development Team Lead в Plarium Артем Дурнев расскажет об особенностях создания мобильных игр на примере успешных проектов Plarium.

Читать дальше →

Описание ММО компонента в составе игрового движка «Tornado»

Время на прочтение2 мин
Количество просмотров7.1K
Долго искал открытый и бесплатный ММО движок в интернете. Либо это был откровенный бред, либо платный проект. Вообще, этих движков среди компаний, делающих ММО РПГ, полно, но каждая компания пишет свой движок. Единого стандарта нет. Пришлось самому его писать — и я таки сделал это. Долго продумывал интерфейс библиотеки. Потом также долго воплощал в жизнь. Потом допиливал безопасность (AES и RSA на основе OpenSSL, проблема «Man-in-the-middle» устранена). Движок получился кроссплатформенным (работа с сетью благодаря boost). Обмениваться пакетами можно как с помощью TCP, так и UDP.
Читать дальше →

Mad Catz сделал то, что просили. Обзор суперлёгких турнирных мышей

Время на прочтение5 мин
Количество просмотров15K
Привет, Geektimes! В прошлом году компания Mad Catz выпустила две очень примечательные игровые мышки — R.A.T. TE (Tournament Edition) и MMO TE. Несмотря на то, что новинки позиционировались как два разных продукта, в сущности MMO TE является слегка усовершенствованной версией R.A.T., заточенной специально для онлайновых RPG, поэтому в рамках данного обзора мы будем рассматривать оба продукта сразу.



Данная пара мышей позиционируется как логическое продолжение линейки манипуляторов Mad Catz, но с иными философией, функционалом и возможностями.
И чем же они отличаются?

Haven and hearth

Время на прочтение4 мин
Количество просмотров3.5K
Не обнаружив статьи про сей шедевр, я решил восполнить информационный вакуум.

Что такое есть этот Haven and hearth


Haven and hearth это бесплатная mmorpg (не условно бесплатная, а бесплатная, внесение денежных средств может быть только в безвозмездных целях и ничего не даёт) с приятной pixel'ной графикой (за исключением анимации животных, она веселит и ужасает), написанная на яве.
Читать дальше →

MMORPG без лишних деталей

Время на прочтение4 мин
Количество просмотров30K


Здравствуйте, меня зовут Алексей и я независимый разработчик игр. Два года назад я уволился из Wargaming чтобы немного поэкспериментировать и сделать MMO игрушку, в которую мне было бы интересно играть. Со временем ко мне присоединилась пара замечательных людей — Александр и Елена Дедковы. Сейчас я кратко расскажу что получилось из этой затеи.
Читать дальше →

Чему ваш банк может научиться у World of Warcraft?

Время на прочтение3 мин
Количество просмотров1.3K
image
Многопользовательские онлайн-игры превратились в крупный бизнес не только для игровых компаний. Существуют «подпольные» рынки, на которых люди тратят вполне реальные деньги на приобретение виртуальных предметов, которые могут обеспечить им преимущество в любимой онлайн-игре. И это не смотря на то, что во многих многопользовательских играх заниматься подобной деятельностью строго запрещено правилами. Но главная проблема не в этом. Ведь там где обмениваются реальные деньги, часто происходят более привычные для реальной жизни кражи и мошенничество.
Читать дальше →

MMO на WebRTC

Время на прочтение5 мин
Количество просмотров29K
image

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

image

Такая организация имеет свои неоспоримые достоинства, например синхронизация игровых состояний клиентов на сервере, простота в реализации и почти фиксированные задержки до пользователя. Там где есть плюсы, обычно обитают и минусы — это ограниченная пропускная способность сервера и довольно большие задержки, если клиент находится далеко от вашего сервера. Как с ними бороться подробно написано в блоге 0fps.net и есть возможность эти проблемы довольно эффективно решать оставаясь в любимой «звездочке» — купить больше серверов, но что делать если вы студент вы ограничены в финансах и горизонтальное/вертикальное масштабирование для вас не вариант?
Как же быть?

Достойный конец: разработчики уничтожили мир игры Planetside метеоритной бомбардировкой

Время на прочтение2 мин
Количество просмотров40K
Серверы игры отключили, устроив перед этим апокалипсис



В 2003 году была представлена ММО игра Planetside. На то время это был интереснейший многопользовательский проект, успешно конкурирующий с другими ММО-играми. Со временем ММО игрушек становилось больше, и Planetside все сложнее было конкурировать с прочими игровыми проектами. Игроки постепенно уходили, и спустя десятилетие разработчики решили прекратить активное развитие игрового мира. Все силы старая команда бросила на развитие второй части игрушки, Planetside 2.

В 2014 году первая версия перешла на free-to-play модель, но средств, получаемых от игроков, все равно не хватало. Фактически, доходы не покрывали даже расходы на содержание серверов. До поры до времени серверы Planetside не отключали, и многие пользователи продолжали изучать игровой мир, который был не так уж и мал. Но всему приходит конец, не является исключением и эта ММО. Студия Daybreak Games объявила о закрытии серверов игры, заметив, что решение о завершении проекта было принято для дальнейшего развития бизнеса компании и из-за ряда технических ограничений самой игрушки.
Читать дальше →

Facebook всё-таки найдёт своё применение для Oculus Rift

Время на прочтение1 мин
Количество просмотров14K
Facebook подготавливает для нас нечто революционное — представьте, что вы общаетесь с людьми как будто в реальном мире! «Это невозможно!» — скажите вы, и будете не правы, ведь поможет компании Цукерберга в этой немыслимой авантюре недавно приобретённая команда Oculus!

Руководитель Oculus VR Брендан Ирибе поделился планами по созданию многопользовательской игры, в которой одновременно смогут находится десятки миллионов людей, и которая будет заточена под использование шлемов виртуальной реальности. И именно здесь отлично смогут помочь ресурсы Facebook с огромнейшей пользовательской базой. Конечной целью своей миссии Брендан видит полное стирание границы между реальностью настоящей и виртуальной, создание метавселенной со множеством виртуальных миров и переходов между ними, но примечает что сейчас графические технологии пока не позволяют добиться этого.

Особенности тестирования мобильной ММО

Время на прочтение4 мин
Количество просмотров10K
Недавно довелось пообщаться с Алексеем Нелюбовым — QA-директором компании Datcroft Games. Сейчас ребята работают над мобильным ММО Action Pixel Wars, проект находится в стадии софтланча. Отдел тестирования сопровождал игру на каждом этапе ее развития, и я решил, что из рассказа Алексея выйдет неплохая статья на хабр.

Далее — прямая речь.

У Pixel Wars долгая и непростая история. Руководствуясь бизнес-целями, мы начали сборку первых прототипов игры в 2016 году. В дальнейшем концепция была полностью переработана с учетом изменившихся реалий рынка, и в софтланч “Пиксели” вышли в конце 2018-го. В ближайшем будущем планируется коммерческий релиз проекта.

image
Читать дальше →

Распределённое серверное решение для ММО проектов (результаты тестирования транспортной части)

Время на прочтение4 мин
Количество просмотров1.2K
По просьбам читателей привожу описание тестирования транспортной части серверного решения на облачной технологии, которое я описывал в прошлой статье. Вначале хочу немного описать, что это такое и для чего его тестировать. Начав свои разработки с построения серверных решений для высоконагруженных ММО проектов в реальном времени, постепенно пришёл к выводу, что для поддержания максимально большого количества клиентов необходимо использовать полностью распределённую систему. Ниже приведу тезисы, на основании которых, разрабатываем сейчас серверные решения.
 
  1. Полное разделение транспортной части проекта от логической части и данных
  2. Максимальная модульность для создания оптимального решения под конкретный проект
  3. Унификация сервисов решения (любую команду может выполнить любой из предназначенных для этого сервисов)
  4. Асинхронное выполнение задач
  5. SQL предназначена только для постоянного хранилища
  6. Использование NoSQL для хранения оперативных данных
  7. Использование системы пулов (многократно используемых групп объектов)
  8. Нет привязки данных к сервисам обработки

Читать дальше →