Как сделать чтобы несколько звуков проигрывалось?(gm8)
Помогите! как сделать чтобы несколько звуков проигрывалось? Например когда музыка играет а кто-то издаёт звук музыка пропадает! Как это исправить? Чтобы и звук издавался и музыка была?!
Помогите! как сделать чтобы несколько звуков проигрывалось? Например когда музыка играет а кто-то издаёт звук музыка пропадает! Как это исправить? Чтобы и звук издавался и музыка была?!
Много лет назад увлекся именно этим движком, с него и начал свой путь и простота освоения и клепание игр которые не снилось Китайцам с их RPG Мейкером. У меня даже были полностью купленные лицензии на вторую студию, но после того как они три раза подряд слетели я все послал, хотя сапорт мне их восстанавливал (условие пожизненной покупки было).
Но что то решил я вернуться к истокам, а именно к 8.1 и не могу ни как отыскать один пример, пример стрельбы с разбросом. Там была не большая комната, вид сверху, бегаем солдатом с "Эмочкой" и при стрельбе круг разброса у дула увеличивается, естественно пули в разные стороны. Да и сама реализация бега персонажа хоть и смешная, но подошла бы мне для будущего проекта.
Если не найду, пойду качать Студию вторую ломанную, ибо сохранил все записи о покупке и пошли они в жопу с криво встающей лицензией, есть подозрение что спецом слетает, что бы шел покупать подписку.
Надеюсь на силу Пикабу!
Привет! Вчера немного посидел, пытаясь намутить эффект остановки времени, вроде вышло что-то похожее)
Год или два назад в Game Maker, на котором я создаю игру завезли эффекты разных видов, под их капотом лежат шейдеры и мне не пришлось писать вручную код шейдера, а взять готовый. Так, я использовал эффект heat haze (нагревания), покрутил его параметры, и получился вот такой прикольный результат. Кроме него еще накладываю небольшую виньетку на экран. На самом деле такие эффекты неплохо могут улучшить картинку в игре)
Страница игры в Steam: https://store.steampowered.com/app/2363760/ReLinked/ (буду благодарен если добавите игру в желаемое)
Привет.
Сегодня вкратце рассмотрим, как сделать прокручивающийся текст в Gamemaker.
Представленный способ и его реализация не единственно верные, но свои цели выполняет.
Видео с демонстрацией работы и объяснениями. Текст тот же самый, поэтому кому как удобнее - выбирайте.
Для реализации данной игровой механики придётся задействовать "Холсты" и использовать один единственный объект: тот, на котором должен выводиться данный текст.
Общий алгоритм прост: на вход мы получаем массив из строк, его преобразуем в одну большую строку.
Высчитав общую высоту этой строки, с учётом возможных переносов, создаём холст, шириной со спрайт исходного объекта и высотой нашей строки. Затем наносим на него весь указанный текст.
Ниже представлен код события "Create".
Таким образом получив один большой холст, необходимо сделать отрисовку лишь той части этого холста, что равняется высоте спрайта, за исключением обводки.
Для этого нам нужно использовать координату Y относительно этого холста, где ноль - верх, чем больше - тем ниже смещается рисующаяся часть холста.
При указании высоты холста я вычитаю четыре пикселя из высоты спрайта. Эти четыре пикселя складываются из двух пикселей обводки сверху и снизу.
Соответственно, если ваш спрайт имеет обводку более тонкую или более широкую - складываете количество пикселей обводки.
Тоже самое касается и отрисовки холста - прибавление двух пикселей нужно, чтобы отрисовка происходила внутри обводки, а не по ней.
Ниже представлен код события Draw GUI. Событие Draw должно быть пустым.
Остаётся сделать только непосредственно прокрутку текста.
Прокрутка текста реализована изменением переменной yy, значение которой должно держаться в промежутке от 0 до (высота текста - высота спрайта), чтобы игрок не мог прокручивать бесконечно вверх или вниз, максимум - мог увидеть самую нижнюю строку текста полностью. Происходит это в событии "Step" соответственно.
И небольшая иллюстрация того, как это всё дело просчитывается.
Этот код можно доработать при необходимости под ваши нужды, в том числе добавить различных удобств, вроде скроллбара.
Ссылка на скачивание проекта:
https://drive.google.com/file/d/1aJUFs81zFuVEpBIynM504KiBAtn...
ссылка на группу вк - https://vk.com/public214680278
ссылка на чат вк - https://vk.me/join/AJQ1d/vDMCIv4snnG4qB4rmB
Концепт персонажей пока без анимации . все предложении и идеи рад буду их услышать .
новая системы камеры на рельсах . позволит лучше имитировать камеру Nes (денди) . синий квадрат игрок , красный камера . белые рамки что видит камера .
Система "динамическое освещение" для канализаций! Хотелось бы услышать ваше мнение насчёт него .
Прототип Бушрут леса . надеюсь вам понравится) лес не очень получается рисовать)
Всем доброго времени суток!
Давно читаю Пикабу и вот, когда нашелся настоящий повод, решил оформить свой первый пост :)
С 2020 года я занимаюсь разработкой игры под названием "Ensora" - это 2D-шутер с видом сбоку про путешествия на далёкой пустынной планете в поисках еды и ресурсов. Вдохновленный такими проектами как Fallout, The Outer Worlds и This War of Mine, я приступил к делу.
Для работы выбрал как мне показалось самый удобный игровой движок для 2D - GameMaker Studio 2 (GMS 2). В 3D разработку сразу лезть не стал, так как большого опыта за спиной у меня тогда не было. Решил, что лучше брать посильные задачи, чем в погоне за ультра графикой и реализмом бросить дело на полпути.
Спустя два года бессонных ночей, когда всякую художественную книгу мне полностью заменил мануал GMS 2, а вместо развлекательных ресурсов я переселился на его официальный форум, мне есть чем поделиться с людьми. Хотя я не удивлюсь, если в сюда зайдут профессиональные разработчики игр из игровых студий и станут нервно хохотать над данным постом.
Итак, несколько пунктов о том, как я решал поставленные перед собой задачи.
1) Прицельная стрельба.
Как и любой другой геймер, я обожаю, когда в игре ты можешь выписать врагу хэдшот. Однако в обычной функции обнаружения столкновений движок не сообщает, какую часть ты задел.
Для реализации этой идеи пришлось создать "невидимые части тела" - объекты, такие же по размеру, как и часть тела. Например, невидимый для игрока круг летает там же, где находится голова врага. И именно столкновение пули с этим кругом фиксирует попадание в голову.
Кстати, игрока это тоже касается. Попадание тяжелого снаряда охранной пушки базы воспринимается очень больно.
Для понимания того, в какую часть тела ты попадаешь при выстреле во врага, также созданы разные "реакции на урон" - цель согнется пополам или откинет голову назад. Вряд ли Вы запутаетесь, куда именно попали.
2) Мягкая езда на байке.
Здесь я воспользовался встроенной в движок системой физики. Байк создается как три физических тела: корпус и два колеса. Они связываются пружинами, которые в зависимости от моих настроек отражают мягкость подвески. Можно гонять по скалам и не отбить задницу главного героя.
Как оказалось, нельзя просто нарисовать байк и два колеса, начать их крутить и получить хорошую анимацию. Нет. Сначала рисуем корпус, затем тормозной диск, колесо, суппорты, водителя. Детали должны быть независимы друг от друга и только так получается приятное глазу движение.
3) Инвентарь.
О, как много времени я провел в работе над этой адской вещью! Существует, пожалуй, бесчисленное множество вариантов того, как можно создать систему инвентаря и хранения игровых предметов.
Я же не придумал ничего лучше, чем создать ДВЕ сетки 5х4 клеток (как в крестиках-ноликах). В первой сетке я храню название предмета, который там лежит. Во второй сетке - количество этого предмета. И при любом перетягивании лута у меня происходит пересчет двух этих сеток. У ящиков, соответственно, по две такие же сетки 4х4. В игре, разумеется, всё видно так, словно в клетке лежит один объект с таким-то количеством.
Не самое элегантное решение, но оно работает. Что ж...
Для торговли, крафта, улучшений и прочего в игре создано более 50 предметов лута.
4) Загрузка уровней.
Здесь пришлось много импровизировать, поскольку игру я хотел сделать в разрешении FullHD, с большим количеством графики и анимации. Движок GMS 2 лучше подходит для создания пиксель-арт игр или небольших проектов высокого разрешения (хотя при большом желании в нем можно создавать даже 3D игры).
Сам по себе движок шустрый и поддерживает текстуры с разрешением вплоть до 8k, но когда в игровой комнате перемешивается большое количество графики на разных "слоях", начинаются проблемы с производительностью. У меня это горы, холмы, облака, корабли, здания, длинные анимации персонажа - всё вместе огромное количество спрайтов.
Здесь на помощь пришел существующий в GMS 2 инструмент разбивки текстур на группы. Я написал свой скрипт загрузки, а каждой игровой комнаты создал список нужных текстур. При загрузке уровня скрипт сравнивает 2 списка:
- список уже загруженных текстур в память;
- список текстур, которые потребуются в локации, куда пришел игрок.
Проще говоря, проверяется: что сейчас нужно в комнате? Лишнее выгружаем из памяти, нужное догружаем. Мы вернулись на корабль? Догружаем группу "ship". Мы покинули пустыню и она больше не отображается? Убираем из памяти группу "desert".
Да, это звучит так просто и логично, но сам по себе движок этого не сделает - он грузит всё, что добавлено в комнату налету и сохраняет в памяти до момента выхода из игры. Для меня этот скрипт был настоящей победой в борьбе за высокое разрешение. Всё стало плавно .
На этом пока я остановлюсь. В проекте еще множество других реализованных механик, но в первую очередь хотелось рассказать об этих четырех пунктах. Если Вам будет интересно я расскажу больше - об электронных системах, взломе, ракетах, космическом корабле и другом.
Проект в свет я всё еще не выпустил, однако планирую сделать это совсем скоро - в январе 2023 года.
Страница игры в Steam:
https://store.steampowered.com/app/2112210/Ensora/
Если Вам интересно попробовать эту игру - добавляйте её свой список желаемого!
Спасибо за внимание.
Доброго времени суток.
Хочу спросить у сообщества, разборы каких игровых механик или игр в целом они хотели бы видеть. Если есть идея - прошу в комментарии, буду рад.
На данный момент лежат материалы по RTS на базе Дюны и потихоньку разрабатывается RPG, будут посты с объяснением некоторых механик из них.
Пост без рейтинга.