Список форумов Русский TADS Русский TADS
Русский TADS. Разработка текстовых игр на русском языке. Интерактивная литература.
Второй форум находится здесь.
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Все падежные формы?
На страницу 1, 2  След.
 
Начать новую тему   Ответить на тему    Список форумов Русский TADS -> Русифицированный ТАДС
Предыдущая тема :: Следующая тема  
Автор Сообщение
Gleb



Зарегистрирован: 02.06.2003
Сообщения: 6

СообщениеДобавлено: Пн Июн 02, 2003 10:05 am    Заголовок сообщения: Все падежные формы? Ответить с цитатой

Господа разработчики! Нет ли в планах на будущее каким-то образом избавиться от необходимости вводить все падежные окончания в описаниях объектов? Удобства это, мягко говоря, не добавляет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Пн Июн 02, 2003 8:22 pm    Заголовок сообщения: Ответить с цитатой

С удовольствием откажусь от такой необходимости. Только скажи, как. Wink
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Gleb



Зарегистрирован: 02.06.2003
Сообщения: 6

СообщениеДобавлено: Вт Июн 03, 2003 9:40 am    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
С удовольствием откажусь от такой необходимости. Только скажи, как. Wink


А в чем проблема? Если задавать такую переменную:

"маленьк* зелен* камнеед*"
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Вт Июн 03, 2003 11:33 am    Заголовок сообщения: Ответить с цитатой

Ты предлагаешь это для лексических слов, или для коротких описаний вещи?
Если для лексических, то как при таком подходе как определить где творительный, а где дательный падеж? А как различить где множественное число, а где единственное?
Вот что будет происходить:
>убить камнееда
Кого вы имеете в виду: камнееда или камнеедов?
>камнееда
Кого вы имеете в виду: камнееда или камнеедов?
и т.д.
А в играх с большим количеством вещей путаница ещё больше усугубится.
Окончания важны для правильного понимания и указание падежных форм лексических слов одна из самых меньших проблем при создании игры. На это нужно менее одного процента затрачиваемого времени. Обычно, оно уходит на мучительное продумывание описаний вещей и сценария.

Если ты хочешь заставить систему саму склонять название вещи, то предлагаю посмотреть на работу "Генератора падежей". Он делает ошибки в каждом пятом слове. Нормальные склонялки весят более 4 мб и требуют семантического уточнения, так как по разному склоняют некоторые омонимы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Gleb



Зарегистрирован: 02.06.2003
Сообщения: 6

СообщениеДобавлено: Вт Июн 03, 2003 11:57 am    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
Ты предлагаешь это для лексических слов, или для коротких описаний вещи?
Если для лексических, то как при таком подходе как определить где творительный, а где дательный падеж? А как различить где множественное число, а где единственное?
Вот что будет происходить:
>убить камнееда
Кого вы имеете в виду: камнееда или камнеедов?
>камнееда
Кого вы имеете в виду: камнееда или камнеедов?
и т.д.
А в играх с большим количеством вещей путаница ещё больше усугубится.
Окончания важны для правильного понимания и указание падежных форм лексических слов одна из самых меньших проблем при создании игры. На это нужно менее одного процента затрачиваемого времени. Обычно, оно уходит на мучительное продумывание описаний вещей и сценария.

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


Оставить формы дательного и творительного падежей - раз,
и заставить систему проверять - сколько объектов (реально) соответствуют вводу. Какой смысл переспрашивать скольких камнеедов ты имеешь в виду, если он там всего один? Cool)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Вт Июн 03, 2003 12:46 pm    Заголовок сообщения: Ответить с цитатой

Gleb писал(а):

Оставить формы дательного и творительного падежей - раз,
и заставить систему проверять - сколько объектов (реально) соответствуют вводу. Какой смысл переспрашивать скольких камнеедов ты имеешь в виду, если он там всего один? Cool)

1. Если оставить с пометкой #t, #d, то нужно оставить и их формы без пометки.
2. Переспрашивать он будет всякий раз, когда будет двусмысленность.
Например, если в одной комнате будет вода и водяной. При этом различить их можно будет только по прилагательным, что очень плохо.
>убить водяного
Которого водяного вы имеете в виду: воду или водяного?
Явно, глупость.

И, наконец, неужели так трудно генератором создать все эти склонения?

P.S. Честно говоря, я не знаю как это сделать. Распознование объектов вшито в интерпретатор.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Gleb



Зарегистрирован: 02.06.2003
Сообщения: 6

СообщениеДобавлено: Ср Июн 04, 2003 1:08 pm    Заголовок сообщения: Ответить с цитатой

Я вообще считаю что РУТАДС -- это сейчас лучшее, ты не думай. Сейчас пишу сценарий игры, буду делать.

Но все же:

-- вод* и водян* = разные слова.
-- Формы множественного числа имеют смысл только для объектов,
которых может быть И один И много (в ИНФОРМе - группированные объекты).

Чисто мысли...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Gleb



Зарегистрирован: 02.06.2003
Сообщения: 6

СообщениеДобавлено: Ср Июн 04, 2003 4:18 pm    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
Если под * подразумевается любая последовательность символов, кроме пробела, то вод* включает в себя водян*.

Вероятно, это хорошая идея, но как это реализовать так, чтобы оно всегда и правильно работало, я не знаю.


Да это уже почти теретический треп --

у нас будет слово вода, к-рое мы будем сравнивать с вод* и водян*, последние есть свойства искомого объекта, так что проблем-то не будет... Слушай, а в РУТАДСе предопределенные объекты тоже переведены?!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Ср Июн 04, 2003 4:32 pm    Заголовок сообщения: Ответить с цитатой

Запутался в ответах, своё сообщение стёр.

