Я достал сигарету и закурил, эта игра меня поражает.
Мне очень интересно, сколько времени заняла разработка этой игры? Хотелось бы понять, сколько труда было вложено в её создание. Буду очень признателен за ответ!
Но, конечно, как и любая другая игра, эта не без грехов. Честно говоря, я крайне разочарован тем, что популяризация геймдева привела именно к этому.
Единственное, что в этой игре не сломано, — это эмбиент. Видимо, он и писал код.
В описании сказано, что игра готова на 70%. Это наглая ложь. Эта игра НЕ готова на 70%. Она готова примерно на минус 30%, и то только морально. Я не знаю, что хочет сказать автор, заявляя, что в обновлениях он «пофиксит НЕКОТОРЫЕ баги». Возможно, скажу глупость, но чтобы пофиксить «некоторые» баги, сначала нужно найти хотя бы один не-баг.
Зачем нужен белый круг посередине экрана? Что он символизирует? Это логотип автора? Это портал в другой, более работающий мир? Возможно, это границы строительства, но строительство работает и за его пределами. Более того, никаких границ тут вообще нет — постройки спокойно ставятся друг в друга, как будто это игра в тетрис, но без победителя. Если круг действительно обозначает границы, то зачем оставлена возможность двигать камерой по бесконечному чёрному пространству? Это случайно не намёк на будущее человечества?
Но это всё мелочи по сравнению с тем, что баланс и хоть какая-то сложность в игре просто отсутствуют. Ты строишь пару "харвестеров" в начале, добавляешь пару юнитов, потом продолжаешь штамповать "харвестеры" — и поздравляю, ты официально стал треугольничным олигархом. Экономика этой игры проще, чем у мобильных ферм, но, в отличие от них, тут даже донат не нужен — треугольнички буквально льются с неба. Хотя стоп... у игры нет конца. Значит, ты обеспечен бесконечно.
Мой сосед называет людей с таким подходом к разработке «птенчиками». Желаю удачи тебе поработать над игрой и дорасти до павлина.
(Я так понимаю, что программа имеет версию 1.0, потому что она действительно выполняет свою основную функцию — тестирует работоспособность моей мышки. Спасибо, теперь я знаю, что она двигается и кликает!)
Я полностью согласен и хотел бы добавить немного. Это просто базовый прототип. Что-то движется, что-то можно разместить, что-то взаимодействует, а что-то может атаковать. В общем, это всё. Конечно, здесь не хватает многих элементов, но я загрузил это, чтобы вы могли поэкспериментировать и оценить, может ли это быть интересным. И, как оказалось, может! 😊
Создано оно было за пару дней, можно сказать игра с джема. Но без джема.
Не секрет, что я использую движок Unity. На самом деле, смотреть особо не на что — всё сделано на MonoBehaviour. Враги и юниты используют NavMesh 2D, но, похоже, есть баг с этим. Когда врага убивают, его перемещают, восстанавливают здоровье, задают новую цель и активируют, но он отказывается двигаться. Я не смог это исправить, так как проблема, как выяснилось, на стороне технологии. Можно попробовать обойти это, но не хочется, тем более что...
Можно создать стены с динамическим NavMeshObstacle. В коде есть проверка (с помощью CalculatePath) на возможность достижения цели. Я собрал массив, и, к сожалению, пришёл к выводу, что юниты видят то, чего видеть не должны. Не знаю, как это исправить, кроме как располагать объекты дальше друг от друга. Вероятно, иначе это просто невозможно. На самом GitHub репозитории 2D NavMesh-a написано, что баг с остановкой юнитов может появится и там есть несколько способов для решения. Ничего не помогло. Если тебе интересно, то баг с тем, что у врага через какое-то количество возрождений есть цель до которой есть прямой путь, но он не хочет до неё двигаться. Он сбрасывает путь. Я долго это дебажил. Оказалось, что всё работает исправно.
Я создал новый проект и начал экспериментировать. Добавил ECSLite (фреймворк позволяющий добавить чистый ECS) и смог решить проблему с падением FPS на моём скромном ПК при 100-200 объектах. С ECS можно спокойно увеличить количество юнитов до 5к и даже до 35к. Позже, играя в аналогичную игру (тоже в браузере), я пришёл к выводу, что можно двигать врагов с помощью MoveTowards, и они будут атаковать всё, что встретят на своём пути. Так думаю и поступлю. Проблема может быть когда я захочу сделать какие-нибудь препятствия, поэтому похоже что придётся написать свой поиск пути.
К слову ещё есть момент. Текущие юниты это сгенерированный полый меш на который наложен шейдер, который может отвечать за жизни, выделение юнита (я думал когда-то сделать классическую RTS) и возможно маленькая анимация его смерти. Но теперь до меня как-то дошло, что можно их отрисовывать прямо на "земле" с помощью Compute Shader. Ну ладно. Чёт много уже написал
← Return to game
Comments
Log in with itch.io to leave a comment.
Я достал сигарету и закурил, эта игра меня поражает.
Мне очень интересно, сколько времени заняла разработка этой игры? Хотелось бы понять, сколько труда было вложено в её создание. Буду очень признателен за ответ!
Но, конечно, как и любая другая игра, эта не без грехов. Честно говоря, я крайне разочарован тем, что популяризация геймдева привела именно к этому.
Единственное, что в этой игре не сломано, — это эмбиент. Видимо, он и писал код.
В описании сказано, что игра готова на 70%. Это наглая ложь. Эта игра НЕ готова на 70%. Она готова примерно на минус 30%, и то только морально. Я не знаю, что хочет сказать автор, заявляя, что в обновлениях он «пофиксит НЕКОТОРЫЕ баги». Возможно, скажу глупость, но чтобы пофиксить «некоторые» баги, сначала нужно найти хотя бы один не-баг.
Зачем нужен белый круг посередине экрана? Что он символизирует? Это логотип автора? Это портал в другой, более работающий мир? Возможно, это границы строительства, но строительство работает и за его пределами. Более того, никаких границ тут вообще нет — постройки спокойно ставятся друг в друга, как будто это игра в тетрис, но без победителя. Если круг действительно обозначает границы, то зачем оставлена возможность двигать камерой по бесконечному чёрному пространству? Это случайно не намёк на будущее человечества?
Но это всё мелочи по сравнению с тем, что баланс и хоть какая-то сложность в игре просто отсутствуют. Ты строишь пару "харвестеров" в начале, добавляешь пару юнитов, потом продолжаешь штамповать "харвестеры" — и поздравляю, ты официально стал треугольничным олигархом. Экономика этой игры проще, чем у мобильных ферм, но, в отличие от них, тут даже донат не нужен — треугольнички буквально льются с неба. Хотя стоп... у игры нет конца. Значит, ты обеспечен бесконечно.
Мой сосед называет людей с таким подходом к разработке «птенчиками». Желаю удачи тебе поработать над игрой и дорасти до павлина.
(Я так понимаю, что программа имеет версию 1.0, потому что она действительно выполняет свою основную функцию — тестирует работоспособность моей мышки. Спасибо, теперь я знаю, что она двигается и кликает!)
Я полностью согласен и хотел бы добавить немного. Это просто базовый прототип. Что-то движется, что-то можно разместить, что-то взаимодействует, а что-то может атаковать. В общем, это всё. Конечно, здесь не хватает многих элементов, но я загрузил это, чтобы вы могли поэкспериментировать и оценить, может ли это быть интересным. И, как оказалось, может! 😊
Создано оно было за пару дней, можно сказать игра с джема. Но без джема.
Если разработка заняла всего 2 дня, это многое объясняет. Было бы интересно увидеть исходный код этого творения, если, конечно, это не секрет.
Не секрет, что я использую движок Unity. На самом деле, смотреть особо не на что — всё сделано на MonoBehaviour. Враги и юниты используют NavMesh 2D, но, похоже, есть баг с этим. Когда врага убивают, его перемещают, восстанавливают здоровье, задают новую цель и активируют, но он отказывается двигаться. Я не смог это исправить, так как проблема, как выяснилось, на стороне технологии. Можно попробовать обойти это, но не хочется, тем более что...
Можно создать стены с динамическим NavMeshObstacle. В коде есть проверка (с помощью CalculatePath) на возможность достижения цели. Я собрал массив, и, к сожалению, пришёл к выводу, что юниты видят то, чего видеть не должны. Не знаю, как это исправить, кроме как располагать объекты дальше друг от друга. Вероятно, иначе это просто невозможно. На самом GitHub репозитории 2D NavMesh-a написано, что баг с остановкой юнитов может появится и там есть несколько способов для решения. Ничего не помогло. Если тебе интересно, то баг с тем, что у врага через какое-то количество возрождений есть цель до которой есть прямой путь, но он не хочет до неё двигаться. Он сбрасывает путь. Я долго это дебажил. Оказалось, что всё работает исправно.
Я создал новый проект и начал экспериментировать. Добавил ECSLite (фреймворк позволяющий добавить чистый ECS) и смог решить проблему с падением FPS на моём скромном ПК при 100-200 объектах. С ECS можно спокойно увеличить количество юнитов до 5к и даже до 35к. Позже, играя в аналогичную игру (тоже в браузере), я пришёл к выводу, что можно двигать врагов с помощью MoveTowards, и они будут атаковать всё, что встретят на своём пути. Так думаю и поступлю. Проблема может быть когда я захочу сделать какие-нибудь препятствия, поэтому похоже что придётся написать свой поиск пути.
К слову ещё есть момент. Текущие юниты это сгенерированный полый меш на который наложен шейдер, который может отвечать за жизни, выделение юнита (я думал когда-то сделать классическую RTS) и возможно маленькая анимация его смерти. Но теперь до меня как-то дошло, что можно их отрисовывать прямо на "земле" с помощью Compute Shader. Ну ладно. Чёт много уже написал