PolusX

PolusX

- "Саша... Ну вот какой херней ты занимаешься!?"
На Пикабу
4082 рейтинг 51 подписчик 17 подписок 12 постов 10 в горячем
Награды:
10 лет на Пикабу
157

Владельцы "Пикабу"

Интегрируйтесь в госуслуги уже, чтоб
"Голая баба набирает 1000 лайков, посмотрим сколько наберёт выписка с твоего пенсионного счета"
Или
"Ваш % по ипотеке - листай дальше мне на верх"
Отъебитесь от народного ресурса уже.
Заебали. Это не мы взрослеем и контент меняется - это ресурс превращается в то, во что превращается все, к чему прикоснется "гениальный маркетинг"

129

Итоги разработки игры без опыта. Результаты продаж

- "Где деньги, Лебовски? Где бл*, деньги, говнюк?" (с) Большой Лебовски

Часть 1
Часть 2
Часть 3
Часть 4
Часть 5
Часть 6


https://store.steampowered.com/app/1556670


Более месяца я не публиковал никакой информации по нескольким причинам:


1. Хотел получить первую выплату, чтоб говорить фактами.

2. Переезд в другой город, совпавший со стартом продаж игры.


За что я и прошу прощения у Всех интересующихся!


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

Сумма за период продаж с 23.04 по 30.04.


Да, эта не та сумма на которую я рассчитывал, НО это сумма значительно выше той, которую я со своей игрой заслужил!


Статистика показов и посещений:


Первый пик - это день публикации страницы игры в Steam

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


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

Данная статистика общая с начала публикации страницы игры по сегодняшний день:

Данная статистика добавления пользователями игры в список желаний:

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


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


По этой причине в момент старта продаж, в пик показов и получения уведомлений людьми добавившими игру в список желаний не произошло покупок, так как просто отсутствовала цена и кнопка купить. Об этом я узнал буквально ночью, когда ехал в газели с вещами по междугородней трассе и в срочном порядке пытался исправить ситуацию. Но было уже поздно. По моим прикидкам было потеряно от 70 до 200 покупок, что равносильно 500 - 2 000$. Ну что поделать - такова цена глупости и желания сделать все быстро быстро.


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


Планы:

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


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


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


Спасибо за то, что прочитали мою историю.

Она еще не кончилась, но на этом завершилась глава.


P.S. Никогда не торопитесь

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

Как я разрабатываю игру без опыта #6. Экономика и баланс игры

А так же пару слов о ценовой политике игры в Steam. В конце поста.


Часть 1, Часть 2, Часть 3, Часть 4, Часть 5

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


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


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


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


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


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


И так, как делал я


Я просто приблизительно "на глазок" прописал стоимость каждой постройки с учетом его теоретически фактического размера, а так же требуемых материалов. К примеру: Дом - деревянное основание как основной ресурс, крыша из камня как второстепенный и золото, ну, платить же нужно за постройку. Получается необходимо примерно 100 древесины, 30 камня и пусть 50 золота. Исходя из суммы этих данных по всем постройкам я получил общую сумму всех ресурсов необходимых на притяжении всей игры


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


Дабы не загружать голову количеством данных, полученную сумму всех построек и вариантов выбора диалогов увеличиваем на 30% и уменьшаем на 30% получая значения MIN и MAX которые необходимы для прохождения игр.


Пример:


Общая сумма древесины необходимая для всех построек и всех вариантов ответов в диалогах равняется 10 000 - MIN получим 7 000, а MAX - 13 000. Дней в игре 30, но в первые дни невозможно добывать максимальное количество древесины ввиду ограниченных ресурсов на старте, поэтому к MIN добавим 10-15% и получим 8000. Теперь делим MIN и MAX на 30 дней и узнаем, сколько древесины нам необходим в среднем в игровые сутки. Данный просчет похож на то, как государство считает среднюю заработную плату по стране - очень ошибочно, но в игре не такой большой разбег между MIN и MAX чтоб переживать. Получаем 266 MIN и 433 MAX. Всего точек добычи у нас может быть 5 - получаем MIN для одной точки добычи 53, а MAX 86. Вот и все.


Забиваем в скрипт код wood += Random.Range (53, 86) и радуемся балансу. Или делаем еще как я - уменьшаем чуть-чуть MIN и увеличиваем чуть-чуть MAX, скажем MIN 45, а MAX 95 для большего напряжения игрока.


