admin / 09.10.2018
Содержание
Game Maker — один из самых известных конструкторов игр.
Создавать игры в нём достаточно просто, это не требует предварительного знакомства с каким либо из языков программирования.
Игра в GameMaker строится как набор игровых объектов, поведение которых задаётся путём программирования реакции на события. Программировать можно, используя графическое представление программ (близкое к блок-схемам) в режиме drag-n-drop. Например, для того чтобы начать условный оператор, нужно перетащить на панель действия восьмиугольник с иконкой, обозначающей тип проверки, а затем, возможно, ввести какие-либо значения в появившуюся форму. Имеется в нём и скриптовый язык GML похожий на JavaScript.
Рассчитан в основном он на создание двухмерных (2D) игр любых жанров. Также подойдёт для создания различных презентаций и т. п. Начиная с 6-й версии появилась ограниченная возможность работать с 3D. Может быть рекомендован для изучения программирования детьми.
Чтобы создать текстовую игру на ГМ, достаточно одного объекта, одной комнаты любых размеров и вот этих команд:
show_message('Привет!') — выводит на экран сообщение (в данном случае "Привет!").
команда=show_message_ext('','Да','','.') — выводит на экран сообщение с вариантами для выбора (максимум тремя). Вместо "команда" вписываем переменную и потом пользуемся ей для проверки варианта выбора. Пример:
otvet=show_message_ext('Хочешь поесть?','Да','Нет','Не знаю…')
if otvet=1 {show_message('Угощайся, друг!')}
if otvet=2 {show_message('Ну как хочешь.')}
if otvet=3 {show_message('Подумай как следует!')}
команда=get_integer('Вопрос',0 (это кол-во по умолчанию)) — выводит на экран строку, в которую игрок должен вписать число. "Команда" проверяет вписанное число. К примеру:
zub_number=32
zub=get_integer('Сколько зубов тебе выбить?',0)
zub_number-=zub
команда=get_string('Вопрос','' (это вписанное по умолчанию)) — выводит на экран строку, в которую игрок должен вписать любые символы. "Команда" проверяет вписанное. К примеру:
name=get_string('Как вас зовут?','Безымянный')
show_message('Что ж, привет, '+string(name))
Также может пригодиться:
команда=show_menu('',0) — выводит список возможных вариантов (разделяются символом |). Команда — выбранный вариант. В отличии от show_message_ext, начинается с нуля! К примеру:
show_message('Выбери оружие!')
otvet=show_menu('Пистолет|АК|Дробовик',0)
if otvet=0 {oruzhie='Пистолет'}
if otvet=0 {oruzhie='АК'}
if otvet=0 {oruzhie='Дробовик'}
И, наконец, вот команды для окраски вашей текстовой игры:
message_button(спрайт) — кнопка ответа теперь — ваш спрайт
message_size(width,height) — ваш размер окна (стандартный размер — 400 на 300)
message_background(фон) — фон окна меняется на ваш.
Надеюсь, этот урок поможет вам в создании текстовой игры. Желаю удачи!
Ren’Py is a visual novel engine – used by thousands of creators from around the world – that helps you use words, images, and sounds to tell interactive stories that run on computers and mobile devices. These can be both visual novels and life simulation games. The easy to learn script language allows anyone to efficiently write large visual novels, while its Python scripting is enough for complex simulation games.
Ren’Py is open source and free for commercial use.
Why Ren’Py?
To ask questions that aren’t appropriate for a public forum, or to find a speaker for your visual novel-related conference or con, please contact us via email.
The latest version of Ren’Py is 7.0 «For all mankind.», released on June 01, 2018.
The best places to ask questions about Ren’Py are the Lemma Soft Forums, the Ren’Py Discord, and the #renpy IRC channel.
We make news about Ren’Py available on a number of social platforms:
Twitter: You can follow Ren’Py’s lead developer @renpytom for release announcements, development news, and general commentary on life.
Facebook: We announce new releases on our Facebook page.
Ren’Py has been used to create over 1,500 visual novels, games, and other works. You can find them at the official Ren’Py Games List, and the list of Games made with Ren’Py on itch.io.
Here are just a few of the games made with Ren’Py.
RenPy.
|
© aNNiMON (Melnik Software) Онлайн: 31 (3/28) |
|
RenPy. Урок 1. Базовые команды от BPS
Автор: lolbot
Курс посвящен не столько Ren'Py вообще, сколько моддингу everlasting_summer-1.2. Однако данные знания будут полезны и при создании игр на данном движке. Целевая аудитория: желающие попробовать себя на роль сценариста и/или редактора. Требуемые навыки: уметь редактировать текстовые файлы, обладать зачатками разума. Что нам понадобится?Текстовый редактор, поддерживающий: Если поддержки нет, вы скорее всего увидите что-то такое: Если поддержки нет, вы скорее всего увидите что-то такое: Как грузится Ren'Py?1. Компилирует все файлы *.rpy в папке /game/. Результат = *.rpyc-файлы Структура rpy-файла- Текстовый, человекочитаемый файл Базовые команды label, jump и returnlabel <метка> — единственный в этом уроке блок Базовые команды: описания и реплики"Вот так оформляется текст от имени автора" ОСТОРОЖНО: длинная строка не поместится в отведенную в игре рамочку. Формат имя "Текст" un — Лена (Уныл-тян) Эпизодические говорящие: play music <музыка> — начать играть музыку. # <коммент> — такие строки Ren'Py игнорирует label test: Возможные ошибки — где-то табуляция вместо пробелов. Как создать игру на Андроид с нуля — осваиваем азы гейм девелопмента(Check strings and parenthesis.) — не закрыта кавычка При попытке передать play неправильную музыку, ошибка возникнет во время игры. Игра упадет с ошибкой KeyError: '<музыка>' $регистрация модификации Для того, чтобы появилась возможность запуска модификаций, нужно зарегистрировать ваш мод. Вставляем следующий код в начало rpy-файла: init: $ mods ["<ник>__<название_метки_перехода>"] = u"<Название мода>" Для запуска нужно перейти в меню "Моды и сценарии" и выбрать <Название мода>, после чего произойдет переход к метке <название_метки_перехода>. Обратите внимание, ник нужно отсекать ДВУМЯ подчеркиваниями __ .rpy с заданиями сохраняем в %gamedir%\game Подсистема для их запуска 1. «Гуманитарная помощь» Юичка не умеет писать гру-скрипты и прислала сценарий в виде txt-файла. Задача: реализовать в кодё всё её фантазии, описанные в ![]() 2. «Пьяный сценарист» Повышенная концентрация этилового спирта в крови Мугички, иногда вызывает у неё приступы дислексии. Иногда после её изменений игра перестаёт работать. Вы — Азунян. Напишите что-нибудь интересное! ![]() ![]() |
© aNNiMON (Melnik Software) Онлайн: 34 (3/31) |
|
Создание визуальных новелл далеко не такое сложное дело, как может показаться. И поможет нам в этом деле движок RenPy: http://renpy.org. С одной стороны, движок простой и будет понятен даже для начинающих. С другой стороны, движок достаточно мощный и позволяет создавать реально крутые игры. Для начала движок нужно скачать и установить. Ничего сложного в этом процессе нет, все настройки по умолчанию хороши. Вот так выглядит главное окно RenPy:
Слева список проектов, справа опции активного проекта (в списке проектов выделен синим). Чтобы создать свою игру нужно кликнуть “Добавить новый проект” под списком проектов. Далее движок задаст несколько простых вопросов. Помните, имя игры должно быть на английском языке.
Итак, после создания проекта можно приступать непосредственно к написанию игры. В списке редактирования выбираем script.rpy, открывается редактор файлов (редактор по умолчанию, предлагаемый RenPy — Editra достаточно хорош).
Мне нравятся тёмные цветовые схемы для написания текстов, так что тема Dessert меня просто спасает. Вот как выглядит Editra после некоторой настройки у меня:
По коду тут тоже всё достаточно просто. В строке 7 определяем персонажа с именем “Эйлин”, имя которого будет писаться текстом цвета #c8ffc8 (цвета можно взять в любом графическом редакторе, например, GIMP или Photoshop). Для краткости написания персонаж назначен на короткое имя “e”. В 13 и 15 строке буквально написано: персонаж “e”(Эйлин) говорит на экране то, что указано в кавычках. Строки, начинающиеся со знака решётки (#) являются комментариями разработчика и на ход выполнения не влияют.
Сделаем немного графики для игры. По умолчанию разрешение нашей игры 800х600. Эту настройку можно поменять в файле options.rpy, но для первой игры такое разрешение оптимально. Поэтому нужно создать в Comipo панель размером 800х600. При изменении размера с помощью перетаскивания мышью возле панели пишется, какого она размера:
Пускай в игре мы хотим воссоздать вот такую сценку:
Экспортируем слои по одному. Начинаем с фонового изображения, подбираем чтобы высота была примерно 600, ширина 800. Подробнее для начинающих это описано в уроке про экспорт. Остальные слои экспортируем с теми же настройками. Вот так у меня выглядит экспортированный слой с рыцарем:
Для начала представим себе сюжет новеллы. Я вижу новеллу примерно так (левый клик работает):
А вот так выглядит код для RenPy:
Код создания персонажей уже был рассмотрен. Здесь мы в строках 1 и 5 создаём новых персонажей: m и dex. Нововведением являются состояния персонажа и картинки для каждого состояния. Например, для персонажа m задано состояние oho, ему соответствует картинка Mala-o.png (строка 2).
Игра начинает выполнение с метки label start: (11 строка). Далее показываем, что сначала у нас всё будет происходить на чёрном экране (scene black). Строки 13 и 14 — просто текст, который будет показан на экране. Модификатор with показывает модификатор (анимацию), с которым будет отображаться данный объект. Анимаций много, применяться могут чуть ли не к чему угодно.
Строка 16: show dex norm at left with dissolve. Читается так: показать персонажа dex в состоянии norm, слева, с анимацией плавного появления. Строка 17 — также просто отображение текста, но так как перед текстом у нас есть имя персонажа, то оно тоже будет отображено.
Строки 23 и 24 — анимация обмена мест Мали и Дэкса. В этих строках используется команда show, но так как персонаж уже есть на экране, то к нему просто будет применена анимация.
По сути — всё, наша первая игра готова. Она имеет небольшой исходный код, не очень сложна для понимания. Здесь кроется ещё одна хитрость в изучении RenPy — изучать его надо постепенно, по одной добавляя новые фишки, и смотря как они влияют. Хорошим подспорьем является Руководство для начинающих. Ещё много полезных ссылок можно найти в русской Wiki проекта.
Удачи при создании игр!
Вернуться к урокам по Comipo
Теги материала : Для начинающих
screen view_test:
hbox:
spacing 30# Расстояние, между баром и боксом.
xsize 800# Размер, дабы не растекалось по всему экрану.
ysize 600
align (.5,.5)# Центруем
viewport id"view_id123": # Вьюпорт обязательно с id, дабы можно было прицепить к нему бар.
xfill False
yfill False
mousewheel True# Разрешаем прокрутку мышью.
vbox:
for i inxrange(50): # Помещаем нужные нам объекты.
textbutton "Кнопка %d"%i
vbar value YScrollValue("view_id123")# Бар, как второй элемент hbox-а.
label start:
call screen view_test
FILED UNDER : IT