Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Поднимайтесь как можно выше по дереву, собирайте цветы и дарите их близким.
Вас ждут уникальные награды и 22 выгодных промокода!

Пикаджамп

Аркады, Казуальные, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Renpy + Кот

С этим тегом используют

Визуальная новелла Инди игра Gamedev Инди Компьютерные игры Игры Постапокалипсис Вертикальное видео Домашние животные Милота Юмор Фотография Котята Животные Все
1 пост сначала свежее
27
AnnTennKa
AnnTennKa
8 лет назад
Лига Разработчиков Видеоигр
Серия Мои игры

Создание квеста про котёнка на Ren'py.⁠⁠

Сразу оговорюсь, что создание квеста на этом движке - не такое-то уж и простое дело. Ну мне очень хотелось сделать игру про котёнка такой, чтобы она была похожа на квест, при этом у меня уже на тот момент было много наработок на Ren'py по этой игре (если кто не в курсе - это такой движок для визуальных новелл).


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


Графическая карта (англ. image map) – это изображение с несколькими активными областями, то есть один рисунок содержит несколько участков. В зависимости от того в какую область картинки кликнет пользователь могут совершаться те или иные действия.


Пример того, как работает этот способ можно наблюдать на этом видео по моей игре

С чего начать.


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


Вот, например, две картинки - основа и изнанка:

Создание квеста про котёнка на Ren'py. Длиннопост, Квест, Renpy, Кот, Greenlight, Туториал, Скрипт, Gamedev, Видео
Создание квеста про котёнка на Ren'py. Длиннопост, Квест, Renpy, Кот, Greenlight, Туториал, Скрипт, Gamedev, Видео

Первая картинка в игре называется "find begin.jpg", а вторая "find begin_map.jpg"


И теперь самое интересное, как это реализовано в скрипте:

# помечены комментарии-пояснения


label click:


# Все эти цифры в конструкции - координаты.

# Координаты хотспотов - невидимых активных зон -

# икс-игрек левой верхней точки прямоугольника,

# затем икс-игрек правой ниженй - всего 4 цифры.

# При наведении мыши на хотспот "просвечивает" второй фон,

# причем только та часть, которая ограничена координатами.

# Так можно сделать предметы, "оживающие" под курсором мыши.

# После координат задаем метку, на которую будем переходить по клику на хотспот.

# Координаты в пикселях удобнее смотрять прямо в фотошопе.

# Сначала получаем результат клика -


$ result = renpy.imagemap("find begin.jpg", "find begin_map.jpg", [

(0, 0, 112, 91, "help"),

(13, 274, 120, 346, "home"),

(643, 497, 765, 580, "karusel"),

(674, 275, 790, 357, "pravo"),

(650, 152, 740, 245, "river"),

(300, 283, 430, 409, "cat"),

(66, 116, 738, 126, "volga")

])

# Внимание - не теряй нужные закрывающие скобки!

# Теперь проверяем получившися результат и переходим -

if result == "home":

if yes:

play sound "begin5.mp3"

#"Скоро я уже буду дома! Вот она обрадуется!"

"I'll soon be home! She would be so happy!"

jump home

else:

play sound "begin6.mp3"

#"Пойду домой."

"Let's go home."

jump home

elif result == "pravo":

play sound "begin7.mp3"

#"Пойду вперед!"

"Let's go forward!"

jump img

elif result == "karusel":

play sound "begin8.mp3"

#"Пойду к каруселям."

"Let's go to the carousels."

jump attr

elif result == "river":

play sound "begin9.mp3"

#"Пойду к речке!"

"Let's go to the river."

$ wwerh = True

jump river

elif result == "cat":

if yes:

play sound "homeA.mp3"

#"В какую сторону домой?"

"Which way leads back to my home?"

else:

play sound "gdeIskat.mp3"

"Where should I search?"

#"Где же искать?"

jump click

elif result == "volga":

play sound "begin10.mp3"

#"Это река - Волга"

"This river is called the Volga."

jump click

elif result == "help":

call menuuu

jump click


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


Для  как каждой области задаем метку. Допустим, мы кликнули на область, огороженную х1=650, y1=152, x2=740,y2= 245, что соответствует метке "river".

Создание квеста про котёнка на Ren'py. Длиннопост, Квест, Renpy, Кот, Greenlight, Туториал, Скрипт, Gamedev, Видео

В результате у нас подсвечивается область с подписью "к речке" из изображения find begin_map.jpg и будет выполняться часть скрипта, идущая после elif result == "river":


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


А если нажимаем на котёнка, то идёт фраза "Где же искать?" и возвращаемся к нашей первой метке click:, то есть на начало. И можем дальше сколько хочется кликать.


Заключение.


Эта игра про котёнка сейчас проходит гринлайт, и вы можете поддержать её по этой ссылке: http://steamcommunity.com/sharedfiles/filedetails/?id=865351...

Спасибо вам и приятных выходных!

Показать полностью 3 1
[моё] Длиннопост Квест Renpy Кот Greenlight Туториал Скрипт Gamedev Видео
20
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии