Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Вниз

диалоги в играх   Найти похожие ветки 

 
Millennium ©   (2004-02-01 00:31) [0]

я делаю свою игру дошел до первых диалогов с персонажами и понял
что в каждой игре все диалоги заранее определены а есди написать систему
ИИ которая сможет коректно отвечать на вопросы с которой можно будет говорить убеждать например торговатся ну и тд как это сделать ?
Хоть какиенибудь идеи подскажите или принцыпы


 
Ландграф Павел ©   (2004-02-01 09:50) [1]

ну ты то сам понимаешь что ерунду говоришь, ну какой ИИ ответит на вопрос "ПРИВЕТ!"? это будет тоже самое как и с зараннее расписанными диалогами - будешь писать варианты ответов на все види вопросов, а если столо сказали не одно, а "ПРИВЕТ ЧУВАК!", то нужно уже рассматривать 2 слова занесенных в твою базу и как-то их связать (по окончанию слово "чувак" сущ. значит это предмет к которому обращаются, возможно к нам... - ну а теперь обьясни это ИИ, если получится: поздравляю!) и тд. , правда легче будет писать под английский язык - у них предложения все строятся по определенному каркасу и слова не скланяются, т.к. у нас сам знаешь можно одно и тоже по разному сказать...


 
Vertex   (2004-02-01 15:56) [2]

к вопросу о создании ии. нейросети? хихи. слушай а почему народ сразу проблемы такого рода выхватывает из общего процесса создания игр? ни есть ли это ламерство?
хз, блин как это все надоело.


 
Omar2002 ©   (2004-02-01 17:21) [3]

Есть программа ChatMaster - она самообучающаяся, так же ее можно самостоятельно обучать. В принципе это и есть то, что тебе надо, но придется тебе договариваться с автором проги и создавать базу ответов о вопросов. По ходу дела прога обучатся медленно, но она запоминает все твои вопросы и твои ответы, а потом сохраняет их, и в следующий раз уже использует как свои собственные. Только для нормальной работы придется  сделать еще фильтр, чтобы не все запоминалось или не все использовалось, а то игрок может базу запортачить в самом начале игры и потом просто перестать играть. Другое дело, что придется самостоятельно придумывать способ отбора ключевых слов, т.е. если игрок на вопрос "Что будем делать?" отвечат "Мочить!" - то игра должна определить, что это он собрался идти наподать. Это все очень сложно, но вполне реально, так что если сделаешь - я обязательно заценю :)


 
_none_ ©   (2004-02-02 02:17) [4]

поищи в гугле pandora bot "pascalice" там исходники дельфевые были простенького самообучающегося бота...


 
Alek Aaz ©   (2004-02-02 07:29) [5]

ИМХО. Не так страшен черт как его малюют. Муторно только все это.
Можно сделать так.
Каждую фразу кодируем следующим образом
aaaa_bb_cc_dd Привет!
где
aaaa - код рассы, специальности или код уникального юнита.
bb - отношение к герою, страх от 0 до скажем 10
cc - отношение к герою, юмор 0-10
dd - отношение к герою, ненависть 0-10
Привет! - сама фраза
Собственно у юнита есть поле с отношением к герою.  
Своими вопросами, ответами, действиями герой меняет отношение окружающих к себе.
Пример. Приветствие
00000_00_00_00 Добрый день.
00000_00_10_00 Приветик!
00000_00_10_00 Здоровенко!
00000_00_00_10 Умри урод!
00000_00_05_05 Чо надо!
00000_00_10_10 Попался тварь!
00000_10_10_10 ... - придумайте самостоятально :)

Когда возможно несколько вариантов ответов выбирается любой по рандому.
Высказывания героя тоже можно кодировать
00000_00_+1_+1 Привет тупицы!
00000_-9_-9_+9 Привет козлы!
При втором приветствии у окружающих резко портится отношение :)
Чем больше вариантов - тем интереснее.

А вот с озвучкой - проблемы. Нигде не видел проекта озвучки текста под Delphi


 
KA_ ©   (2004-02-02 08:50) [6]

>Alek Aaz ©   (02.02.04 07:29) [5]
>Нигде не видел проекта озвучки текста под Delphi

С русским языком не знаю, а английский текст озвучить можно. На торри есть компоненты. http://www.torry.net/voice.htm


 
Alek Aaz ©   (2004-02-02 12:56) [7]

2KA_
Каюсь, я просто не искал...
Кое-что есть здесь http://native-speech.invitation.ru/index-briefly.html


 
Vertex   (2004-02-02 15:48) [8]

Сделай проще.
Вот смотри у тя игруха с определенным жанром, допустим фэнтези, но блин моно же создать и язык общения в стиле фэнтези. Установишь ну по двадцать глаголов, существительных и т.д. в зависимости от требований игры, причем они могут быть как русскими так и вымышленными (в последнем случае моно прицепить изучение игроком языка). Упростили тем что уменьшили количество вариаций. Далее, возможен поиск слов по базе не цельно а с точностью до окончаний (если они есть), ну или вообще до половины слова, тогда человек может деформировать слова в определенном диапазоне.
Но ведь есть еще состав предложения, отсюда либо его сделать статическим, ex. сущ.(кто)-гл.(что делать)-сущ.(с чем)-[прил.(как)], можно сделать несколько вариаций, но сложнее всего вести анализ предложения на основе хаотического русского великого. Можно попробовать искать слова и определять их тип (гл., сущ. и т.д.) а потом приводить к нужной схеме и вести действенный анализ, но не знаю что из этого выйдет.
Ну а сам дейтвенный анализ проводить в зависимости от контекста высказывания. Наконец, фраза может быть неправильно интерпретирована и получится не то что хотел игрок, возможно подтверждение запроса, но это запарит любого гамера. Если фраза вообще не интерпретируется, то можно отмазатся, сказав что-то типа "Непойму ваш южный акцент, не могли бы вы повторить?")
Так, с озвучкой, английский озвучивается без проблем, хотя и русский тоже. Русский модуль озвучки ставится в систему как отдельная программа или длл, не помню. Иди на http://art.bdk.com.ru/govor/program.htm там есть примеры и http://art.bdk.com.ru/govor/engine.htm сылки на модули SAPI. Советую синтезировать с помощью движка Digalo, я его пробовал, вполне приемлимо и даже сериал есть в сети.


 
smb   (2004-02-02 17:20) [9]

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


 
Millennium ©   (2004-02-02 22:22) [10]

Я попробую начать копать в направление которое высказал vertex
думая надо сделать анализатор и само обучалку да но с Русским
великим и могучем проблем будет необратся как ведь редко
кто в чате при задании вопроса вопче ставит вопросительный знак
и понять что есть утверждение или вопрос будет сложновато


 
cyborg ©   (2004-02-03 12:07) [11]

Мне идея [5] Alek Aaz © (02.02.04 07:29) понравилась.



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.052 c
3-1084045511
linx
2004-05-08 23:45
2004.05.30
Как выводить Фамилию Имя Отчество?


3-1084259853
Term
2004-05-11 11:17
2004.05.30
ClientDataSet


9-1075881456
D@rk
2004-02-04 10:57
2004.05.30
TextOut Без BackGround в DirectX


4-1081943026
Сережа550
2004-04-14 15:43
2004.05.30
Сложная имитация клика левой кнопкой мышки в нужном окне


14-1084512314
faith
2004-05-14 09:25
2004.05.30
Получение введённого символа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский