StarFight

Жанр: Action, MMO, космосимуляторы, Sandbox.

Технологии: Visual Studio + ReSharper, C#, PHP, MySQL, SlimMath, Flash (ActionScript 2, 3), XAMPP, Joomla CMS, JavaScript, Flexible Game Server

Разработка началась в 2009 и длилась до конца 2012, после чего проект был заморожен.

Проект описывает Влад Таранов:

Когда-то давно, когда я ничего не знал о 3D, я мечтал создавать виртуальные миры. Это звучит громко, да? Но когда я начал изучать компьютерную графику, меня ждало разочарование. Я понял одну вещь. С помощью 3D нельзя создать мир. Потому что вся трехмерная графика – это не более чем иллюзия. Она создает только видимость той реальности, которую хочет показать автор.

И сейчас, после двух лет использования Unity, у меня осталась моя мечта. Потому что то, что я больше всего не полюбил в существующих играх – это обман. Игрок узнает о событиях, которые якобы произошли в игровом мире, но на самом деле это — элемент сценария и не более того. Ничего в действительности не происходило, но игроку предоставляется как данность, что событие произошло. Ресурсы появляются из ниоткуда, противники приходят из «ничего» и туда же возвращаются.
Моя идея — это создание динамически изменяющегося мира, который ведет себя максимально правдиво по отношению к игроку. Если предоставляется информация об упавшем метеорите, игра должна произвести «симуляцию» траектории падения, убить персонажей, которые находятся в зоне падения и ранить тех, что находятся близко. Строения должны понести урон. Деревья и трава — сгореть.
В первую очередь речь идет о «продвинутом» AI. Неплохой пример — система «A-Life» из S.T.A.L.K.E.R. Абсолютно каждый NPC персонаж должен иметь свои цели, планы, приоритеты. NPC должны уметь объединяться в группы, когда это выгодно. Ресурсы не должны падать с неба. Все, что появляется, должно уже существовать до этого в какой-либо другой форме.
Я очень заинтересовался новой системой «динамических событий», которую предлагают разработчики Guild Wars 2. Любые действия (в том числе действия NPC) должны иметь последствия. Если город захвачен разбойниками — должны прекратиться торговые поставки из этого города, что приведет к повышению цен в соседних городах.
Почему именно этот жанр? Все дело в том, что реализовать изменяющийся мир в космосе гораздо проще, чем на поверхности планеты. Огромные пустые пространства в космосе — это вполне приемлемо. Не требуется такой детальной проработки мира, как, например, в World of Warcraft. Объекты не нужно стыковать между собой, они все «сферические и в вакууме». Это значительно упрощает обучение NPC строительству всего, что они захотят.
В моем представлении удовольствие от игры должно быть не только в действиях с персонажем. Игроку должно быть интересно наблюдение за деятельностью NPC. Которые вполне могут провести свою жизнь без игрока. Жизнь, которая будет является не тупой последовательностью действий, а, наоборот, приключением.
Любое здание, объект — должны быть кем-то и для чего-то созданы. Сражение – произойти. И это не просто на словах. Чтобы событие могло быть случившимся сейчас, должно быть время в прошлом, когда это событие действительно происходило.
Мой движок включает в себя способ управления перемещением корабля, возможность распределенной симуляции физики, бесконечные размеры игрового пространства (разве double может кому-то быть мало?) и многое другое. При приближении игрока к границам известного пространства, мир будет генерироваться «на лету».
Осталось сделать сам игровой контент.

При чем здесь стратегия? Игроки могут строить сооружения в космосе. Вплоть до создания собственных независимых локаций, которыми пользуются NPC. Можно захватывать объекты других игроков, в общем как в EvE.

Очень кратно о том, что уже сделано
Серверная часть:

  1. Логин сервер (авторизация, выбор сервера мира, взаимодействие с сервером мира)
  2. Сервер чата (общий и приватные сообщения)
  3. Сервер ресурсов для клиента (XML, текст, настройки подключения к серверу)
  4. Сервер мира:
    1. Взаимодействие с сервером чата
    2. Используется система эмуляторов, которые подключаются к серверу мира и занимаются расчетами физики.
    3. Система для размещения "гигантских объектов" - планет и т.п. Обеспечивает область видимости таких объектов.
    4. Система для изменения скайбокса клиента при перемещении по вселенной

Клиентская часть:

  1. Может использоваться в качестве эмулятора
  2. Управление кораблем - передвижение WASDQEZ и мышь.
  3. Управление группами оружия - ручное и автонаведение.
  4. MusicBox - скачивание музыки, распределение по жанрам для воспроизведения в определенных обстоятельствах
  5. Универсальная камера
  6. Камера, показывающая цель при автонаведении
  7. Поддержка запуска в браузере


Общее:

  1. Планеты в реальном масштабе (генерируются случайно, имеют случайный цвет и вариации размера)
  2. Слоты на кораблях для оборудования
  3. HP, взрыв при уничтожении корабля, нанесение урона
  4. Несколько типов урона и система энергетических щитов (не стандартный подход к щитам в космосиме)
  5. Группы оружия (игрок не может управлять автонаведением каждого оружия по отдельности, а только группами)
  6. Респавн после уничтожения

Поддержка

E-Mail: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Skype: vbprogr

Сотрудничество

По вопросам сотрудничества пишите на Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.

Наша специализация - сетевые технологии для игр.