Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Автообновление экрана игры после изменения [MV]

Автообновление экрана игры после изменения [MV] 3 года 5 мес. назад #102276

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
Во время написания кода, мапинга, ивентостроения для отображения изменений игры постоянно приходится переходить в окно запущенного экрана игры в мейкере и нажимать F5. Описанный ниже способ позволяет обойтись без ручного обновления экрана: достаточно сохранить внесенные изменение в проекте кнопками CTR+S и вы мгновенно увидите их в браузере
Пример

Плагин для отмены показа титульного экрана в начале игры

1) Добавляем плагин для отмены показа титульного экрана в начале игры https://dk-plugins.ru/mv/menu/skip-title-screen/. Теперь нам не придется нажимать "новая игра"

Установка nodejs

2) Переходим на сайт https://nodejs.org/en/, качаем последнюю версию (Current. Latest features), устанавливаем.

Установка browsersync

3) Переходим на сайт https://browsersync.io/
4) Копируем строчку
npm install -g browser-sync
в центре сайта
5) Вызываем консоль виндоус - cmd (сочетание клавиш WIN+R, затем в появившемся окне cmd, enter)
6) Вставляем скопированный в 4 строчке код
npm install -g browser-sync
в окно консоли. Начинается установка программы browsersync

Открытие экрана игры

Простой способ:
1) Создаем файл типа "bat" в корне игры (например "run.bat", "runBrowser.bat" и т.д.)
2) Пишем внутри него
browser-sync start --server --files "data/*.json, js/*.js, js/*/*.js, *.html"
3) После двойного клика игра запустится в браузере.

Радуемся! Теперь можно не нажимать f5: в браузере после любого изменения в плагине вы увидите это изменение в игре. В редакторе РПГ мейкера точно также после CTRL+S вы увидите изменение игры

Способ посложнее:
1) Зажав клавишу Shift, жмем по папке с проектом вашей игры
2) Появляется еще одна консоль виндоус. Вставляем туда код
browser-sync start --server --files "data/*.json, js/*.js, js/*/*.js, *.html"
3) Запускается файл HTML из директории игры.
4) Радуемся! Теперь можно не нажимать f5: в браузере после любого изменения в плагине вы увидите это изменение в игре. В редакторе РПГ мейкера точно также после CTRL+S вы увидите изменение игры

Адрес странички игры

Если вы случайно закрыли вкладку с игрой или произошел сбой и страница не открылась автоматически, то всегда можете посмотреть в консоли адрес страницы - это ссылка напротив слова "local". У меня это "http://localhost:3000"


Для запуска игры в тестовом режиме:

При запуске в браузере мы не можем поправить переменные, нажав F9, пройти сквозь стены зажав CTRL и т.д.
Поэтому скачиваем и устанавливаем простенький плагин. Главное не забудьте отключить его перед "релизом" демки или игры!
ссылка для скачки плагина

Тест игры на мобилке БЕЗ компиляции приложения:

Одно из важных преимуществ программы "browsersync" - возможность посмотреть мобильную версию сайта/приложения, а в нашем случае - игры.
1) Снова обращаемся к консоли, и находим строку адреса напротив "UI External", у меня это "http://192.168.0.106:3001":



2) Подключаемся по вай-фаю с телефона, вводим путь на браузере телефона. И всё, начинаем играть! Без компиляции приложения, настроек и прочей мороки можно сразу увидеть как ваша игра будет выглядеть на экранах телефонов.
Последнее редактирование: 2 года 5 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Kouta555, Seibur, DK, KageDesu, NeKotZima

Автообновление экрана игры после изменения [MV] 3 года 5 мес. назад #102285

  • NeKotZima
  • NeKotZima аватар
  • Вне сайта
  • Оседлый
  • Сообщений: 46
  • Спасибо получено: 97
Спасибо, сам до этого не додумался. Моя игра сплошной код, много времени уходило на тесты, а сейчас пишу код на одном мониторе, а во втором смотрю изменения в Real-time :woohoo:
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, yuryol

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105466

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 938
  • Спасибо получено: 1111
  • ВетеранПроект месяца 3 местоПроект месяца 2 местоРазработчикОраторПрограммист RubyПроект месяца 1 местоУчительДаритель СтимкеяПаладин
Как только тема появилась, хотел попробовать, но потом вылетело из головы. Сейчас попробовал - действительно очень удобно, но есть несколько НО.

1. Игра в данном случае не считает, что идет тест игры.
2. Непонятно какая платформа. Функции Utils.isNwjs(), Utils.isMobileDevice(), Utils.isMobileSafari(), Utils.isAndroidChrome() возвращают false (хотя проект открылся в хроме)

И еще хотелось бы, чтобы отклик между изменениями был чуточку побыстрее, но это уже придирки :)
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol, NeKotZima

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105468

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
DK пишет:
1. Игра в данном случае не считает, что идет тест игры.

ну это логично, так как открывается файл "индекс.хтмл" и мы смотрим игру через него.
2. Непонятно какая платформа. Функции Utils.isNwjs(), Utils.isMobileDevice(), Utils.isMobileSafari(), Utils.isAndroidChrome() возвращают false (хотя проект открылся в хроме)

может сами функции косячные? например такое писали про Utils.isNwjs(). не знаю ее потом исправили или нет

тык
Администратор запретил публиковать записи гостям.

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105471

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 938
  • Спасибо получено: 1111
  • ВетеранПроект месяца 3 местоПроект месяца 2 местоРазработчикОраторПрограммист RubyПроект месяца 1 местоУчительДаритель СтимкеяПаладин
yuryol пишет:
может сами функции косячные? например такое писали про Utils.isNwjs(). не знаю ее потом исправили или нет

Не знаю на счет остальных, но Utils.isNwjs точно будет возвращать false для browser-sync

Кстати, я создал следующий bat файл:
browser-sync start --server --files "data/*.json, js/*.js, *.html"

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

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105472

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
DK пишет:
yuryol пишет:
может сами функции косячные? например такое писали про Utils.isNwjs(). не знаю ее потом исправили или нет

Не знаю на счет остальных, но Utils.isNwjs точно будет возвращать false для browser-sync

Кстати, я создал следующий bat файл:
browser-sync start --server --files "data/*.json, js/*.js, *.html"

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

Про батник кстати да, че-то даже не задумывался об этом :)

Про папку "дата" - надо бы потестить:) в json же чисто данные из БД? Поэтому не будет фиксироваться изменения файлов img, если например изменилась картинка, но не ее название. Также интересно, добавление папки "img" поможет ли.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105478

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
DK пишет:
Кстати, я создал следующий bat файл:
browser-sync start --server --files "data/*.json, js/*.js, *.html"

Добавил твой способ в первый пост :blush:
Также написал простенький "хардкодный" плагинчик, который ВСЕГДА запускает игру в тестовом режиме. Это позволит проходить сквозь стены даже в браузере, править переменные, нажав F9, и т.д. :mad:
тык
Про папку "дата" - надо бы потестить:) в json же чисто данные из БД? Поэтому не будет фиксироваться изменения файлов img, если например изменилась картинка, но не ее название. Также интересно, добавление папки "img" поможет ли.

потестил. Картинки BrowserSync вообще будто не видит, даже если создать новую :(
Последнее редактирование: 2 года 11 мес. назад от yuryol.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: DK, NeKotZima

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105479

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 938
  • Спасибо получено: 1111
  • ВетеранПроект месяца 3 местоПроект месяца 2 местоРазработчикОраторПрограммист RubyПроект месяца 1 местоУчительДаритель СтимкеяПаладин
Советую обновить плагин до примерно следующей версии:

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


1. Ты переписал инициализацию Game_Temp, что может сломать другие плагины. Лучше использовать алиас.
2. this._isPlaytest = 1; Потому что изначальная функция присваивает 1 в случае теста игры, а не булево значение. Ну мало ли, чтобы не сломать чего-нибудь в других плагинах.
Последнее редактирование: 2 года 11 мес. назад от DK.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: yuryol, NeKotZima

Автообновление экрана игры после изменения [MV] 2 года 11 мес. назад #105480

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
DK пишет:
Советую обновить плагин до примерно следующей версии:

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


1. Ты переписал инициализацию Game_Temp, что может сломать другие плагины. Лучше использовать алиас.
2. this._isPlaytest = 1; Потому что изначальная функция присваивает 1 в случае теста игры, а не булево значение. Ну мало ли, чтобы не сломать чего-нибудь в других плагинах.

Спасибо! Обновил первый пост. В авторы плагина и название добавил тебя, хотя можно было тебя одного оставить :)
Администратор запретил публиковать записи гостям.

Автообновление экрана игры после изменения [MV] 2 года 5 мес. назад #108716

  • yuryol
  • yuryol аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1566
  • Спасибо получено: 2460
  • Композитор3 место ГотвОраторУчительПобедитель конкурса2 место 1 место в ГотвОрганизатор конкурсов
Совсем забыл об еще одной особенности программы "браузер синк" - возможность посмотреть на свой игру с телефона, не перекидывая файлы игры и не компилирую приложение

Тест игры на мобилке БЕЗ компиляции приложения:

Одно из важных преимуществ программы "browsersync" - возможность посмотреть мобильную версию сайта/приложения, а в нашем случае - игры.
1) Снова обращаемся к консоли, и находим строку адреса напротив "UI External", у меня это "http://192.168.0.106:3001":



2) Подключаемся по вай-фаю с телефона, вводим путь на браузере телефона. И всё, начинаем играть! Без компиляции приложения, перекидывания файлоы игры и прочей мороки можно сразу увидеть как ваша игра будет выглядеть на экранах телефонов.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, Seibur, DK, Kujaku

Автообновление экрана игры после изменения [MV] 2 года 5 мес. назад #108822

  • Seibur
  • Seibur аватар
  • Вне сайта
  • Просветлённый
  • Сообщений: 362
  • Спасибо получено: 303
  • ВетеранРазработчик
Мощно!
Давно делал сайт с этой штукой, но даже и думать не мог что все так чудно будет работать! Спасибо, Яр - очень ценный туториал вышел!

Если кому нужен батник - вот ссылка на мой: drive.google.com/file/d/1dmCu8vdOoUvScTT...aXg/view?usp=sharing

Суть работы проста:
1.Перетягиваем файл Game.rpgproject в browsersync.bat
2.Ждем пока не откроется новая страничка с нашей игрой в браузере
3. Готово - теперь все изменения будут отображаться автоматически
4. Чтобы прекратить режим авто обновлений - просто закройте бат файл

imgur.com/SEA0zOK
Копейки на счете и вера, что именно ты, а ни кто-то другой изменит мир...
Последнее редактирование: 2 года 5 мес. назад от Seibur.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Dmy, yuryol
Время создания страницы: 0.494 секунд