Ну вот и конец!
Я небольшой инди разработчик, как и многие совмещаю основную работу и разработку небольших инди игр, чаще всего в жанре хоррор.
Почти 9 месяцев у меня ушло на разработку небольшой, но значимой для меня игры, о пропавшей девушке.
Ввиду финансовых трудностей, было решено сделать временную озвучку персонажей при помощи нейросети.
Что в итоге и стало роковой ошибкой.
Огромная машина под названием Steam просто заморозила проверку моей игры на неограниченное время.
Без объяснения причин. Без точных сроков.
Оставив мой труд в подвешенном состоянии и небольшое количество преданных игроков без новой игры.
Полный цикл статей тут:
Но у этой истории всетаки счастливый конец.
Спустя 3 месяца, после тонны писем в поддержку, мне дали зеленую кнопку и я выпустил игру.
P.S. Если вдруг наберу много лайков, выложу пост с финансовым отчетом по игре.
P.S.S. Ссылка на игру: https://store.steampowered.com/app/2538330/Finding_Anastasia/
Дневник начинающего разработчика. Часть 2. Длиннопостные животные и сотворение жизни в Лесу
Продолжение истории о том, как я пишу Духов Леса - свою первую текстовую ММОРПГ в телеграм-боте на Python.
Но, для начала, посмотрите на эти прекрасные мордашки.
Это вожаки первых 4 стай, и мне бы очень хотелось сохранить их для истории сообщества игры. Дружное и доброжелательное сообщество, это то, что придает мне сил всей душой вкладываться в развитие этого мира.
Итак, начало положено. Параллельно с изучением теории программирования я набрасывал в табличках планы, механики, формулы, объекты и ключевые события.
Когда пришла пора воплощать это в жизнь, первые шаги давались с большим трудом. Однако, долгими ночами строчка за строчкой начинало вырисовываться нечто прекрасное. По крайней мере, мне жутко нравилось все происходящее, и именно на энтузиазме, любопытстве и усидчивости я работал над игрой ежедневно по 6-10 часов.
Первым делом, нужно было создать персонажей, чтобы все дальнейшие нововведения было на ком проверять. И на старте я неделю расписывал их создание. Сразу стало понятно, что одним знанием Python тут не ограничиться. Нужно хотя бы на базовом уровне понимать SQL, чтобы хранить данные о персонажах.
Довольно быстро я понял, что записывать в одну базу десятки характеристик, переменных и состояний каждого персонажа будет проблематично. Тем более, игре придется потом часто к ним обращаться. Поэтому, подробные переменные я стал записывать в отдельный JSON файл для каждого персонажа, а в базе данных оставил только основные сведения (id класс имя и т.д.).
Переменных оказалось действительно много даже на начальной стадии. С точки зрения игрока не задумываешься, сколько разных данных о твоем персонаже хранится и изменяется при каждом взаимодействии. Сейчас в файлике каждого персонажа может быть по 200+ переменных, учитывая все ремесленные и боевые характеристики, предметы инвентаря, домашнего хранилища и рыночного склада, навыки, изученные рецепты, полученные письма и посылки, временные эффекты и состояния, текущую работу и т.д.
И это лишь малая часть всех характеристик. Для удобства игроков сделано упрощенное отображение только тех характеристик, которые игрок уже увеличил. Полное отображение тоже можно включить при желании.
Сам процесс создания героя я пытался упростить для игрока, насколько это возможно. В него входит только выбор имени, расы, класса и получение аватарки. Но на деле все было не так просто, ведь в коде для этих действий нужно было прописать разную замысловатую логику. Каждая из трех рас должна давать свой небольшой бонус. Каждый класс должен открывать базовый навык и предоставлять игроку начальное снаряжение именно для этого класса. Аватарки выбирались случайным образом из пула картинок выбранной расы. Впоследствии, конечно же, были добавлены возможности сменить как аватарку, так и другие параметры, чтобы игрок не оказался в ситуации, когда он "запорол" персонажа.
Перед каждым выбором игроку нужно было донести в понятной форме, что именно нужно выбрать, и на что это повлияет. При этом хотелось выдержать единый стиль игры, при этом не слишком растекаясь мыслью по древу. В качестве гида по созданию персонажа и миру игры был назначен белый вомбат, получивший гордое имя Беляшик. Этот милаха и по сей день встречает каждого новичка и вводит в курс дел.
Как оказалось позже, даже на этой стадии всем игрокам невозможно угодить. Так как я делал именно текстовую игру, казалось логичным, что львиную долю информации о механиках и лоре придется преподносить именно текстом. Однако, уже на создании персонажа для некоторых проблемой стало "много букв". Но для себя я уже тогда решил, что подход к текстам будет именно таким. Я собирался прорабатывать детальный мир, а для передачи всех механик и лора явно требовалось больше пары строчек текста.
Таким образом, обитатели Леса стали не только длинношерстными, но и "длиннопостными", и это свое свойство менять не собирались. Я решил, пусть уж это будет своеобразным критерием отбора игроков, и в сообществе преобладают те, кому интересно читать текст, и вникать в происходящее.
Первый из "длиннопостных" животных. Он рад каждому новому путнику в Изумрудном Холме, и ему есть что рассказать тем, кто не ленится читать. Так выглядит создание персонажа.
Здесь же, на стадии создания персонажа, нужно было кратко ввести игроков в курс боевки. Как любителя РПГ типа Diablo и POE меня всегда радовала вариативность. Потому и в своем мире мне хотелось сделать не жесткое деление на классы, а возможность их комбинировать. Основа должна быть простой и понятной с первого взгляда: воин, танк, убийца - которые по принципу камень-ножницы-бумага имеют разные преимущества. Однако, с самого начала игры новички предупреждаются, что все классы можно комбинировать, и ни один из первоначальных выборов не ограничивает другие возможности. Просто стоимость прокачки "чужих" навыков будет больше, чем "родных".
По задумке это должно давать широкие возможности для экспериментов и комбинаций в поздней стадии игры. В этих же целях оружие и экипировку я тоже делал без жесткой привязки к классу, провоцируя игроков комбинировать их и проявлять фантазию и изобретательность. Потенциально это создавало кучу работы по балансировке сил этого многообразия, но, если бы я боялся трудностей, то вообще бы не ввязывался в эту авантюру.
Таким образом я завершил создание самого персонажа и с головой окунулся в две большие и неразрывно с ним связанные механики: навыки и инвентарь.
Навыки к этому моменту уже были в общих чертах распланированы в таблице, оставалось их только перенести в код и надеяться, что на стадии создания боевки я смогу это все учесть в формулах и функциях. Сначала я написал только первые 3 школы по 6 боевых навыков, а впоследствии добавил к ним 4 ремесленные школы по 8 - 10 скиллов.
Постоянный выбор между множеством навыков, как основа построения уникального персонажа. В будущем количество навыков, как ремесленных так и боевых, планируется расширять и балансировать.
С инвентарем пришлось повозиться тоже достаточно долго. Была создана база данных с видами предметов и функции для создания баз данных экземпляров предметов для каждого чата, где запущена игра. Так например вид предмета "катана", в зависимости от материала, из которого ее создают, может превратиться в экземпляры: Стальная катана, Кобальтовая катана, Титановая катана и т.д. со своими характеристиками. Плюс каждый из экземпляров можно улучшить, пока что до 5 уровня. Таким образом 1 строчка предмета "катана" в типовой базе с учетом коэффициентов материалов и улучшений превращалась в игре в 25 разных катан с отличающимися характеристиками.
Этим решением я стремился закрыть сразу несколько вопросов: придумывание новой экипировки для следующих уровней и понятность для игроков. Теперь, если новичок начинает за воина и пользуется рубящим оружием, он с первых часов замечает, что обычное рубящее оружие - это, например, стальные катаны и скимитары. Следовательно потом, чтобы найти более крутое рубящее оружие, нужно смотреть на те же названия, но из другого металла: Кобальтовая катана, Кобальтовый скимитар.
В самих функциях инвентаря оказалось очень много кропотливой работы. Нужно было сделать генерацию отдельного сообщения с информаций о каждом предмете, с учетом всех его характеристик и состояний (например прочности), и кучей динамических кнопочек (в зависимости от того, надет ли предмет, используемый ли он, улучшаемый и т.д.). Каждая кнопочка "надеть", "снять", "починить" влекла необходимость создавать десятки новых вспомогательных функций. Проверка заполненности инвентаря, проверка текущей прочности, проверка того, одноручное это оружие или двуручное, нужно ли снимать другой предмет при экипировке этого предмета...
Сейчас, оборачиваясь назад и наблюдая, сколько активных кнопочек уже создано, я периодически сам удивляюсь, как на это хватило терпения, и на какой магии оно все работает.
Часть функций изначально вызывалась только через текстовые команды. Потом я задался целью дублировать все команды кнопочками. И чем больше кнопочек добавлялось, тем игра становилась удобнее и приятнее. Как показала практика, на удобстве игрока экономить нельзя. Если вместо текстовой команды можно сделать кнопочку - сделай. Если для одного действия игроку требовалось три клика, но есть возможность улучшить интерфейс, что бы оно же требовало один клик - сделай. Каждое такое маленькое улучшение интерфейса вызывало чуть ли не больше положительных отзывов, чем введение новых функций.
За сим на сегодня откланяюсь и побегу делать следующее обновление. Сейчас у меня в разгаре разработка веток крафта, отвечающих за строительство домиков и клановых замков, и обустройство их мебелью и пристройками. А всех, кого заинтересовал мой проект, прошу заглядывать на ОБТ.
Спасибо всем, кто дочитал! Продолжение следует.
Играйте в игры, любите игры, следуйте за своей мечтой и просто хорошо проводите время!
Русы не против Ящерок - Новости!
Мир вашему дому, Русы!
В новой бересте – новости от нашей скромной команды.
Никак не знали наши творцы, как показать сразу все прелести Веинте – и так ее вертели, и эдак, но все-таки сдюжили! Нежится теперь ящерка в бане – вот прогреется, и можно будет с ней позабавиться.
Сложнее всего дались, как ни странно, не ящерки, а Мирослава. Почему-то Вдова никак не хотела вставать так, чтобы все самое интересное было видно. Но мы еще посидим в камышах, до победного конца!
Долго решали, как выточить идола, который играет важную роль в нашей истории. По сюжету достаточно бросить один взгляд на него, чтобы что-то зашевелилось, завелось внутри. И, возможно, Веинте при случае тоже не устоит и использует его… не совсем по назначению…
Мы финализировали общий сюжет игры. Как мы уже писали в предыдущем девлоге, в игре будут параллельно идти две сюжетные ветки – противоборство богатырей и ящерок с одной стороны, вдова, приютившая Малсаса – с другой. Эти истории пересекутся трижды, и в итоге определят судьбу народов Гипербореи.
Наши писатели особенно увлеклись проработкой мира. Мы имеем в виду не только стилизацию под “древнерусское”, но и погружение в реалии и поиск способов вписать в них нашу историю. В этом им немало помогла книга Надежды Адамович и Натальи Серегиной “Интимная Русь”. Все мы почерпнули оттуда много нового и увлекательного!
А диалоги тем временем закончены уже более чем на четверть!
У нас в процессе появились интересные зацепки, и мы их разовьем в бесплатных апдейтах. Там и кошка ученая (и очень привлекательная) ходит по цепи кругом, и русалки, давно не встречавшие мужчин.
Следите за новостями!
Страница игры в Steam: https://store.steampowered.com/app/2715650/
Инди игра TRADESMAN: Deal to Dealer
В прошлый раз я упоминал об игре в подборке очень коротко. Тут о ней расскажу немного подробнее.
Это игра про торговца, который ездит в своей телеге, в которую запряжена лошадь (или медведь). Начиная свой путь в родном поселке Домодедово, Торговец отправляется в путешествие к остальным городам и посёлкам этого мира. Закупись морскими гадами в Рыбино, утоли жажду в знаменитой таверне Хавкопивкинска, продай товары первой необходимости в Бомжёво, и топчи грязь в столице этих земель - Обычногорске!
В игре есть автоматические сражения с активными способностями - дороги опасны, и чем больше товаров в телеге, тем опаснее.
Товары это не просто картинка с ценой - каждый товар имеет ряд свойств, осложняющих перевозку.
Множество видов уникальных наёмников, каждого из которых можно полюбить, но не настолько, чтобы не смочь заменить его на наёмника получше.
8 веток талантов, связанных с боем, торговлей, общением и выживанием.
Также можно брать сайд квесты по отмеченным точкам на карте, выполняя просьбы различных персонажей.
Разработка началась в 2021 году на движке GameMaker, составом в 2 человека.
Игру продвигали через X (Twitter), reddit, vk и участвовали в шоукейсе инди игр на СТАРКОН.
Игра от создателя Peace, Death!
Выход запланирован на 21 мар. 2024.
Ссылка на игру для тех кто хочет добавить в желаемое.
Если вы профи в своем деле — покажите!
Такую задачу поставил Little.Bit пикабушникам. И на его призыв откликнулись PILOTMISHA, MorGott и Lei Radna. Поэтому теперь вы знаете, как сделать игру, скрафтить косплей, написать историю и посадить самолет. А если еще не знаете, то смотрите и учитесь.
Пустота холодна
Ввожу новых персонажей