Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Уникальная игра, объединяющая популярные механики Match3 и пошаговые бои!

Магический мир

Мидкорные, Ролевые, Три в ряд

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

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

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Indiegamedev

С этим тегом используют

Indiedev Gamedev Все
985 постов сначала свежее
19
0pacec
3 года назад
Лига Разработчиков Видеоигр

Опыт разработки первой игры на Unity, часть 3⁠⁠

Ссылка на часть 1

Ссылка на часть 2

Ошибка планирования

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


Так что в этой части будет смена уровня вместо прокачки героев.

Взаимоисключающие цели

Вот какая штука. По моей задумке хочу сделать следующее:

1) Сделать выбор следующей битвы так же, как в AFK Arena сделан мистический лабиринт.

Опыт разработки первой игры на Unity, часть 3 Gamedev, Indiedev, Инди, Unity, Видео, Длиннопост

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

2) Сделать выбор следующей битвы максимально простым.


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


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

Грамотно озвученная проблема — часть решения

Хмм, в лабиринте игрок принимает решение… Делает выбор… Планирует маршрут… Стоило только озвучить проблему — тут же пришло в голову решение. Сочетает и простоту восприятия, и предоставляет игроку выбор, игрок ощущает, что он принимает решение. Встречайте!

Опыт разработки первой игры на Unity, часть 3 Gamedev, Indiedev, Инди, Unity, Видео, Длиннопост

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


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

Объекты или UI?

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


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


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

Завершение биты — переход на экран выбора — начало битвы

Есть два варианта:


1) Битва и экран карты— две отдельные сцены.

2) Используется только одна сцена — но при «переходе» активируются / деактивируются соответствующие объекты.


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

Переделка архитектуры объектов на сцене

Суть вот в чем. Будет примерно следующее

https://pastebin.com/rnRLrVMv

При «переходе» на экран карты отключаются все объекты, относящиеся к битве, и включаются объекты, относящиеся к карте. При выборе уровня все происходит ровно наоборот

Но сейчас у меня при старте на сцене куча объектов безо всякого порядка — в основном из-за того, как сделан спавн героев игрока и противника

https://pastebin.com/j3rZkH9Q

Решаю просто: перед вызовом спавна героев создаю два дополнительных объекта — для героев игрока и героев противника соответственно

https://pastebin.com/SJVLNdCf

Какое-то адское извращение, но работает же!


После этого при спавне героев достаточно указать, что соответствующий _goParent… их родитель. Это так мило — теперь у них есть родитель.


Главное, что мне это дало — как только spawner отключается, пропадают все герои и панель с их скиллом. И появляются при его включении.


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

А дальше что?

Ах да — забыл. Теперь архитектура объектов на сцене выглядит вот так

Опыт разработки первой игры на Unity, часть 3 Gamedev, Indiedev, Инди, Unity, Видео, Длиннопост

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


Хммм, а как это сделать кодом?

Конечно же, первым делом полез в интернет! Наверняка уже кто-то такое делал) Только ничего подобного не нашел. Хорошо, придется думать.


У меня есть повторяющийся паттерн поведения: 1 — 2 — 1 — 2 и так далее. Значит, мне нужно сделать так, чтобы на экране появлялась комбинация "1 — 2". Хотя стоп — а вдруг я захочу сделать 1 — 2 — 2 — 2 — 1 или что-то такое.


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


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

Опыт разработки первой игры на Unity, часть 3 Gamedev, Indiedev, Инди, Unity, Видео, Длиннопост

Ну и что я натворил

https://pastebin.com/TU2Hzt7r

Вызывается так


for (int i = 0; i < _maxLvl; i++)
{
SpawnMap(i, i);
}

Ура! Чем нравится это решение: вместо второй «i» могу подставить 1 или 2. Например, мне нужна последовательность 1 — 1 — 2 — 1 — 2 — 2 — 2.


Тогда я делаю что-то типа такого

Вызов ее через for, но вместо _maxLvl будет 1 («SpawnMap(i, 1);»).

Вызов ее через for, но вместо _maxLvl будет 2 («SpawnMap(i, i);»).

Вызов ее через for, но вместо _maxLvl будет 2 («SpawnMap(i, 2);»).


И да, в первом случае for не нужен, но это для меня. Иначе могу запутаться.

Разделение битв и особой сущности

По задумке с одной стороны будут битвы, с другой — будет находиться эта самая сущность. Но тут вообще просто — создаю функцию SetBtnType(int type)

https://pastebin.com/hVY2t8wY

И добавляю ее вызов в SpawnMap() куда-нибудь в конец


SetBtnType(howManyConverter(howMany));
_startPoint += directionY;

Тут я понимаю, что забыл повесить какой-нибудь скрипт на кнопку карты. Так что делаю новый скрипт ClickMapBtn и вешаю на префаб кнопки карты. Щас будет полное извращение, но в этом скрипте у меня будет в том числе храниться индекс этой кнопки 0_о


Конечно, и в самом спавнере еще нужно добавить массив с кнопками.


Перед тем, как сделать переключением «состояния» рабочим, нужно сделать еще одну вещь.

Сброс параметров всего, что отключается

Помните DEBUG_SWITCH, которая просто отключает / включает объекты? Забудем о ней! Теперь на каждом объекте есть скрипт, который не просто отключает объекты, а еще делает что-нибудь с их параметрами, если это нужно.


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


Какие типовые сущности у меня есть? Герои, кнопки их скиллов и кнопки карты.


Сходу наткнулся на интересное архитектурное решение. По какой-то причине контроль ползунков на кнопке использовании скила у меня находится… В скрипте Characteristics. Это гениально, не иначе. Значит, переношу всю эту систему туда, где ей самое место — в скрипт копки. А Characteristics будет туда только передавать актуальные данные.


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


Вот такая штука теперь у меня переключает «активные сцены»

https://pastebin.com/6vVgSvPC

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


А всякие WakeUp вообще простейшие

https://pastebin.com/MbEEQMx2

В итоге получилось вот так

При респавне герои начинают с начальными характеристиками.


Следующая задача — поменять сущность имеющихся спавнеров. Теперь их задачей будет что-то типа инициализации объектов: создание, выдача параметров, но не появления на экране. За появление отныне отвечает SwitchActiveState, в котором у меня и происходит переключение. Это ответственная задача, но я верю в него.

Но это еще не все!

Игра умеет менять состояние "битва / карта", теперь нужно сделать так, чтобы кнопки на карте запускали битву — причем разную в зависимости от кнопки!


Для этого вернусь в скрипт, спавнящий на карте кнопки боев и добавлю что-то типа такого

https://pastebin.com/36AhBd8M

Гляньте, как классно все получается! Номер уровня увеличивается только у кнопок по центру и крайних левых

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

В бой!

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

https://pastebin.com/Qqu2WJpL

И происходит магия!

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


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

Результат

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

https://pastebin.com/5JL4yLbh

Опыт разработки первой игры на Unity, часть 3 Gamedev, Indiedev, Инди, Unity, Видео, Длиннопост

Уф, теперь можно заняться прокачкой героев. Вернусь, когда с ней закончу!

Показать полностью 5 3
[моё] Gamedev Indiedev Инди Unity Видео Длиннопост
9
8
RaveGame
3 года назад
Лига Разработчиков Видеоигр

Game Jam c призовым фондом 60 000р!⁠⁠

Всем привет!

Молодая и амбициозная компания Rave Technology

проводит GAME JAM — конкурс на разработку мобильной игры!


Ждем всех, кто любит игры также, как мы!

Почему стоит учавствовать?

🔸 3 призовых места по 20 000р 💰

🔸 трудоустройство в компанию для лучших

🔸 совместная разработка для лучших проектов

Джем длится 9 дней с 11 по 19 декабря! Ждем тебя!
Советуем последний день отвести на оформление странички на itch.io, создание и выкладывание билда. Чем привлекательнее будет выглядеть ваша страница - тем больше людей захотят оценивать вашу игру и шансы на победу в номинации "народное голосование" возрастут
Оформление: скрины, описание, мини-трейлер

ссылка на джем: https://itch.io/jam/ravegame

Подробная информация:

Призовые номинации:

лучшая игра по мнению судей — 20 000р

лучшая игра по мнению организаторов — 20 000р

лучшая игра по мнению самих участников — 20 000р

Важно! Лучшие исполнители получат возможность продвигать готовые и делать новые игры вместе с нами!

Что делать? Мобильную игру 2D/3D в любом жанре по теме, которую мы объявим 11 декабря в 9:00 в начале джема.

Какие правила?

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

добавить игру в формате HTML 5 (WebGL) на страницу джема! После начала джема на сайте появится кнопка загрузить проект.

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

можно использовать любые средства

однако настоятельно рекомендуем использовать только легально приобретенные материалы ( ассеты, звуки, модельки и т.д.)

Не должно быть неприемлемого контента

Тема будет объявлена 11 декабря в 9:00 в начале джема

Кого ждем? Всех желающих 16+

Самую актуальную информацию ищите в Discord.

Нет команды? Не проблема! Участвовать можно одному или найти команду в нашем чате в Discord.

Критерии оценки:

Fun

Art (оригинальное визуальное оформление)

Gameplay

Sound design

Theme interpretation

Частые вопросы:

- Кто может участвовать? Любой человек 16+ лет

- Почему я не вижу темы джем? Тема будет объявлена 11 декабря в 9:00 в начале джема

-Что делать, если нет команд? Можно объединиться в команду с другими участниками в чате.

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

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

-Могу ли я использовать код и ассеты из других своих игр с предыдущих джемов? Да, можете использовать все, на что есть легальное право, но будет круто, если будет уникальное наполнение!

Кто будет оценивать?

Cудьи:

Илья Карельцев — организатор джемов, разработчик на Unity, создатель собственных курсов по Unity, опыт 8 лет

в разработке

Чат в Telegram для участников с важной информацией: https://t.me/+G7XlqmM_JiVhNmVi

Чат в Telegram для участников для обсуждения: https://t.me/+sYq6FUxBCz1mNDIy

Чаты в Дискорде для поиска команды и с важной информацией https://discord.gg/t4y2zvEw

Game Jam c призовым фондом 60 000р! Инди игра, Indiedev, Gamejam, Gamedev, Игры, Длиннопост
Показать полностью 1
[моё] Инди игра Indiedev Gamejam Gamedev Игры Длиннопост
6
24
0pacec
3 года назад
Лига Разработчиков Видеоигр

Опыт разработки первой игры на Unity, часть 2⁠⁠

Ссылка на часть 1

Ссылка на часть 3

Часть вторая — в которой я сдаюсь и опускаю руки

Оказалось, что вытянуть нужные мне данные — крайне сложная задача. Я пересмотрел кучу роликов, прочитал кучу информации, но все бесполезно. Несколько дней экспериментов — каждый раз одно и то же. Ошибка, ошибка, сплошные ошибки… Им не было конца

Заключение

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

Так, а это что за текст?

Ахах, сдался — как же! Просто скипнул эту часть и перешел к следующему этапу. Благо, пока что это можно сделать относительно безболезненно. К загрузке данных вернусь как-нибудь потом. Итак, поехали дальше!

О возникших проблемах

Главная проблема — я вообще не знаю, как работать с таблицей, которая находится где-то там в гугле. Вторая — мой навык проггера. Он крайне низок — что-то около джуна (джун минус минус, ориентировочно). И третья — формат таблицы (о нем чуть ниже)

Нашел такое решение. И оно работает!

Смог адаптировать под моих героев и записать в них данные из таблицы! Проблема пришла внезапно. На первом листе у меня находятся, по сути, ссылки на айдишники из других листов. А cvs, насколько понял, не позволяет работать с другими листами! Штош, ищем другие варианты.

Поиски привели к https://docs.google.com/spreadsheets/d/*/expor? format=cs? edit#gid=0, где * это id таблицы, а после gid айди листа.

Ура — unity возвращает адрес нужного листа! Но данные все равно берутся с первого листа, агрррх! Я отчаялся. Почти потерял надежду. И тут, неожиданно, нахожу его: https://docs.google.com/spreadsheets/d/{key}/gviz/t? tqx=out:csv&sheet={sheet_name}. Ура, работает! Берет данные именно с нужного листа. Но вылезли баги — все id обрамлены теперь в « ». Решилось просто — указал, что нужно убирать символ ".

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

