Войти на сайт

Авторизация, ждите ...
×
Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.

ТЕМА: Механика перемещения персонажа для настольных игр

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116540

  • Alexandr_7
  • Alexandr_7 аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1196
  • Спасибо получено: 543
  • Проект месяца 2 местоПроект года 3 местоПроект месяца 3 местоПроект месяца 1 местоВетеранУчитель
Здравствуйте. Давно мучает 1 вопрос. Как можно сделать перемещение персонажа для настольных игр.
Например типа монополии где игроки ходят по кругу (это как простенький пример)
Пробовал сделать через плагин но понял что выглядит это все дерьмово ибо движение чтобы оно нормально выглядело нужно делать в 1 маршруте но стандартными способами это невозможно учитывая что в маршруте движения нельзя делать условие. Точнее прийдется делать кучу условий до маршрута. Кубиков 2 а значит максимальное число ходов можно сделать 12 и если представить сколько это проверок то просто в ужас приходишь. Короче бенз плагина не обойтись. И поэтому я прошу вашей помощи. Помощь не только в плагине но и в том как к слову расчитать алгоритм маршрута.
Надеюсь поможите.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116541

  • VeselyRodger
  • VeselyRodger аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 932
  • Спасибо получено: 894
  • ОраторПроект месяца 1 местоПроект месяца 3 местоТестер
а что конкретно надо? Лемми например делал игру типо манополии "Белая ворона" называется, сомневаюсь что там есть плагины
Мои проекты:
rpgmakerunion.ru/user/veselyrodger
Мой канал на Ютубе:
youtube.com/channel/UCyttExMfXo8ke_PhQjNPyuw
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116543

  • Alexandr_7
  • Alexandr_7 аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1196
  • Спасибо получено: 543
  • Проект месяца 2 местоПроект года 3 местоПроект месяца 3 местоПроект месяца 1 местоВетеранУчитель
VeselyRodger пишет:
а что конкретно надо? Лемми например делал игру типо манополии "Белая ворона" называется, сомневаюсь что там есть плагины
Да я не про конкретно эту игру. Я про механику движения.Да. Глупо быдло брать за основу монополию. Короче забудьте. Не монополия. Короче вот пример карты.

hd2cb93b.png


Так вот
S - стартовая позиция.
Ф - Финишная позиция.

Ходят по кругу но если попадутся на красное перекрестие то ход определяется в сторону финиша. Если выпадет количество ходов больше чем до финиша то дойдя до финиша игрок поворачивает обратно.

Ну ладно. Сперва определится с 1 схемой.Как уже сказал маршрут долджен быть 1 иначе будут мелкие паузы и будет казаться что игрок хромает что выглядет убого. А вот это уже и есть проблема так как нельзя прям в маршруте расчитывать дорогу. Плагины в которые указываешь кужда должен направиться игрок или чар тоже не кактит ибо не умееют эти плагины правильно определять повороты.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Последнее редактирование: 4 года 6 мес. назад от Alexandr_7.
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116544

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1704
  • Спасибо получено: 2731
  • Организатор конкурсов1 место в ГотвКомпозиторУчительОратор3 место ГотвПобедитель конкурса2 место
Alexandr_7 пишет:
Ну ладно. Сперва определится с 1 схемой.Как уже сказал маршрут долджен быть 1 иначе будут мелкие паузы и будет казаться что игрок хромает что выглядет убого. А вот это уже и есть проблема так как нельзя прям в маршруте расчитывать дорогу. Плагины в которые указываешь кужда должен направиться игрок или чар тоже не кактит ибо не умееют эти плагины правильно определять повороты.

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

