Про Азуру

Раз нужен блог, нужен и хостинг. Этот блог хостится у Микрософта с помощью чудо-штуки под названием Azure.

(это не реклама, если Микрософт начнет платить мне деньги вместо того, что я ему плачу, виниловый Стив Джобс у меня на обоях перекрестится)

Азура – это про облака. Все, что вы мастерите в Азуре, вы мастерите в облаках.

Вот что можно смастерить:

a1

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

a2

WordPress тоже есть, как без него.

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

Но это все про хостинг.

Когда мы приступили к работе над проектом, нам понадобилась система версий для юнити. У юнити есть своя, ее и решили использовать. Asset Server должен был крутиться на внешнем сервере (наш художник, он же моделлер, работает удаленно), в связи с чем я вспомнил об азуре. Микрософты дают возможность запилить виртуальную машину в облаке. Также, кстати, с возможностью масштабирования на лету. Лично я выбрал самую убогую конфигурацию, Asset Server вполне работает и на такой. Называется конфигурация А0, общее ядро (не знаю, что это значит), 768 мегабайт оперативной памяти, стоит аренда такого калькулятора пятьсот рублей в месяц. На виртуальную машину можно было поставить много всякого, даже Убунту:

a3

Мак Озь не давали, пришлось поставить Windows Server 2008. Слово Server немного настораживало, ведь я во всем этом еще хуже, чем в английском языке. Но, как оказалось, все было небольно. После небольшой возни, Азура сказала, что сервер готов, можно пользоваться. Я запустил Remote Desktop (для мака, кстати, тоже есть) и получилось вот что:

a4

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

Виртуальную машину можно выключать прямо из панели управления Азуры. И вы не платите деньги за то время, пока виртуальная машина выключена. Если бы я выключал свою виртуальную машину на ночь и на все выходные, она стоила бы мне всего рублей 200 в месяц, но я же деньги не считаю.

И еще одно про виртуальные машины. Собрать в Азуре можно очень неслабую конфигурацию. 16 ядерную со 112 Гб оперативной памяти (на самом деле, можно и с 32 ядрами и 448 Гб оперативки, но мне такое чудовище пока не дают создавать, полагаю, что из-за санкций того, что оно пока еще тестируется). Это, конечно, стоит солидных денег. Если убогое А0 стоит 60 копеек в час, А9 с 16 ядрами и 112 гигабайтами оперативной памяти стоит уже почти 170 рублей в час. Сколько будет стоить G5 с 32 ядрами, боюсь даже представить.

Зачем все это?

Уровней в нашей игре будет 45 штук, и мы, типа как правильные девелоперы, будем использовать лайтмаппинг. Для комнаты с дверью, скрины которой я показывал в прошлых постах, запекание теней занимает на моем ядерном реакторе 4 минуты. А это мощный ядерный реактор:

a5

А на А9, который с 16 ядрами и 112 гигабайтами, это занимает уже 2 с небольшим минуты. В два раза быстрее. Учитывая, что запекание – штука частая, времени будет отъедать немало. С 45 уровнями можно провозиться немало. Конечно, 32 ядра могли бы и полторы минуты выдать, но пока так. Всего за 170 рублей в час. И никакой возни – на виртуальной машине устанавливается юнити, присоединяется к системе версий проекта, а после запекания запеченное отправляется всем участникам проекта. К слову, А9 – это еще и мощный интернет-канал, полуторагигабайтный дистрибутив юнити, например, скачивается виртуальной машиной всего за несколько секунд. Если бы еще можно было устанавливать на виртуальную машину Windows XP или Windows 7, было бы совсем хорошо (серверные винды помешаны на безопасности, задают при каждом удобном и неудобном случае массу глупых вопросов).

Такая же штука есть и у Амазона, я даже поигрался с их машинами какое-то время, нашел одну, которая запекала комнату те самые полторы минуты, но там гораздо больше возни и телодвижений, поэтому вернулся на Азуру.

Так и работаем.

Про название и про блог игры

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

