Forum.iFiction.Ru

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

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

Вы не зашли.

Объявление

Вовсю играем в игры КРИЛ и делимся впечатлениями в этой теме. И ГОЛОСУЕМ!

   #1
24.11.2009 09:03

fireton
некто с бородой (+200, -50)
Откуда: Москва
Зарегистрирован: 22.08.2005
Сообщений: 1045
Вебсайт

Тон

попроси меня...

Вот еще славная ошибка:

>попросить меня
internal error: verb has no action, doAction, or ioAction


smile

Спасибо Нарратиусу, он её нашёл. Я б в жизни не догадался такое ввести.

Неактивен

   #2
24.11.2009 10:05

GrAndrey
папа RTADS и Бяка (+37, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1200
Вебсайт

меньше слов

Re: попроси меня...

Не сказать, что славная. Просто у глагола действия не прописаны, глагол вообще заглушка для подстановки.

даже такой вариант будет давать вполне адекватный ответ: "Я не знаю как попросить тебя".

Код:

askforVerb: deepverb
    sdesc = "попросить"
    verb = 'просить' 'проси' 'попросить' 'попроси' 'приказать' 'прикажи'
        doAction = 'askfor'
;

Сейчас "попросить" работает только в таком качестве: "попросить деда мазая грести на север" => "дед мазай, грести на север"

хуже другое:

>попросить меня ковшик
В этом предложении нет глагола!
>попросить у меня ковшик
К сожалению, слово "у" мне неизвестно.

В общем, поле непаханное, а развитие этого глагола повлечет и другие проблемы:

>взять провод
Тебя жестко долбануло током.
>попросить васю
(взять провод)
Вася послал тебя куда подальше.

Это будет уже продвинутое автоматическое уточнение smile

Главный вопрос - насколько нужны все эти прибамбасы? Почему в западных системах не прорабатывают парсер до такой глубины?

Неактивен

   #3
25.11.2009 11:25

ASBer
Модератор (+150, -17)
Откуда: Москва
Зарегистрирован: 19.07.2007
Сообщений: 817
Вебсайт

Эники-Бэники
ели вареники,
а Джоники-Мнемоники
ели психотроники.

Re: попроси меня...

GrAndrey написал:

Почему в западных системах не прорабатывают парсер до такой глубины?

Видимо по той же причине что и у нас - просто руки не доходят...

Неактивен

   #4
27.11.2009 18:17

uux
Участник (+607, -36)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1523

Re: попроси меня...

ИМХО, эту фичу лучше убрать из библиотеки вовсе.

Поясню: опытные ИФеры конструкции с "попросить" вряд ли будут использовать предусмотренным в библиотеке образом - это очень громоздко. Вбить команду "имярек, иди на фиг" гораздо быстрее, чем "попросить имярека пойти на фиг". Новичков же тот факт, что игра вообще реагирует на "попросить", неизбежно будет провоцировать на всякие "попросить персонажа", "попросить яблоко", "попросить персонажа о помощи" и подобные труднореализуемые команды. Если бы игра просто выдавала "Я не знаю такого глагола", это избавило бы новичка от лишних разочарований.

Отредактировано uux (27.11.2009 18:18)

Неактивен

   #5
27.11.2009 18:19

Nex
Участник (+120, -130)
Зарегистрирован: 11.06.2007
Сообщений: 2056

---

Re: попроси меня...

"Попросить у старика денег взаймы"

Неактивен

   #6
06.12.2009 13:36

GrAndrey
папа RTADS и Бяка (+37, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1200
Вебсайт

меньше слов

Re: попроси меня...

Я все-таки реализовал. Игры пишутся не только для кучки фанатов, но в надежде привлечь новичков. А для них такая конструкция очень естественна. Можно увидеть по отчетам Кащея.

Попросить можно "о чем-то" и "у кого-то". Один предлог указывает на косвенный, другой на прямой объект. По умолчанию предполагается значение "попросить у кого-то что-то".
"Попросить кого-то о чем-то" - расширение хака для отдания приказов. По умолчанию предполагает, что ГГ просит прямой объект дать ему косвенный, хотя это и не очень правильно с точки зрения грамматики. Так что, при команде "попросить охранника о помощи" игра ответит, что не знает слова "помощи". А если какой-то вещи прописать лексему "помощи", то охранник может её дать, либо ответить, что "это здесь не видит" smile Заодно ввел забавную фичу  - по команде "помоги" и "помочь" вызывается "справка". "помочь кому-то" - оставил пустым (не знаю как помочь кому-то). 

Вот что теперь происходит:

>попросить
Что ты хочешь попросить?

>ковшик
У кого Вы хотите попросить это?

>бочки
Бочонок с водой нельзя ни о чем просить.

>попросить у себя
Что ты хочешь попросить?

>попросить себя
У кого Вы хотите попросить это?

>попросить бочку о ковшике
Бочонок с водой нельзя о чем-либо просить.

>попросить у себя ковшик
Ты решил отказаться от  церемонии вручения себе собственной вещи.

>попросить себя о ковше
Ты решил отказаться от  церемонии вручения себе собственной вещи.

>вася, попроси у меня ковшик
Вася отказался.

>попросить малого просить малого о теля
Малой не несёт теля.

Полный изврат, но как-то работает

Если не найдете баги, делаю официальный релиз


Прикрепленные файлы:
libr26pre4.rar, Размер: 107,122 байт, Скачано: 241

Неактивен

   #7
06.12.2009 14:23

GrAndrey
папа RTADS и Бяка (+37, -2)
Откуда: Москва
Зарегистрирован: 15.09.2002
Сообщений: 1200
Вебсайт

меньше слов

Re: попроси меня...

Nex написал:

"Попросить у старика денег взаймы"

Код:

vzaymyPrep: Prep
    preposition = 'взаймы'
;

askforVerb: deepverb
    sdesc = "попросить"
    verb = ... 'попросить взаймы'

>попросить ковшик у васи взаймы
Вася не несёт помятого жестяного ковшика.

Неактивен

   #8
06.12.2009 17:42

fireton
некто с бородой (+200, -50)
Откуда: Москва
Зарегистрирован: 22.08.2005
Сообщений: 1045
Вебсайт

Тон

Re: попроси меня...

Круто. Попробую в послеконкурсной версии "Кащея" как-нибудь использовать.

Неактивен

Powered by PunBB
© copyright 2001–2018 iFiction.Ru