1) перс может ходить только по желтым дорожкам? тут нет проблем? ставим проходимыми только их, если вдруг есть
2) проблема в том чтобы игрок ходил только в нужных направлениях? установи плагин на отключения клавиш. расставь регионы, и условия - если регион 4 то отключаешь все клавиши направления кроме влево. если 6 то все кроме право. и т.д. номер региона лучше всего связывая с клавиатурой "намЛок" чтоб не запутаться
3) установи плагин на отключение мышки, чтоб играли только стрелками. у пещерного в "светлом рыцаре" вроде как такой был
4) для того чтоб герой ходил только определенное кол-во ходов ставишь плагин на вставку общих событий после каждого хода. вставляешь в переменную "сумма кубика" сумму кубика. затем создаешь переменную "ходы" на кол-во ходов. после начала движения когда идет ход персонажа обнуляешь переменную "ходы", а затем в общем событии для плагина ставишь прибавление переменной "ход". и условие - если переменная "ход"="сумма кубика" то блокируешь все стрелки, обнуляешь переменную и передаешь ход другому персу
Последнее редактирование: 4 года 6 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: LiRo

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116545

  • Alexandr_7
  • Alexandr_7 аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1196
  • Спасибо получено: 543
  • Проект месяца 2 местоПроект года 3 местоПроект месяца 3 местоПроект месяца 1 местоВетеранУчитель
yuryol пишет:
Alexandr_7 пишет:
Ну ладно. Сперва определится с 1 схемой.Как уже сказал маршрут долджен быть 1 иначе будут мелкие паузы и будет казаться что игрок хромает что выглядет убого. А вот это уже и есть проблема так как нельзя прям в маршруте расчитывать дорогу. Плагины в которые указываешь кужда должен направиться игрок или чар тоже не кактит ибо не умееют эти плагины правильно определять повороты.

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

1) перс может ходить только по желтым дорожкам? тут нет проблем? ставим проходимыми только их, если вдруг есть
2) проблема в том чтобы игрок ходил только в нужных направлениях? установи плагин на отключения клавиш. расставь регионы, и условия - если регион 4 то отключаешь все клавиши направления кроме влево. если 6 то все кроме право. и т.д. номер региона лучше всего связывая с клавиатурой "намЛок" чтоб не запутаться
3) установи плагин на отключение мышки, чтоб играли только стрелками. у пещерного в "светлом рыцаре" вроде как такой был
4) для того чтоб герой ходил только определенное кол-во ходов ставишь плагин на вставку общих событий после каждого хода. вставляешь в переменную "сумма кубика" сумму кубика. затем создаешь переменную "ходы" на кол-во ходов. после начала движения когда идет ход персонажа обнуляешь переменную "ходы", а затем в общем событии для плагина ставишь прибавление переменной "ход". и условие - если переменная "ход"="сумма кубика" то блокируешь все стрелки, обнуляешь переменную и передаешь ход другому персу
Игрок или чар может ходить естественно только по желтой дороге. И я не про ручное хождение. Это настольна игра где будь то игрок или чар должен ходить автоматически. Но как это сделать я не знаю ведь нельзя прям в маршруте делать проклад маршрута. Маршрут должен быть определен заранеее но стандартными средствами это несколько сотен условий на самые разные вариации сделать ход.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116546

  • VeselyRodger
  • VeselyRodger аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 932
  • Спасибо получено: 894
  • ОраторПроект месяца 1 местоПроект месяца 3 местоТестер
Пётр кстати должен быть в курсе как такое делать, он уже делал игру с подобной механикой
Мои проекты:
rpgmakerunion.ru/user/veselyrodger
Мой канал на Ютубе:
youtube.com/channel/UCyttExMfXo8ke_PhQjNPyuw
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116548

  • Alx_Yago
  • Alx_Yago аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1151
  • Спасибо получено: 2172
  • 3 местоПроект года 3 местоПроект года 1 местоОраторРазработчикПроект месяца 1 место3 место в Обучающем конкурсеУчительПаладин1 место в Обучающем конкурсе
По-моему, в самом общем виде можно сделать так:

2020-05-01224349.png


Повороты и всякие развилки со стрелками делать, просто проверяя координаты персонажа.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, LiRo

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116549

  • Leprikon01
  • Leprikon01 аватар
  • Вне сайта
  • Мастер
  • Сообщений: 228
  • Спасибо получено: 145
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116550

  • Dmy
  • Dmy аватар
  • Вне сайта
  • Заблокирован
  • Сообщений: 1142
  • Спасибо получено: 2478
  • Проект месяца 3 местоПоддержка Фонда2 место Программист RubyРазработчикЗа 2 место на конкурсе маппингаУчительПаладинВетеранДаритель Стимкея
[Примечание: я писал этот пост долго, поэтому не посмотрел на тот плагин, на который сослался Леприкон. Не знаю, как мой вариант выглядит в сравнении с ним.]

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

Я сделал плагин, который позволяет ходить по рельсам из регионов. Рельсы рисуются примерно так:
regions-for-dice.png


И у плагина есть вот такая команда событий, которая позволяет сделать шаг по рельсе. (Одного шага достаточно: больше можно сделать в цикле, как у Alx_Yago). Команда плагина вызывается так:
step-in-rail -1    2 1
Первое число в аргументах — это ID события, которое будет делать шаг (-1 — это ID игрока). Остальные числа — это номера регионов, котрыми рисуются рельсы.

Команда делает такое:
  • Сначала проверяет первый названный регион (в этом примере это 2): Впереди этот регион? Тогда шаг вперёд. Слева от героя этот регион? Тогда повернуться налево и шаг туда. Справа от героя этот регион? Тогда повернуться направо и шаг туда.
  • Так же проверяется второй названный регион (в этом примере это регион №1). Впереди, слева или справа этот регион? Тогда шаг.
  • И так проверяются все регионы, которые переданы.
  • Если спереди, справа, слева ни один из регионов, делается шаг назад.

Вот код этого плагина:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]



Скачать проект-пример: DiceExample.zip (2.8 МБ)
Запустить проект-пример в браузере (скачается 5,12 МБ)


Всё это очень сырое, принимаются пожелания.

Моя главная претензия: если шаг вперёд невозможен, а слева и справа есть шаги, то куда пойдёт персонаж? Сейчас у меня в коде явно проверено «проверять поворот налево первым», но на некоторых картах, наоборот, нужны ходы направо.

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

Претензии к принципу принимаются.

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

_________

Добавлено в 00:13 следующего дня: я тут подумал и решил, что буду развивать этот плагин. «Рельсы» может быть удобно использовать для всяких NPC, например, чтобы настраивать маршруты хождения было проще.

Так что буду рад всяким комментариям — они войдут в готовую версию плагина.
Последнее редактирование: 4 года 6 мес. назад от Dmy.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: VeselyRodger, Alx_Yago

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116552

  • Alx_Yago
  • Alx_Yago аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1151
  • Спасибо получено: 2172
  • 3 местоПроект года 3 местоПроект года 1 местоОраторРазработчикПроект месяца 1 место3 место в Обучающем конкурсеУчительПаладин1 место в Обучающем конкурсе
Я думал о варианте с регионами, но немного в другом формате: обозначать регионом только те точки, где требуется что-то сделать, например: 1 - повернуть налево, 2 - повернуть направо, 3 - развернуться, 4 - закончить маршрут. При этом, конечно, придётся стоить маршрут аккуратнее, чтобы перс мимо этих точек не промахивался.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116560

  • Alexandr_7
  • Alexandr_7 аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1196
  • Спасибо получено: 543
  • Проект месяца 2 местоПроект года 3 местоПроект месяца 3 местоПроект месяца 1 местоВетеранУчитель
Dmy пишет:
[Примечание: я писал этот пост долго, поэтому не посмотрел на тот плагин, на который сослался Леприкон. Не знаю, как мой вариант выглядит в сравнении с ним.]

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

Я сделал плагин, который позволяет ходить по рельсам из регионов. Рельсы рисуются примерно так:
regions-for-dice.png


И у плагина есть вот такая команда событий, которая позволяет сделать шаг по рельсе. (Одного шага достаточно: больше можно сделать в цикле, как у Alx_Yago). Команда плагина вызывается так:
step-in-rail -1    2 1
Первое число в аргументах — это ID события, которое будет делать шаг (-1 — это ID игрока). Остальные числа — это номера регионов, котрыми рисуются рельсы.

Команда делает такое:
  • Сначала проверяет первый названный регион (в этом примере это 2): Впереди этот регион? Тогда шаг вперёд. Слева от героя этот регион? Тогда повернуться налево и шаг туда. Справа от героя этот регион? Тогда повернуться направо и шаг туда.
  • Так же проверяется второй названный регион (в этом примере это регион №1). Впереди, слева или справа этот регион? Тогда шаг.
  • И так проверяются все регионы, которые переданы.
  • Если спереди, справа, слева ни один из регионов, делается шаг назад.

Вот код этого плагина:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]



Скачать проект-пример: DiceExample.zip (2.8 МБ)
Запустить проект-пример в браузере (скачается 5,12 МБ)


Всё это очень сырое, принимаются пожелания.

Моя главная претензия: если шаг вперёд невозможен, а слева и справа есть шаги, то куда пойдёт персонаж? Сейчас у меня в коде явно проверено «проверять поворот налево первым», но на некоторых картах, наоборот, нужны ходы направо.

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

Претензии к принципу принимаются.

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

_________

Добавлено в 00:13 следующего дня: я тут подумал и решил, что буду развивать этот плагин. «Рельсы» может быть удобно использовать для всяких NPC, например, чтобы настраивать маршруты хождения было проще.

Так что буду рад всяким комментариям — они войдут в готовую версию плагина.

А разве ивенты не с 1 начимнаются. Мне не понятно почему -1 это игрок если ивенты нумеруются с 1
Если шаг доступен в любую из сторон то тут правильнее спросить в какую сторону двигаться.

За скрипт спасибо. Однако все в скрипте не предусмотришь. Я так понял идея такая что игрок при возможности повернет в сторону большего региона. Но проблема в том что игроок в таком случае повернет в сторону в любом из случаев. Увы но мне этот плагин не подходит. Как минимум потому что мне нужно поворачивать в сторону только если игроке встал на клетку поворота. Это не сложно сделать. В конце просто проверять если игрок или ивент находится на определенной клетке то проверять. Вообще я делал типо тогоже по аналогии но проблема в том что если делать маршрут не в плагине то почемуто сробатывает задержка движения и в итоге выглядит это дело убого. Ну и конечно система движения в моем случае очень просто. Во всяком случае на 1 карте что я скинул выше это движения в сторону куда смотрит ивент и при необходимости делать повороты. Но естественно карта не 1 и это лишь простенький вариант. Так что тут все не однозначно. Делать маршрут в плагине приведет к предусмотрению всех вариаций с поворотами. И тогда по сути все условия поворотов нужно писать в плагине что не совсем просчто. Вот что что а повороты лучше предусмотреть через возможности движка но само движение одного шага в цикле стандартными возможностями приводит к очень мелкой но заметной задержки видать связанной с ожиданием окончания маршрута. Видимо ожидания маршрута на 1 клетку или поворота идет чуть больще нежели если ожидается шаг самой системой тобишь когда ты в маршруте делаешь не 1 шаг с ожиданием а потом повторяешь а много шагов.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Администратор запретил публиковать записи гостям.

Механика перемещения персонажа для настольных игр 4 года 6 мес. назад #116579

  • Alexandr_7
  • Alexandr_7 аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1196
  • Спасибо получено: 543
  • Проект месяца 2 местоПроект года 3 местоПроект месяца 3 местоПроект месяца 1 местоВетеранУчитель
Если что то вопрос еще в силе.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Администратор запретил публиковать записи гостям.
Время создания страницы: 0.302 секунд