Как сделать игру в game maker studio 2

Добавил пользователь Alex
Обновлено: 19.09.2024

Я тут буквально сегодня попробовал gms 2.3 в действии и решил,
так сказать, оформить в словесную форму, свои впечатления.

И даже написал по-этому поводу целую статью

Писать тут тот же самый текст один в один я не буду. Причин тому две — по соображениям уникальности и собственно потому что повторяться не хочется.

Но кратко резюмирую и попробую донести еще некоторые мысли.

gms меня впечатлил. Иначе стал бы я писать статью на эту тему ?

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

Но уроки в форме обучающих статей мне все же ближе и понятнее.

На видео чаще всего показывают действия, но не показывают суть.

От этого становится иногда еще непонятнее.

Но может еще сыграло роль мое желание и открытость. И то что
так звезды сошлись.

Вообщем не знаю.

Но то, что я увидел — мне понравилось ! Хотя видел уже не первый
раз.

Хочу ли я делать игры на game maker ?

Ну реальные и большие проекты — вряд ли. Хотя кто знает ?

Скорее я хочу усвоить весь накопленный опыт и перенести его в собственное
русло. В собственный опыт и собственную среду.

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

gms подойдет не всем. Однозначно.

Но если вы хотите чего-то быстрого и красивого (не игры, а именно
получить такие впечатления от её разработки), то наверное лучшего способа,
чем попробовать game maker — нет.

Профессиональный разработчик вряд ли найдет для себя здесь что-то новое.

Все что есть просто представлено под красивым соусом и приправлено.

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

gms не такой. Он рассчитан на краткосрочное использование. На создание
короткого проекта на короткой дистанции. Когда времени у вас мало
и не хочется тратить это драгоценное время понапрасну.

Game maker studio является хорошим кроссплатформенным движком-конструктором для создания 2D игр. Движок имеет очень простой и понимаемый интерфейс, но, если у вас возникнут сложности с его освоением, тогда вам поможет большое количество документации на русском языке, видео уроков и форумов по работе и созданию игр на данном движке.

Редактор Game maker Studio дает возможность создавать игры не только 2D игры, но и применять 3D графику. Стоит заметить, что возможность создания 3D игр не будет вас радовать крутой современной графикой или высокой степенью оптимизации, поэтому всё-таки данный движок стоит использовать как платформу для создания качественных 2D игр.

Движок позволяет создавать 2D игры с применением собственных спрайтов (графические объекты в компьютерной графике), звуков и анимации, которые так же можно создать и редактировать в Game maker studio.

Неотъемлемым плюсом редактора Game maker studio является кроссплатформенность – это способность создавать собственные игры для разных платформ для ПК (Windows, Mac OS, Ubuntu), мобильных (Android, Amazon Fire, iOS, Windows 10 Mobile), Web (HTML5) и Игровых консолей (Xbox One, PlayStation 4).

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

Для начинающих

Game maker studio подойдет для амбициозных людей с интересными идеями по созданию прототипа игры. Сейчас большая проблема хорошей идеи для создания игры является в её реализации, так как для этого необходимо знания языков программирования. Этот движок даёт возможность создания игры без прибегания к программированию, написанию скриптов.

Очень хорошо подойдет для первого тестового создания механики задуманной игры, так как главное для начала понять интересен ли будет сам gameplay, и только после тестирования можно будет приступать к подробному созданию и улучшению графической части игры. Вот для таких целей и подойдет Game maker studio, она даёт возможность быстро и легко реализовать такого рода задачу.

Drag and Drop (DnD ™) это графическая среда разработки, которая идеально подходит для начинающих или тех, кто более визуально или художественно ориентированы. С помощью DnD возможно создать игры без написания скриптов, используя только интерфейс программы.

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

Для профессионалов

Но не стоит говорить, что движок Game maker studio не будет интересен для профессиональных Game разработчиков. В Game maker studio есть свой собственный язык программирования GML, который написан на Delphi и имеет синтаксис он Java Script и Pascal. При создании игры с помощью GML языка программирования открывается на много больше возможностей нежели через графический редактор программы.

Обзор интерфейса

Последней версией Game maker studio №1 была 8.1.140, на сегодняшний день она перестала поддерживаться, так была выпущена новая версия Game maker studio 2.

Так же на официальном форуме можно скачать русификатор для движка.

Ссылка на русификатор: Google drive


После того как вы скачали и установили Game maker studio запускаем его и в окне вводим данные, которые зарегистрировали на официальном сайте при скачивании. После ввода данных нам открывается интерфейс движка.


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


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


Создание событий можно произвести без обращения к программированию и созданию скриптов, все делается с помощью довольно интуитивно понятных меню и окон. Можно продумать и создать довольно сложные сценарии действий для объекта с помощью визуального редактора Game maker studio.


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

Стоит заметить часть программы, в которой нам дается возможность работать с кодом на языке GML. Очень радует та легкость, с которой простые командные функции могут быть сделаны. Поэтому если вы начинающий Game creator и готовы посвятить этому большую часть времени, тогда вам просто необходимо заняться изучением языка GML.

Установка русификатора

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

Откроется блокнот с конфигурацией этого файла. Нам необходимо 7-й строкой вставить следующую конфигурацию.


_LanguageCode,ru,ru,,standard windows os language code this pack represents (can be primary code only ie. en or primary-secondary ie. ru-RU)

Итоги обзора Game maker studio

Плюсы:

  • Поддержка работы и создания проектов в графическом интерфейсе.
  • Кроссплатформенность.
  • Гибкая ценовая категория.
  • Собственный язык программирования.
  • Интеграция со Steam.
  • Поддержка множества интернет-площадок.
  • Поддержка шейдеров.
  • Поддержка работы с сетью.
  • Интеграция с Facebook.
  • Возможность установки русификатора.
  • Большое количество документации.
  • Поддержка и официальный форум.
  • Собственный магазин инструментов.
  • Совместимость с проектами, сделанными на более поздних версиях Game maker studio.

Минусы:

  • Плохо оптимизирован для некоторых платформ.
  • Плохо реализован инструмент создания 3D игр.
  • Нет встроенного русскоязычного интерфейса.
  • Большие ограничения при использовании бесплатной версии (на то она и бесплатная).

Заключение

Продолжаю обучающий видео курс для новичков – Основы создания игр в game maker (сегодня – game maker studio 2). В этом ролике рассказываю как сделать выстрел, стрельбу и пули в гейм мейкер студио 2, ну и вообще – как работает стрельба в играх.

Так-же посмотрите другие мои видео по созданию игр с нуля:

Основы создания игр – следование камеры за героем

Что нового в Game Maker Studio 2

Основы создания игр – как сделать спавны в гейм мейкер

Основы создания игр – движение в game maker

Как сделать хелсбар? Полоска хипов в game maker

Где брать спрайты для игр?

Что такое качественный и годный контент?

Хорошие YouTube каналы про Геймдев и Графику

Рисую Мага из Clash of Clans и Clash Royale

SimCity на телефон ?

Как сделать кликер игру за час

Как сделать анимацию в игре, game maker studio

Дизайн Уровней: Теория и Практика. Создание Игр

Видео обзор игр – аркада в космосе

Текстовая игра – Симулятор Бомжа. Обновление

TDS Шутер :: Гранаты

Как сделать скрытность и стелс в game maker

Защита замка, игра которую делал давно

Игра :: Симулятор магазина

Игра про вирус которую я сделал

Симулятор фондовой биржи, который я сделал

Как создать рпг в гейм мейкер :: ч 6 :: Анимация атаки

Как создать рпг – кликер :: ч 5 :: Блок атаки

Как создать рпг – кликер :: ч3 :: крафт

Создание глобальной стратегии :: часть 1 :: Game Maker

Создай свою игру :: товер дефенс :: ч1

Как сделать стратегию в game maker? Пример и исходник

Как создать игру с нуля :: ч1

Ключевые слова:
гейм мейкер студио уроки
гейм мейкер студио
гейм мейкер
создание игры
econ dude
экон дуд
как создать игру
уроки создания игр
уроки гейм мейкер
game maker уроки
game maker studio уроки
game maker studio 2 уроки
как создать игру с нуля
как сделать игру с нуля
сделать игру на комп
сделать игру видео
как делают игры видео
пример как делают игры
геймдев
инди игры
Основы создания игр
стрельба
как сделать выстрел

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

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

Урок 1: Введение

Доброго времени суток, господа начинающие игроделы! В этом уроке я познакомлю вас с интерфейсом программы Game Maker, а также разъясню некоторые базовые термины.


Обратите внимание, что я использую в своих уроках версию Game Maker под названием Game Maker Studio. Данная версия является на данной момент самой новой и может отличаться от предыдущих как дизайном, так и функциональностью. Потому я настоятельно рекомендую перед чтением данной статьи скачать Game Maker Studio.

Вопрос: "Где же я могу скачать Game Maker Studio?" Данная программа продается в Steam. А поскольку она является условно-бесплатной, вы можете спокойно ее скачать оттуда. Однако, сразу предупреждаю, что бесплатная версия имеет ряд ограничений, начиная от невозможности компиляции, заканчивая ограниченным количеством ресурсов.


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


Чтобы создать новый проект, откройте вкладку New. В данной вкладке вы увидите два пункта: Project Directory (расположение проекта) и Project Name (имя проекта). Думаю суть этих пунктов объяснять вам не надо. В первом инпут-боксе (текстовой панели) вводим расположение нашего будущего проекта, а во втором его название. Далее жмякаем Create (создать) и перед нами открывается основной интерфейс программы.


Слева мы видим панель ресурсов нашего проекта, представляющую из себя интерактивный список. В основном мы будем работать с такими ресурсами, как Sprites (Спрайты), Objects (Объекты) и Rooms (Комнаты). Что же, давайте приступим к ознакомлению с нашими новыми друзьями.

Для начала создайте новый спрайт. Щелкните правой кнопкой по вкладке Sprites и выберите пункт Create Sprite (Создать Спрайт). Перед нами открывается следующее окно.


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

Чтобы добавить спрайт из файла, нажмите кнопку Load Sprite и выберите нужное изображение. Чтобы нарисовать спрайт в ручную, нажмите кнопку Edit Sprite, и вам откроется встроенный в Game Maker растровый редактор, с функциями которого вы можете ознакомиться самостоятельно.

Каждый спрайт имеет центр – ориджин. Ориджин служит материальной точкой положения вашего объекта в пространстве, а также является центром, вокруг которого спрайт может вращаться. Ориджин можно изменить в панели Origin или щелкнув курсором по спрайту.

Также каждый спрайт имеет свою маску – материальную часть изображения, которая может взаимодействовать с объектами. Маску можно изменить, щелкнув по кнопке Modify Mask (Изменить Маску).

Как я сказал выше, для нас также очень важны такие ресурсы, как объекты. Чтобы создать объект щелкните правой кнопкой мыши по вкладке Objects и нажмите Create Object (Создать объект), и перед нами откроется следующий интерфейс:


Объект – это материальный предмет в игре. Давайте рассмотрим его основные свойства, доступные в панели, находящейся слева.

Объект может быть твердым – отталкивать от себя другие объекты, или же нетвердым. Изменяется эта характеристика при помощи пункта Solid (Твердость).

Объект имеет свою глубину. Если один объект имеет глубину меньше, чем у другого, то при их касании он уйдет на задний план, в то время как другой будет находиться сверху. Глубина объекта изменяется в инпут-боксе под пунктом Depth (Глубина).

Объект может иметь своего родителя (Parent) – другой объект, свойства которого он будет использовать. При обращении к родительскому объекту, отзываются и дочерние. Обратное отверждение неверно. Назначаются родительские объекты кнопкой Parent (родитель).

Объект имеет маску. По умолчанию она соответствует маски спрайта, но вы можете ее изменить щелкнув по кнопке Mask (маска).


В панелях справа: Event (событие) и Action (действие) – производится основное управление объектом и игрой в целом.

В панели Event вы можете выбрать необходимое событие, в панели Action – действие соответствующее этому событию. К примеру, если вы хотите, чтобы при создании игрок по нажатию клавиши Право начал двигаться направо, нажмите кнопку Add Event. В появившемся меню нажмите кнопку Keyboard и в появившемся списке выберите в нем пункт Left. Теперь у вас появилось событие .



И последний на сегодня тип ресурсов – комнаты. Чтобы создать комнату нажмите правой кнопкой мыши по вкладке Rooms и выберите пункт Create Room (создать комнату).


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


Чтобы запустить вашу игру нажмите клавишу F5. Если же вы желаете скомпилировать вашу игру (создать файл, при запуске которого игра запустится), в верхней панели найдите вкладку Target (может отсутствовать некоторых версиях Game Maker) и выберите пункт Windows. Далее нажмите кнопку Compil.


Внимание! В бесплатной версии Game Maker Studio отсутствует компиляция. Это по сути никак не исправляется, разве что покупкой полной версии. Однако вы можете выбрать в панели Target вместо "Windows" пункт "Workshop" и загрузить свой проект в Steam Workshop. Это очень полезная функция, если вы хотите, чтобы в вашу игру играли =)

Вопрос: "Меня бесит интерфейс Game Maker Studio , что делать?" Слава богу на этот случай есть специальная система персонализации. Открыв настройки ( File > Preferences ) и выбрав вкладку General вы можете легко изменить скин программы, изменив настройки пункта Select Skin . По умолчанию нам предложено три вида оформления. Лично я предпочитаю скин GM 8 и в будущих уроках буду использовать именно его.


Также вы можете изменить и окно редактора скриптов. Для этого существует вкладка Scripts and Code , доступная в этом же окне.

Учимся проверять коллизии

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

И что же нам делать? Каждый раз вручную менять координату для проверки? Нет. Есть более универсальный способ. Давайте сделаем так, чтобы бита, прежде чем сдвинуться, проверяла нет ли на пути движения стены. Т.е. мы будем проверять коллизии (столкновения) биты с объектом стены. Для этого в GMS2 есть функция place_meeting , которая как раз и проверяет, будет ли столкновение, если поставить биту в указанные в функции координаты. Давайте немного изменим наш первоначальный код в шаге биты. Напомню, изначально он был таким:

Т.е. сначала мы проверяли, нажата ли определенная клавиша, затем мы проверяли, положение координаты x биты по отношению к какой-то крайней координаты (дальше которой бита не должна ехать) и только тогда сдвигали биту. Так воттеперь мы попробуем применить в коде нашу новую функцию place_meeting .

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

Первая строка проверяет нажата ли клавиша "стрелка вправо". Если да, то будет выполняться тот код, что идет между скобками <> .

А в них далее как раз идет еще одна проверка:

if not place_meeting(x+spd,y,Wall)

Где not , читается как не , т.е. оно инвертирует следующую за ним функцию. И дословно данное условие можно прочитать как " если поместить биту в координаты x+spd и y и в них НЕ будет столкновения с объектом Wall ".

Т.е. бита пока не перемещается на spd пикселей вправо, а лишь проверяет, нет ли в тех координатах стены, и если их нет тогда и выполнится сам сдвиг биты, т.е. код, что идет в следующих скобках <> , а именно: x+=spd .

В GMS2 допускается сокращение, можно не писать слово not перед функцией, а заменить его на восклицательный знак перед ней. Так писать гораздо удобнее и быстрее. Так что если вы увидете где-то в коде:

!place_meeting(x+spd,y,Wall)

знайте, что это тоже самое что и

not place_meeting(x+spd,y,Wall)

По этому давайте сразу сделаем наш код чуть короче и удобнее для чтения:

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

Создание объектов с помощью кода

Помните в первом уроке, когда мы расставляли объекты в редакторе комнат, мы создали слой "Ball", на который пока ничего не ставили? Так вот пришло время. Давайте зайдем в событие создания биты (событие Create ) и дополним немного код.

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

Итак, в событии Create мы уже писали с вами код. Там должна быть всего одна строчка, в которой мы создали переменную скорости и присвоили ей значение 5:

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

Для создания объектов кодом в GMS2 есть функция instance_create_layer .

Тут думаю важно объяснить, что такое инстанс (instance) объекта. Дело в том, что те объекты, которые мы создавали в первом уроке и которые у нас находятся в дереве ресурсов - это просто шаблоны. А в самом игровом мире мы создаем их копии, т.е. инстансы данных объектов. Важно сразу уметь понимать и отличать эти понятия. Т.е. в GMS2 есть понятие и объекта (object) и инстанса (instance) . Давайте разберем на примере.

Например, мы создали объект какого-то врага, скажем скелета. Он находится у нас в дереве ресурсов. В данном объекте мы прописали весь код для движения скелета, его ИИ и т.д. Т.е. мы создали сам ОБЪЕКТ . По сути это шаблон. Далее мы в редакторе комнат начинаем вытягивать скелета из дерева ресурсов и расставлять их по уровню (как мы это делали с объектами стен в нашем арканоиде). Так вот, мы расставляем уже копии данного объекта, т.е. ИНСТАНСЫ . В каждом отдельном инстансе мы уже можем менять код независимо от других копий. Т.е. мы можем в одном инстансе скелета сделать так, чтобы он был одет в шлем, при этом остальные скелеты будут без шлемов, так как мы прописали код только в одном инстансе. Если же мы пропишем, чтобы шлем был одет в коде самомго объекта скелета, т.е. в коде шаблона, то шлем появится сразу на всех скелетах. Т.е. тут нужно уяснить, что замена кода в объекте влияет на код инстансов, но замена в коде инстанса, не меняет сам код объекта. Это важно знать и понимать. Итак, вернемся к коду создания мяча.

Добавляем в событии создания биты еще одну строчку кода:

Данной строчкой кода мы создаем в координатах x и y-20 на слое "Ball" объект Ball (ну правильнее говорить создаем инстанс объекта, как мы уже выяснили, но можно говорить, что создаем объект). Обратитье внимание, что название слоя указываем в кавычках, а название объекта без. А то у нас и слой и объект имеют одинаковые названия и может возникнуть путаница. Называть их одинаково конечно не обязательно.

Почему мы создаем мяч в координатах x и y-20 ? Еще немного математики.

Так как мы пишем данный код в объекте биты, то x и y будут являтся цетром биты. Мы это установили в первой части урока.

Читайте также: