Привета! Так случилось что я решил поднять градус разработки и взялся делать проект по крупнее чем простые аркадки, там не то что бы ААА тайтл, но требования я взял для себя по выше.
И не успел я начать как взявшись за управление, обнаружил что в недавнем DinoRunner я настолько закостылил управление, что это даже неприлично. Поясню, управление динозавром было реализовано постоянными импульсами пока скорость не достигнет заданной. Из-за этого появлялась большая инерция и управление было в край неудобным. А так как мне ещё дали обратную связь по игре, я решил всё же поправить положение и сделать игру более удобной.
Так же были ублюдочные коптеры, которые летали из одной точки волнообразным движением, из-за чего задумка появления коптеров на рандомной высоте терпела фиаско. Опять же было поправлено.
Ну и переработал само управление. Теперь не надо бежать персонажем, он бежит постоянно сам. Играется теперь всё двумя кнопками, так сосредоточенность на избегании препятствий выше, ну и ближе к референсу.
Спасибо за внимание, буду рад почитать ваши комменты, я ещё вернусь!
Привета! Для ЛЛ, я сделал уже вторую игру, поиграть можно тут
Я наконец закончил уже вторую по счету игру. Графика как и в прошлый раз была любезно предоставлена нейросетями. Но в этот раз пришлось изрядно повозится, т.к. анимации я делал всё ещё сам.
Напридумывал много сложностей. Из-за этого управление получилось немного неудобным в мобилках. А конкретно, т.к. был реализован двойной прыжок, пришлось прыжок вывести на отдельную кнопку, хотя без него можно было играть буквально одним пальцем в любой точке экрана. Спорное решение.
Динамический квадрокоптер, тоже довольно извращенская реализация полёта квадрокоптера, увеличила сложность игры, и из-за него пришлось вводить дополнительно наклон головы. Ориентировался я в этот раз на побег Плотвы из киберпанка.
С одной стороны можно было сделать автобег, а с другой стороны тогда преследователь (а он есть кстати) потерял бы смысл, т.к. вероятность того что он догонит игрока стремится к 0.
В целом хоть и много спорных механик и управления, я неплохо поупражнялся в разработке. База из предыдущей игры очень пригодилась, думаю следующий проект будет более продуманный и удобный, т.к. унаследует уже новую базу с довольно разнообразным управлением.
Спасибо за внимание, буду рад почитать ваши комментарии.
Все планы намеченные были реализованы. Получилось сделать бесконечную локацию. Управление осуществляется на базе физического движка, а не трансформаций, как было в Racing 1.0. В целом, вся разработка предсказуема и практически не возникало каких-то супер сложных проблем.
Когда хотел сложностей, а всё пошло по плану
Что планировал в новом этапе:
Разнообразить врагов, сделать несколько видов, обязательно всем сделать анимации.
Потому что основная профессия у меня, художник по анимации, и в этой игре хотелось применить этот навык максимально.
Немного упростил алгоритмы, что-то переработал, сделал удобнее, гибче.
Мышь копается в моём коде
Большую часть времени конечно заняло шлифовка алгоритмов и универсализация скриптов. За то, возможно они подойдут для следующей игры, которая только в стадии черновика, но нынешние алгоритмы (а возможно и другие наработки) вполне возможно мигрируют в следующую игру.
Спасибо за внимание, подписывайтесь, следите.
P.S. немного крипоты
Преследователь, вид не конечный
Сделан был значит преследователь, с простейшим алгоритмом, постоянно двигаться за игроком по прямой. Но в момент прыжка этот кусок костыльной магии решает делать рывок, почему, зачем а главное как, непонятно. На вид, из монитора вылазить не планирует, но всякое возможно. Веду наблюдение. Состояние 8 из 10, лёгкая усталось.
Короче, я допустил несколько ошибок. Первая и ключевая была, что я выложил пост за несколько часов до ОЧЕНЬ хайпового события, и собстна мало кто пост увидел, а из тех кто видел вряд ли интересовала какая-то игрушка.
Плюс, оказалось что я выкинул игру с багом. Кривая и нерабочая таблица рекордов. Ну и крайне высокая сложность, обусловленная кривым алгоритмом спавна противников (он на самом деле и сейчас не идеален, но стало сильно лучше).
Кто не читал предыдущий пост, почитайте, кто в игру не играл, поиграть можете тут
Зачем я это делаю? Да прост, потому что могу и хочу.
Здаровеньки! Так получилось, что я внезапно для себя снова залетел в разработку игр. На мой взгляд достаточно неплохо вышел Racing 1.0 в который можно поиграть тут. Т.к. цель была просто сделать игру в паре с нейросетями в кратчайший срок. Она была выполнена, и мне понравилось.
И я решил не останавливаться. Во первых писать скрипты это не плохая разминка для мозга. А во вторых, я решил сделать небольшую пачку простых игр для дочки, что б она могла зайти и без проблем поиграть с любого устройства, ткскзть убить время в поездке или скучной очереди.
И вот, следующим что я решил делать, оказался динораннер, такой как в хроме.
Но т.к. хочется какого-то вызова. Я решил повысить уровень графики. И вот что вышло.
Предполагаемая локация
Я решил сделать её в аниме стиле. Т.к. нейросети хорошо работают с этим стилем. Игра получится яркой и красочной. Что в целом то меня устраивает. Дочь кстати динозавра одобрила лично. Так что придётся ему бежать этот забег.
А кстати вот и он. Т.к. я кое-что понимаю в анимации, я подготовил нашего дино-товарища и начал работу над его анимациями.
Это был небольшой анонс, ориентировочно планирую за пару недель с игрой управится. Но ничего не обещаю естестна. Прогресс буду выкладывать что б срубить плюсцов и почесать чсв.
P.S. Если выбрал неудачно сообщество, перенесите по-братски куда надо.
Сделать локации "объемными" так называемый эффект параллакса
Переделать управление на физический движок
Объемную локацию собрать было не сложно. То что нейросеть мне сгенерировала, я сначала сделал зацикленной текстурой, потом разделил на 4 слоя и дорисовал детальки.
А вот сложно оказалось сделать её бесконечной. Если в Racing 1.0 зациклить локацию было совсем просто, т.к. она представляла из себя одну и ту же текстуру. То тут появились сложности, я честно как то не могу сообразить алгоритм, по которому можно зациклить локацию. Но думаю в ближайшее время найдётся решение.
Кстати динозавр таки побежал. Впереди ему добавится ещё парочка анимаций, но это уже ближе к стадии шлифовки проекта.
На сегодня у меня стоит задача натянуть всю предыдущую базу на новую игру. Подогнать под горизонтальный формат догонялок. Ну и по возможности решить проблему с бесконечной генерацией локации.
P.S. Пока писал пост, управление уже переделал и адаптировал. Осталось подтянуть интерфейс с предыдущей игры и решить проблему с бесконечной генерацией.
Привета, пикабу! Авторского контента желаете? Добро пожаловать! Это история как я провёл забавную неделю с Unity3D, и даже сделал простую игрушку. Если не хотите читать, то поиграть можно тут
Неавторский контент
Сидел однажды я, играл на троне в ретро-консольку. И вспомнилось мне, что ажно 10 лет назад, увлекся я разработкой игр. Глаза горели, руки чесались. Но навыков кот наплакал. И хоть нещадное штудирование мануалов по Unity3D давало какие-то результаты, до готовых проектов было не то что как до Китая, а как до соседней галактики.
И вот взгрустнув по былым временам, я подумал, а чо? Сейчас есть нейросети, которые ускорят креативные изыскания, глаза уже так не горят, ААА проекты делать руки не чешутся. Почему б немножко не пошалить, так, просто ЧСВ почесать. И решил сделать тайм-киллер, простую бесконечную гонку.
И понеслась.
1/3
Забракованные варианты локаций
Первым делом полез в Fooocus генерировать локации.
Первые результаты были прям ВАУ. Но я быстро смекнул что делать из этого повторяющуюся текстуру мне будет накладно по времени или деньгам. Поэтому решил немного упростить задачу.
На удивление, за счёт нейросети удалось буквально за пару часов получить достойный результат, и я отправился писать первые скрипты. В целом там ничего сложного, я много читал и смотрел видео, о том как раньше делали игры и примерно представлял какие алгоритмы мне понадобятся. Были некоторые сложности с тем что Unity из-за более гибких алгоритмов ломал механику, но мне удалось с ним договориться.
Unity я пришел договориться
Потом пошел автомобиль и его механика. И тут возникли некоторые проблемки, дело в том что у меня не получалось объяснить нейросети что мне нужен вид автомобиля абсолютно сверху. И она постоянно норовила наклонить камеру.
1/4
Сотни тысяч клонов уже готовы, миллион на подходе милорд
Каким-то несусветным чудом, нейросеть выплюнула всего ОДНУ нужную картинку. И мы поехали дальше. Алгоритм машинки тоже немножко попил крови, но тут сказались мои навыки программиста, ибо учился я примерно так
Честно спёр с яндекса, который спёр с пикабу, который наверняка спёрли откуда-то ещё
Спустя некоторое время, игра обросла каким-то духом и костямиылями. Было нагенерено парочка иконок. И что-то начало вырисовываться.
Но чёрт меня дёрнул разнообразить противников в игре и добавить грузовик. 1 день, который можно было потратить, написав полезный код, был потрачен на бессмысленные попытки заставить нейросеть правильно сгенерировать грузовик, и она так и не смогла. Больше таких ошибок не допускал.
На удивление, дальнейшая разработка пошла практически без проблем. Код спокойно тестировался, баги устранялись, всё притиралось и подгонялось. Несмотря на то, что пару раз пришлось буквально сносить половину кода, настроение было бодрым, ведь рисование было на аутсорсе.
После того как 90% задуманного было реализовано, я решил добавить музыки. Естественно т.к. я не музыкант, обратился к нейросети по имени Riffusion. Она делает довольно короткие мелодии, но спустя пару генераций, я выбрал кое-что на свой вкус и даже получилось её зациклить. Хоть сам Unity в итоге не смог нормально зациклить воспроизведение.
Наступила пора тестов. У меня есть группа товарищей, которые невольно оказались альфа-тестерами. Я дал им погонять тестовый билд. И, вышло даже неплохо. Я получил отзывы, и пошёл вносить правки. Следующие пару дней я только и занимался, что балансировал механики, и добавлял то что просили в отзывах.
В целом было весело, ребята играли, давали объективную обратную связь. Но в итоге я слегка увлёкся. И в один момент было решено сделать онлайн таблицу рекордов. Я конечно уже горевший энтузиазмом и чесавший руки, побежал изучать вопрос. Но потратив целый день и попытавшись провернуть пару довольно сложных манёвров. Я решил что пока не стоит, т.к. игру нужно было немного причесать, и не хотелось всё бросить и перегореть прям перед самым концом. Таблицу рекордов я сделал, но как говорится "это не баг, это фича", игра при перезапуске каждый раз её сбрасывает, как в старые добрые на картриджах.
В игре наверняка ещё есть баги о которых я не знаю, но я решил закончить на том что есть. Цель была просто сделать законченную игру, в удовольствие, без каких-то дальнейших планов. Возможно я её ещё доработаю, возможно нет, а может сделаю ещё игры, кто знает.
Если у вас есть какие-то предложения, пожелания, вопросы, пишите в комментарии, я их люблю, с удовольствием почитаю. Возможно украду ваши идеи и добавлю их в игру, заработаю миллиарды и уеду на панамере в закат. На этом я с вами прощаюсь, ссылку на игру ещё раз продублирую.
P.S. да, игра на самом деле не первая, но фактически это первая законченная игра.
P.P.S ВАЖНО!!! Игра может делать вид что не грузится, но я просто не сделал прелоадер. Весит около 11 мб, поэтому проявите терпение. И да, игра доступна в браузере, как на пк так и на телефонах