{"id":3879,"url":"\/distributions\/3879\/click?bit=1&hash=3ae3cc7f0de7b3e8392a20caa7b030b077b14da533fc17553614433c391a1402","title":"\u041a\u0443\u0434\u0430 \u0443\u0442\u0435\u043a\u0430\u0435\u0442 \u043c\u043e\u0439 \u0431\u044e\u0434\u0436\u0435\u0442 \u043d\u0430 \u0440\u0435\u043a\u043b\u0430\u043c\u0443?","buttonText":"\u041a \u043c\u043e\u0448\u0435\u043d\u043d\u0438\u043a\u0430\u043c","imageUuid":"f14d918a-59c9-5701-b718-30025e0ce469","isPaidAndBannersEnabled":false}
Gamedev
Евгений Белоусов

История провала: Deadly Travel

Шёл 2015 год...Я и мой товарищ (который вот-вот закончил универ) бросились делать игру на умирающем Adobe Flash.

Да, знаю, после фразы "Флэш" дальше можно не писать, хе-хе-хе)
Мы были молоды, красивы и и без денег!
Я отвечал за графон и геймдизайн, друг - за код. Задача проста: быстро склепать игру, заработать сотни тыщ и уехать жить на Гавайские острова.

Выбрали Флэш, поскольку друг увлекался этим движком, и первые практические опыты уже умелись. Подбадривало нас и то, что не так давно (2014) вышла The Banner Saga, которая создавалась на флэше. Вроде как!

Работали мы не покладая рук. За пару недель я нарисовал основной визуал, и расписал диздок. Без тонкостей разумеется, главное, чтоб работало.
Прототип мы сделали за 3 месяца. Его можно глянуть в ролике, что я опубликовал ниже.

Игра типичный рогалик с пошаговой боёвкой. Игрок бродит по свободной карте, сражается с монстрятиной, выполняет квесты и просто чилит. Всё это с элементами выживалки и в обёртке дарк фэнтези.

Главное меню

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

Первые дизайнерские потуги.

Мы оперативно пересели на "модный" Unity и продолжили свои эксперименты там. Юнити давался с трудом. Друг никак не мог свыкнуться со встроенным интерфейсом. Он сильно привык прописывать все функции вручную и банально терялся в обилии кнопок и ползунков.
Создание игры ощутимо замедлилось.

Вторая версия графония.  Стиль, сука, стиль! И красить не надо)

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

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

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

Какой бы крутизной не казалось Ч/Б, это быстро утомляло глаза. Сделал красочно.

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

На него легла задача попроще. Пока мой основной прогер пилил редактор, другой - писал базовый функционал. Но и тут всё неожиданно встряло. Второй прогер за день сделал калькулятор для отлаживания баланса, в то время как первый закапывался в "редакторе" ещё глубже. Естественно, работа никак не оплачивалась, и второй прогер, видя, что с такими нубасами как мы, каши не сваришь, оперативно сбежал (и правильно сделал!).

Окно боя.

Однако я не унывал. Всё свободное время посвящал игре. Эксперементировал с анимацией, рисовал интерфейс, балансировал механику боя, мечтал о скором релизе :D

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

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

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

Некоторые из персонажей и окно загрузки

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

А ведь могло получиться что-то интересное...

ЗЫ: Видео дилетантское, чувство испанского стыда гарантировано. Буду рад, если кому-то идея придётся по вкусу, и он сам возьмётся за реализацию.

Дрожащим голосом я рассказываю о своей игре
0
23 комментария
Написать комментарий...
777yur0k

Норм игра, хз откуда столько самобичевания. Иронично, что я сам, получается, похожую игру делаю, если не сказать 1 в 1 по концепции, только на порядок хуже в плане визуала, да и угрохал я в неё уйму времени. А сколько вы потратили времени на разработку альфы из видео? А то я уже что-то начал комплексовать из-за того, сколько САМ времени угрохал, а результат пока к вашему только отдалённо приближается...

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Альфа из видео - три месяца.
Никогда не отчаивайся, если, конечно, речь не идёт о выживании. В моём случае я остановил эту ебаторию только из-за необходимости кормить семью.

Ответить
Развернуть ветку
777yur0k

Жесть за 3 месяца такую игру сделать, причём с нуля и считай без опыта. Респект. Спасибо за пожелание. Работаем, надеюсь, что однажды труды всё же окупятся не только в плане опыта. :)

Ответить
Развернуть ветку
Евгений Белоусов
Автор

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

Ответить
Развернуть ветку
777yur0k

Ну, если так, то, наверное, да. Я-то делаю только когда есть желание. Порой могу месяцами к проекту не притрагиваться.

Но всё равно 3 месяца полноценно работать над проектом — это достойно уважения как минимум за самодисциплину. Не все так могут.

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Можно ещё пригласить новых людей в проект. Даже если покинут команду, всё равно пнут разработку вперёд.
Опытный прогер, вот то, что мы писали 3 месяца, напишет за 1.

Ответить
Развернуть ветку
Роскошный супер_стар
Как написать генерацию мира друг не знал

Спросили бы здесь на DTF, местные эксперты сразу бы напихали бы самых разных советов :-)

А если серьезно, то учитывая визуал и что из себя представляют уровни, то процедурная генерация уровня это наверное самое простое. Это вот над тем как в прицепе еще поебаться надо (и то не сильно и только из-за того что размеры планетки немаленькие и генерироваться все должно на лету), а здесь с таким "квадратно-гнездовым" дизайном карт по идее никаких проблем быть не должно, абсолютно любой программист справиться должен был (а каждый программист в силу своей лени всегда задумывается над генеративным дизайном, по крайней мере раньше так было). Процедурная генерация тема избитая и хорошо описанная (для простых случаев кнонечно же): есть готовые примеры(да хоть на том же RogueBasin поискать), туториалы, описания типовых методик и уже готовые библиотеки, которые бы сработали в вашем случае. Можно было начать вообще с самого просто и постепенно допиливать. Тем более в рогалике по определению должна быть процедурная генерация.

Нет, вдумайтесь, в Юнити уже весь необходимый функционал, а мы пилим редактор в редакторе! Надёжный план!

На самом деле это абсолютно нормальная практика — кастомизировать редактор и писать свои расширения, тем более в Unity. Другое дело, что не понятно нафига для такого проекта было пилить свой собственный редактор уровней и что там было такого, что это все тормозило...

Выбрали Флэш, поскольку друг увлекался этим движком, и первые практические опыты уже умелись. Подбадривало нас и то, что не так давно (2014) вышла The Banner Saga, которая создавалась на флэше. Вроде как!

Для Баннер саги был разработан свой собственный движок. Да, разработчики основывались на технологии Adobe AIR, но во-первых они принялись за разработку игры в 2011 годе, еще до того как окончательно стало известно, что вся экосистема, выстроенная вокруг Флэша должен умереть, во-вторых по итогу они построили свой собственный движок и всю техническую часть тащил на себе нехуевый такой программист, который сначала работал в NASA (писал ПО для Хаббла), а затем работал ведущим программистом в BioWare (Star Wars: The Old Republic). Но в 2015 году браться за Флэш уже было плохой идей, это да.

А так выглядит неплохо, правда учитывая что это на мобилки и учитывая общий дизайн, я бы еще три-в-ряд добавил :-))))

Могли бы по выходным постепенно допиливать, и заодно обучаться.

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Спасибо за развёрнутый комментарий. С общей мыслью полностью согласен. По Банер Саге инфа интересная, не знал)

Не соглашусь только с финальной фразой:

Могли бы по выходным постепенно допиливать, и заодно обучаться.

Я придерживаюсь мнения, что ты или делаешь, или не делаешь.

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

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

Конкретно мой труд, мои старания, никуда не пропали, это уже хорошо. + Полезный опыт)
А делали бы по выходным, забили бы уже через 2-3 недельки)

Ответить
Развернуть ветку
Роскошный супер_стар
Пока горят глаза, пока идея заполонила мозг, надо бросать все дела и гнать на всех порах к финишу, совершив первый, и самый главный рывок.

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

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

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

https://en.wikipedia.org/wiki/Kanban_(development)

Фулл-тайм, парт-тайм, глубоко пофиг, просто во втором случае будет дольше и меньше. Разработчик Stardew Valley начал делать её в свободное время, пока работал билетером в театре :-) Axiom Verge тоже начинался как побочный проект в свободное время. Ну а Iconoclasts делался и переделывался так вообще на протяжении 8 лет в парт-тайме :-)

Вот эта игра тоже была разработана в свободное время двумя человеками (за год что-то или около того):

https://www.nintendo.com/store/products/bridge-strike-switch/

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

Если уж на то пошло, люди на джемах умудряются успевать за пару дней что-то собрать

https://dtf.ru/gamedev/1286416-mark-braun-nazval-20-pobediteley-gmtk-game-jam-2022-uchastniki-za-48-chasov-delali-igry-na-temu-brosok-kubikov

В общем у людей получается совмещать.

И если уж на то пошло, то на самых ранних стадиях когда ничего еще нихрена не понятно, не стоит слишком много времени уделять и убиваться, потому что мало ли, вдруг хуйня по итогу окажется. Имеет смысл усиливать напор, когда что-то уже дельное вырисовывается. Так на самом деле практически любой R&D устроен — большая часть работы уходит в стол и проекты прекращаются на ранней стадии, когда становится понятно, что ничего дельного не выйдет.

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

А потому что не надо было сразу с места в карьер бросаться и хуярить код. Надо было погонять вола, почитать чего-нибудь, так бы наткнулись на всякий полезный материал, переварили бы его и начали кодить:

https://blog.unity.com/technology/procedural-patterns-you-can-use-with-tilemaps-part-i

https://blog.unity.com/technology/procedural-patterns-to-use-with-tilemaps-part-ii

http://www.roguebasin.com/index.php/Basic_BSP_Dungeon_generation

https://catlikecoding.com/unity/tutorials/hex-map/

https://www.gridsagegames.com/blog/2014/06/procedural-map-generation/

https://www.redblobgames.com/maps/terrain-from-noise/

http://www-cs-students.stanford.edu/~amitp/game-programming/polygon-map-generation/

http://www.jgallant.com/procedurally-generating-wrapping-world-maps-in-unity-csharp-part-1/

http://thingonitsown.blogspot.com/2018/12/cozy-kingdoms-generation.html

https://www.gamedeveloper.com/programming/2d-procedurally-generated-world-building-in-unity

https://byte-arcane.github.io/age-of-transcendence/2017/12/14/overworld-map-generation/

https://www.boristhebrave.com/2021/04/10/dungeon-generation-in-unexplored/

Всякие там видео:

https://youtu.be/TlLIOgWYVpI

https://youtu.be/wbpMiKiSKm8

Что-нибудь на гитхабе посмотреть

https://github.com/rthome/SharpNoise

https://github.com/mxgmn/ConvChain

https://github.com/baturinsky/worldgen

Ассет Стор у Юнити тоже забит всякими разными генераторами, например, вот

https://assetstore.unity.com/packages/tools/terrain/trn-procedural-terrain-generator-vegetation-tree-spawner-hydraul-195811

https://assetstore.unity.com/packages/templates/systems/procedural-isometric-map-generator-181280

https://assetstore.unity.com/packages/tools/utilities/map-graph-177023

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

Ответить
Развернуть ветку
Евгений Белоусов
Автор
А вот это как раз ошибка,

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

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

Разработчик Stardew Valley начал делать её в свободное время, пока работал билетером в театре :-)

Вот уж парень-рубака. И когда он только успевал? Не смеши мои тапочки.
В 18-19 лет я утром был грузчиком на рынке, после чего шёл на столярку, возвращаясь обратно разгружал ранее выгруженный товар на базаре, приходил домой к 8 вечера и до полночи, примерно, рисовал иконки для какой-то браузерки.
Так продолжалось месяц, я охуел настолько, насколько это возможно, получил первую ЗП с фрилансе и уволился нахуй отовсюду, откуда можно. Потому что я уже разваливался на части.

А ты мне про билетёра в театре рассказываешь. Смешно)

Если уж на то пошло, люди на джемах умудряются успевать за пару дней что-то собрать

Они потому и успевают, что работают на износ. А потом лежишь, и делать нихера не хочешь.

В общем, про работу в отрыве от работы меня можно не лечить. На этом поприще я сам кого хочешь "совмещать" научу. Но мораль такова - нахуй оно надо. Ты или вкладываешься всецело в дело, выдаёшь готовую игру и садишься за следующую. Или хуячишь её 10 лет, она у тебя 10 лет в альфе, кривая, сырая, и это бесконечная стройка длинною в жизнь. Зачем? Какой в этом смысл? Не понятно.
Вам нравится играть в альфа-версии? Мне - нет.
Поэтому и делать хочу законченный продукт, а не огрызок, который непонятно когда будет завершён.

Ответить
Развернуть ветку
Ярослав Голубев

Для геймдева - нужно больше разбора ошибок)
Тут скорее уж в инди :D
Ну да ладно.

Могу предположить что ты банально перерос по уровню своего коллегу программиста. И он просто отвалился. Наверное тут тебе нужно было скорее на RPG мэйкер ориентироваться....

Ответить
Развернуть ветку
Евгений Белоусов
Автор

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

Ответить
Развернуть ветку
Алексей Правда

Одно можно сказать точно - художник в вашей команде крутой!

Ответить
Развернуть ветку
Гриб Саша

с таким качеством рисунка, можно было сделать не простой рогалик, а порно-рогалик, и загребать на патреоне деньги лопатой

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Ты близок как никогда.

Ответить
Развернуть ветку
Владислав Планида

Это Тексик?

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Палево :D
Привет, Влад)

Ответить
Развернуть ветку
Владислав Планида

Ну точно Тексик

Ответить
Развернуть ветку
Владислав Планида

А, ну да

Ответить
Развернуть ветку
Владислав Планида

По теме

Буду рад, если кому-то идея придётся по вкусу, и он сам возьмётся за реализацию.

Если кто-то найдётся и возьмется, примешь ли ты участие в проекте, если тебе предложат?
Интересно, сказался ли на тебе данный опыт негативно или нет

Ответить
Развернуть ветку
Евгений Белоусов
Автор

Разве что в качестве консультанта.
Сейчас я делаю очередной симулятор свиданий. :D

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

Ответить
Развернуть ветку
777yur0k

Это скорее в инди

Ответить
Развернуть ветку
The Lostman

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

Ответить
Развернуть ветку
Читать все 23 комментария
null