День 43
Вчера занимался в основном графикой (так уж получилось) и немного разработкой
Очень хочеться сделать игру "сочной", но.. я пока что объективно не могу, надо сосредоточиться на геймплее, а не над визуалом (к слову он и так +- норм)
По спрайтам - получилось сделать кролика, он будет первым врагом. Я сделал для него две анимации - подготовка к прыжку и сам прыжок, двигаться он по идее должен только во время прыжка, но для простоты я щас просто сделал что он все время следует за игроком
Еще сделал.. пистолет, поначалу вообще не получалось, ну абсолютно никак, зато потом как я глянул референсы сразу пошло, копировал не точь-в-точь, но копирование присутствовало, мне результат очень понравился. Вместил пистолет в 16х16px спрайт, но для анимации места мало было, поэтому я перенес пистолет на 32х32px холст
Может возникнуть резонный вопрос - почему я помешан именно на 8х8, 16х16, 32х32 размерах, а не на 20x24px или 13x7px - мне так намного проще и в принципе все привыкли к таким размерам. Еще есть некоторые технические проблемы связанные с некоторыми движками, которые просто требуют чтобы текстура/спрайт был размером с любой степени двойки (2, 4, 8, 16 ...), но в Godot и Юнити насколько я знаю эту проблему решили и они там как-то сами преобразуют в итоге все спрайты в подходящий размер если нужно. Например OpenGL 2.0 имеет некоторые ограничения для необычных спрайтов, то же можно сказать и про iOS, нагуглил что iOS не реализовал поддержку PVRTC2 алгоритма сжатия текстур (как обычно - Apple впереди планеты всей)
Поэтому я всегда буду стараться делать текстуры именно размером со степени двойки, чтобы не было никаких проблем возможных (тем более это не сложно так делать). И это абсолютно не проблема, если условная пуля занимает 4х4 пикселя, а я её помещу в 128х128, хитбокс я могу обвести вокруг тех 4 пикселей и все будет четко работать
Но.. анимировать выстрел с пистолета не получилось, пока что это выше моих сил, я и так долго сидел над графикой, так что подумал что сделаю еще спрайт для пули и буду уже саму игру доделывать
Сделал чтобы оружие смотрело в сторону курсора и чтобы его текстура переворачивалась если оно находится слева от персонажа (т.е. от 90° до 270° поворота)
Сегодня думаю закончить смотреть видео от GDQuest и закончить кое-как игру, потом приступлю к другому гайду побольше с плейлистом, а после - к курсу на Udemy (мне он понравился, так что решил взять и пройти)
#pixelart #godot #разработка #ritkarampage
Вчера занимался в основном графикой (так уж получилось) и немного разработкой
Очень хочеться сделать игру "сочной", но.. я пока что объективно не могу, надо сосредоточиться на геймплее, а не над визуалом (к слову он и так +- норм)
По спрайтам - получилось сделать кролика, он будет первым врагом. Я сделал для него две анимации - подготовка к прыжку и сам прыжок, двигаться он по идее должен только во время прыжка, но для простоты я щас просто сделал что он все время следует за игроком
Еще сделал.. пистолет, поначалу вообще не получалось, ну абсолютно никак, зато потом как я глянул референсы сразу пошло, копировал не точь-в-точь, но копирование присутствовало, мне результат очень понравился. Вместил пистолет в 16х16px спрайт, но для анимации места мало было, поэтому я перенес пистолет на 32х32px холст
Может возникнуть резонный вопрос - почему я помешан именно на 8х8, 16х16, 32х32 размерах, а не на 20x24px или 13x7px - мне так намного проще и в принципе все привыкли к таким размерам. Еще есть некоторые технические проблемы связанные с некоторыми движками, которые просто требуют чтобы текстура/спрайт был размером с любой степени двойки (2, 4, 8, 16 ...), но в Godot и Юнити насколько я знаю эту проблему решили и они там как-то сами преобразуют в итоге все спрайты в подходящий размер если нужно. Например OpenGL 2.0 имеет некоторые ограничения для необычных спрайтов, то же можно сказать и про iOS, нагуглил что iOS не реализовал поддержку PVRTC2 алгоритма сжатия текстур (как обычно - Apple впереди планеты всей)
Поэтому я всегда буду стараться делать текстуры именно размером со степени двойки, чтобы не было никаких проблем возможных (тем более это не сложно так делать). И это абсолютно не проблема, если условная пуля занимает 4х4 пикселя, а я её помещу в 128х128, хитбокс я могу обвести вокруг тех 4 пикселей и все будет четко работать
Но.. анимировать выстрел с пистолета не получилось, пока что это выше моих сил, я и так долго сидел над графикой, так что подумал что сделаю еще спрайт для пули и буду уже саму игру доделывать
Сделал чтобы оружие смотрело в сторону курсора и чтобы его текстура переворачивалась если оно находится слева от персонажа (т.е. от 90° до 270° поворота)
Сегодня думаю закончить смотреть видео от GDQuest и закончить кое-как игру, потом приступлю к другому гайду побольше с плейлистом, а после - к курсу на Udemy (мне он понравился, так что решил взять и пройти)
#pixelart #godot #разработка #ritkarampage
🔥2
Кому интересно наблюдать более подробно за процессом - то буду рад видеть вас на моём ютуб-канале
Каждые несколько дней выкладываю туда кое-как смонтажированные видео своего прогресса - как я учу пиксель-арт, таймлапс разробки игры или же рисования спрайтов для игры
Постоянно пытаюсь улучшать качество контента, не только в телеграмме но и на ютубе, буду рад любой критике, т.к. со стороны виднее
Ссылка на видео с скриншота - клик
Каждые несколько дней выкладываю туда кое-как смонтажированные видео своего прогресса - как я учу пиксель-арт, таймлапс разробки игры или же рисования спрайтов для игры
Постоянно пытаюсь улучшать качество контента, не только в телеграмме но и на ютубе, буду рад любой критике, т.к. со стороны виднее
Ссылка на видео с скриншота - клик
🔥3
День 44
Вчера день был загруженный по работе и по.. монтажу. Я ж всю учебу свою стараюсь записывать на видео, чтобы потом было с чего видео делать и там на память/на будущее. В общем пересматривал свои видео, искал какую-то музыку для заднего фона, обрезал ненужные части, экспериментировал, ушло часа 2-3 на просмотр всех заснятых видео за последние несколько дней и монтаж их в несколько ускоренных значительно поменьше, обычно получается 1.5 часа уместить в 3-5 минут с ускорением х10 и иногда убирать ускорение если нужно
Так же экспериментировал с генерацией картинок с помощью DALL-E 3 ChatGPT-4o. Когда-то подниму локально ИИшку для генерации картинок, но пока что и так норм. Я пытался сгенерировать заставку для ютуб видео для игры R.I.T.K.A. Rampage (я над ней щас работаю), и я прям офигел насколько классно все получилось в итоге, прикреплю пару промежуточных и одно финальное изображение
Сегодня день полностью свободный, так что я уже занимаюсь разработкой. Вероятно, сегодня даже получится досмотреть тот видос от GDQuest (остался час) и потом доделать игру
Всем советую учиться по видео вот именно по подходу "Сначала посмотрел, потом попытался повторить, если не получилось - пересмотри нужную часть полностью, и попробуй снова". Т.к. если повторять за преподом точь-в-точь каждую секунду вы не уловите сути урока и будете перематывать постоянно видео, что еще ухудшит восприятие информации. А если посмотреть, а потом самостоятельно повторять (необязательно такое же) - то это сразу дает минимум х2 по эффективности обучения
Вчера день был загруженный по работе и по.. монтажу. Я ж всю учебу свою стараюсь записывать на видео, чтобы потом было с чего видео делать и там на память/на будущее. В общем пересматривал свои видео, искал какую-то музыку для заднего фона, обрезал ненужные части, экспериментировал, ушло часа 2-3 на просмотр всех заснятых видео за последние несколько дней и монтаж их в несколько ускоренных значительно поменьше, обычно получается 1.5 часа уместить в 3-5 минут с ускорением х10 и иногда убирать ускорение если нужно
Так же экспериментировал с генерацией картинок с помощью DALL-E 3 ChatGPT-4o. Когда-то подниму локально ИИшку для генерации картинок, но пока что и так норм. Я пытался сгенерировать заставку для ютуб видео для игры R.I.T.K.A. Rampage (я над ней щас работаю), и я прям офигел насколько классно все получилось в итоге, прикреплю пару промежуточных и одно финальное изображение
Сегодня день полностью свободный, так что я уже занимаюсь разработкой. Вероятно, сегодня даже получится досмотреть тот видос от GDQuest (остался час) и потом доделать игру
Всем советую учиться по видео вот именно по подходу "Сначала посмотрел, потом попытался повторить, если не получилось - пересмотри нужную часть полностью, и попробуй снова". Т.к. если повторять за преподом точь-в-точь каждую секунду вы не уловите сути урока и будете перематывать постоянно видео, что еще ухудшит восприятие информации. А если посмотреть, а потом самостоятельно повторять (необязательно такое же) - то это сразу дает минимум х2 по эффективности обучения
🔥2
Media is too big
VIEW IN TELEGRAM
День 45
Вчера был ну очень продуктивный день, я узнал много нового, научился много чему, досмотрел видео от GDQuest и закончил игру.. точнее я её начал, это только начало, буду стараться на каждую игру пока что уделять максимум 30 дней
Уже прошло 6 дней с начала работы над R.I.T.K.A. Rampage и скорость моей разработки и рисования уже на абсолютно другом уровне, чем была пару недель назад
За вчера прояснились многие вещи:
[1] Я понял, как наносить и получать урон правильно
[2] Узнал про удобное построение очередей анимации с AnimationPlayer. Например у врага есть 2 анимации - получение урона и бег. Когда заканчивается анимация получения урона должна начинаться анимация "бег", и AnimationPlayer можно это все сделать очередью, вместо полностью ручного управления. То есть до этого я делал как-то так:
Сейчас это уже выглядело бы как-то так:
[3] Использование кастомных сигналов, теперь я понимаю как делать ачивки и отслеживать прогресс персонажа в одном месте
[4] Разобрался как офигенно настроить Y sorting спрайтов (до этого было немного некорректно) - классное видео и короткое видео очень помогло
В игру добавил следующие вещи:
- Механика стрельбы, пули
- Нанесение урона врагам и их убийство
- Система здоровья и healthbar для персонажа
- Game Over экран с кнопкой "Restart"
- Моя гордость - случайный спавн мобов на арене. Была проблема в том, что моб мог заспавниться прям В персонаже или ну очень рядом, я хотел сделать минимальное расстояние, на котором может спавниться моб от персонажа - и у меня получилось, вот кусок кода, отвечающий за выбор точки для спавна моба:
Второй раз в жизни использовал рекурсию, прикольно
К огромнейшему сожалению мой ноут не считал хоткей начала записи в OBS и процесс кодинга не записался, хотя было очень интересно и.. довольно долго
Но в любом случае видео самого результата я могу без проблем записать и прикрепить, так что так и сделаю
#godot #разработка #ritkarampage
Вчера был ну очень продуктивный день, я узнал много нового, научился много чему, досмотрел видео от GDQuest и закончил игру.. точнее я её начал, это только начало, буду стараться на каждую игру пока что уделять максимум 30 дней
Уже прошло 6 дней с начала работы над R.I.T.K.A. Rampage и скорость моей разработки и рисования уже на абсолютно другом уровне, чем была пару недель назад
За вчера прояснились многие вещи:
[1] Я понял, как наносить и получать урон правильно
[2] Узнал про удобное построение очередей анимации с AnimationPlayer. Например у врага есть 2 анимации - получение урона и бег. Когда заканчивается анимация получения урона должна начинаться анимация "бег", и AnimationPlayer можно это все сделать очередью, вместо полностью ручного управления. То есть до этого я делал как-то так:
animation_player.play('hurt')
func animation_finished():
if animation_player.animation_name == 'hurt':
animation_player.play('run')Сейчас это уже выглядело бы как-то так:
animation_player.play('hurt')
animation_player.queue('run')[3] Использование кастомных сигналов, теперь я понимаю как делать ачивки и отслеживать прогресс персонажа в одном месте
[4] Разобрался как офигенно настроить Y sorting спрайтов (до этого было немного некорректно) - классное видео и короткое видео очень помогло
В игру добавил следующие вещи:
- Механика стрельбы, пули
- Нанесение урона врагам и их убийство
- Система здоровья и healthbar для персонажа
- Game Over экран с кнопкой "Restart"
- Моя гордость - случайный спавн мобов на арене. Была проблема в том, что моб мог заспавниться прям В персонаже или ну очень рядом, я хотел сделать минимальное расстояние, на котором может спавниться моб от персонажа - и у меня получилось, вот кусок кода, отвечающий за выбор точки для спавна моба:
# Get random point at least 50px
func get_random_point():
var x = randf_range(area_rect.position.x, area_rect.position.x + area_rect.size.x)
var y = randf_range(area_rect.position.y, area_rect.position.y + area_rect.size.y)
var random_point = global_position + Vector2(x, y)
var player_position = player.global_position
var x_distance = abs(random_point.x - player_position.x)
var y_distance = abs(random_point.y - player_position.y)
var is_point_near_player = (x_distance + y_distance) <= MIN_SPAWN_DISTANCE_FROM_PLAYER
if is_point_near_player:
return get_random_point()
return random_point
Второй раз в жизни использовал рекурсию, прикольно
К огромнейшему сожалению мой ноут не считал хоткей начала записи в OBS и процесс кодинга не записался, хотя было очень интересно и.. довольно долго
Но в любом случае видео самого результата я могу без проблем записать и прикрепить, так что так и сделаю
#godot #разработка #ritkarampage
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
День 46
Сегодня я доделал очень важную деталь в игре - движение кроликов, а точнее их прыжки, как я и хотел. Получилось ну вот прям идеально, точь-в-точь как я и хотел, я был очень рад (в видео вставлю момент с этим). Теперь кролики прыгают в сторону персонажа с некоторой задержкой. Сначала они "готовятся" к прыжку 3 кадра, а потом 2 кадра спрайтов для самого прыжка (фактически один, но все же), на видео будет намного лучше понятно о чем я говорю
А что может быть лучше, чем видео? Правильно - поиграть самому! Я успешно экспортировал и загрузил текущую версию R.I.T.K.A. Rampage на itch.io и абсолютно каждый теперь может в неё поиграть и следить за прогрессом разработки еще и как полноценный игрок🔥
Конечно же игра сырая, но я очень рад, что залить в интернет игру так просто и быстро получилось, что каждый из вас и вообще любой, кому я дам ссылку, сможет поклацать этот прототип игры (и будущие другие)
Пока что работает конечно же только с мышкой и компьютером, управление на WASD, левый клик мыши - стрельба, вот ссылка на игру https://sundwell.itch.io/ritka-rampage
В будущем оформлю страничку более адекватно, добавлю ассеты, спрайты, описание и т.д., но сейчас вполне хватит и этого. Буду очень рад любым идеям для добавления в игру, можете писать тут или же на страничке игры в "Comments" секции
Еще я поигрался с VFX (visual effects), а точнее с Particle System и добавил простейший "взрыв" крови от кроликов, когда они получают урон. Еще я добавил эффект "хвоста" для пули, который следует за ней, эдакий дым, что-то похожее на след от самолета
Полное видео с прогрессом за сегодня можете глянуть тут
#godot #разработка #ritkarampage
Сегодня я доделал очень важную деталь в игре - движение кроликов, а точнее их прыжки, как я и хотел. Получилось ну вот прям идеально, точь-в-точь как я и хотел, я был очень рад (в видео вставлю момент с этим). Теперь кролики прыгают в сторону персонажа с некоторой задержкой. Сначала они "готовятся" к прыжку 3 кадра, а потом 2 кадра спрайтов для самого прыжка (фактически один, но все же), на видео будет намного лучше понятно о чем я говорю
А что может быть лучше, чем видео? Правильно - поиграть самому! Я успешно экспортировал и загрузил текущую версию R.I.T.K.A. Rampage на itch.io и абсолютно каждый теперь может в неё поиграть и следить за прогрессом разработки еще и как полноценный игрок
Конечно же игра сырая, но я очень рад, что залить в интернет игру так просто и быстро получилось, что каждый из вас и вообще любой, кому я дам ссылку, сможет поклацать этот прототип игры (и будущие другие)
Пока что работает конечно же только с мышкой и компьютером, управление на WASD, левый клик мыши - стрельба, вот ссылка на игру https://sundwell.itch.io/ritka-rampage
В будущем оформлю страничку более адекватно, добавлю ассеты, спрайты, описание и т.д., но сейчас вполне хватит и этого. Буду очень рад любым идеям для добавления в игру, можете писать тут или же на страничке игры в "Comments" секции
Еще я поигрался с VFX (visual effects), а точнее с Particle System и добавил простейший "взрыв" крови от кроликов, когда они получают урон. Еще я добавил эффект "хвоста" для пули, который следует за ней, эдакий дым, что-то похожее на след от самолета
Полное видео с прогрессом за сегодня можете глянуть тут
#godot #разработка #ritkarampage
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
День 47
Вчера я понял, что я делаю игру, но сам до конца не понимаю что за игра. Т.е. ну вот в общем понятно - стрелять в животных, что-то типа Vampire Survivors, в главной роли капибара.. а дальше что?
Поэтому я решил уделить вчерашний день на так называемый брейншторминг (придумывание идей) и структурирование всей информации, что у меня есть и будет
Прикреплю пару скринов и небольшое видео (потому что там гифка🥳 ) моих результатов
И вкратце что я на данный момент обдумал:
Сессии
Каждая игра будет длится 10-15 минут, улучшения будут сохранятся только во время сессии, т.е. если вы умерли - все заново начинается (типичный подход в roguelike/roguelite играх), но, вероятно, я добавлю постоянные улучшения
Мутации (aka улучшения)
Из врагов будут выпадать апельсины (тот же опыт) и по достижению нового уровня будет возможность выбирать 1 из 3 мутаций, которые будут так или иначе влиять на игровой процесс. Это будет начало для "Апельсиновой Энергии", про которую я рассказывал в посте про мою целевую игру
Локации
Будет несколько локаций. На каждой будет:
- Как минимум 2 обычных врага со следующими характеристиками:
- Низко-средний уровень здоровья (HP), средняя скорость, низкий урон, ближний бой.
- Низкий уровень здоровья (HP), высокая скорость, атака роем, низкий урон, ближний бой.
- Как минимум 2 необычных врага со следующими характеристиками:
- Низкий уровень здоровья (HP), средняя скорость, высокий урон, взрывной.
- Высокий уровень здоровья (HP), медленная скорость, средний урон, специальная атака, ближний бой.
- Средний уровень здоровья (HP), средняя скорость, средний урон, специальная атака, дальний бой.
- Как минимум 1 редкий враг:
- Средний уровень здоровья (HP), высокая/средняя скорость, средне-высокий урон, специальная атака, особая способность, дальний бой / ближний бой.
- Босс каждые 5 минут:
- Высокий уровень здоровья (HP), средняя скорость, высокий урон, 2 специальные атаки, особая способность (возможно, призывает своих миньонов).
В локации я хочу воплотить идею из моей целевой игры, т.е. сначало все было мило-красочно (Луг, зайчики, коровы, милые животные, все зелено и ярко), потом Mr. Barashek подорвал станцию и все стало плохо (Радиационная локация, мутировавшие враги, все загрязнено и в темных тонах)
#ritkarampage
Вчера я понял, что я делаю игру, но сам до конца не понимаю что за игра. Т.е. ну вот в общем понятно - стрелять в животных, что-то типа Vampire Survivors, в главной роли капибара.. а дальше что?
Поэтому я решил уделить вчерашний день на так называемый брейншторминг (придумывание идей) и структурирование всей информации, что у меня есть и будет
Прикреплю пару скринов и небольшое видео (потому что там гифка
И вкратце что я на данный момент обдумал:
Сессии
Каждая игра будет длится 10-15 минут, улучшения будут сохранятся только во время сессии, т.е. если вы умерли - все заново начинается (типичный подход в roguelike/roguelite играх), но, вероятно, я добавлю постоянные улучшения
Мутации (aka улучшения)
Из врагов будут выпадать апельсины (тот же опыт) и по достижению нового уровня будет возможность выбирать 1 из 3 мутаций, которые будут так или иначе влиять на игровой процесс. Это будет начало для "Апельсиновой Энергии", про которую я рассказывал в посте про мою целевую игру
Локации
Будет несколько локаций. На каждой будет:
- Как минимум 2 обычных врага со следующими характеристиками:
- Низко-средний уровень здоровья (HP), средняя скорость, низкий урон, ближний бой.
- Низкий уровень здоровья (HP), высокая скорость, атака роем, низкий урон, ближний бой.
- Как минимум 2 необычных врага со следующими характеристиками:
- Низкий уровень здоровья (HP), средняя скорость, высокий урон, взрывной.
- Высокий уровень здоровья (HP), медленная скорость, средний урон, специальная атака, ближний бой.
- Средний уровень здоровья (HP), средняя скорость, средний урон, специальная атака, дальний бой.
- Как минимум 1 редкий враг:
- Средний уровень здоровья (HP), высокая/средняя скорость, средне-высокий урон, специальная атака, особая способность, дальний бой / ближний бой.
- Босс каждые 5 минут:
- Высокий уровень здоровья (HP), средняя скорость, высокий урон, 2 специальные атаки, особая способность (возможно, призывает своих миньонов).
В локации я хочу воплотить идею из моей целевой игры, т.е. сначало все было мило-красочно (Луг, зайчики, коровы, милые животные, все зелено и ярко), потом Mr. Barashek подорвал станцию и все стало плохо (Радиационная локация, мутировавшие враги, все загрязнено и в темных тонах)
#ritkarampage
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
День 48
Вчера начал смотреть плейлист от Branno по клону Vampire Survivors, пока что особо ничего полезного не почерпнул, т.к. только начало, но я надеюсь увидеть что-то очень полезное именно с точки зрения улучшений, левелинга, опыта и увеличивающейся сложности по ходу игры
На данный момент я понимаю то, как сделать игру чтобы в неё "можно было играть", но я вообще пока что не понимаю как это все сбалансировать. Вот добавлю я врагов новых - как понять, сколько там хп должно быть у врага и урона? Есть улучшения, сделать их не проблема - а баланс?
Вот будет улучшение "двойные пули" (чисто теоретически) и возникают следующие вопросы/мысли:
- получается пуль будет в 2 раза больше и урон собственно тоже в 2 раза больше. Ок, тут можно сделать "пуль в два раза больше, урон от каждой х0.7", в итоге урон будет х1.4, что в принципе обычная вещь, а дальше?
- Пуль будет в 2 раза больше, получается что если кролик умирает от первой пули, то вторая пуля летит дальше и это уже совсем другой разговор, сейчас объясню
Есть два врага, у каждого по 1 ХП, и есть персонаж с оружием, предположим есть такие ситуации:
№1 Урон оружия равен 2 ХП, пуля одна и не проходит насквозь - получается первый враг умирает, а второй идет дальше и толпа будет душить персонажа, даже если у него 999 урона с выстрела
№2 Урон оружия равен 1 ХП, пули две и они не проходят насквозь - получается два врага умирает, и эффективность оружия становится в два раза больше, а эффективность первого оружия остается такая же
Казалось бы все норм, один вариант для жирных врагов, второй - для толп. Но теперь вопрос как правильно сбалансировать врагов, когда и по сколько их спавнить? Какие типы врагов спавнить? И так далее
Короче вопросов по разработке и по pixel art'у нету, зато теперь миллиард вопросов по геймдизайну
Пока что решил что буду делать как делается, закончу игру чтобы она была полноценная, а потом займусь правками в балансе и несколько дней уделю изучению геймдизайна
#ritkarampage
Вчера начал смотреть плейлист от Branno по клону Vampire Survivors, пока что особо ничего полезного не почерпнул, т.к. только начало, но я надеюсь увидеть что-то очень полезное именно с точки зрения улучшений, левелинга, опыта и увеличивающейся сложности по ходу игры
На данный момент я понимаю то, как сделать игру чтобы в неё "можно было играть", но я вообще пока что не понимаю как это все сбалансировать. Вот добавлю я врагов новых - как понять, сколько там хп должно быть у врага и урона? Есть улучшения, сделать их не проблема - а баланс?
Вот будет улучшение "двойные пули" (чисто теоретически) и возникают следующие вопросы/мысли:
- получается пуль будет в 2 раза больше и урон собственно тоже в 2 раза больше. Ок, тут можно сделать "пуль в два раза больше, урон от каждой х0.7", в итоге урон будет х1.4, что в принципе обычная вещь, а дальше?
- Пуль будет в 2 раза больше, получается что если кролик умирает от первой пули, то вторая пуля летит дальше и это уже совсем другой разговор, сейчас объясню
Есть два врага, у каждого по 1 ХП, и есть персонаж с оружием, предположим есть такие ситуации:
№1 Урон оружия равен 2 ХП, пуля одна и не проходит насквозь - получается первый враг умирает, а второй идет дальше и толпа будет душить персонажа, даже если у него 999 урона с выстрела
№2 Урон оружия равен 1 ХП, пули две и они не проходят насквозь - получается два врага умирает, и эффективность оружия становится в два раза больше, а эффективность первого оружия остается такая же
Казалось бы все норм, один вариант для жирных врагов, второй - для толп. Но теперь вопрос как правильно сбалансировать врагов, когда и по сколько их спавнить? Какие типы врагов спавнить? И так далее
Короче вопросов по разработке и по pixel art'у нету, зато теперь миллиард вопросов по геймдизайну
Пока что решил что буду делать как делается, закончу игру чтобы она была полноценная, а потом займусь правками в балансе и несколько дней уделю изучению геймдизайна
#ritkarampage
🔥2
Media is too big
VIEW IN TELEGRAM
День 49
Вчера занимался тремя вещами
Глянул несколько видео от Branno с того плейлиста, сейчас я на 10 видео - оно про опыт, как раз то, что нужно. На самом деле качество всех видео в его плейлисте просто.. ужаснейшее, он почти ничего не объясняет, качество картинки - ужас, качество звука - ужас, скорость разговора и подача материала - абсолютно неуместно быстрая, качество кода - просто ужаснейшее.. Ну, ничего не поделать. Сейчас я досмотрю этот плейлист, а потом продолжу с тем курсом с Udemy про 2D Survivors Like Game. Я просто повелся на комментарии под первым видео (прикрепил скрин), ну и теперь смотрю каждый видос на х2 скорости + перемотка, чтобы дойти до полезного. Конечно я уже больше знаю чем большинство смотрящих тот плейлист, но.. курс объективно не очень, автору естественно спасибо, что-то полезное я почерпнул точно, но смотреть больно, а еще больнее знать, что много будущих разработчиков будут так же говнокодить и усложнять на ровном месте
Немного позанимался пиксель-артом - сделал спрайт воды, который добавил в тайлсет. Он мне нужен был, чтобы окружить арену и там не было этой серой зоны без графики
И, самое главное - разработка. Теперь камера не выходит за границы арены, а сама арена теперь больше примерно в 2-3 раза. Наконец-то сделал ходьбу во время стрельбы, раньше можно было только стоять и стрелять, а при беге оружие пряталось, теперь же есть что-то среднее - медленная ходьба с возможностью стрельбы. Ну и собственно последнее изменение - границы арены, теперь за арену выйти нельзя, так что никто не увидит этой серой зоны без графики👀
Полное видео прогресса можете глянуть на ютубе, а небольшое превью результата прикрепил к посту
#pixelart #godot #разработка #ritkarampage
Вчера занимался тремя вещами
Глянул несколько видео от Branno с того плейлиста, сейчас я на 10 видео - оно про опыт, как раз то, что нужно. На самом деле качество всех видео в его плейлисте просто.. ужаснейшее, он почти ничего не объясняет, качество картинки - ужас, качество звука - ужас, скорость разговора и подача материала - абсолютно неуместно быстрая, качество кода - просто ужаснейшее.. Ну, ничего не поделать. Сейчас я досмотрю этот плейлист, а потом продолжу с тем курсом с Udemy про 2D Survivors Like Game. Я просто повелся на комментарии под первым видео (прикрепил скрин), ну и теперь смотрю каждый видос на х2 скорости + перемотка, чтобы дойти до полезного. Конечно я уже больше знаю чем большинство смотрящих тот плейлист, но.. курс объективно не очень, автору естественно спасибо, что-то полезное я почерпнул точно, но смотреть больно, а еще больнее знать, что много будущих разработчиков будут так же говнокодить и усложнять на ровном месте
Немного позанимался пиксель-артом - сделал спрайт воды, который добавил в тайлсет. Он мне нужен был, чтобы окружить арену и там не было этой серой зоны без графики
И, самое главное - разработка. Теперь камера не выходит за границы арены, а сама арена теперь больше примерно в 2-3 раза. Наконец-то сделал ходьбу во время стрельбы, раньше можно было только стоять и стрелять, а при беге оружие пряталось, теперь же есть что-то среднее - медленная ходьба с возможностью стрельбы. Ну и собственно последнее изменение - границы арены, теперь за арену выйти нельзя, так что никто не увидит этой серой зоны без графики
Полное видео прогресса можете глянуть на ютубе, а небольшое превью результата прикрепил к посту
#pixelart #godot #разработка #ritkarampage
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🔥1
День 50
Вчера немного потыкал сам геймдизайн и.. стало понятно, что углубляться в это сейчас это гиблое дело, слишком широкие познания там идут, а время не резиновое и руки только две (пока что)
Но, в любом случае, немного я почитаю про него, нашел пару ресурсов полезных так или иначе на первый взгляд
Аусхестов геймдизайн - дофига материала и, вроде как, очень полезного. Особенно мне будет полезны главы "Теория" и "Баланс"
GDCuffs.com - как устроены игры и их разработка, особенное внимание приделяется геймдизайну, для меня будет очень полезно "Баланс" и "Экономика"
Ну и на будущее сохранил несколько книг, мало ли когда-то возьмусь более серьёзно за это, вот названия:
1. Разработка игр и теория развлечений
2. Геймдизайн. Как создать игру, в которую будут играть все
Сегодня продолжу разработку игры, планирую сделать уже сейчас повышающуюся сложность со временем
Планирую сделать следующим образом - у меня будет спавнер мобов, в который я закину настройки. То есть я распишу на каждую минуту то, какие мобы будут спавниться, сколько и т.д. Спавнер будет принимать массив настроек, т.к. если на каждую минуту расписывать, то это уже минимум 10 настроек нужно, так что массив тут нужен
Настройки будут примерно следующие:
1. Начальное время
2. Конечное время
3. Кол-во
4. Уровень
5. Враг
6. Задержка спавна
Сейчас расскажу за что каждая настройка будет отвечать, но прежде напомню, что игра не бесконечная, и максимум будет несколько локаций, которые будут длиться 10-20 минут
Начальное время - с этого времени будут появляться враги
Конечное время - с этого времени эти враги не будут появляться
Кол-во - кол-во врагов, которые будут появляться за раз
Уровень - уровень врагов, которые будут появляться
Враг - собственно сам враг, который будет спавниться
Задержка спавна - скорость, с которой будут спавниться мобы, например 0.1 секунда задержки это 10 врагов в секунду
#gamedesign #ritkarampage
Вчера немного потыкал сам геймдизайн и.. стало понятно, что углубляться в это сейчас это гиблое дело, слишком широкие познания там идут, а время не резиновое и руки только две (пока что)
Но, в любом случае, немного я почитаю про него, нашел пару ресурсов полезных так или иначе на первый взгляд
Аусхестов геймдизайн - дофига материала и, вроде как, очень полезного. Особенно мне будет полезны главы "Теория" и "Баланс"
GDCuffs.com - как устроены игры и их разработка, особенное внимание приделяется геймдизайну, для меня будет очень полезно "Баланс" и "Экономика"
Ну и на будущее сохранил несколько книг, мало ли когда-то возьмусь более серьёзно за это, вот названия:
1. Разработка игр и теория развлечений
2. Геймдизайн. Как создать игру, в которую будут играть все
Сегодня продолжу разработку игры, планирую сделать уже сейчас повышающуюся сложность со временем
Планирую сделать следующим образом - у меня будет спавнер мобов, в который я закину настройки. То есть я распишу на каждую минуту то, какие мобы будут спавниться, сколько и т.д. Спавнер будет принимать массив настроек, т.к. если на каждую минуту расписывать, то это уже минимум 10 настроек нужно, так что массив тут нужен
Настройки будут примерно следующие:
1. Начальное время
2. Конечное время
3. Кол-во
4. Уровень
5. Враг
6. Задержка спавна
Сейчас расскажу за что каждая настройка будет отвечать, но прежде напомню, что игра не бесконечная, и максимум будет несколько локаций, которые будут длиться 10-20 минут
Начальное время - с этого времени будут появляться враги
Конечное время - с этого времени эти враги не будут появляться
Кол-во - кол-во врагов, которые будут появляться за раз
Уровень - уровень врагов, которые будут появляться
Враг - собственно сам враг, который будет спавниться
Задержка спавна - скорость, с которой будут спавниться мобы, например 0.1 секунда задержки это 10 врагов в секунду
#gamedesign #ritkarampage
🔥2
День 51
Я НАШЕЛ.. правильный вариант как делать архитектуру проектов в играх, в особенности в Godot - композиция. Я откладывал уже пару недель видео "Using Composition to Make More Scalable Games in Godot" (да-да, прокрастинация, я с вами). Вы не представляете насколько я рад, меня этот вопрос мучал почти два месяца, с самого начала разработки и тут.. это видео как манна небесная, камень с плеч
Если говорить более в абстрактном техническом плане - это композиция aka Single Responsibility Principle из принципов программирования SOLID. Очень полезно придерживаться, но только когда в этом есть смысл (приходит с опытом)
Я то знал и использовал это все в веб-разработке, да вот не мог никак спроецировать это на разработку игр - и вот, все прояснилось, это офигенное чувство, когда что-то "щелкает" и ты будто выходишь на новый уровень
У меня был страх перед будущим, что делать игры побольше как попало будет ну очень неприятно, а тут этот страх развеялся, потому что теперь я знаю +- как строить архитектуру игры, мои эмоции сложно описать словами
Я писал про то, что буду проходить дальше курс на юдеми про 2D Vampire Survivors like game, он у меня уже куплен был и все такое.. вы не поверите, это курс от того чела с видео на ютубе (в первом абзаце про это писал), и он там все четко делает, просто идеальную архитектуру с заделом на будущее, мотивации теперь у меня хоть отбавляй🔥
По фактическому прогрессу - сделал спавнер мобов как и описывал в предыдущем посте, еще добавил таймер и колизию для врагов, чтобы они не толпились в одной точке
И, как всегда, видео с результатом прикрепляю к посту (и видео с моментом реализации что курс на юдеми от того чела с ютуба), а полное видео прогресса можете глянуть на ютубе
P.S. Пост как обычно, за вчера
#godot #разработка #ritkarampage
Я НАШЕЛ.. правильный вариант как делать архитектуру проектов в играх, в особенности в Godot - композиция. Я откладывал уже пару недель видео "Using Composition to Make More Scalable Games in Godot" (да-да, прокрастинация, я с вами). Вы не представляете насколько я рад, меня этот вопрос мучал почти два месяца, с самого начала разработки и тут.. это видео как манна небесная, камень с плеч
Если говорить более в абстрактном техническом плане - это композиция aka Single Responsibility Principle из принципов программирования SOLID. Очень полезно придерживаться, но только когда в этом есть смысл (приходит с опытом)
Я то знал и использовал это все в веб-разработке, да вот не мог никак спроецировать это на разработку игр - и вот, все прояснилось, это офигенное чувство, когда что-то "щелкает" и ты будто выходишь на новый уровень
У меня был страх перед будущим, что делать игры побольше как попало будет ну очень неприятно, а тут этот страх развеялся, потому что теперь я знаю +- как строить архитектуру игры, мои эмоции сложно описать словами
Я писал про то, что буду проходить дальше курс на юдеми про 2D Vampire Survivors like game, он у меня уже куплен был и все такое.. вы не поверите, это курс от того чела с видео на ютубе (в первом абзаце про это писал), и он там все четко делает, просто идеальную архитектуру с заделом на будущее, мотивации теперь у меня хоть отбавляй
По фактическому прогрессу - сделал спавнер мобов как и описывал в предыдущем посте, еще добавил таймер и колизию для врагов, чтобы они не толпились в одной точке
И, как всегда, видео с результатом прикрепляю к посту (и видео с моментом реализации что курс на юдеми от того чела с ютуба), а полное видео прогресса можете глянуть на ютубе
P.S. Пост как обычно, за вчера
#godot #разработка #ritkarampage
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2