Еще FDG (FDG Entertainment – это мои издатели) сказали, что нужен блог про разработку игры. Филипп показал блог игры Thimbleweed Park, которую мастерит Рон Гилберт, и сказал, что так делают, и что так делать – круто. Раз круто, будем делать такой спец-блог. Вести его будем вместе с FDG, наполнен он будет скринами, мыслями, реализованными и нет идеями. Ругаться про Юнити, наверное, будет нельзя, поэтому ругаться про Юнити буду по-прежнему здесь. Будем стараться, чтобы блог был и на русском, и на английском. С английским у меня особые отношения, поэтому переводить мои русские напевы про игру на английский будет VladG, а я буду помогать ему переводить на русский напевы Филиппа. Конечно, будет тратиться ценное время, которое могло бы быть с пользой употреблено на саму еще незавершенную игру, но FDG меня убедили, что эта затея не менее ценная.

Кстати, решили приделать к игре еще 11 уровней, что в итоге нам дает 45 уровней и больше шести часов геймплея. В блоге, например, могли бы уже написать, почему решили добавить еще уровней. Но блога пока нет, напишем потом.

Такие дела.

И последнее о "The Talos Principle"

Добили таки. Наиграли больше 25 часов, так что, если решитесь на все загадки и секреты, запасайтесь временем. Мы с VladG собрали все звезды и посмотрели все концовки. Всех секретных мест не видели, всех документов не прочитали (секретные места там такие секретные, что без подсказок их просто не найти, документы – жуткая ахинея и белиберда). Несколько раз пользовались интернетом (создалось впечатление, что вещи, вроде скрытого лазера, который можно только нащупать на далеком объекте, а не увидеть, сделаны именно для того, чтобы их искали в интернете).

В целом – хорошо. Если бы не разрабатывали подобную игру, могли бы сказать – очень хорошо.

Но не замечательно и не отлично.

«Тетрис», который нужно собирать, чтобы открывать некоторые двери (даны тетрисовые кусочки, которые нужно втиснуть в определенный объем), скоро настолько надоедает, что становится пыткой.

jpg

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

v

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

Так что: Portal, Quantum Conundrum, The Talos Principle, Q.U.B.E., Antichamber такой порядок. Будем пробовать уместиться между второй и третьей.

e

Про Unity3d

Все знают, как я люблю Unity3d. Особой любовью, она может напоминать игру «Dead Space» или даже фильм «Paranormal Activity». Наши отношения похожи на брак малолетней пары, которая женилась только потому, что глупая девчонка забеременела от глупого мальчишки. И гуляют рядом свободные и интересные, а тебе каждое утро приходится жить с ненавистным уже человеком.

Забегая к концу, скажу сразу: если я делаю 3Д игру в Unity3d, это совсем не значит, что я буду Unity3d советовать всем начинающим. Советовать и рекомендовать я буду только Unreal Engine 4. А от Unity3d 4 бегите, какими бы словами не заманивали. Оговорюсь, что не знаю, как обстоят дела с 2Д в Unity, по отзывам, вроде, даже неплохо. Но я также и не знаю, как обстоят дела с 2Д в UE4. 

Я слишком погряз в юнити, переходить на анрил долго, затратно и нервно. Уже вложено огромное количество средств и сил, придется допиливать с тем, что есть. Но, например, кооперативную часть (а в нашей игре появятся и кооперативные уровни) я точно будут начинать на UE4. Если, конечно, не произойдет чуда и Джон Ричитьелло не совершит невозможное. Что-то внутри подсказывает мне, что не совершит.

Что же не так. Ниже — немного гадостей.

(да, я буду говорить гадости. У меня куплена лицензия на юнити и еще подписка на юнити. А сколько потрачено денег в assets store… Так что, да, когда платишь очень немалые деньги за то, чтобы потом заниматься костылестроением, можно и гадости)

 

Префабы.

Прекрасная вещь. Мастеришь на сцене игровой объект, засовываешь в него всякие другие игровые объекты, настраиваешь настройки объекта, а потом хватаешь его и переносишь в библиотеку. И этот игровой объект со всем содержимым, со всем намастеренным становится префабом. И префаб этот можно добавлять из библиотеки на любую другую сцену. Больше того, префаб можно выделить в библиотеке и изменить его параметры. И эти параметры будут изменены для всех объектов на всех сценах, которые были созданы переносом этого префаба из библиотеке на сцену. Изменяются параметры хитро. Если они были изменены у объекта на сцене, который получился после того, как перенесли префаб на сцену, изменение параметров самого префаба в библиотеке на изменения объекта не повлияют. То есть, если вы поменяли у объекта на сцене поворот, а затем поменяли настройку поворота у его префаба в библиотеке, поворот у объекта на сцене изменен не будет, потому что юнити знает, что вы задали объекту свой поворот.

Все круто, правда?

Процесс изменения параметров префаба в библиотеке простой — выделяем префаб, после чего в инспекторе меняем параметры. Если есть прикрепленные к префабу дети, разворачиваем префам и видим прикрепленных к нему детей, у которых тоже можно менять параметры. Тут и загвоздка. Если у этих детей есть свои дети, юнити на это внимания не обращает и не разрешает разворачивать детей префаба. Приходится переносить префаб на сцену, где это позволительно, менять параметры детей детей там, после чего применять изменения к префабу. Плохо? Плохо. Но не так плохо, как следующее.

Предположим, у вас есть отличный префаб. Годно настроенный, сказка, а не префаб. И захотелось вам сделать его составной частью другого, нового префаба. Например, есть у вас лампочка, которая умеет загораться и тухнуть. И захотели вы сделать префаб Бра, в который, конечно, вам хочется добавить свою лампочку, сделать, то есть, ее дитем Бра. Что вы делаете. В игровой объект Бра тащите из библиотеки объект КлеваяЛампочка. И КлеваяЛампочка становится чайлдом Бра. Потом переносите Бра в библиотеку, и клевый префаб Бра готов. Теперь, если вы перенесете Бра на новую (или старую) сцену, он будет добавляться вместе с КлевойЛампочкой, ведь лампочка теперь чайлд Бра навеки. Здорово, правда?

Еще раз. В библиотеке у вас теперь имеется префаб КлеваяЛампочка и префаб Бра, внутри которого есть КлеваяЛампочка. Когда я впервые это открыл, со мной случилось то, что случилось с терминаторшей из третьего «Терминатора», когда она нашла на полу кровь Джона Коннора. Это ж какие возможности! Это ж ООП, мать его в коньках за босу ногу! Но Джон Коннор остался жив, а терминаторшу убили. Если вы думаете, что изменение параметров префаба КлеваяЛампочка хоть как-то повлияет на параметры объекта КлеваяЛампочка в префабе Бра, ошибаетесь вы. Не повлияет. КлеваяЛампочка внутри префаба Бра — это теперь совсем другая КлеваяЛампочка. И если вы придумали какой-нибудь КлевыйЦоколь для своей КлевойЛампочки, добавлять его вам придется и в КлевуюЛампочку префаба Бра тоже.

Не забывайте про эту фичу. Мне эта фича дорого обойдется. Теперь я понимаю что имел в виду портал app2top в посте про игровые движки о минусах юнити: «процесс изготовления игры отнимает много времени».


Cache Server.

Юнити позволяет билдить вашу игру на разные платформы. Это очень круто. Пара движений, и игра запускается на Windows, MAC OS, iOS, Android и даже в web browser. 

Нет, я сейчас не о том, что на самом деле все не слишком радужно. Запускаться — запускается, мне, кстати, очень понравилась сборка билда для Android (быстро и без лишних переходных процессов вроде запуска Xcode, если билдить для iOS).

Но перед тем, как вы решите сбилдить игру для какой-то платформы, вы должны переключиться на нее. Этот процесс занимает адски много времени. Юнити конвертирует каждый ресурс для выбранной платформы и, если ресурсов очень много, например, если у вас много 3Д сцен, в которых вы использовали лайтмаппинг, на конвертацию может уйти час и больше.

Чтобы избавить игрока от ожиданий, Юнити предлагает Cache Server. Это специальная штука, которая складирует на каком-то выбранном компьютере сконвертированные для какой-то платформы ресурсы, следит за их изменениями (с некоторыми оговорками), после чего просто отдает какому-то компьютеру (это может быть один и тот же компьютер) эти ресурсы, экономя тем самым его время на конвертацию. Ну круто, че, скажете вы.

Эта штука входит в Team Licanse, то есть, за нее нужно платить. 

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

 

Asset Server. 

Система контроля версий. Не используйте. Используйте другое. К счастью, Юнити это умеет.

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

 

Мелочь.

При работе в 3Д пространстве юнити, вы можете использовать правую кнопку мыши и клавиши wasd, летая камерой в пространстве. Это удобно. Если вы работаете в UE4. В юнити из версии в версию сохраняется непонятный баг, когда, подлетая к требуемому объекту, камера внезапно отлетает на многие километры от объекта, и приходится заново к нему приближаться. В твиттере мне говорили, что это нормально, что юнити не иногда не угадывает с масштабом сцены, но левелдизайнеру это почему-то не кажется нормальным. 

Вот на таком компьютере вылеты юнити — это нормально. 

1

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

Элементарная задача. Есть прямоугольная стена. Левелдизайнер придумал выпилить дырку в ней. В юнити вы не сможете этого сделать. В UE4 — красиво и элегантно. Вообще, в юнити из коробки работа с вершинами отсутствует, нужно допокупать какой-нибудь ProGrid. 

MonoDevelop. 

Нету автосохранения. Вот совсем нету. Если UE4 назойливо напоминает, то юнити крэшится и все изменения улетают в трубу. Кстати, если вы сделали изменения префаба в библиотеке, вам обязательно нужно сохранить сцену (сцену??), чтобы изменения префаба ушли на диск.

Конечно, скоро будет Unity 5. Но, боюсь, что к тому времени, когда баги нового юнити будут пофикшены до той степени, что можно будет относительно хорошо работать, я буду уже с UE4. 

Просто картинка

Чтобы не простаивало, пока я заработался.

room2

Еще немного о The Talos Principle

Недавно я писал о ситуации, которая возможна в играх-головоломках: игрок попадает в положение, когда любые его действия и манипуляции с объектами на уровне не приведут к его решению. Игрок может не знать, что он в это положение попал, и начинает тратить время впустую. Если таких ситуаций не избежать, нужно уметь отлавливать их и сообщать игроку, что он в безвыходном положении и предлагать нажать кнопку сброса уровня.

В The Talos Principle игрок попадает в такую ситуацию где-то после трети игры. Игра услужливо предлагает зажать спецкнопку, чтобы сделать уровню резет, это порадовало. Но спустя несколько уровней я вновь попал в такую ситуацию. И в этот раз подсказки не было. Попал я в эту ситуацию специально, прекрасно зная, что, перекинув кубик через стену, я никак не смогу его принести назад. Но игра никак на это не отреагировала. Не предложила зажимать спецкнопку. И это не очень хорошо — игрок может и не вспомнить, что зажимать нужно было именно Y на геймпаде. Если, конечно, он вообще поймет, что уровень нужно было сбросить.

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

Конечно, если игра именно об обмане, если игра именно о безвыходных ситуациях (идея: игра, где цель — загонять себя в абсолютно безвыходные ситуации), все эти советы ни к чему.

Как мы сегодня боялись. И немного про игру

Сегодня утром обнаружил в камментах к предыдущему посту Zarkua, который посоветовал игру «The Talos Principle«.

По приходу на работы приступили к ее изучению. Игра вышла только вчера, такие игры, как я писал, мы любим, а еще с недавних пор таких игр мы еще и боимся. Представьте, почти год мы пилим нашу игру про человека в коме. Механика там не такая свежая, как в Portal, но достаточно простая и оригинальная, чтобы про нее не писать перед публичной бета-версией игры (если такая версия вообще будет). И всякая новая игра такого жанра (их было очень немного за этот год, и почти все были «так себе», не опасные) – это опасение, что нашу механику уже запилили, и наша игра одномоментно превратилась в тыкву. «Сперли«, – скажут. Может, потому и выпускают альфа- и бета-версии, чтобы застолбить идею, механику, не знаю…

В общем, приступали мы к «The Talos Principle» с определенными страхами.

ss_73f39d23ae6a87f1987f4b1d2b6503fa18cffa39.600x338

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

Игра вполне себе интересна, есть занятные геймплейные находки. Несколько однообразно и недостает оригинальности, но это, наверное, следствие целого года, проведенного за своей игрой, когда хочется, чтобы все загадки были отточены, отполированы, никаких самоповторов, никаких банальностей. Если вы — любитель такого жанра – играть однозначно. Учитывая 87 из 100 на метакритике.

Но у нас гама все равно круче, бгг.

 

…сидит у кровати отца и рассказывает ему, как прошел ее день. Ей 5-6 лет, рассказы ее просты и бесхитростны, хоть и предполагают некую «драму» в дальнейшем. Собственно, они – это второй тип собираемых объектов на уровнях – «письма», так рассказы будут восприняты человеком в коме. Ее рисунки – это первый тип собираемых объектов. Они, как и рассказы, конечно, привязаны к тому, что происходит и проясняют картину.

Третий тип – это кусочки фотографии семьи главного героя, как правило, это самые сложные «коллектаблы», чтобы собрать некоторые, придется очень сильно напрячь мозги.

 

Что касается «напрячь мозги». Хочу рассказать про одну проблему в играх такого жанра. И о том, что мы такой проблемы в своей игре не допускали. Проблему мы называем «миллиметраж«.

Суть в чем. Вот Portal 1. Решаешь загадку, поднимаешь одну платформу, вторую, после чего тебе остается всего лишь перепрыгнуть с одной платформы на другую. Ты прыгаешь. И не допрыгиваешь. И хорошо, если нет проблем сделать портал рядом с первой платформой, с которой прыгать, а если из-за такой досадной ошибки нужно заново поднимать все эти чертовы платформы? Очень хорошо было видно, что из Portal‘а 2 все эти моменты нещадно выпиливались. Тот же The Talos Principle. Один из уровней проходился только очень точным позиционированием одного игрового элемента. Quantum Conundrum иногда вообще превращался в аркаду, где нужно было ловко и очень точно перепрыгивать лазеры, проезжая их на движущейся ленте. Лично я – сторонник pure puzzle, когда требуется только ловкость ума, а не пальцев. Ни к чему делать в лестнице выломанные ступеньки, сквозь которые можно провалиться, в игре-головоломке. Иногда это доходит до абсурда. В Q.U.B.E. один из первых уровней заставляет игрока прыгать чуть ли не с самого края пропасти, чтобы допрыгнуть до другого берега. Не небольшая пропасть, а именно – во всю длину прыжка. Зачем так делают, мне неведомо. Наверное для увеличения хронометража игры. В нашей игре, понятно, такого нет. Если уж нельзя допрыгнуть, значит и не допрыгнешь. Больше того, у нас и прыгать-то нужно только для того, чтобы залазить на кубик. Кстати, в Talos’е забираешься на кубик с помощью отдельной кнопки, нигде еще такого не видел, это иногда весьма удобно, и мы в самом начале разработки игры хотели делать именно так. Также мы исключили необходимость торопиться на уровнях. Все решается довольно размеренно, без жести, которая была на уровнях первого Portal. Что, как хочется надеяться, позволит без проблем играть в игру на тачскринах, куда тоже собираемся со временем.

И еще одна проблема – банальность. Не нужно, чтобы на уровне игрок находил кубик рядом со ступенькой, на которую он должен забраться при помощи этого кубика. Нет, если это самый первый уровень, и вы учите игрока основам геймплея – это просто необходимо (если уж никак не придумать загадку, решение которой — добыча этого самого кубика). Но в середине игры, да еще несколько раз – это фу. Не нужно мудрить с какими-то закутками и комнатками, в которых ничего нет, которые просто потому что вот. Все должно быть по делу, если игрок видит какой-то поворот, он должен быть уверен, что поворот туда полезен для решения загадки уровня или для обнаружения «коллектабла». Не нужно ставить на пути игрока луч лазера, который можно перепрыгнуть, и цель которого только в том, чтобы его перепрыгнули. Не нужно, то есть, использовать геймплейные элементы, если они не принимают участия в решении загадки уровня. Да собственно, и негеймплейные элементы тоже.

На сегодня все, нужно и поработать.

Вот вам картинки той обветшалой комнаты.

r2

r1

Про игру

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

Это не попытка устроить какой-то бузз (меня читает всего два человека, включая меня), это потому что мне с утра просто приспичило. Вообще, в игру играло очень небольшое количество народу. Несколько флешеров («флешер» бгг) весной на девгаме, издатель, да парочка знакомых-приятелей. Все, разумеется, в строгой секретности. Понятно, что идея ничего не стоит, но реализовать нашу очень несложно, это не калофдути, не скайрим, и не зомботрон, идея которых – вот она, а реализуй-ка. Опасения имеются. Как многие знают, имеются они не без оснований, но об этом в следующий раз.

 

Человека сбивает автомобиль, и он попадает в кому. Кома для него – это банальная обветшалая комната с кроватью и запертой дверью, в играх такие встречаются на каждом шагу. А еще в комнате есть небольшое окошко в стене у самого потолка. Игрок управляет персонажем с видом от первого лица, он может подойти к объекту и взаимодействовать с ним. Дверь заперта, игрок выясняет это при попытке открыть ее, до странного окошка, за которым сплошная темнота, не допрыгнуть, остается кровать. Игрок засыпает и после небольшой катсцены попадает на первый уровень.

На уровнях есть дверь. И игрок (ну ясен пень) должен до нее добраться. Добираться он будет решая головоломки. Головоломки получились очень убойными, многие смогут потягаться даже с Portal‘овскими. Да, есть кубики, есть ездящие платформы, есть даже смертельные лучи. Есть и еще несколько оригинальных геймплейных находок, которыми я очень горжусь. Всего уровней – 33 штуки. Они разбиты на тройки, каждая тройка добавляет какой-то новый геймплейный элемент (за исключением последней тройки, там просто сложные завершающие уровни). Первый уровень тройки – знакомство с элементом (конечно с использованием элементов, добавленных ранее), он попроще, второй сложнее, третий сложный. Конечно, у нас, как и у взрослых, один уровень – это, чаще всего, не одна загадка, а две, а то и три, более того, на каждом уровне игрок может найти некий «коллектабл», для получения которого иногда тоже нужно решить загадку.

Загадки – пространственные головоломки. Типа таких как: Portal, Quantum Conundrum, Q.U.B.E, Antichamber. Первая, конечно, классика. Вторая послабже, но достойная. Две другие менее известны, но в таком жанре, пожалуй, самые известные. А может я и ошибаюсь, и таких игр гораздо больше, если знаете какие-то еще, накидайте ссылок в комментарии, пожалуйста. Лично я большой поклонник такого жанра, но, к сожалению, не могу такими играми насытиться – их мало, или я неправильно ищу. Владимир Гусев, который VladG, с которым мы пилим эту игру, ответственен за левелдизайн, также он делал уровни к Cover Orange: Journey, и, как вы уже поняли, тоже большой любитель игр с загадками и головоломками. Так что пилим то, что любим и умеем.

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

«Коллектаблы» на уровнях. Конечно, это теперь не просто «звездочка», тут они по делу. Три вида собираемых объектов: первый тип – детские рисунки, второй – некий текст, третий – кусочек фотографии. После завершения каждой тройки уровней, игрок возвращается в обветшалую комнату с кроватью, где он может изучить то, что собрал на уровнях. (На самом деле, игрок может вернуться в комнату в любой момент, чтобы, например, переиграть какой-то уровень, или изучить только что собранный «коллектабл»).

У главного героя игры есть дочь, которая…

 

Собственно, на этом я прервусь, и продолжу сказку завтра.

Бгг.

2014-12-11 11-09-07 Скриншот экрана

Текст из игры

“Мама сказала, что тебе скучно, когда ты спишь, и нужно рассказывать истории.
Я так испугалась в тот раз, что мне и сейчас иногда страшно.
Вчера мне было очень страшно.
Но когда я с тобой, мне не страшно, пап.
Ты давно спишь, но мама говорит, что ты проснешься, и мы пойдем на пляж.
Я вчера хотела на пляж, но мама работает, и она отвела меня к мисс Кэрролл.
У мисс Кэрролл сначала было очень весело, там были Тони и Сара. Мы играли во дворе.
Двор очень большой, и Тони сказал, что будем играть в прятки.
Я видела, что Сара спряталась за скамейку, она не умеет играть, и Тони ее быстро нашел.
А я спряталась в сарае, который был в углу двора.
Его дверь была заперта, но я встала на ящик у окошка и залезла туда.
И смотрела через щелку, как Тони меня ищет.
Они с Сарой никак не могли меня найти. Я их выиграла и хотела выйти, но дверь не открывалась.
Мисс Кэрролл позвала нас из дома обедать, и Тони и Сара убежали, а я осталась одна в сарае.
И я никак не могла выбраться, окошко было высоко, я не допрыгивала.
И мне сразу стало страшно.
Я хотела позвать мисс Кэрролл, но никак не могла крикнуть.
И я боялась оглянуться, потому что в сарае темно и почти ничего не видно, а я одна.
Я заплакала, и прибежала мисс Кэрролл.
А потом мама забрала меня, и я больше не плакала.
Но ночью мне снился тот сарай, и мама забрала меня к себе в кровать, чтобы я не боялась.

Пап, просыпайся скорее.”

Взметнулась пыль

«У меня ж блог есть!» — подумал я, гуляя сегодня на работу. Догулял, обновил вордпресс, посмотрел на весь из себя плиточный новый портал азуры (не путать с Ахурой!), и — ‘добавить новую запись в блог′.

Игру, которая 3Д, пилим усердно, скоро будет, получится круто и все такое, но про это, если не сдуюсь после этой записи, буду писать потом. Понемногу, но, мало ли, почаще. Обнаружил тут, что после перерыва с текстами больше 160 символов стал делать разного рода ошибки еще чаще, чем раньше. Ну да ладно, авось выпрямится. Если, конечно, не сдуюсь.

Расскажу сегодня о небольшом исследовании, которое провели с камрадом VladG (а игру пилим с ним).

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

Игра у нас — 3Д паззл с видом от первого лица. Типа «Portal«. Только, понятное дело, круче. Ну и с другой игровой механикой, естественно. И сеттинг совершенно иной. И ГладОС нет.

Кубики есть.

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

Ну, рестарт и рестарт, большое дело. Казалось бы.

Проблема в том, что игрок понятия не имеет, что он «проиграл». Он оказывается в ситуации, когда должен сдаться, начать уровень заново, чтобы пройти его правильно, но не знает об этом. И может впустую потратить много времени, нервов или просто — взбелениться и выключить игру. Ничего не делать с такими уровнями, оставлять как есть, говорить себе «нуачо, не надо было забывать кубик, а застрял — у нас есть рестарт» и будь что будет, нам показалось неправильным. И один такой уровень был переделан (мы давно знали, что у нас есть такой, но говорили себе это самое «нуачо»), а второй так и не доделан (и заменен новым) именно по этой причине.

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

Короче, аккуратнее.

Такое исследование.

scr