Насчёт трёпа - да, я в последнее время всё осторожнее делаю нововведения и сначала над ними размышляю. Мне кажется, что большой экономии времени автор не получит, а у игрока создатся впечатление что автор им пренебрегает или платформа недоработанна, раз она "правильно" понимает слова "водб" "водв" "водг" ... "водя" (это если будет noun = 'вод?', вместо 'вод*').

Проблемы когда мы не воду расматриваем по маскам, а водяного. Водяной будет подходить под них обеих.

Что ты подразумеваешь под предопределёнными объектами? Если базовые классы, то да.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Stas Starkov
Tester


Зарегистрирован: 14.03.2003
Сообщения: 28
Откуда: Россия, г. Уфа

СообщениеДобавлено: Вт Июл 08, 2003 3:40 pm    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
Проблемы когда мы не воду расматриваем по маскам, а водяного. Водяной будет подходить под них обеих.


Поддерживаю тебя в необходимости ввода всех форм слова; но при этом _необходимо_ указывать авторам на твой генератор падежных форм слова и, соответственно, обновлять его одновременно с изменениями библиотек RTADS. Возможно, стоило-бы включить его и в стандартную поставку библиотек... если бы генератор имел несколько меньший объем.

Андрей, пожалуйста выложи исходники генератора. Возможно, я (а может быть кто ни будь другой Smile ) найду время "перевести" генератор на родной и всеми любимый MS Visual C++...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Вт Июл 08, 2003 9:08 pm    Заголовок сообщения: Ответить с цитатой

Я уже приложил исходники к последней версии генератора.
Fighter (настощие ФИО не знаю), уже делал MVC версию и даже
несколько изменил подход. Я был бы не против, если бы
хороший программист прочесал мой код, т.к. его донимают
memory leakи. Вообще мне нравится эта программка, и если её хорошенько отладить, то её можно использовать чтобы делать хорошие переводы почти чего угодно. Размеры её, действительно можно ужать до предела. Особенно, если на ассемблере Smile. Тут же только операции над строками. Только я в них путаюсь Sad
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Stas Starkov
Tester


Зарегистрирован: 14.03.2003
Сообщения: 28
Откуда: Россия, г. Уфа

СообщениеДобавлено: Чт Июл 10, 2003 10:04 am    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
Я уже приложил исходники к последней версии генератора.


Извини, что вначале не посмотрел на субъект спора. Smile Да, действительно, мсходники здесь. _Попробую_ разобраться. Smile

GrAnd писал(а):
Я был бы не против, если бы хороший программист прочесал мой код, т.к. его донимают memory leakи.


А что, неужели C++ Builder не проверяет это?! В VC с этим все в порядке. Smile И дополнительные библиотеки (увеличивающие объем программы) не нужны.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Чт Июл 10, 2003 12:41 pm    Заголовок сообщения: Ответить с цитатой

Дело не в компиляторе и не в IDE. Просто я внутри функции создаю строку и возвращаю её, а удалить вне этой функции её и очистить память не удаётся. В результате прога всё больше кушает память, раздувает своп и в конце-концов её надо перезапускать.

Дополнительные библиотеки к прогам от MVC не нужны, так как они вложены в сам Виндовс (по слухам). Вероятно, такая прога не будет работать на более старых версиях Виндов или других ОС.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Stas Starkov
Tester


Зарегистрирован: 14.03.2003
Сообщения: 28
Откуда: Россия, г. Уфа

СообщениеДобавлено: Вт Июл 15, 2003 10:25 pm    Заголовок сообщения: Ответить с цитатой

GrAnd писал(а):
Дело не в компиляторе и не в IDE. Просто я внутри функции создаю строку и возвращаю её, а удалить вне этой функции её и очистить память не удаётся.

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

GrAnd писал(а):
В результате прога всё больше кушает память, раздувает своп и в конце-концов её надо перезапускать.

Честно говоря, на сегодняшних компах с сотнями мегабайт памяти, захват, предположим, килобайта в секунду это не страшно. Такими темпами 10 Мб будут израсходованы в течение примерно 2,5 часов.

GrAnd писал(а):
Дополнительные библиотеки к прогам от MVC не нужны, так как они вложены в сам Виндовс (по слухам).


Да, это так -- они называются "системными". :-) Действительно, если программа использует некоторые функции, анонсированные позднее чем Win95, то кто-то не сможет использовать программу -- до тех пор пока не скачает нужный dll (обычно Comctl32.dll). А так как большинство стараются иметь наиболее последнюю версию всякой всячины, вероятность того, что программа запустится довольно высока. Впрочем, можно эти библиотеки и внедрить в exe-шник.

GrAnd писал(а):
Вероятно, такая прога не будет работать на более старых версиях Виндов или других ОС.


Про другие ОС это ты хорошо сказал. :-) Как будто у тебя есть версия C++Builder для Linux|/Unix/Mac.

P.S. А перевод Generator-а я уже начал... понемногу. :-)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
GrAnd
Site Admin


Зарегистрирован: 04.02.2003
Сообщения: 299
Откуда: Россия, Москва

СообщениеДобавлено: Вт Июл 15, 2003 11:29 pm    Заголовок сообщения: Ответить с цитатой

О ссылках: покажешь, как это делается? Как только выделяю память снаружи, начинаются глюки.
На пне 1.7 МГц память зажирается с скростью 3 Мб/сек если зажать ентер Very Happy
О других ОС: для того я и стал переделывать под классический Си, а не оставил операции над AnsiString, что легче. Чтобы можно было ГнуСью, например, под другие ОС переписать.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Русский TADS -> Русифицированный ТАДС Часовой пояс: GMT + 4
На страницу 1, 2  След.
Страница 1 из 2

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group