Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
13.09.2010 16:12

Olegus t.Gl.
Участник (+1039, -248)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2851
Вебсайт

Интерфейс контекстно-менюшной игры на ссылках

Разрабатывая игру, где основной способ взаимодействия с игровым миром — щёлканье по ссылкам в описании, столкнулся со следующей интерфейсной проблемой. Обычный порядок ввода/вывода следующий:

1. Выводится описание ситуации.
2. Принимается команда игрока.
3. Выводится описание действия по команде игрока.
4. Выводится реакция игры на команду.
5. ???

Вот тут и кроется нюанс — выводимое в пункте 1 описание к пункту 5 может устареть — некоторые ссылки в нём будут уже не актуальны. Поэтому по-хорошему, нужно либо обновить описание, либо заблокировать ссылки (это из первого, что приходит на ум).

Навскидку варианта два:

А) В пункте 5 блокируем все ссылки в описании (чтобы ничего не нажималось), даём игроку ознакомиться с описанием результата своих действий, после чего очищаем экран и переходим к пункту 1. Отмеченный многими (по демке) минус — лишнее действие игрока после каждой обработки его поступков (нажатие ссылки "продолжить" или клавиши "пробел"). Плюсы — естественная последовательность информации: сначала исходные данные, затем действие, а под конец — результат.

Вы стоите посреди арены перед грозным и голодным великаном!
Вы напали на великана.
Великан откусил вам голову.
[продолжить]

Б) Переставляем порядок ввода/вывода:
     1. Выводим описание действия по последней команде игрока.
     2. Выводим реакцию игры на последнюю команду игрока.
     3. Выводим описание ситуации.
     4. Принимаем команду игрока.
     5. Переходим к пункту 1.

Вы напали на великана.
Великан откусил вам голову.
Вы стоите посреди арены с откушенной головой. Но есть ещё силы на последний рывок!

Минус — разве что нарушение последовательности подачи информации. Плюс — исключение лишнего действия и незначительное снижение риска туннельного синдрома запястья.

Кто-нибудь сталкивался (реализовывал) с ещё какими-нибудь вариантами? Вариант с непрерывном выводом информации с надеждой на скроллинг, наверное, предлагать не стоит.

Неактивен

0    0    #2
10.08.2012 21:27

Zeantar
Участник (+23, -51)
Зарегистрирован: 30.03.2012
Сообщений: 119

Мир, как мы его знали, подходит к концу... (с) БГ

Re: Интерфейс контекстно-менюшной игры на ссылках

Да вроде игрок не полный даун, чтобы не понять, что по ссылке с названием "взобраться" ему предстоит именно взобраться. ) Ты, я думаю, привел слишком упрощенный и гипотетический пример. Если можно, сделай живой пример - не сложный, но правдоподобный.
С уважением.

из обсуждения: https://forum.ifiction.ru/viewtopic.php … 534#p24534

Я жду.

Неактивен

0    0    #3
10.08.2012 22:09

Zeantar
Участник (+23, -51)
Зарегистрирован: 30.03.2012
Сообщений: 119

Мир, как мы его знали, подходит к концу... (с) БГ

Re: Интерфейс контекстно-менюшной игры на ссылках

Ну, я тоже думал, нужны ли дополнительные действия простым объектам.
Пока мой вывод таков - нет, не нужны.  У сложных - меню, у простых - прямое действие.
Как-то так.

Неактивен

0    0    #4
10.08.2012 22:33

Zeantar
Участник (+23, -51)
Зарегистрирован: 30.03.2012
Сообщений: 119

Мир, как мы его знали, подходит к концу... (с) БГ

Re: Интерфейс контекстно-менюшной игры на ссылках

А как игрок поймёт, какие объекты являются сложными, а какие — простыми?

Зависит от автора, полагаю.

Я это вижу так: если объект внутри локации в виде ссылки <a>'Объект'</a>, если он сложный, надо прилепить к нему меню. Если простой - просто по нажатию, отраженному в OBJSEL, выполнить что-то.

Неактивен

0    0    #5
10.08.2012 23:09

Zeantar
Участник (+23, -51)
Зарегистрирован: 30.03.2012
Сообщений: 119

Мир, как мы его знали, подходит к концу... (с) БГ

Re: Интерфейс контекстно-менюшной игры на ссылках

К тому же не нужно забывать о том, что состав меню может по ходу игры меняться. И если в какой-то момент он состоял из нескольких пунктов, то в другой раз может остаться только один. И что тогда?

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

Что касается объектов в инвентаре - то решено и реализовано (у меня).

Теперь речь об объектах внутри локации (если они действительно объекты).
Насчет простых - тут довольно легко. Присваиваем им "usable" = false, и прописываем в функции onObjSel взаимодействие по клику.
А если нужен сложный объект, например "Рычаг", который можно "потянуть", "крутануть" или вообще "подействовать предметом из инвенторя", то фиг знает.

А если еще этот предмет можно перемещать между локами, как "стул", например, то... целое море загадок.

Неактивен

Powered by PunBB
© copyright 2001–2021 iFiction.Ru