Итог вы знаете — пока так и не получилось

Следующий шаг

Удаляем все эксперименты — возвращаемся к самому началу до экспериментов с таблицами.


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

Выдал героям и противникам фейковые характеристики, добавил кнопки для использования скилла. Если мана накопится, то по нажатию герой делает БУМ!


Модернизировал выбор цели героем — теперь есть не только сингл-таргет скилл, но и бьющий несколько противников

Изначальный код по поиску ближайшего объекта взят с Unity. Так и не нашел способ вставить сюда форматированный код - если подскажете, покажу.


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

Еще и здоровье теперь не просто отнимается, а делает это красиво и постепенно. Циферки это здоровье — они дублируют полоску здоровья с кнопки скилла. Потом от них избавлюсь

Что вообще происходит на видео

Герой с 1000 здоровья это герой 1, его кнопка Skill Hero 1. По нажатию, если мана заполнилась, он бьет одного ближайшего противника


Герой с 2000 здоровья, соответственно, герой 2. По нажатию на его кнопку, он бьет всех противников, которые находятся на дистанции атаки


Естественно, количество кнопок зависит от количества героев — и у каждого свой скилл

Возникшие проблемы

Первая — архитектура. Уже начинается непонятно что — что-то откуда-то вызывает, что-то при этом происходит. В итоге сделал в confluence кучу страниц с названиями объектов и префабов. В них — страницы со скриптами. И в этих страницах описание того, что они делают со ссылками на те скрипты, которые вызывают. Надеюсь, это немного поможет упорядочить то, что у меня там происходит.

Вторая тоже относится к архитектуре, но немного иначе. Например, изначально был скрипт Fight, в котором есть метод Attack(). В начале все было хорошо — а сейчас понадобилось использовать умения. Если все оставить как есть, то Attack() будет вызывать UseSkill(), но это скилл должен вызывать атаку! Поэтому пришлось немного переделывать такие моменты. Теперь Fight() только определяет само состояние атаки и ее возможность, а UseSkill() используется в другом месте

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

Немного важностей

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

private IEnumerator UpdateCurHealth()

{

while (_prevHealth > _curHealth)

{

yield return new WaitForSeconds(.1f);

_prevHealth--;

_healthCount.text = _prevHealth.ToString();

if (_prevHealth <= _curHealth)

{

_prevHealth = _curHealth;

StopCoroutine(UpdateCurHealth());

}

}

}

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

Следующий этап

А дальше у меня прокачка! Научу героев получать опыт и повышать уровень

Показать полностью 2
[моё] Gamedev Indiedev Инди Unity Видео Длиннопост
35
22
InsilentiumCCG
InsilentiumCCG
3 года назад

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy"⁠⁠

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

Изначально, мы хотим ознакомить вас с трейлером, дав возможность увидеть игру в действии.

Чем Insilentium может вас увлечь?

Прежде всего, мы поставили перед собой две цели. Создать игру, в которой сохранена основная механика CCG / TCG, НО при этом не попасть в ловушку создания «просто еще одного так называемого убийцы Hearthstone» или клона любой другой существующей карточной игры. Это было достигнуто за счет добавления нескольких функций, которых нет в типичных CCG.

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

Непосредственно поле битвы

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

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

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

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


Что насчёт логики колод?

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

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

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

Что касается карт в руке игрока, они перетасовываются в колоду в конце своего хода, и игрок берет новую руку. Оба правила являются очень большим отклонением от нормы игр CCG.


Система уровней

Система уровней заменяет систему энергии, используемую во многих типичных CCG. Если, к примеру, взять Magic the Gathering, у каждой фракции есть своя «Земля», которая затем генерирует ману. Проще говоря, 1 земля = 1 используемая мана, и у каждой карты есть мана-стоимость (все на самом деле немного сложнее, но это упрощенная версия).

Insilentium не использует систему манны, вместо этого каждый игрок может разыграть 2 карты за ход (за исключением первого хода, где у вас есть 1 только действие), и систему уровней, который автоматически увеличивается каждые 4 хода.

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

История игры

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

Insilentium — мобильная коллекционная карточная игра в стиле "Dark Fantasy" Android, Мобильные игры, Инди игра, Indiedev, Google Play, iOS, Игры, Фэнтези, Видео, Длиннопост

Немного о нашей маленькой инди-студии?

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

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

Но во время этих встреч мы нашли решение. Мы быстро поняли, что всех объединяет одно: мы были большими поклонниками жанров CCG / TCG, играя в такие игры, как Magic the Gathering, HearthStone, Solforge и многие другие.


***********************************************************************************************************

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

Магазин Google Play:
https://play.google.com/store/apps/details?id=com.monolithmi...
Группа Вконтакте:
https://vk.com/insilentiumccg
Наш дискорд
https://discord.com/invite/qpjRzHMe9K

Показать полностью 6 1
[моё] Android Мобильные игры Инди игра Indiedev Google Play iOS Игры Фэнтези Видео Длиннопост
14
Charge.GS
Charge.GS
3 года назад

Розыгрыш!!!⁠⁠

💁‍♂Лирическое отступление + розыгрыш внутри🎀

Вот и стало в арсенале Charge на один слот больше: вчера стрельнула "Atria-1" в раннем доступе.
Это было нелегко... признаться, первые две ступени отвалились и взорвались, зато третью🚀 мы оперативно доставили в стратосферу Steam в целости и сохранности.

Честно говоря, работы стало в разы больше и последующие части игры будут добавляться в ближайшем будущем. Но в целом докладываем, что всё хорошо✨
С чем, собственно, мы себя и вас, наше бравое сообщество, поздравляем! Ура!🎉 Ура!🎉 Ура!🎉

Мы так подумали - пора бы уже набирать армию💪🏻
Под это дело, вдогонку запускаем конкурс💣, в начинке которого РОЗЫГРЫШ КЛЮЧЕЙ для Атрии🔑

А оболочка состоит из несложных условий участия:
1⃣Добавить Atria-1 в список желаний в STEAM
2⃣Добавить разработчиков (Charge GS) в друзья на странице в STEAM
3⃣Поделиться ссылкой розыгрыша с друзьями в любой из соц.сетей
4⃣Заполнить форму на сайте
5⃣Вступить в сообщество https://vk.com/gamedevinrussian

Инициировать процесс участия можно прямо сейчас по ссылке⚡:
https://ru.chargegs.com/contest.html

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

Выражаем благодарность за сотрудничество и поддержку сообществу
GameDev по-русски 🤜🏻🤛🏻

Спасибо за внимание! Спасибо за поддержку! Желаем вам сил и хорошего настроения!

Розыгрыш!!! Indiedev, Gamedev, Игры, Розыгрыш, Инди, Инди игра, Разработчики, Конкурс
Показать полностью 1
[моё] Indiedev Gamedev Игры Розыгрыш Инди Инди игра Разработчики Конкурс
4
38
vovavova007
3 года назад
Лига Разработчиков Видеоигр

Новый прототип "Боевые острова"⁠⁠

Всем привет! Большая благодарность, тем кто ставил лайки, дизлайки, писал комментарии и проявлял активность под моим прошлым постом про "3D платформер". Благодаря всем вам я понял, что в таком варианте игра не пойдет. И не потратил пол года моей жизни в пустую )).


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


Суть игры. Мы плаваем на островке и расширяем его дополнительными платформами, подобрав их в море или отобрав у соперника. На платформы можно устанавливать разные улучшения: лучника, воина, баллисту, здания (лечилка,  базар, башни ...) . Суть игры: убить всех врагов или добраться до выхода.


Когда доведу это дело до более играбельного вида, выложу ссылку на несколько уровней.

Показать полностью
[моё] Indiedev Gamedev Инди игра Прототип Видео
31
12
ValerieZen
ValerieZen
3 года назад
Лига Разработчиков Видеоигр

Student Simulator. Level 3: геймдев как наука, геометрия Лобачевского и ворона⁠⁠

И снова рассказываю о том, как учусь в Вышке (она же НИУ ВШЭ) делать игры на программе “Менеджмент игровых проектов”. Предыдущая часть здесь.


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

Student Simulator. Level 3: геймдев как наука, геометрия Лобачевского и ворона Indiedev, Gamedev, Инди игра, ВШЭ, Образование, Длиннопост

Желанный геймдев, аутсорсное болото и немного юриспруденции


Во вторник у нас была вводная лекция по управлению командой. Её вёл Сергей Голубкин: владелец издательства “Геменот”, в прошлом - продюсер Ubisoft и креативный директор “Мира Фэнтези”. Меня сразу подкупило обещание провести зачёт в форме игры в Game Dev Sim (и это, оказывается, давняя традиция).


Что ещё интересного (и порой обескураживающего) запомнила из лекции:


- Геймдев отличается от любой индустрии тем, что здесь нет людей, которым не хочется быть в геймдеве. Все, кто сюда попадают, либо очень хотят, и тогда это призвание или мечта, либо быстро отваливаются. Значит, у сотрудников студий высокая мотивация и заинтересованность в процессе, но есть и обратная сторона: работодатели пользуются ситуацией, что приводит к кранчам. Ещё одна проблема: работникам геймдева становится тяжело разделять рабочее и личное, ведь они в обоих случаях занимаются одним и тем же. Условно, восемь часов на работе поиграл, пришёл домой - чем бы заняться? - и поиграл ещё часов пять - так могут выглядеть будни продюсера.


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


- Важно вовремя понять, что проект - не очень и отказаться от него.


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


- С чужим опытом нужно быть избирательным. Если скопировать положительный опыт, то есть сделать игру как у конкурентов - не факт, что это приведёт к успеху. А вот учесть чужие ошибки - другое дело, шансы на успех возрастают.


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


- В геймдеве придётся столкнуться с юриспруденцией: без ИП или ООО даже страницу в Steam не завести. А ещё надо разобраться с налогами, и в зависимости от дохода варианты самые разные: от патентной системы до смены юрисдикции на Кипр или Прибалтику.


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


Наука об играх, metagame и почему-то Лобачевский


В четверг у нас начался курс по игровым механикам от Владимира Агарёва. И я не могу не вставить сюда изумительные формулировки плана занятий.

Student Simulator. Level 3: геймдев как наука, геометрия Лобачевского и ворона Indiedev, Gamedev, Инди игра, ВШЭ, Образование, Длиннопост

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


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


Игры есть даже в животном мире: через игру всякие маленькие хищники вроде львят, тигрят и лисят учатся охотиться. Что примечательно: охотиться они учатся, но играть уже умеют, этому их никто не учит. С маленькими детьми похожая ситуация. Игра, говорил антрополог Йохан Хейзинга (автор книги “Человек Играющий”), древнее самой культуры.


А почему игры появились? Есть мнение, что наш мир хаотичен, а мозгу это не нравится - он придумывает “точки стабильности”, понятные и простые правила. По этому принципу выстроены наши ритуалы: религиозные, посвящения. Так мы противостоим хаосу и создаём смыслы.


Есть немало определений игры, из которых можно вывести её признаки:


- деятельность - игра существует и игрок что-то в ней делает (даже если это “самоиграйка”);

правила (куда без них?..);

- конфликт (хороший/плохой коп или же, как говорил Геральт из Ривии, если есть выбор между одним злом и другим, я предпочитаю не выбирать вообще);

- решения игрока имеют значение.


Поэтому самое крутое и глубокое определение игры - от Сида Мейера: “Игра - это последовательность интересных выборов”.


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


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


А вот что определяет игровую механику:


- Принцип: что нужно делать? Как игрок взаимодействует с игровой средой?

- Изменение игровой среды. Как действия игрока влияют на неё?

- Правила: поле возможностей игрока. Что может и не может происходить в рамках правил?

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


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


Чем я занимаюсь? А зачем? Кому это нужно? Есть ли у этого цель? А смысл? И так далее. Главное, конечно, не зарыться в экзистенциальную яму после того, как не нашёл ответы на эти вопросы :) :(


С целью академизма разобрались, едем дальше.


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

Итак, что такое игровая динамика? Это набор действий игрока и событий, которые он воспринимает - всё это распределено и меняется во времени. Здесь сразу есть практический смысл в виде FUUU-фактора: в игре должны быть моменты, когда игроку очень плохо, потом легко, плюс есть некоторое состояние плато. Такой принцип можно встретить везде: от match-3 до Doom и TLOU.


В игре может быть одна динамика: например, мы ходим и решаем головоломки. Есть игры с несколькими динамиками, так, в стратегиях есть боевая и экономическая составляющие. Uncharted: динамика перестрелок, головоломок, джампинг-пазлы. В Deus Ex: перестрелки, взламывание компьютеров и диалоги.


Про такое интересно слушать, кстати, когда уже есть собственная идея игры - неизбежно экстраполируешь. Пока, к слову, мне нравится, как мы идём: уже придумали, что сложные загадки нужно перемежать медитативными прогулками, но при условии постоянного напряжения из-за survival-составляющей (гордо пишу это, а сама думаю - как мы собираемся вывозить?..).


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


И, наконец, игровые циклы: core loop, game loop и metagame (все, кому хочется пошутить про Лупу и Пупу - добро пожаловать в клуб, я не могу удержаться).


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


Гейм луп - предполагает наличие основной игровой цели, включает в себя кор луп и метагейм.


Метагейм - проще говоря, игра, которая происходит в голове игрока (он думает как справиться с поставленными перед ним задачами). В широком понимании - всё, что относится к самому игроку, а не к игре и её персонажам. Однако в мобилках есть другое понимание - в них много прокачек, веток развития, талантов, абилок, так что всё, чем обвешан кор-геймплей - это мета. Ну и до кучи есть аббревиатура META - самая эффективная тактика в игре (most effective tactics available), не путаем!


Понятнее становится из объяснения на примере покера. Кор-геймплей - это то, что лежит на столе. Мета - это подсчёт карт и считывание эмоций. Фишки при этом тоже относятся к мета, потому что это ресурсы (ведь стоимость фишек не буквальная, а, грубо говоря, придуманная в голове).


На этой лекции задавали ОЧЕНЬ много вопросов, плюс утро субботы в итоге сыграло свою роль. К концу пары я обнаружила, что смотрю в окно на ворону, а лектор говорит про геометрию Лобачевского. Вайб учёбы полный, погружение в школярские будни 10/10, всем рекомендую.


Традиционно делюсь материалами, которые порекомендовал почитать лектор (сама пока ни одну ссылку не открывала):


● Статья про декомпозицию игрового процесса

● Формальный подход к дизайну и исследованиям игр

● Игровая динамика и циклы

● Игровые системы и динамика

● Статья на Манжетах ГД про игровую механику, циклы и динамику

● Статья об Игровой Динамике.


…, … - и в продакшен!


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


Изложу быстро и тезисно:


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


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


- Чем проджект менеджер отличается от продюсера. Продюсер - за продукт, за конечный результат, как бы “против” команды, он же принимает все продуктовые решения. ПМ - за проект, то есть за процесс, он “за” команду и её продуктивность, принимает решения по команде.


- Идеальная схема управления - продюсер даёт задачи ПМу, ПМ раздаёт их лидам по отделам, те - своей команде.


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


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


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


- Цель оперирования - получить прибыль, чтобы окупить разработку и заработать.


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


На этой оптимистичной ноте пока всё! Спасибо за то, что дочитали, надеюсь, было интересно.

Подписывайтесь на меня, если хотите. Читать Student Simulator также можно в VK, твиттере и телеге. До встречи через неделю!

Показать полностью 2
[моё] Indiedev Gamedev Инди игра ВШЭ Образование Длиннопост
13
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

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

Попробовать

Ремонт Теплый пол Текст
29
svagrogjun2002
svagrogjun2002
3 года назад
Лига Геймеров

Неоднозначный отзыв на игру в стиме⁠⁠

Неоднозначный отзыв на игру в стиме Steam, Игры, Indiedev, Инди, Видеоигра, Разработка, Инди игра, Отзывы Steam

Очаровательный мусор.

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

Этот запах постсоветских 90-х, оптимистической гнили и разрухи. Улицы, заполненные пьяницами, местными бандами, детьми, которые едят незрелые сливы и абрикосы только ради лулза. ♥♥♥♥♥♥ романтика.

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

Показать полностью
[моё] Steam Игры Indiedev Инди Видеоигра Разработка Инди игра Отзывы Steam
5
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии