Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
25.06.2001 22:44

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

Вопросы по анализатору команд.

В данный момент работаю над анализатором команд. В связи с этим появились следующие вопросы:
* Сколько свободы должно предоставляться игроку при вводе команд (имеется в виду расположение слов).
* Какие (и насколько сложные) конструкции предложения обычно используются в процессе игры.

Неактивен

0    0    #2
25.06.2001 23:01

WildWizard
Участник
Откуда: Россия, Красноярск
Зарегистрирован: 01.03.2001
Сообщений: 450
Вебсайт

Nobody expects the Spa.. Oh, never&&mind.

Re: Вопросы по анализатору команд.

Т.к. расположение слов в английских предложениях по большей части фиксированно, то в этом деле мы первооткрыватели. Я думаю, что фиксированный порядок в IF на русском дело не приятное, но простительное. В крайнем случае для простейших случаев (отдать камень гоблину = отдать гоблину камень) можно сделать какие-нибудь проверки (камень предмет, а не актер).
Приятно также, если игра будет понимать сложные предложения.
Взять камень. Идти на север и
Взять камень и идти на север - это просто две команды, введенные через разделитель. Их можно обработать последовательно.
Взять камень и бутылку - здесь чуть сложнее, но решаемо.
Взять все - ищем все объекты, которые могут быть взяты и последовательно их берем.
Ну а вообще-то предложение обычно разделяют на:
<актер, > <глагол> <прямой объект> <предлог> <непрямой объект>
Например:
Гоблин, положи камень на стол[i] - это по максимому.
[i]инвентарь
- по минимому.
Актер, разумеется, по умолчанию игрок.

Еще что вспомню/в голову придет - напишу.

Неактивен

0    0    #3
26.06.2001 12:41

Al Chipollino
Участник (+1)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 496

Re: Вопросы по анализатору команд.

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

Неактивен

0    0    #4
26.06.2001 20:26

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

Re: Вопросы по анализатору команд.

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

Неактивен

0    0    #5
26.06.2001 20:29

Al Chipollino
Участник (+1)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 496

Re: Вопросы по анализатору команд.

Этого можно избежать, если считать словосочетания "ИДИ К" и "ИДИ ДО"  разными глаголами и задавать для них свои падежи объектов.

Неактивен

0    0    #6
27.06.2001 00:43

WildWizard
Участник
Откуда: Россия, Красноярск
Зарегистрирован: 01.03.2001
Сообщений: 450
Вебсайт

Nobody expects the Spa.. Oh, never&&mind.

Re: Вопросы по анализатору команд.

Да. И еще одно. Хорошо, если анализатор будет запоминать последние объекты, к которым обращался игрок. Ну в смысле:
Взять яблоко
Положить его на стол
Это не так уж и сложно.

Неактивен

0    0    #7
28.06.2001 05:29

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

Re: Вопросы по анализатору команд.

В теории ВСЕ не так уж сложно, а на деле... Но борьба идет и я постепенно побеждаю бездушную машину!!!  ;D

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru