Gaminator 23: Omnidelta (Обновлено)
(Я не очень разобрался, как сделать другой конкурсный пост с новой ссылкой на игру, поэтому сделал апдейтом в этом посте.) Ссылка на игру обновлена.
Короткая история двух людей, живущих в параллельных пространствах — ячейках.
Надеюсь, это не окончательная версия. Я решил подстраховаться от неполадок в работе провайдера и выложить то, что есть. Это окончательная версия на конкурс (не считая правок, которые могут появиться после багодня).
Препродакшн занял у меня неделю; когда я понял, что не успеваю даже с ним, то решил оставить все как есть и приступить к реализации. Относитесь к этому, как к пробе пера: мне давно хотелось сделать что-то аудио-визуально-интерактивное (да что уж там, сделать хоть что-нибудь), и вот появился повод. Не могу сказать, что я доволен тем, что получается, но не зря же я старался, поэтому пусть оно просто полежит здесь.
Процентов восемьдесят от задуманных диалогов были прописаны и озвучены. От этих восьмидесяти процентов примерно такая же часть была реализована внутри игры. Поэтому, если отбросить множество необязательных вещей, которые мне хотелось добавить, то можно считать, что игра готова где-то на две трети.
Теперь важные косяки, на которые я должен обратить ваше внимание.
- Игрок проваливается сквозь землю на крутых склонах, и сейчас я это вряд ли вылечу. Если бы я знал заранее, то сделал бы всё на стандартном контроллере персонажа, а сейчас слишком поздно. Просто не ходите в стену и в крутую гору.
- Escape-меню я прикручивал уже в последние дни, когда вспомнил про соответствующий пункт правил, поэтому не советую использовать его без необходимости. В диалогах оно приостанавливает ход времени, но сами диалоги при этом не останавливаются. Что еще оно способно поломать, не берусь ответить.
- Большой сорян за способ, которым переключается разрешение экрана в настройках. Аналогично — всё делалось в последний момент.
- Инверсию бега/ходьбы сделаю позже, если не забуду.
- Карт пока нет, а ту единственную, что есть, лучше фоткайте на телефон. Хотя там не сложно.
В этот раз я решил делать игру на готовых ассетах, хотя бы частично. Так что деревья, кусты, камни, текстуры для террейна и неба — не мои. Правда, и моих ассетов там тоже достаточно. Называйте это флипперством, я возражать не буду, но иначе я бы просто не успел.
Управление: WASD — перемещение, левый Shift — бег, E — взаимодействие, Escape — меню.
Спасибо моим коллегам Даниилу Шикалову и Марине Ивановой за помощь в озвучке.
Ссылка- 21 марта 2022, 11:51
- 0
Еще же два дня(полтора) + багодень, баги описанные выше, надеюсь, править будешь?)
Ответил выше. Вчера что-то сильно отсыпаться хотелось, так что, если получится, прикручу еще один диалог и все. Много времени уходит на кодинг логики каждой сцены, я даже сам не ожидал, что так трудозатратно будет. И баг с черным экраном – из-за того, что я как раз не прописал конкретный сюжетный стейт.
Когда играл за девушку, сходил, прочитал книгу про посох Забвения, вернулся к дому и нажал «Открыть». Далее чёрный экран и ничего не происходит. Меню работает, вышел из игры. Попозже попробую ещё раз.
Ты не представляешь, но эта история настолько коротка :) Дальше еще диалог, и наверное, все. Если успею.
Нуууу… Хотя бы добавь просто текст «Продолжение следует…» =)
По впечатления: мне понравилось. Приятная графика, управление, озвучка классная (отдельные спасибо «голосам»). Приятные мелочи: эффекты вывода имён, позиционирования звука, ветер, переходы при «размышлениях» (синхронизация звука).
Что заметил:
Надеюсь будет продолжение. Жду =)
Спасибо :) В планах на сегодня – собрать последнюю сцену и на этом завершить.
По замечаниям:
Меня похоже переклинило вчера и я почему-то думал, что вход сверху нарисован. Но сейчас взглянул на карту "правильно" и да, она может помочь. Но лабиринт маленький и заплутать у меня в нём не получится. =)
Прошёл ещё раз, чтобы посмотреть "финальную" сцену. Жду продолжения =)
Я сам надеюсь доделать, но это еще как минимум месяц. А на самом деле больше. Потому что в этот раз хочется сделать всё как надо – не то чтобы уходить в глубокую разработку с полного нуля, но поправить одни вещи и добавить другие. Хотя бы чтобы персонаж сквозь землю не проваливался. Ну и скорость разработки я сбавлю до оптимальной, а не так чтобы спать по полтора часа. Сначала очень хотелось сделать динамический саундтрек, но потом я понял, что только на написание фреймворка под него пара недель уйдет, а потом под него еще и музыку надо отдельно писать. Тут в нескольких сценах даже эмбиент минимальный отсутствует, о какой динамической музыке речь :) Что-то я отвлекся.
В общем, чтобы было продолжение, надо начать отдельный цикл заново: прописать диалоги, озвучить их, собрать все, довести локации до ума, расставить препятствия везде. И всё ради посредственной истории, в которую я сам не верю. Ну да ладно. Это всё рассуждения вслух. Я сейчас на распутье: либо я решаю, что овчинка выделки не стоит и лучше бы заняться какой-нибудь другой игрой (хм, знакомая ситуация), либо я доделываю начатое и доказываю себе, что иногда могу доводить вещи до конца, даже если они перестают быть мне интересны. Второй вариант, так сказать, разрывает порочный круг. Как все-таки хорошо, что в подобной ситуации есть кто-то, кто может тебе написать
тогда и лишний повод не забрасывать начатое появляется :)
Надеюсь я не один такой. Так что собирай статистику и если устроит, то, конечно, продолжай.
Вот тут опасный звоночек. Я бы тебе предложил не начинать с начала, а всё-таки довести "до конца" с некоторыми старыми решениями. Например, новые диалоги и озвучка, оставить, что есть сейчас и продолжать, а озвучку вообще делать в последнюю очередь. Ты всегда сможешь вернуться и переписать старый текст, это не всегда критично прям. Локации, препятствия – опять же продолжи, сделай новые уровни со всеми деталями, к старым ты сможешь вернуться всегда, и уже будет понимание, что нужно изменить в начале, когда увидишь, что будет дальше. Поэтому не надо «рубить с плеча», а просто продолжать.
Удачи! =)
Ну да, я это и имел в виду – допилить, а не заново делать :) Просто диалоги из последней части вообще не готовы, то есть эту последнюю часть надо будет делать как бы с нуля. Это не то же самое, когда хотя бы что-то прописано и ты знаешь, что осталось просто реализовать.
Блин блин блин! Какая же клёвая игра! Аааааах! Аах! Аааааааааах! Я надеюсь, мои стоны долетают и до тебя, и до твоих коллег, потому что озвучка потрясающая. Весьма красиво, как и текст. Живой, и очень в духе фантастической литературы. И больше всего мне нравится, когда стандартные инструменты используют вот таким образом. Когда к ним применяют фантазию, и они вырастают в сотню раз. Раскрываются полностью. Вот, казалось бы, стандартный террейн, стандартный стереозвук, стандартная ходьба... А вот нет - это мистический мир, это голос из-за стены, это вообще даже не мир, а эмоции! Вот этот взгляд рождает что-то особенное. И отдельным пунктом я просто не могу не оценить вот этот ход с повествованием от двух лиц попеременно... Красиво, медитативно, отдаёт "Myst'ом".
Из сучков могу отметить:
И вопрос: вот я заметил, что посох выполнен в виде буквы α. А вот все эти названия цветов и городов имеют какой-то смысл, или это просто подражание вымышленному языку, который по чистой случайности похож на индийский/японский/латынь?
Большое спасибо за отзыв. Может, как-нибудь я напишу более развернутый пост на тему того, откуда у игры ноги растут, а сейчас ограничусь комментом. Чую, будет много букв :)
По поводу названий. Здесь сыграла роль моя любовь к Морровинду и мечта сделать "Морровинд на минималках". Мне нравятся тамошние данмерские и двемерские названия: Пунаби, Зайнаб, Нчулефт; от них веет неизвестностью, у них особый привкус, что ли. В этот раз, чтобы сэкономить время, я взял готовые варианты, которые у меня уже были и которые мне нравились:
Название цветка не имеет никакого смысла, я придумал его на ходу, вспомнив редгардов. По ходу разработки он стал ассоциироваться с хранителем солнца или солнечным стражем: solguard напоминает solar guard. Я попробовал придать его лепесткам форму щитов, но что-то не очень получилось.
Буква "альфа" на верхушке посоха, наоборот, символизирует. Тут я сделаю длинное отступление. На самом деле, чтобы ответить на вопрос о буквах греческого алфавита, нужно признать, что я ненарочно считерил, и отправиться во времена пятнадцатого Гаминатора. Именно тогда у меня родилась идея о Дельте, но на тот момент я понял, что она требует глубокой проработки. Вернее, я понял, что подхожу к делу слишком основательно, а по-другому у меня не получается. Тогда игры у меня не вышло, но все эти годы концепция продолжала висеть в голове и потихоньку расти. Я объяснил себе, почему вообще Дельта возможна, как в нее попадают, в чем ее ценность, какие игроки на той арене присутствуют и чего пытаются добиться. Я понял, что вступил на территорию трудной проблемы сознания, что писать фантастику чрезвычайно сложно и что мириться со всеми допущениями и условностями – это отдельный вид боли.
Я изначально не планировал брать Дельту за основу, да у меня и мысли такой не было, но так часто получается: сначала рождается свежая, абсолютно новая идея ("два человека в параллельных пространствах, пересекающихся в определенных точках"), и ты даже видишь ее конкретные детали, картинку, диалоги, развитие событий; а потом появляется желание связать эту идею с конгломератом других идей – на этот раз с Дельтой. Так что я не сдержался и стал плясать уже от Дельты. Конечно, я отступил от собственного канона: ячейки ("пузыри", как я до этого их называл) на самом деле не пересекаются, в этом вся их суть, но ради спиноффа-то можно, решил я. Наверное, большую роль сыграл мой баттхерт из-за того, что идея долгое время никак не могла найти своей реализации. Я не сделал по ней игру, я не сделал по ней маленькую игру, не сделал анимационный сериал или хотя бы трейлер для затравки – так пусть она появится хоть в каком-то виде, в качестве чего-то недосказанного, этакой верхушки айсберга. Хотя бы в виде спиноффа. Иначе я никогда ничего не сделаю, а сделать хочется.
В общем, на начало разработки фундамент у меня уже был, и частью этого фундамента было Большое Созвездие, или Большая Карта. Она появилась как результат решения "проблемы отсутствующего тела" на определенных этапах путешествия из Гаммы (мира, в котором живем все мы) в Дельту. Не знаю, насколько всё это является спойлером,
Бета, развилка в центре Созвездия, могла решить проблему и позволить мне немного успокоиться. Я называю Бету "большим телевизором", потому что в ней люди еще не обладают телами, но способны видеть и слышать одно и то же. Вообще название "Дельта" по праву должно было достаться именно Бете, потому что она играет роль настоящей развилки. Но так исторически сложилось. В данной схеме Гамма, Бета и Дельта являются необходимыми элементами, а Альфу и Эпсилон я добавил позднее. Забегая вперед, скажу, что функция Эпсилона – вносить дополнительную ценность в верхнюю часть Созвездия; это terra incognita, Святой Грааль, возможный источник власти и знаний. А Альфа..
Альфа – это неизвестность, и, как говорится в отрывке из Книги Альфы, которую Аида читает в библиотеке, она тождественна смерти. Поэтому навершие Посоха Забвения выполнено в виде альфы: оно уничтожит ячейку Аиды вместе с ее телом и потенциально позволит ей умереть (если у нее не осталось связей с другими телами).
У меня такие опасения были по поводу сундука :) Тут мне пришлось пожертвовать интерактивностью в угоду дедлайна. Код для почтового ящика и шестеренки я писал пять часов, и делать дополнительную логику после таких затрат было не в приоритете. Интерактивности здесь сильно не хватает, я понял это еще в начале разработки. Хотелось сделать, как в Firewatch, но не получилось: большая часть диалогов сопровождается стоянием на месте, а это нехорошо.
Остальные пункты, кроме третьего – из-за нехватки времени. Отсутствие готовой обертки вокруг Юнити (и опыта) сильно сказывается. Тот же менеджер аудио или инвентарь позволили бы сделать всё как надо, но их пока нет.
Проблема ясна, но пока непонятно, как она решается.
Вау. Можем, кстати, в личке ещё поговорить. Мне будет интересно. Может быть напишу тебе позже.
Озвучка хорошая, стилизация приятная.
Умудрился провалиться под текстуры, когда за девушку шел из лабиринта домой, еще раз проходить до этого момента не решился, может на стриме сюжет гляну или позже поковыряю сам :)
Плюсы: симпотишно, озвучка неплохая, музыка в начале, анимация шрифтов красивая
Минусы: заканчивается как только становится интересно. 0 геймплея. Умудрился провалиться под террейн, но благо в этот момент закончился диалог и меня телепортануло куда надо. Во время диалогов нечего делать, поэтому скучно, приходится ходить по комнате туда-сюда. Были бы субтитры и можно было б реплики скипать, прошлось бы быстрее, но зато не так скучно.
Не очень понятно: вот я только появился в этой ячейке лег спать, выхожу на солнце, а герой говорит, что он тут уже долгое время. Возникает людонаративный диссонанс, ведь я же только что здесь оказался! Это нужно было как-то обыграть, мб катсценкой или метками на стене(как заключенные в фильмах царапают)
В целом концепция интригует, но не раскрыта
Ой, Алекс, извини что не по теме, но метки на стене - это такая клешня, такая безвкусица! Давай ради эксперимента посетим колонию и спросим, взаправду ли заключённые тратят время на такую мороку.
Ну типа я пример привел, и ремарку мол "в кино" так делают. Я ж не сказал, что так взаправду делают. Клише на то и клише, что работает. Тут хотелось бы что-то визуальное, что даст игроку осознание, что прошло n времени, будь то таймлапс закатами, или метки. А можно придумать что-то еще
Вот таймлапс с закатами — еще куда ни шло идея. А засечки юмористически будут смотреться. В кино и играх, когда речь идет не о кутузке (да даже если и о кутузке) засечки используются уже скорее как шутка. Вещь, повторённая сотню раз, вызывает улыбку. Да и простую резкую склейку в кино ведь тоже используют, когда имеется пояснение мол "прошло много лет". Даже мелькающий закат не везде уместен. Если так подумать, то он очень отдает мультиками. Ну или документалками о живой природе.
календарь, дневник, часы, запасы еды, проделанная работа, и еще 100500 вариантов как показать что прошло время. Чтож ты к засечкам то прицепился, вопрос же не в том как показать, это пусть автор решает. Вопрос в диссонансе, что ты вот появился, лег спать, вышел на улицу, а оказалось уже неделя(грубо говоря) прошла, и ты эту неделю не спал, а что-то делал, что важно для сюжета, но игроку лишь говорят постфактум, мол прошло время, сам бы он этого не понял, для него скачком времени была ночь.
Да ладно тебе, просто болтаем же! Но если не показано, что игрок делал, значит это наоборот - неважно для сюжета. В книгах/фильмах/играх (вообще в культурных предметах) почти всегда забывают о том, что персонажам нужно время от времени посещать уборную. Можно принять это как "уборная была посещена, но она не является сколько бы то ни было мало-мальски значимым событием." Так что да, можно и постом фактумом обойтись. Почему бы и нет. А вот с календарём интересный образ складывается... Не уверен, что в мире альфы вообще есть месяцы, числа и время (это всё - вопрос к Дампу))0) Но вот если представить другую игру такого же типа. Ну, симулятор ходьбы фоновым повествованием. То в быстром темпе менять текстуру календаря - занятная идея. Игрок гуляет, а в это время как будто "время быстро-быстро идёт." Тогда наверно и за окном можно было бы сделать снег, таяние снега, расцветание и уведание деревьев. Какие нибудь мелькающие размытые силуэты во дворе. Может быть даже периодически достраеваемые и сносимые дома. Хотя опять клешня. Вот просто быстро меняющийся интерьер (вкупе с календарём) мог бы создать интересную сцену, открытую для перемещения. Но тут нужна фантазия, чтобы все эти изменения придумать.
Ну и грамотная техническая реализация сложна.
Не соглашусь, что это время неважно. Персонаж все же попал в другой мир и так или иначе его обживает, и речь не о физическом обживании. Насколько я понял тут что-то типа погружения в коллективный сон или ноосферу, или просто другой пласт бытия. Энивей раз ячейка отражение персонажа, то будучи сторонним наблюдателем он знакомится с ней, и с самим собой. Сперва для него все в новинку, а потом раз и он тут ужеживет долгое время, хотя ничего кроме террейна на улице не изменилось, чему я не предал значения, ибо не знаю логики этого мира
Еще вспомнил схожий момент, наша собеседница там про что-то рассказывает, а потом такая: "впрочем ты и так это знаешь", а я сижу и в голос говорю: "нет, вообще безпонятия о чем речь"
Ну, вероятно, ты и не должен знать. Я правда уже не помню, про какой ты момент именно, но у меня такого не возникло. Я вообще люблю, когда в играх-историях у персонажа игрока есть индивидуальность. Ну то есть игрок и персонаж - разные вещи. Тут вон вообще...
...за двух персонажей играем сразу! И конечно один из них знает много больше, чем сам игрок. Понимается всё по ходу.
Ну тут играем от первого лица, тем самым отождествляем себя с персонажем, раз смотрим из его перспективы. Но даже в играх от третьего лица обычно стараются выдать плюс-минус все нужное для понимания диалогов, либо дают экспозицию непосредственно после. А тут это звучало как будто я должен знать, но не знаю.
второй персонаж, который знает очевидно больше во время геймплея за нее не давал для меня такого диссонанса. Хоть я и знаю что она знает больше, но проверки этих знаний от меня не требовалось, даже на уровне "ну ты знаешь".
Кстати еще для автора, вспомнил что во время чтения записок мир не стопится и мне лично один раз не дали дочитать текст. Ну ладно стопить мир, но можно было проверять читает ли игрок перед тем как его телепортировать в другую сцену.
Нихрена вы мне тут понаписали :) Спасибо за обратную связь. Раз уж концепция интригует, то программа минимум выполнена, как по мне.
Сцена после пробуждения задумывалась именно как сцена после первого пробуждения ("Когда я вышел наружу, все вокруг..."), так что пмсм не нужно туда никаких следов пребывания гг; другое дело, что потом повествование уходит в будущее по отношению к тому, что видит игрок, и да, тут я не подумал, что делать с картинкой, да что уж там, не придумал, чем игрока занять (и не только в этой сцене). Тут дилема: 1) или позволить игроку хоть чем-то заниматься во время закадрового про "дни-месяцы проведенные там бла-бла-бла" (в теории уже потом, когда конкурс закончится, можно будет запихивать контент для подбирашек/ачивок/пасхалок), 2) или показывать катсцены, но без интерактива, чтобы игрок просто смотрел в экран. Что более скучно, сложно сказать.
Место и впрямь косячное, что-то подобное Noname писал. Если пост-конкурсная версия будет, я что-нибудь туда придумаю. Ну тут проще сказать, что "можно было бы проверять и т.п.", чем сделать. Можно было бы на asm'е написать Скайрим с генерацией речи на вокалайзере, но не в одиночку за пять недель, работая на основной работе. Телепортация привязана к диалогам. Диалоги начинают воспроизводиться только после того, как все три бумажки были подняты и положены обратно (т.е. технически прочитаны, но только технически). Значит, надо либо ставить на паузу диалоги, когда игрок начинает читать (для этого нужно дописывать аудиоменеджер и переписывать логику каждого уровня уже под него), либо добавлять дополнительное условие для начала диалога в той конкретной сцене ("подошел к стене") и стопорить персонажа после начала диалога, чтобы читать больше не мог. Либо что-то еще. Ну я подумаю над этим еще.
Можно попробовать заанимировать аесь террейн, чтобы он менялся когда "годы идут", но я не уверен, как поведет себя юнити. Ты вроде и без того писал про проваливания. И вообще, чем дешевле - тем лучше. Кроме того, я не уверен, можно ли такую анимцию в самом юнити реализовать (это наверняка нужно открывать Блндер.)
А про записки, даже подхождение к стене может быть случайным... Может взаимодействие со стеной? Тоже не очень удобно, но все же уже как-то. А еще есть статуетка пересечения без взаимодействия. Может просто вставить несколько действий для активации? Ну, там, растолочь лепестки, потом перегнать их... Тогда нечитание текста более сознательным будет, что ли... Только проблема, кажется, была до того момента, как лепестки уже были принесены. Или еще вариант — дать игроку относительно свободно перемещаться между персонажами. Нажатием на стену, например. Но это, я так понимаю, поломает диалоги, да? Или ты можешь все же прокручивать диалогиодновременно, чтобы при смене тел они не прерывались, а просто меняли источники?
Да, лучше дешевле. Какую-нибудь катсцену запилить придется, пока не представляю как именно.
Этот вариант я исключаю, потому что слишком сложно и всё под корень надо будет менять. И в текущей реализации это точно поломает диалоги, да :) Эффект голоса из-за стены не в Юнити сделан, а пререндерен. Для экономии времени я сводил диалоги в два стема, т.е. получались две дорожки с пустотами в местах, где собеседник говорит. Вдобавок при смене персонажа не камера перескакивает с места на место, а уничтожается текущая сцена и грузится следующая, а в ней уже и звуки свои, и логика.
Взаимодействие Аиды со стеной в той сцене – тоже спорно, ведь Аида ждет Алекса, а не он ее; то есть он должен появиться как бы сам по себе и постучаться. Пока что единственное, что я придумал, – это чтобы Алекс ее позвал (в этом месте диалог стопорится), а Аида подошла к стене, встала на месте и возобновила диалог. Ну или приостанавливать все звуки глобально, пока поднята записка. Но так мне делать совсем не хочется. Если я разговариваю с кем-то ирл, это не мешает мне что-либо читать, и похожего эффекта я хотел добиться в игре, где повествование должно быть приближено к киношному.
Забрал обои, спасибо
Ну это 10 из 10, ничего не скажешь. Разве что листы с текстом трясуться через раз, неприятно читать из-за этого. Играя из архива, так и подумал, что это автор музыкальной бродилки 2012 года и точно - он.