Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
15.07.2001 05:32

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

Анализатор вводимых команд

Бьюсь тут над анализатором вводимых игроком команд. Поскольку я не гений, то приходится делать некоторые ограничения игрокам при составлении предложений, а именно следующие:
1. Глагол должен всегда идти первым:
     "возьми яблоко", а не "яблоко возьми"
2. Характеристики действия и объектов должны идти перед объектами:
     "возьми красное яблоко", а не "возьми яблоко красное"
     "осторожно положи камень на тумбу", а не "положи осторожно камень на тумбу"

По-моему, это не критично и, в принципе, естественно. Какие будут замечания или дополнения?

Неактивен

0    0    #2
15.07.2001 18:30

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

Re: Анализатор вводимых команд

А в чем у тебя проблемы с анализатором? Какие трудности?

Неактивен

0    0    #3
30.08.2001 04:03

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

Re: Анализатор вводимых команд

    Пишу-то я на Паскале.

     Что касается расположения глаголов и пр., а если в предложении два действия: "возьми камень и кинь его в гоблина"? Хотя все это решаемо.

     Что касается помощи, то пока справляюсь. Хотя характеристики еще не реализованы. Структура команды по Olegus'у такова:

глагол + осн.объект + всп.объект + доп.объект
"привяжи лошадь к забору веревкой"

Порядок следования объектов и предлоги роли не играют, то есть тем же самым для компьютера будет: "привяжи с помощью веревки лошадь к забору". Хотя все это требует нехилой словарной базы.  sad  К тому же возможно использования нескольких команд (см. пример выше про бедного гоблина), а также нескольких объектов: "возьми камень, пилу, топор и пожрать".

     В любом случае, работа идет и, хвала небесам!, останавливаться не собирается!  ;D

Неактивен

0    0    #4
30.08.2001 10:07

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

Re: Анализатор вводимых команд

    Из перечисленных выше примеров мой анализатор не поймет только "Лошадь привяжи верёвкой к забору". Все остальные - на ура... Я же говорю - любой грамотно составленный порядок объектов (то есть с падежами и предлогами). Главное, чтобы в словарной базе эти слова были.

Неактивен

0    0    #5
30.08.2001 20:03

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

Re: Анализатор вводимых команд

...но пока лень реализовать. А так, сперва этот вариант было проще разработать. Нашел глагол - сразу ясно, какие объекты (из последующих слов) к нему можно прицепить. Основные проблемы с произвольным положением глагола проявляются только в случае использования в одной фразе нескольких команд. Если же допустить, что во фразе всего одна команда - то нет проблем. Это легко реализуемо.

Неактивен

0    0    #6
15.12.2001 12:49

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

Re: Анализатор вводимых команд

Переписывая свой анализатор (в связи с новой структурой данных приходится все переписывать!) наткнулся на еще одну проблему - изменение падежей существительного ЧИСЛИТЕЛЬНЫМ (будь оно неладно!). Сейчас штудирую учебник русского языка, чтобы решить эту проблему наименее кровавым образом.

Неактивен

0    0    #7
16.12.2001 22:18

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

Re: Анализатор вводимых команд

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

Кстати, в объекте "существительное" у меня запоминается каким предлогом оно сопровождается.

Неактивен

0    0    #8
28.12.2001 22:27

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

Re: Анализатор вводимых команд

В каком смысле? Можно поподробнее насчет масок в Inform'е?...

Неактивен

0    0    #9
02.02.2002 00:16

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

Re: Анализатор вводимых команд

В самом скором времени (до 8 февраля) выложу алгоритм анализа фразы игрока. Он прост, но хорош. Я его использую в "Наследство Мути...".

Это кому-либо интересно?

Неактивен

0    0    #10
07.02.2002 17:14

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

Re: Анализатор вводимых команд

Если кому это интересно, то статья уже вышла. Смотрите раздел "Инструменты" нашего сайта, или (что еще проще) вот она сама:
https://ifiction.ru/a/ifparser.html

Неактивен

0    0    #11
05.03.2002 01:27

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

Re: Анализатор вводимых команд

Как-то легко решился вопрос с местоимениями. Теперь вместо таких фраз, как:

>возьми лампу и зажги лампу
   10
>возьми лампу
>зажги лампу

можно вводить так:

>возьми лампу и зажги ее
   10
>возьми лампу
>зажги ее

а такую фразу, как "возьми меч и убей мечом дракона" можно заменить на "возьми меч и убей им дракона".

Пора бы приложение к статье выкладывать...

Неактивен

0    0    #12
17.07.2002 08:34

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

Re: Анализатор вводимых команд

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

Глагол: Стукнуть
Осн. объект: Дверь
Всп. объект: Ключ

А вот как автор будет обрабатывать эту конструкцию - дело его.

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru