Как сделать квест на юнити

🏓 Создаем 2D-игру на Unity: инструкция для новичка

Как сделать квест на юнити

Двумерные игры сравнительно просты: для них не требуется сложных 3D-моделей, программный код по сравнению с 3D-проектами выглядит понятнее. Такие игры популярны как на десктопах, так и на мобильных устройствах. Unity также позволяет разрабатывать игры и для браузеров.

За последние годы вышло много популярных двумерных игр:

Программная реализация 2D-игр проще не только из-за отсутствия третьего измерения: на самой сцене меньше объектов, вместо трехмерных моделей плоские спрайты, вместо скелетной анимации – покадровая. А еще 2D-игры проще портировать на другие платформы – легче найти новую аудиторию.

Особенности создания 2D-игр на Unity

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

Пошаговый процесс создания 2D-игры на Unity

Предполагаем, что вы уже установили редактор и создали аккаунт на портале Unity.

В первую очередь создадим новый проект и откроем его настройки (Edit → Project Settings). Во вкладке Editor установим параметр Default Behaviour Mode в значение 2D

Как сделать квест на юнитиНастройка проекта Как сделать квест на юнитиДетальная настройка проекта

Следующим шагом сохраним текущую активную сцену, назвав ее, например, Scene1. Теперь создадим основные игровые объекты: ракетку, мяч и менеджер игры, в котором будет храниться основная логика игры.

1. Создаем пустой объект, переименовываем в GameManager.

Как сделать квест на юнитиСоздаем пустой объект

2. Создаем C#-скрипт с названием GameManager. Ассоциируем скрипт с объектом GameManager, перетащив мышкой скрипт на объект.

Как сделать квест на юнитиСоздаем C# скрипт

3. Создаем квадратный спрайт, называем его Pad (Assets → Create → Sprites → Square). Аналогично создаем круглый спрайт Ball (Assets → Create → Sprites → Circle). Масштабируем спрайт Pad со следующими параметрами – x:0.5, y:2.5, z:1.

Как сделать квест на юнитиСоздаем спрайты

4. Создаем префабы для Pad и Ball, после чего добавляем к ним компонент Box Collider 2D (включаем параметр Is Trigger) и компонент Rigidbody 2D (выставляем параметр Body Type в значение Kinematic).

5. Создаем C#-скрипты Ball и Pad. Ассоциируем их с префабами.

6. Заполняем скрипты следующим кодом.

GameManager.cs Ball.cs Pad.cs

6. Добавляем к префабу Ball и Pad теги с аналогичными именами. Выделив префабы, в инспекторе мы можем видеть выпадающий список тегов. Там же расположены и кнопки для добавления и редактирования тегов.

7. В настройках камеры выставляем параметр Projection в значение Orthographic, а параметр Clear Flag – в значение Solid Color.

Как сделать квест на юнитиНастройка камеры

8. Настраиваем кнопки, как показано на следующих скриншотах (Edit → Project Settings → Input Manager).

Как сделать квест на юнитиНастройка ввода, основное Как сделать квест на юнитиНастройка ввода, первый игрок Как сделать квест на юнитиНастройка ввода, второй игрок

Вот и всё, игра готова!

Как сделать квест на юнитиПинг-понг, итоговый результат

Билд для платформы Windows

Дополнительные туториалы

1. Официальный туториал от Unity, где детально рассмотрен процесс создания roguelike RPG.

3. Youtube-канал N3K EN содержит множество уроков как по отдельным компонентам Unity, так и полноценные серии уроков по созданию игр с нуля.

В числе прочего вы разработаете 2D-платформер с физическими загадками и динамическим освещением, научитесь портировать его на мобильные устройства. Кроме того, разработаете полноценную браузерную стратегию, а также игру в жанре двухмерных гонок.

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

Источник

Классический 2д квест или как прошли наши два года разработки. Часть 1

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

Внимание! Под катом есть картинки и видосики, осторожно, траффик!

Как сделать квест на юнити

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

Предыстория

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

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

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

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

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

Видос с тех времен сохранился в недрах ютуба. Давайте посмотрим:

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

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

Зима — Весна 2014

Огромным плюсом стало то, что Саня наваял целый 60 страничный документ с полными текстами сцен и даже построил дерево того, как будет развиваться действие в игре. Это, честно говоря, меня немало удивило, потому как дизайн документов я отродясь не видел, и, честно говоря, считал это чутка бредом, еще со времен примеров 1С и их «The Ryaba Revenge», но наличие этого материала сильно облегчило построение игры в дальнейшем.

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

Итак, план был прост — надо:

а) делать арт, поскольку его надо много (в игре должно было быть 300+ сцен)
б) брать и пробовать делать игру на каком-то движке

С пунктом а) всё было более-менее понятно, но т.к. ни он, ни я рисовать толком не умели, то понятное дело, что учиться на ходу тому, чего никогда не делал — глупо, и Саня начал поиски художника, пока я пробовал копаться с разными движками.

Движок. Учитывая те особенности игры, которые должны были в ней быть, то требования были простыми — это новелла со своими примочками. Всякие новельные движки я отбросил сразу, из-за возможных проблем со встраиванием дроидовских, ios-овских примочек на этапе запуска, был angengine, но он был только под дроида. Пробовал libgdx, который на тот момент был еще сыроват, cocos2d пугал С++, которым я владел, но после использования С# в университете, к которому возвращаться уже не хотелось. И, наконец, был опробован CoronaSDK, который имел достаточно удобную справку с примерами и плагины, которые обещали быть кроссплатформенными. Движок на тот момент был платным (около 100$), но ради удобства можно было немного потратиться. Язык программирования, используемый Corona, мне тоже в принципе понравился своей простотой — это всем известный скриптовый язык Lua.

Тем временем, в поисках художника Саня облазил все биржи фриланса и сайты, связанные с гейм-девелоперской тематикой, такие как gcup.ru, gamedev.ru и другие. Темы а-ля мы ищем таланты и делаем супер-игру вызывали тонны срача и комментов диванных экспертов, которые засыпали Саню своими умными заключениями и диагнозами. Впрочем, Сане удавалось успешно слать их всех лесом и спамить-спамить-спамить… Спустя некоторое время, мы всё-таки нашли пару талантов и смогли начать работу.

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

Как сделать квест на юнити

Как сделать квест на юнити

Спустя пару проб мы-таки пришли к тому что примерно соответствовало желаемому:

Как сделать квест на юнити

Начало было положено и мы перешли уже к построению сцен самой игры:

Как сделать квест на юнити
Скетч сцены

Как сделать квест на юнити
Сцена в монохроме

Как сделать квест на юнити
Готовая сцена игры

Как сделать квест на юнити
Первая версия главного экрана игры, позднее она очень сильно изменится

Дальше случилось то, чего мы не ждали, а именно — человеческий фактор. Мы работали с двумя художниками: вначале они рисовали сцены, взаимодействовали с нами, и всё шло вроде бы хорошо, но в один прекрасный момент художник просто исчезает и больше не выходит с нами на связь. Прождав некоторое время, мы начали поиски другого художника для продолжения работ, ситуация повторилась вновь. Белиссимо!

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

Тем временем у нас всё-таки добавилось немного арта, из которого я уже собрал демку в CoronaSDK:

Как сделать квест на юнити
Запуск во встроенном эмуляторе

Как сделать квест на юнити
Запуск игры на телефоне

Помимо этого были испытаны Unity3D (на тот момент в нем нормально не поддерживалась работа с 2д, многое потребовалось бы пилить самому и пытаться завернуть это в 3д пространство, пару дней провозюкавшись с камерой и выполнив пару туториалов я забросил это дело), был также испытан движок Construct для игр на новомодном HTML5, но данный движок был очень сильно заточен под свои компоненты и также откинут в сторону.

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

Лето-осень 2014

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

Ну правда не совсем судьбой… У Женьки уже был достаточный опыт работы не только с играми, но и с другими проектами игровой тематики, в том числе и карточными играми, где он также выступал в качестве художника, победы и отметки за участие в конкурсах, ну и.т.д. В общем, человеком он был и есть в плане графики продвинутым!

Как сделать квест на юнити
Наброски интерфейса

Как сделать квест на юнити
Один из новых артов

И один из обучающих роликов созданных самим же автором:

Как сделать квест на юнити
Скетчи

В общем, Женька смог! В таком темпе мы и двигались дальше: Саня напару с Женей обсуждали что и как рисовать и ставить в игре, я писал код и пробовал движок LibGDX, потихоньку шло время, и к концу 2014 года у нас было достаточно графики и умения, чтобы выпустить своё первое маленькое приложение в GooglePlay, а именно — демо-версию нашей будущей игры.

Хотя на тот момент у нас не было готово даже и половины всего того, что надо было, и еще предстояло сделать много, мы всё-таки решили, что надо сделать так по следующим причинам:

— мы хотели получить опыт публикации приложения в маркете
— мы хотели посмотреть, как игроки воспримут игру такого жанра (всё-таки текстовые квесты и новеллы — это довольно специфическая ниша)
— мы хотели посмотреть на доход от рекламы в бесплатном приложении, и как игроки будут реагировать на неё

В конце концов мы просто хотели иметь хотя бы что-то цельное, чтобы оценить свои собственные труды, ведь прошёл уже целый год.

И в целом — всё было успешно, отзывы на маркете были достаточно позитивными, а средняя оценка на тот момент составила — 4.4 балла, что вроде не так уж и плохо.

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

Источник

Структура текстового квеста

Хочу попытаться написать текстовый квест по принципу пользователю дают текст с описанием события и пару ответов(или действий). Исходя из его ответа выбирается следующее событие. Например:

Вы в лесу и вам холодно, что вы сделаете?
А) Зажечь костёр
Б) Ничего не делать

Если пользователь выберет вариант А, то следующее событие будет:
Только вы начали согреваться у костра, но вдруг услышали шорох за кустами
А) Проверить кусты
Б) Притвориться, что не слышите

Если же пользователь выберет вариант Б, то следующее событие будет:
Вы всё еще в лесу и вам всё еще холодно.
А) Продолжать ничего не делать
Б) Пройтись по лесу

и далее в таком же духе. Если бы у меня было 5 событий, я бы использовал switch, но мне бы хотелось сделать что-то посложнее из-за чего возникает вопрос о том, как это структурировать. Может кто-то сталкивался с подобным?

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

Как сделать квест на юнитиСоздание текстового квеста на Visual Basic 6
Возникла такая задача: после ввода текста в TextBox необходимо подтвердить его нажатием клавиши.

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

Структура текстового документа при компоненте Treeview
Привет всем, допустим что есть текстовый документ в формате «.rtf» загруженный с помощью.

Решение

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

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

Как сделать квест на юнитиКакова Структура типичного текстового файла в Windows и Linux?
Или где об этом можно прочитать.

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

Штука для квеста.
Собираю для квеста что-то типа «ядерного чемоданчика» с таймером. Чтобы дать игрокам вволю.

Идея для квеста
Здравствуйте, у меня к вам такой вопрос: я хочу написать игру-квест, только не могу определиться с.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *