Серия «LTA: Lights! Thrusters! Action! - Разработка игры»

LTA: Lightyears! Thrusters! Action! - Итоги недели

Привет! Это очередной выпуск девлога. Вот что произошло с игрой за неделю:

Улучшение AI врагов

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

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

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

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

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

На этом у меня пока все. Спасибо за внимание :)

У игры теперь есть страница в Стим. Я буду очень рад, если вы добавите игру в список желаемого: https://store.steampowered.com/app/2684470/LTA_Lightyears_Thrusters_Action/

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

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

https://www.reddit.com/r/LTADevLog/

Показать полностью 2

LTA: Lightyears! Thrusters! Action! - Итоги недели

Привет! Это очередной выпуск девлога. Вот что произошло с игрой за неделю:

Окно журнала событий

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

Освещенность планет

В расчетах теперь учитывается положение планеты относительно звезды. На планетах теперь видна граница дня и ночи.

Горящие обломки кораблей

Поправил давний баг, из-за которого обломки кораблей не реагировали на повышение температуры вокруг. Теперь, когда это исправлено, они могут загореться при взрыве или пролетая рядом с планетой, у которой плотная атмосфера.

Оружие для вражеских кораблей

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

Больше нет ограничений на оружие, которое может использовать вражеский корабль. Раньше у вражеских кораблей было свое оружие, а у игрока - свое. Теперь враг может подобрать, установить любое оружие и хорошенько вдарить игроку, например, из лазеров:)

На этом у меня пока все. Спасибо за внимание :)

У игры теперь есть страница в Стим. Я буду очень рад, если вы добавите игру в список желаемого: https://store.steampowered.com/app/2684470/LTA_Lightyears_Thrusters_Action/

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

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

https://www.reddit.com/r/LTADevLog/

Показать полностью 4

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу

И после полугода соло-разработки у игры, наконец, есть страница в Стим.

Буду очень рад, если вы добавите игру в список желаемого: https://store.steampowered.com/app/2684470/LTA_Lightyears_Thrusters_Action/

Я разрабатываю небольшой рогалик про космос. Игра называется "LTA: Lightyears! Thrusters! Action!" Хочу о ней рассказать.

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост
Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

Очень сильно вдохновляюсь FTL, Rimworld, Dwarf Fortress и Pirates! Сида Мейера. Стараюсь, чтобы и моя игра могла рассказывать интересные истории.

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

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

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

В разработке я делаю упор на три основных механики:

Симуляция космоса

Хочется, чтобы космос жил своей жизнью и мог создавать разные интересные ситуации. Для этого я стараюсь просчитывать много параметров для взаимодействия игровых объектов между собой. Учитываются такие параметры, как: масса звезд и планет, просчитывается гравитация, орбиты планеты, тепловая энергия, выделяемая звездами, плотность атмосферы планеты и тд. Все вместе это взаимодействует между собой и создает непредсказуемые ситуации.

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

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

Взаимодействие между персонажами

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

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

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

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

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

Генерация истории

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

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

Много лет, работая гейм-дизайнером, я делал игры, которые “надо”. Теперь я делаю игру, которую хочу Инди, Инди игра, Gamedev, Разработка, Unity, Космос, Steam, Видео, Без звука, Длиннопост

Пока игрок летает по космосу, контроль над секторами может переходить от одной фракции к другой.

Часть из того, что я описал здесь, уже реализовано в игре. Часть еще предстоит сделать.

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Еще есть страница на реддите: https://www.reddit.com/r/LTADevLog/

Спасибо за внимание :)

Показать полностью 7 3

LTA: Lightyears! Thrusters! Action! - Итоги недели и трейлер игры:)

Привет! Это новый выпуск девлога. Что нового за неделю:

Трейлер игры

У игры наконец-то есть трейлер, который показывает актуальный на данный момент геймплей.

Генерация звезд

Доработал генерацию звезд. Теперь в системах создаются звезды разного спектрального класса.

LTA: Lightyears! Thrusters! Action! - Итоги недели и трейлер игры:) Инди игра, Gamedev, Разработка, Инди, Космос, Видео, YouTube, Без звука, Длиннопост
LTA: Lightyears! Thrusters! Action! - Итоги недели и трейлер игры:) Инди игра, Gamedev, Разработка, Инди, Космос, Видео, YouTube, Без звука, Длиннопост

От класса звезды зависит ее размера, масса и температура. Ну и цвет конечно же:)

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

Улучшения карты сектора

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

Орбиты планет

В режиме карты теперь показываются орбиты планет звездной системы.

На этом у меня пока все. Спасибо за внимание :)

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Еще есть страница на реддите:

https://www.reddit.com/r/LTADevLog/

Показать полностью 2 4

LTA: Lightyears! Thrusters! Action! - Итоги недели

Привет! Это новый выпуск девлога. За прошлою неделю в игру добавилось кое-что:

Карточка персонажа

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

Режим отображения: карта сектора

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

Подсветка лута

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

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

Звезды и орбиты планет

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

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

На этом у меня пока все. Спасибо за внимание :)

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Еще я создал страницу игры на реддите. Пишу новости и туда, добро пожаловать: https://www.reddit.com/r/LTADevLog/

Показать полностью 4

LTA: Lightyears! Thrusters! Action! - Итоги недели

Привет! Продолжаю разработку. Добавил в игру некоторые новые механики.

Приближение и отдаление камеры колесом мыши

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

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

Назначение членов команды на посты в корабле

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

В интерфейсе показывается, чем сейчас занят каждый космонавт.

Разметка комнат в корабле

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

Редактор персонажей

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

Собранную команду можно сразу отправить на посты в кораб

Журнал событий

Сделал журнал, в который будет добавляться информация о событиях в игре.

Экран завершения игры

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

На этом у меня пока все. Спасибо за внимание :)

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Показать полностью 8

LTA: Lightyears! Thrusters! Action! - Итоги недели

Привет! Продолжаю разработку. Какая неделя - такие итоги.

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

Конструктор корабля игрока

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

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

Новые космические фоны

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

Внешний вид игровых экранов

LTA: Lightyears! Thrusters! Action! - Итоги недели Инди, Gamedev, Инди игра, Разработка, Unity, Видео, Без звука, Длиннопост

Немного привел в порядок игровые экраны, чтобы они смотрелись, как части одной игры.

Система сохранений

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

На этом у меня пока все. Спасибо за внимание :)

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Показать полностью 1 3

В Питере шаверма и мосты, в Казани эчпочмаки и казан. А что в других городах?

Мы постарались сделать каждый город, с которого начинается еженедельный заед в нашей новой игре, по-настоящему уникальным. Оценить можно на странице совместной игры Torero и Пикабу.

Реклама АО «Кордиант», ИНН 7601001509

LTA: Lights! Thrusters! Action! - Итоги недели и немного внутренней кухни

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

Если не видели прошлые посты, то кратко расскажу, чем вообще занимаюсь. Я делаю рогалик про сражения в космосе и управление командой корабля. Очень сильно вдохновляюсь таким играми, как FTL, Dwarf fortress, Rimworld, Pirates! Gold. Последняя просто взрывала мне мозг в детстве, наиграл в нее на Сеге, наверно, больше часов, чем во все скайримы вместе взятые:)

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

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

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

Потом подумал, что лучше будет сделать посты в виде отдельных комнат, как в FTL.

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

LTA: Lights! Thrusters! Action! - Итоги недели и немного внутренней кухни Gamedev, Инди, Инди игра, Разработка, Unity, Видео, Без звука, Вертикальное видео, Длиннопост

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

Интерьер корабля решил собирать из тайлов - у меня же все-таки рогалик:)

Для того, чтобы рисовать интерьеры корабля, я использовал редактор Tled. Он удобный, сохраняет разные форматы, поддерживает слои. Давно хотел разобраться, как им нормально пользоваться в своих проектах, но не доходили руки. Теперь дошли.

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

LTA: Lights! Thrusters! Action! - Итоги недели и немного внутренней кухни Gamedev, Инди, Инди игра, Разработка, Unity, Видео, Без звука, Вертикальное видео, Длиннопост

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

Затем начал разбираться с алгоритмом поиска пути. Есть хорошая статья, которая довольно подробно рассказывает, как работают такие алгоритмы: https://habr.com/ru/articles/444828/ Я думал сначала сделать свою реализацию этого алгоритма, но друг подсказал мне найти готовое решение, и оказалось, что их полно в Asset Store. После неких манипуляций алгоритм худо-бедно заработал.

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

Не с первого раза

Но это заработало:)

После этого нарисовал уже “чистовое” убранство корабля в редакторе.

И подготовил подробнейшую документацию, как я это вижу в игре:

LTA: Lights! Thrusters! Action! - Итоги недели и немного внутренней кухни Gamedev, Инди, Инди игра, Разработка, Unity, Видео, Без звука, Вертикальное видео, Длиннопост
LTA: Lights! Thrusters! Action! - Итоги недели и немного внутренней кухни Gamedev, Инди, Инди игра, Разработка, Unity, Видео, Без звука, Вертикальное видео, Длиннопост

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

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

Нужно еще много думать над тем, как это все будет играть во время быстрого космического боя, но это уже проблемы, которые нужно решать по мере поступления :)

На этом у меня пока все. Спасибо за внимание :)

Если хотите следить за проектом еще и в телеге, то подписывайтесь, пожалуйста: https://t.me/CubicPieLive

Показать полностью 4 7
Отличная работа, все прочитано!