ВАЖНО! По итогу написания экономики игры - сами сыграйте в нее раз это 20-30, чтоб понять, все ли хорошо или где-то нужно скорректировать.


В принципе - таким образом выстроена вся экономика игры I'm a King.


Теперь пара слов о ценовой политике игры в Steam


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


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


Но я обратил внимание на цены для стран СНГ - это Гривны, Рубли и Тенге. Все остальные валюты забугорные и мне не знакомые. И при стоимости в 10$ - игра стоит 169 гривен, 259 рублей, 1850 тенге. Я подумал - если 10$ для США в принципе цена довольно низкая, то для стран СНГ, даже в перерасчете Steam - далека от той, которую я бы скажем заплатил сам т.к. при средних зарплатах для этих стран - США может купить 300 копий игры за среднемесячную ЗП, а к примеру Россия 115 - что в корне не адекватно.


Я решил сделать небольшую поправку на цены для СНГ, а именно снизить их в зависимости от доходов этих стран т.к. для Казахстана 1850 тенге (336 руб) слишком высокая цена тем более с учетом более низкой заработной платы по сравнению с Россией. Итого я посчитал приемлемыми цены для Казахстана - 1000 тенге, для России - 200 рублей, для Украины - 80 гривен.


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


Спасибо Вам за почтение этой кучи текста без картинок :)

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

Как я разрабатываю игру без опыта #5. Переработка дизайна и механик

- Зачем ты показываешь свой код всем идиот, твою игру взломают!?

- Ахаха, если взломают - значит игра хоть чуть-чуть, но успешна и стоит усилий взлома!

Часть 1, Часть 2, Часть 3, Часть 4


- Статистика страницы игры в Steam в конце поста.


Более 10 дней прошло с момента написания прошлого поста, хотя планировал писать каждые 2 дня по факту процесса разработки. Все эти дни был максимально погружен в редизайн и механики игры - чтоб не быть похожим. Так сделал работу над ошибками и изучил способ разделение кода скрипта на составляющие дабы не плодить 20+ тысяч строк.


В том числе старался больше работать потому, что игра должны была выйти в Steam еще 19го марта. А вспомнил я об этом только 18го марта днем - как же я пере**ался. В панике начал писать в поддержку с просьбой отодвинуть срок выпуска, особо без надежды, так как отвечает поддержка не всегда сразу. Однако мне повезло и мне ответили через 4 часа с одобрением на перенос срока выпуска игры. Было бы довольно плохо, если люди купили игру, а там одно меню и все...


И так. Что мы имеем спустя 10 дней "работы":

Что касается части механик игры:

1) Строительство объектов вынесено из диалогов в отдельный пункт меню "Строительство". Чтоб не отвлекать игрока от основного повествования.

2) Добавлен новый ресурс и способ добычи - Камень. Необходим для ремонта поселений, а так же для строительства особой защиты от бури.

3) На рассмотрение добавлен новый ресурс - войска/стражники. Для совершения нападений на соседние королевства, а так же для разбавления механики защиты короля от покушений (если мало защитников осталось после войн - защитить короля они не смогут в определенных случаях)

3) 2 варианта защиты от непогоды - постоянная и дорогая, одноразовая и дешевая (вместо одного).

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

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

6) Возможность разрушения построек с целью получения золота. (Единственный возможный вариант конвертации ресурсов в золото)

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

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

10) Ограниченный выбор на добычу камня или золота - всего 5 шахт, но что они будут добывать, зависит от выбора игрока.

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

Так выглядит игровой интерфейс в итоговом варианте:

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

Кстати, по какой-то причине меняется гамма при сохранении изображений в Photoshop. Два одинаковых дома покрашены одинаково и выведены в PNG, но при повторном открытии файла и повторном перекрашивании этими же цветами - гамма отличается в итоге (более бледной становится).

Вот список всех используемых наборов "асетов" в игре с ссылками на них:


1) Дома, лесопилки, горки камня и слитков у рудников, тележки рудников, мельницы, колодцы, мосты, рыбные станции, лодки, трава, дороги - PixelHole https://pixelhole.itch.io/pixelholes-overworld-tileset

2) Факелы в поселениях - OcO https://oco.itch.io/medieval-fantasy-props-pack

3) Заборы поселений - rowdy41 https://rowdy41.itch.io/small-forest

4) Скалы, шахты, ступеньки - finalbossblues https://finalbossblues.itch.io/dark-dimension-tileset

5) Защита от бури постоянная - Jestan https://jestan.itch.io/classic-rpg

6) Защита от бури временная - Arktentrion https://arktentrion.itch.io/2d-rpg-kit-the-game

7) Деревья - ansimuz https://ansimuz.itch.io/patreons-top-down-collection

8) Вода - Szadi art. https://szadiart.itch.io/craftland-demo

9) Портреты персонажей - Exuin https://emily2.itch.io/pixel-portraits-32x32

10) Эффект строительства - ansimuz https://ansimuz.itch.io/explosion-animations-pack

11) Иконки ресурсов - Kyrise https://kyrise.itch.io/kyrises-free-16x16-rpg-icon-pack и VECTORPIXELSTAR https://vectorpixelstar.itch.io/food

12) Кирпичная кладка по контуру диалога - Alcoholism https://alcoholism.itch.io/dark-castle-tileset

13) Шрифт (на данный момент) - Poppy Works https://poppyworks.itch.io/silver

14) Музыка - Tim Beek https://timbeek.itch.io/royalty-free-music-pack


Все остальное (очень малое) было собственноручно и мучительно прорисовано и анимировано.

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

Окей думаю я, вперед, обновляйся.

Обновился...

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

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


Все таки начал делить один большой скрипт на составляющие. И теперь это аж 11 файлов скриптов :)

Но по порядку с главного меню:


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

И соответственно скрипта с методами с запуском этих анимаций в событии нажатия соответствующих кнопок. А так же для кнопок выхода из игры метод Application.Quit(); и для запуска игры в методе Update условие - при появлении панели на позиции 0, запуск сцены игры методом SceneManager.LoadScene();

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

Основной код в скрипте главного меню отведен для меню настроек - выбор языка, разрешения экрана, громкости музыки и эффектов. По этому пункту очень подробно расписано тут https://www.red-gate.com/simple-talk/dotnet/c-programming/how-to-create-a-settings-menu-in-unity/ В принципе весь код для меню настроек я взял оттуда, только еще не разобрался - почему в списке всех доступных разрешений, все пункты дублируются. Есть мысль попробовать перенести цикл в метод Awake() вместо Start(), но это позже.


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


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


2) Кнопки справа от диалога - Строительство, новый день, настройки и выход. Если кнопки настройки и выход плюс-минус понятны из предыдущего абзаца, то кнопка нового дня так же как в главном меню - запускает анимацию шторки и отнимает единицу от счетчика дней внизу-справа экрана. А вот кнопка строительства уже интереснее - она вызывает меню строительства объектов добычи ресурсов и собственно этот же скрипт отвечает за все строительство.

Однако код так же просто и содержит так же одни "ИФЫ" :). Все объекты добычи в игре объявлены и пронумерованы в этом скрипте и изначально при старте отключены в иерархии юнити. При нажатии на кнопку с определенным объектом скрипт проверяет по порядку каждый объект этого типа (всего 5 для каждого из ресурсов) и при нахождении какого-либо в выключенном состоянии - включает его. А в методе Update() происходит покадровая проверка для дизактивации кнопки при обнаружении отсутствия отключенных в иерархии объектов этой кнопки, а так же при недостаточном количестве ресурсов для постройки.

3) Разрушение объектов обрабатывается через 2 скрипта - один отвечает за подсветку объекта при наведении на него и открытии меню объекта при нажатии, второй за нажатие на кнопку и отключение объекта

С кнопкой отключения / разрушения объекта все очень просто - 2 метода OnMouseEnter и OnMouseExit для смены спрайта кнопки при наведении мыши и метод OnMouseDown для отключения объявленного в скрипте объекта и самой кнопки из иерархии.


С кнопкой подсветки и появления меню строения я помучился, а именно над подсветкой. Unity почему-то никак не хотел принимать new Color(), а начал адекватно работать только с new Color32 - информацию по этому нашел тут https://answers.unity.com/questions/1017582/hex-colors-in-unity.html (подкрашивается цвет спрайта поверх него). И те же самые методы OnMouse

4) Ремонт поселений производится по такому же принципу и коду как и разрушение, за одним исключением - целевой объект не отключается, а включается т.к. спрайт поселения у меня лежит поверх спрайта разрушенного поселения и идентичен ему (просто стерт частично в фотошопе)


5) Имеется в запасе скрипт для тултипов ресурсов - при наведении на кнопку строительства объекта над цифрой ресурсов появляется подсказка о стоимости постройки

Скрипт сделан похожим на OnMouseEnter, только через Event Trigger. В инспекторе объекта нажимать Add Component - Event Trigger - Add New Event Type - PointerEnter и Pointer Exit и далее так же как с кнопкой - пишем метод на включение и метод на отключение объекта в иерархии и выбираем в Event Trigger скрипт и соответствующий метод (если нужно кому-то подробнее, то я так же распишу как и с кнопками, и анимациями).


Но так же я нашел очень подробный видео урок как сделать тултипы в более правильном их формате тут https://www.youtube.com/watch?v=HXFoUGw7eKk

6) Ну и скрипт для дрожания камеры при начале бури. Скрипт взят из видео урока тут https://www.youtube.com/watch?v=9A9yj8KnM8c

P.S. Для тех кому интересно как обстоят дела со страницей игры в магазине. Ситуация так себе. Чуть более чем за месяц, страницу показало 41,991 человек. Из них посетило страницу 4,655 человек, что соответствует 11.09% переходов. В список желаний игру добавили 156 человек

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


Спасибо вам большое, за то, что прочитали этот бред рукожопа :)

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

Как я разрабатываю игру без опыта #4. Нужен ваш фидбэк

Когда стараешься сделать лучше - главное не перестараться...

Кто не в курсе о чём речь - Часть 1, Часть 2, Часть 3


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


Изначальный, реализованный вариант игры

Промежуточный вариант редизайна из-за жалобы на плагиат (осталась только GIF, простите)

Конечный вариант редизайна. Мне кажется что сильно перегружен

Благодарю за внимание к моим потугам в геймдэв.

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

Создание собственного шрифта? Легко... хоть и нудно

Если не можешь найти что-то готовое для своих целей - попробуй это сделать сам и продать поделиться с другими.

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


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


Кто хочет почитать о процессе разработки игры без опыта, с нуля:

Часть 1

Часть 2

Часть 3


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

Шрифт который я использовал до сегодняшнего дня - Silver (https://poppyworks.itch.io/silver). Так как это единственный шрифт, который я нашел, являющийся бесплатным, с Free License и включенными латиницей и кириллицей, НО...


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


Немного погуглив я нашел вот это чудо https://fontstruct.com. Сайт позволяет самостоятельно нарисовать какой угодно шрифт в каких угодно вариациях языка.

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

1. Для начала нужно зарегистрироваться. Да.

2. Жмем кнопку "FontStructor" вверху меню

3. Пишем любое интересное название для Вашего шрифта.

4. Выбираем внизу слева шаблон набора символов. К примеру: Basic Latin - латиница и Cyrillic - кириллица

5. Рисуем букву или символ соответственно выбранному внизу в полосе шаблонов символов

6. Не забываем периодически нажимать кнопку вверху в центре "Save" для сохранения и "Preview" для просмотра результатов труда.

7. Когда завершите рисовать весь алфавит, жмите там же кнопку "Download" и происходит скачивание готового шрифта в формате .ttf

8. Все. Вы молодец!


Совет: Рисуйте каждый символ по заранее выбранной площади. К примеру:

x-height - Высота для строчных символов.

fixed width - Ширина для всех типов символов.

ascender height - Восходящий отступ, для заглавных символов и строчных символов с выступающими частями тел

discender height - Нисходящий отступ, для строчных символов с выступающими частями.


На всякий случай gif с примером:

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

Если все таки лень делать, то прилагаю ссылку на данный шрифт, нарисованный мной https://polusx.itch.io/galvanic-font-free Бесплатно! Без смс и регистрации. (Переходите по ссылке, листаете вниз до кнопки "Download", жмете, еще раз нажимаете на надпись "No, thanks..." и получаете ссылку на скачивание).


В очередной раз хочу выразить свою благодарность всем тем, что читает мои посты. Спасибо вам!


P.S. Баяномер ругался на Светлакова, но без него тут никак. Уж простите.

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

Как я разрабатываю игру без опыта. Хроника I'm a King

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

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


Так как изначально планировалось много текста и диалогов для каждой линии истории, а это 3 разных выбора для старта игры (Наследник, Узурпатор, Основатель) - мне было жизненно необходимо куда-то все это записывать. Сначала я в течении дня все идеи записывал "на ходу" в заметки телефона, затем переписывал в Excel файл. Со временем писать в Excel стало неудобно из-за большого объема информации и разветвленной блочности с вариантами ответов. Тогда я начал искать на просторах какие-либо программы / сервисы где можно было бы все это удобно структуризовать и нарыл из того что мне более менее подходило вот это:


Программа https://gcup.ru/news/redaktor_dialogov_dlja_igr/2016-02-17-5983

Статья https://www.progamer.ru/dev/videogame-dialogues-tools-ideas.htm


Однако у меня не получилось каким-либо образом удобно располагать там ветки "зависимостей", т.е. при принятии определенных решений в игре - можно наткнуться на последствия через много дней, некоторые даже ближе к концу. И в один прекрасный момент я наткнулся в блогах DTF на эту статью: https://dtf.ru/gamedev/104597-miro-kak-instrument-narrativnogo-dizayna. Это стало для меня настоящим подарком, т.к. Miro дает именно то, что мне нужно, а именно чистое огромное поле в котором ты делаешь, пишешь и располагаешь так, как удобно тебе (причем совершенно бесплатно).

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

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


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


Слева игра автора, справа моя:

Цветовая гамма была выбрана на основании игр Game Boy - 5 оттенков зелёного (меньше цветов - меньше деталей - меньше ошибок для рукожопа). И теперь встал вопрос - как-бы так, хотя бы удовлетворительно нарисовать в одной гамме без умения рисования вообще в каком бы то ни было виде? Ответ - нанимать художника или вперед в гугл "free game set creative commons".


За основу был взят данный ассет: https://pixelhole.itch.io/pixelholes-overworld-tileset, да и вообще многое было взято с https://itch.io/game-assets/free


Некоторые примеры:

Кое-что удалось нарисовать самому:

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


И еще одно. Перерисовывать и менять цветовые гаммы с 10-15 цветов на 5 руками очень сложно и долго. Не так сложно конечно как рисовать самому, но для меня и это очень сложно. Выглядело это примерно так:

Для упрощения процесса я нашел программу. Ну не сам нашел, а видео нашел https://www.youtube.com/watch?v=AxMwBdTmzXw, ну а там уже показывали программу Gale. Возможно есть и другие программы для таких дел, но я нашел эту и больше не искал. Сам процесс очень прост - открываем в программе нужную картинку, кликаем в верхнем меню All Frames - Color Deph - Type B - OK и теперь выбирая справа вверху в палитре нужный цвет изображения можно его менять на свой:

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


Писать код для карты особо не приходилось, потому, что в основном все анимации заранее записаны в фреймы изображений, а движения можно с анимировать на ходу в Unity простой записью анимации, а остальные действия - это просто включение и отключение объектов на карте такими действиями как: object.SetActive (true / false) для выполнения  и !object.activeInHierarchy / object.activeInHierarchy для условий. Основной код нужен для диалогов и запуска определенных наборов в зависимости от игрового дня т.к. дни могу сокращаться от определенных действий, а так же для запуска событий, таких как погодные явления, смерти, эффект нового дня.


Первым делом я хотел реализовать эффект печатания текста диалогов. Долго искать не пришлось - нашел на знакомом и засмотренном канале Code Monkey https://www.youtube.com/watch?v=ZVh4nH8Mayg и по аналогии с примером в видео я начал писать весь текст диалогов в код.

Код для дрожания камеры во время землетрясения я нашел тоже одном из моих сохраненных каналов Brackeys https://www.youtube.com/watch?v=9A9yj8KnM8c

Вест остальной код состоит из функций нажатия кнопок. Просто пишется функция private void Button1(){ ... } и в неё записываются все нужные действия при выполнении условия - запуск анимации, запуск печатания заданного текста, добавление глобальным переменным значения (если какое-то влияние на следующие дни происходит).


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


Сама функция вызывается в функции Start.


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

Вот такой простой и топорный код.


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


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


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


Новый вариант меню (видео с саундтреком главной темы игры). Добавлены анимации и скрытые ветки начала игры.

Новый вариант игрового поля, предыдущий вариант выше в посте.

Кстати в названии имеется некая игра слов. Так как это, как говорят "продукт", сделан с нуля и не умелым, то название I'm a King, можно так же прочитать как I making :)


Моя огромная признательность Вам за то, что прочитали этот пост до конца!

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

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества