Vladimir написал:
После переустановки винды с Vista на 7 версию ваша ЯРИЛ успешно инсталлируется. Хотелось бы иметь к платформе инструкцию для разработки игр.
Начата работа над учебником и справочником.
Неактивен
Замеченные особенности:
1) Кто-то писал о необходимости ставить "кучу мусора" или "всё эту "всю эту джава-помойку" или даже о какой-то ошибке. У меня всё запустилось нормально, НО вот хочу отметить известные мне замечания.
2) Что за ужас с представлением себя(то есть, гг)? В большинстве парсерок, что я видел, даже на Адрифте, возможность осмотреть себя- вполне естественная команда, как минимум, работающая на атмосферу, а порой и дающая важные намёки. Как игрок, я ожидаю, что и остальные известные игре команды будут адекватно восприняты по отношению к себе. Вот с этим надо что-то делать. Не надо так мучать авторов.
3) И, да- про известные игре команды. Могу ошибаться, но, как я понял, известные платформе команды автору "не вырубить топором". А по мере добавления команд, новые команды будут использоваться и в старых играх. Так, комсомолец в игре "комсомолец" запросто и без ошибок произносит молитву "Отче Наш". То есть, в перспективе, автор будет иметь огромный список команд, большинство из которых ему нафик не нужны, НО с каждой из которых надо что-то делать, дабы избежать проблем // напр в RTADS-игре "Волк, коза и капуста", когда я запускал её в последний раз, можно было отдать капусту козе , что заводило всю игру в тупик, потому что коза ни в какую не отдавала капусту обратно; так же был момент в какой-то игре, где нельзя было шуметь, но можно было без проблем кричать и орать, потому что автор ничего не сделал с этими командами. // === я считаю, что у авторов должна быть возможность просматривать список известных игре команд И управлять этим списком: исключать или возвращать команды в список. А так же модифицировать реакцию на них. Помимо прочего, это сделает помощь, выводимую командой "помощь", более адекватной.
4) Мне не известно, вина ли авторов Ганметалла или авторов платформы в том, что при попытке говорить с некоторыми осматриваемыми персонажами, выдаётся сообщение "его здесь нет". Интересно было бы увидеть разъяснения.
5) Некоторые платформы поддерживают команду "выходы", которая позволяет игроку включать/выключать автоматическое отображение списка выходов после описания локаций. Думаю, и на ЯРИЛе такая команда не будет лишней.
6) Вывод списка всех объектов, с которыми можно взаимодействовать, после описания локаций- довольно спорная особенность платформы. Для хорошей парсерки это означает повторение [почти] всех существительных после текста описания. И, да- вроде бы кто-то уговорил Sonic-a сделать возможность скрывать некоторые объекты, чтобы они не показывались в этом списке. Для меня всё это выглядит очень и очень странно... хотя, с другой стороны: если ЯРИЛ получится так прост, как это задумывается, то неизбежно большая часть игр на нём будет выполнена в стиле "недопарсерки", в которых списки объектов будут отнюдь не лишними. Возможно, хорошим выходом будет сделать команду для включения/отключения отображения списка объектов игроком.
7) Дальнейшие замечания смогу сделать после того, как запущу редактор, для чего сначала сяду вспоминать старый путь к ЯРИЛу, затем помещу его туда и деинсталлирую, затем инсталлирую туда, где он сейчас. upd: да, я не люблю, когда каждая мелкая прога инсталлируется, а не запускается просто так.
Отредактировано qwerty (27.01.2017 18:33)
Неактивен
qwerty написал:
Замеченные особенности:
4) Мне не известно, вина ли авторов Ганметалла или авторов платформы в том, что при попытке говорить с некоторыми осматриваемыми персонажами, выдаётся сообщение "его здесь нет". Интересно было бы увидеть разъяснения.
Не могли бы вы описать, в каком случае это происходит? Я оперативно перепроверю.
Можно просто скопировать клавишами CTRL+A и CTRL+C весь экран во время игры, так будет ещё лучше.
Неактивен
Сейчас идет работа над интеграцией rinform в специальный проигрыватель для незрячих. Есть ли возможность сделать какой-то модуль (в виде dll, к примеру) с API для подключения к такому проигрывателю? Платформа - только Windows, желательно без привязки к JAVA-машине?
Отредактировано Антон Ласточкин (30.01.2017 19:12)
Неактивен
qwerty написал:
1) Кто-то писал о необходимости ставить "кучу мусора" или "всё эту "всю эту джава-помойку" или даже о какой-то ошибке. У меня всё запустилось нормально, НО вот хочу отметить известные мне замечания.
Не запускается у тех, у кого не стоит Джава. Планирую переделать - или добавить в инсталлер установку Джавы, или поставлять ЯРИЛ вместе с Джавой.
qwerty написал:
2) Что за ужас с представлением себя(то есть, гг)? В большинстве парсерок, что я видел, даже на Адрифте, возможность осмотреть себя- вполне естественная команда, как минимум, работающая на атмосферу, а порой и дающая важные намёки. Как игрок, я ожидаю, что и остальные известные игре команды будут адекватно восприняты по отношению к себе. Вот с этим надо что-то делать. Не надо так мучать авторов.
Да, ценное замечание. Есть идеи, какая механика должна быть у "себя"? Предполагаю, что в игре должен присутствовать игрок как сущность, соответственно, ему можно будет задать словарь, к нему можно будет обратиться (т.к. он будет в области досягаемости), да и инвентарь логично перенести в него.
qwerty написал:
3) И, да- про известные игре команды. Могу ошибаться, но, как я понял, известные платформе команды автору "не вырубить топором". А по мере добавления команд, новые команды будут использоваться и в старых играх. Так, комсомолец в игре "комсомолец" запросто и без ошибок произносит молитву "Отче Наш". То есть, в перспективе, автор будет иметь огромный список команд, большинство из которых ему нафик не нужны, НО с каждой из которых надо что-то делать, дабы избежать проблем // напр в RTADS-игре "Волк, коза и капуста", когда я запускал её в последний раз, можно было отдать капусту козе , что заводило всю игру в тупик, потому что коза ни в какую не отдавала капусту обратно; так же был момент в какой-то игре, где нельзя было шуметь, но можно было без проблем кричать и орать, потому что автор ничего не сделал с этими командами. // === я считаю, что у авторов должна быть возможность просматривать список известных игре команд И управлять этим списком: исключать или возвращать команды в список. А так же модифицировать реакцию на них. Помимо прочего, это сделает помощь, выводимую командой "помощь", более адекватной.
У платформы практически нет своих команд. По крайней мере, игровых точно нет, только несколько системных. Остальные расположены в библиотеке "Глаголы", которую можно не подключать, а сделать свои команды. В случае подключения библиотеки, если автор напишет свою команду, то она сработает первой. Про просмотр импортированных из библиотек команд - реализация была, но не помню точно, виден ли этот интерфейс сейчас. Про отключение импортированных команд хорошая идея, запишу фичу. Про перекрытие реакции - есть механизм перекрытия реакции команды на отдельном предмете / в отдельной локации, про общую реакцию надо подумать.
qwerty написал:
4) Мне не известно, вина ли авторов Ганметалла или авторов платформы в том, что при попытке говорить с некоторыми осматриваемыми персонажами, выдаётся сообщение "его здесь нет". Интересно было бы увидеть разъяснения.
Зависит от реализации игры - предметом ли сделан персонаж, доступен ли он в этот момент - и это если работает стандартный механизм шаблона глагол + предмет
. Если же прописан литеральный шаблон (константная фраза), то тут зависит от прописанной реакции в игре. Вариантов много.
qwerty написал:
5) Некоторые платформы поддерживают команду "выходы", которая позволяет игроку включать/выключать автоматическое отображение списка выходов после описания локаций. Думаю, и на ЯРИЛе такая команда не будет лишней.
Да, дельное замечание, спасибо.
qwerty написал:
6) Вывод списка всех объектов, с которыми можно взаимодействовать, после описания локаций- довольно спорная особенность платформы. Для хорошей парсерки это означает повторение [почти] всех существительных после текста описания. И, да- вроде бы кто-то уговорил Sonic-a сделать возможность скрывать некоторые объекты, чтобы они не показывались в этом списке. Для меня всё это выглядит очень и очень странно... хотя, с другой стороны: если ЯРИЛ получится так прост, как это задумывается, то неизбежно большая часть игр на нём будет выполнена в стиле "недопарсерки", в которых списки объектов будут отнюдь не лишними. Возможно, хорошим выходом будет сделать команду для включения/отключения отображения списка объектов игроком.
Это же классика - вывод простых переносимых предметов после описания. Например, в TADS, в Inform. В ЯРИЛ сделано так: все добавляемые в локацию предметы перечисляются в этом выводе после описания локации. Если же предмет - декорация (упомянут в описании локации) или невидим, то на него можно повесить специальный признак, тогда он не будет перечисляться. Я ещё думаю над декорациями как отдельной сущностью, но пока этот вопрос ещё не проработан.
qwerty написал:
7) Дальнейшие замечания смогу сделать после того, как запущу редактор, для чего сначала сяду вспоминать старый путь к ЯРИЛу, затем помещу его туда и деинсталлирую, затем инсталлирую туда, где он сейчас. upd: да, я не люблю, когда каждая мелкая прога инсталлируется, а не запускается просто так.
Зачем помещать по старому пути? Там должен был остаться деинсталлятор.
В пользу инсталляции: разные ярлыки на запуск Плеера, Редактора, Тестера, в будущем - ассоциация файлов. Но я думаю о портабельной версии.
UPD. Добавил ссылки на заведённые задачи.
Неактивен
Антон Ласточкин написал:
Сейчас идет работа над интеграцией rinform в специальный проигрыватель для незрячих. Есть ли возможность сделать какой-то модуль (в виде dll, к примеру) с API для подключения к такому проигрывателю? Платформа - только Windows, желательно без привязки к JAVA-машине?
Сложный вопрос. Есть всякие инструменты по переводу джава-кода в exe (Excelsior JET), в .NET (IKVM.NET), но это надо тщательно тестировать и смотреть, выставляют ли такие сборки API.
Вообще, у ЯРИЛ есть консольный проигрыватель, и он работает как обычная консоль в Windows. Думаю, с неё программы могут читать?
Неактивен
Mikhail Rogozhin написал:
qwerty написал:
Замеченные особенности:
4) Мне не известно, вина ли авторов Ганметалла или авторов платформы в том, что при попытке говорить с некоторыми осматриваемыми персонажами, выдаётся сообщение "его здесь нет". Интересно было бы увидеть разъяснения.Не могли бы вы описать, в каком случае это происходит? Я оперативно перепроверю.
Можно просто скопировать клавишами CTRL+A и CTRL+C весь экран во время игры, так будет ещё лучше.
Ну, например, запустив игру, введите такие команды:
спойлер…
- всё. Теперь вы находитесь в ситуации, где Гай видим, его можно осмотреть, но поговорить с ним нельзя. Вообще же подобных ошибок в игре- пруд пруди.
1) обойдите все доступные комнаты и найдите всех собеседников.
2) с помощью генератора случайных чисел выберите одного из них и поговорите.
3) goto 1
- так можно найти многое, НО последовательное исследование всё же лучше И ещё, может быть, факт посещения комнаты может повлиять на последствия. Для начала я порекомендовал такой рандомный метод, поскольку предположил, что местонахождение некоторых персонажей иногда оказывается не тем, что было задумано. Но настоящее тщательный поиск ошибок предполагает последовательное исследование.
Тут одно из двух: либо вы делаете что-то не так, либо же ЯРИЛ как-то не так обрабатывает ваши верные команды.
И, собственно, тщательное исследование и НЕ НУЖНО. А что нужно, так это выяснить у Sonica, как правильно делается то, что вы хотите сделать. И если сделаете всё верно, то глюки будут уже его проблемой ))
Неактивен
Sonic написал:
Антон Ласточкин написал:
Сейчас идет работа над интеграцией rinform в специальный проигрыватель для незрячих. Есть ли возможность сделать какой-то модуль (в виде dll, к примеру) с API для подключения к такому проигрывателю? Платформа - только Windows, желательно без привязки к JAVA-машине?
Сложный вопрос. Есть всякие инструменты по переводу джава-кода в exe (Excelsior JET), в .NET (IKVM.NET), но это надо тщательно тестировать и смотреть, выставляют ли такие сборки API.
Вообще, у ЯРИЛ есть консольный проигрыватель, и он работает как обычная консоль в Windows. Думаю, с неё программы могут читать?
Спасибо за наводки. Дело в том, что консоль скринридеры могут читать, но вот не очень удобно. В проигрывателе tadswrapper уже сделана отправка текста прямо на API большинства скринридеров, сохранение и просмотр истории команд, стандартное меню для начала новой игры, сохранения, загрузки и т.п. Прикрутить движок ЯРИЛа будет не сложно, мне кажется.
Отредактировано Антон Ласточкин (30.01.2017 22:56)
Неактивен
Антон Ласточкин написал:
Спасибо за наводки. Дело в том, что консоль скринридеры могут читать, но вот не очень удобно. В проигрывателе tadswrapper уже сделана отправка текста прямо на API большинства скринридеров, сохранение и просмотр истории команд, стандартное меню для начала новой игры, сохранения, загрузки и т.п. Прикрутить движок ЯРИЛа будет не сложно, мне кажется.
Вообще, движок ЯРИЛа написан так, что к нему можно писать любой плеер. Но - на Джаве. Можно попробовать написать плеер с нативным API. Покопать надо.
Неактивен
Sonic написал:
Можно попробовать написать плеер с нативным API. Покопать надо.
Нашёл, как можно вызывать Java-методы из C++. tadswrapper на C++? Сможет так дёргать?
Неактивен
Sonic написал:
Sonic написал:
Можно попробовать написать плеер с нативным API. Покопать надо.
Нашёл, как можно вызывать Java-методы из C++. tadswrapper на C++? Сможет так дёргать?
Да, на С++. Дёргать сможет, только надо бы подсказать что и где В принципе, можно с собой небольшую JAVA машину таскать, главное чтобы не надо было инсталляции - просто распаковал архив и движок запустился.
Неактивен
Антон Ласточкин написал:
Да, на С++. Дёргать сможет, только надо бы подсказать что и где
В принципе, можно с собой небольшую JAVA машину таскать, главное чтобы не надо было инсталляции - просто распаковал архив и движок запустился.
Думаю, это возможно. Осталось только позаниматься этим. )
Неактивен
qwerty написал:
Mikhail Rogozhin написал:
qwerty написал:
Замеченные особенности:
4) Мне не известно, вина ли авторов Ганметалла или авторов платформы в том, что при попытке говорить с некоторыми осматриваемыми персонажами, выдаётся сообщение "его здесь нет". Интересно было бы увидеть разъяснения.Не могли бы вы описать, в каком случае это происходит? Я оперативно перепроверю.
Можно просто скопировать клавишами CTRL+A и CTRL+C весь экран во время игры, так будет ещё лучше.Ну, например, запустив игру, введите такие команды:
спойлер…
- всё. Теперь вы находитесь в ситуации, где Гай видим, его можно осмотреть, но поговорить с ним нельзя. Вообще же подобных ошибок в игре- пруд пруди.
1) обойдите все доступные комнаты и найдите всех собеседников.
2) с помощью генератора случайных чисел выберите одного из них и поговорите.
3) goto 1
- так можно найти многое, НО последовательное исследование всё же лучше И ещё, может быть, факт посещения комнаты может повлиять на последствия. Для начала я порекомендовал такой рандомный метод, поскольку предположил, что местонахождение некоторых персонажей иногда оказывается не тем, что было задумано. Но настоящее тщательный поиск ошибок предполагает последовательное исследование.
Тут одно из двух: либо вы делаете что-то не так, либо же ЯРИЛ как-то не так обрабатывает ваши верные команды.
И, собственно, тщательное исследование и НЕ НУЖНО. А что нужно, так это выяснить у Sonica, как правильно делается то, что вы хотите сделать. И если сделаете всё верно, то глюки будут уже его проблемой ))
Нашёл баг. Это наш косяк, выводилось неверное описание. Исправил и перезалил.
Отредактировано Mikhail Rogozhin (31.01.2017 21:28)
Неактивен