Публичная разработка игры. Часть 9. С гифками игрового процесса.

Продолжаем. Прошлая по ссылке

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

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

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

Гифка

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

Работаем дальше.

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

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

___

78 часов 40 минут

Столы теперь стали полноценными рабочими местами.

81 час
414кб кода

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

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

 

 


Автор: Elsper.ru


VN:F [1.9.14_1148]
Rating: 9.0/10 (3 votes cast)

Публичная разработка игры. Часть 8.

Восьмая часть разработки. Прошлая по ссылке

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

Сейчас 65 с половиной часов

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

Предметы на складе, их количество. Так же в режиме строительства еще один склад. Хотя уже вижу как улучшить отображение в режиме строительства.

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

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

___

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

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

Работаю над перемещением хомяка. Внезапно понял, что штука, которую я делаю уже пол часа, была ранее уже изящно реализована мною же с помощью пары строк… М-да ((

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

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

Итого 70 часов. 377кб

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


Автор: Elsper.ru


VN:F [1.9.14_1148]
Rating: 10.0/10 (1 vote cast)

Публичная разработка игры. Часть 7.

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

Поэтому задачи которые я вижу сейчас:

1) Вставить в игре необходимые постройки-комнаты.
2) Подумать о процессе генерации сохранения и загрузки игрового процесса. Точнее даже не генерацию. А сброс сцены в ноль.

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

1) Супер активная разработка, как это было с движком, наверное даже и не нужна. Все равно вперед арта сильно не убежать.
2) Изначально срок моей части разработки был оценен в 50-100 часов. Разработка движка была чистой неожиданностью удлинив срок на 30-40 часов. Поэтому получается, что первоначальный срок должен быть увеличен до 80-140 часов. А значит чтобы выдать игру мне так и так надо отработать еще 30 часов минимум. И да, хотя у меня и ступор, но можно попробовать зайти к проекту не от его наполнения, а от времени которое он должен отнять, а наполнение просто будет следствием работы.
Или другими словами забить на эффективность конкретного часа, и сосредоточиться на их количестве. Например, 4 часа с эффективностью 50% лучше, чем 2 часа с эффективностью 75%
3) Ну и все же как-то чуток в голове уложил, чуток структурировал проект за эти дни.

Сейчас 53 часа. 20 августа.

Проектировал окно заданий

Кстати, тут видно новые элементы интерфейса.

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

Само окно тоже буду переделывать. Буду переделывать и карточки.

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

Начал прикидывать обучение и сюжет.

Довел до 60 часов, и думаю можно публиковать наконец пост.
Итого сейчас 331кб кода и 20 сцен.
Большая часть этих сцен просто наброски, но с ними лучше чем без них.


Автор: Elsper.ru


VN:F [1.9.14_1148]
Rating: 10.0/10 (2 votes cast)

Публичная разработка игры. Часть 6.

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

Что у меня там?
1) Встроить комнаты в порядок отображения. Там не все так просто. Хомяки и предметы постоянно меняют порядок отображения, то хомяк перед столом, то позади, то он позади стола, но перед картиной которая висит на стене. В общем не очень сложная, но полноценная задача.

2) Доделать более сложное и правильное распределение задач по хомякам.

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

4) Ну и наверное приступать к игровым интерфейсам.

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

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

Это точно будут:

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

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

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

Думаю над тем как получше оформить получение уровня и что за него давать.

Думаю о окне хомяков. Текущий эскиз такой

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

Ломаю голову над тем как добавить хомяка. Думаю дать выбор из 3-4 хомяков.

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

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

Сейчас 50 часов. И я понял, что хочу сделать баланс более профессиональным. То есть не, как левая пятка захочет, как у меня обычно бывает, а рассчитанный баланс.

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

Центральным ресурсом всегда является само время. И к времени это все в итоге будет сводиться, но внутри игры нужен какой-то более понятный связующий ресурс. И пусть это будут абстрактные «производственные мощности».
Купили хомяка? Увеличили производственные мощности.
Поставили новый рабочий стол в здание? Увеличили производственные мощности.
Прокачали науку? Увеличили производственные мощности.
Расширили здание? Увеличили производственные мощности.

И эти производственные мощности перемноженные на время дадут «ценность». А за эту ценность можно будет приобрести новые производственные мощности.

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

Встает справедливый вопрос, а как оценивать соотношение времени и кристаллов? Я не встречал на него ответы, но довольно хитрый вариант у меня в голове есть. Нужно повышать цену времени пропорционально готовности игрока платить деньги. То если он еще ничего не купил, то любой потраченный кристалл даст ощутимый бонус. А если это матерый донатер закинувший 100$, то скорее всего для него реальные деньги имеют не очень высокую ценность и предположительно он готов будет тратить еще больше.

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

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

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

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

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

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

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

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

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

Решили какое первое задание игрок получит, как он его будет выполнять, чтобы не запутаться, а разобраться в игре. Второе задание. Как провести его по самым ключевым элементам игры, чтобы он понял, чем она хороша (а она хороша), чтобы понял, что это не просто примитивное «построил домик — заработал деньги», а что-то более глубокое.

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

Этим заданием мы покажем сам процесс строительства, покажем, что хомяки таскают ресурсы со склада и на склад. Часть моей ЦА уже на этом этапе просечет фишку и заинтересуется игрой, а те, кто не знаком с играми такого формата просто продолжат идти по обучению.
Делаем из бревен, которые лежат на складе, доски. Хомяки работают. Молодцы.

Следующим шагом обучения вводим в игру потребность еды.

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

В общем надеюсь разработка снова пойдет бодрее.

Сейчас 52 часа.


Автор: Elsper.ru


VN:F [1.9.14_1148]
Rating: 10.0/10 (1 vote cast)

Публичная разработка игры. Часть 5.

По итогам прошлых частей у меня 39 часов 45 минут. И объем 158кб

Сроки немного пугают. Ожидалось что к 40 часам будет уже что-то играющее, но проект оказался слишком трудным. Впрочем теперь уже поздно что-то менять, да и не надо ничего менять. И этот осилю.

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

Уже 43 часа. Я все еще пилю менеджер задач.
Медленно(хотя как медленно, файл весит уже 21кб)
Но верно. Время потраченное на рефакторинг поиска пути оправдывается. Часть задач требует A*, часть требует широкий поиск. И главное не запутаться где какая задача и какой поиск, почему ей нужен поиск именно этого типа, и куда потом девать его результаты.

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

Внезапно понял очевидную вещь. Не обязательно обсчитывать все задачи, которые есть в игре. Нужно лишь обсчитать первые Х, по количеству свободных хомяков. Оптимизация ))
Хотя есть и проблема. Как одновременно совместить приоритет задач и при этом давать хомяку задачи ближние к нему. Да всякие коэффициенты можно придумать, но это опять переписывать коды… Надо подумать.

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

Блин я еще прежний вариант не допилил, а уже усложнил идею (((

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

И в итоге на 45 часу хомяк сам выполняет задачу! Ну наконец-то!!

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

Разобрался еще с несколькими вещами, хотя и довольно мало работал на выходных

И по итогам 47 часов и почти ровно 200кб могу показать вот это.


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


Автор: Elsper.ru


VN:F [1.9.14_1148]
Rating: 10.0/10 (1 vote cast)
Страница 1 / 61 2 3 4 5 6 »

Спoнcopcкиe ссылки