Урааа, второй пост!
Вновь здравствуйте! В прошлом посте я вскользь упомянул про свой большой проектик, который невероятно больше предыдущего. Я даже придумал НеВеРоЯтНо-СуПеР-дУпЕр-ОрИгИнАлЬнУю картинку, которую вы ни разу раньше не видали!
Да, эта игра будет называться Last Seed, но всё сразу я про неё не буду рассказывать, упомяну только, что в ней будет цикл дня/ночи, чем-то похожий на волны в Brotato, а также это будет рогалик с определённой долей реиграбельности.
Введение
Итак, в этом посте я бы хотел рассказать вам о том, как я сражался с Godot Engine, пиксель-артом и прочим целую неделю, для того чтобы сделать всего лишь 2 пункта из 8 в roadmap своей игры, и раз уж я упомянул про дорожную карту, давайте её рассмотрим.
Roadmap of Last Seed, yeah
- Сделать спрайты для игры.
- Реализовать геймплей ночи.
- Реализовать геймплей дня.
- Совместить эти два геймплея в их цикл.
- Оформить HUD и главное меню.
- Добавить SFX и прочие звуки.
- Сделать первые стартовые опмьнгтч и пршонцжв (да-да шифр!)
- (постоянное) Расширять игру!
Основная часть
Итак, первый пункт был несложным, хоть у меня и нет никаких способностей к рисованию (а хотелось бы!), но, знаете ли, ПА (пиксель-арт), вид цифрового искусства, в котором я делаю текстурки дл своих игр, он не очень-то и сложен! Однако второй пункт roadmap...
Первым делом я решил сделать простую физику, просто чтобы персонаж поддавался гравитации, сталкивался об землю и стены на краях экрана, мог ходить и прыгать. И, почему-то, всё не работает! Сначала персонаж просто не поддавался управлению, потом через кучу костылей, персонаж начал реагировать, но проваливался в ад. Затем, через ещё один костыль оказалось, что персонаж проходит сквозь стены. Затем, я решил начать делать всё заново, и всё заработало, без костылей! Затем я добавил механику стрельбы, потом первого врага -- епеькмп, дальше шочжет и на этом закончил первый этап разработки, проблема, подобная на случай с гравитацией и управлением, случилась с пулей или первым врагом, точно не помню, решилась также, кек. Вывод: если что-то очень долго не получается пофиксить, попробуйте заново!
Чуть-чуть опишу геймплей того, что я сделал. Те, кто играл в Brotato, будет почти также, как в этой игре во время волны, но с видом сбоку, таймер и постепенно увеличивающееся число врагов сделаю потом. А также, враги самого игрока не трогают, но бьют КаКоЙ-тО пРеДмЕт, если он иссякнет -- Game Over. Те кто не знает, вы ходите, враги постепенно появляются, атакуют вас (ну почти), по истечению таймера наступает "передышка", потом всё заново, до победы, надеюсь вы поняли.
ИнТеЛлЕкТуАлЬнАя МиНуТкА
Вновь прибавим чутка интеллекта в нашу статью, а то его как-то маловато. Расскажу вам сегодня про слои и маски коллизии в Godot Engine.
Итак, представим ситуацию, которая, как раз, есть в этой игре: ваш персонаж не должен проходить сквозь стены и пол, враги спавнятся за стенами, не должны проходить сквозь пол, должны проходить через стены, как же это сделать? И тут приходят слои и маски на помощь. Вот смотрите, главный герой будет располагаться на 1 слое, враг -- на 2, пол -- на 3, стены -- на 4. Это как тортик — сначала один слой, потом другой, потом третий и т. д. А теперь про маски. Маски -- это просто те слои, с которыми штука взаимодействует. Персонаж тогда взаимодействует с 3 и 4 слоем, враг -- с 3 слоем, пол -- с 1 и 2 слоем, стены -- только с 1 слоем. Надеюсь, вы поняли хоть толику из моей простыни текста.
Заключение
Что ж, следующие пару постов скорее всего будут тоже про эту игру, но по оставшимся пунктам дорожной карты. Пока что я не буду её распространять, так как она ещё сверх-сырая. Надеюсь вам интересна моя игра и посты об её разработке, прошу честных критиков и советчиков в комментарии, спасибо, если прочли полностью этот пост, до скорых встреч!