Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
04.01.2003 20:43

psycho
Участник
Зарегистрирован: 24.12.2002
Сообщений: 14

Размышления на тему...

Решил запостить здесь, если тема каким-то образом окажется незаезженной, то можно будет и перенести в раздел соответственный...

Обо всём...

Группирование локаций.
Это всё относится к реализации идеальной платформы. При создании игры возникает выбор: сразу загрузить всю игру в память или загружать каждую локацию из файла (как в URQ, например). Если подгружать локации отдельно, то как быть с теми локациями, обстановка в которых изменилась? Придётся создавать дополнительный файл, где будут храниться описания изменённых локаций. И к этому файлу нужно будет обращаться каждый раз, когда персонаж покидает локацию. Если использовать полную загрузку данных в память, то тут могут возникнуть проблемы с нехваткой памяти. Единственный разумный выход, который я вижу в данной ситуации, это создавать группы локаций и от этого отталкиваться. Т.е. загружать в память группу локаций, с которой и работать до того момента, пока персонаж не покинет данную группу. Тогда сохранять результаты по группе и загружать новую группу. Меньше опирация с файлами, плюс меньшая загрузка памяти. Итого большее быстродействие.

Предел парсера.
Как я понимаю, сейчас ведётся активная работа над создание идеального парсера, который будет с максимальной точностью разбирать команды игрока. Вплоть до того, что он будет поддерживать несколько одновременно введённых команд. Например: "подними самый тяжолый кирпич и запусти им в толстого гоблина". Но вот вопрос: каким будет предел слова "несколько"? Две одновременно введённые команды? Три? К тому же всё идёт к тому, что порядок слов и наличие "неизвестных" слов будут играть второстепенную роль. Всё это, плюс свободный парсинг местоимений, числительных и прилагательных. И всё же, каков предел идеального парсера?

Объектность языка.
Как я понимаю все уже свыклись с той мыслью, что всё есть объекты. Что бы вы не взяли, от локации и предметов до персонажа и его инвентаря, всё есть объекты. Тогда возникает вопрос: будет ли объект являться общим для всего, и различаться только свойствами, либо это будут разные типы объектов, которые будут интерпретировать не по свойствам, а именно по их типу? Будут ли свойства объектов постоянными, неизменными и недополняемыми, либо они будут меться только как возможность их создания (добавления) объекту. На сколько гибким будет механизм свойств объектов? Каким он будет?

Визуальная руссифицированность.
Основной из предпосылок к созданию идеальной русской IF-платформы являются визуальные компоненты работы с ней. Иначе говорю должна быть создана некая программа, которая смогла бы предоставить физуальную среду для разработки IF. И далее говорят, что синтаксис языка должен быть полностью русским, т.е. все заразервированные языком, под свои объявления, слова должны состоять из символов кирилицы. Но ведь непосредственно синтаксис служит для облегчения жизни программистам, которым (возможно) как-то привычнее разобраться и работать с языком синтаксис которого состоит из английских слов. А вот не_программистам незачем лезть в дебри структуры языка им вполне хватит визуальных средств разработки, которые по сути можно си вовсе снабдить возможностью изменения языка интерфэйса. Так что делайте выводы... smile

Неактивен

0    0    #2
07.01.2003 02:44

FighteR
Участник
Откуда: Долгопрудный
Зарегистрирован: 12.12.2002
Сообщений: 33

Re: Размышления на тему...

Группирование локаций.
Виртуальная память на виртуальной машине лечит всё.
реализация виртуальной памяти на современных компах типа PC - не вопрос.
реализация виртуальной машины - отдельный вопрос.

>Как я понимаю, сейчас ведётся активная работа над создание идеального парсера
- правильно понимаете. smile

Вплоть до того, что он будет поддерживать несколько одновременно введённых команд
- это как раз самый простой из наворотов, причём кол-во команд непринципиально

> тяжолый кирпич
- а вот понять слово тяжОлый потруднее будет smile

наличие "неизвестных" слов будут играть второстепенную роль.
- не совсем понял вашу мысль

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

И всё же, каков предел идеального парсера?
- единственный способ это выяснить - создать идеальный парсер


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

Визуальная руссифицированность.
- лично я пробовал писать исключительно кириллицей - но ведь пропадает уйма латинских букв! все привыкли к print, close, open, move и т. д.
нужно разумно использовать и то и другое - читабельность повышается.

Пролог - на нём и пишу сейчас. пока похвастаться нечем. Но показать есть что. тока лень свой сайт делать. могу слить куда-нть

Нечёткая логика - накой она вам сдалась? а сэмулировать слабо?

генерация форм - отдельная статья. По моему, если и заниматься генерацией, то не позже этапа компиляции.

Неактивен

0    0    #3
08.01.2003 01:29

FighteR
Участник
Откуда: Долгопрудный
Зарегистрирован: 12.12.2002
Сообщений: 33

Re: Размышления на тему...

GrAndrey написал:

Пока ни одна платформа не поддерживает таких вещей:

>Убить толстого гоблина.
Которого толстого гоблина из 12 вы имеете в виду?
>Со стеклянным глазом.
Вы ударили толстого гоблина со стеклянным глазом!

Если парсер будет это понимать, это будет замечательно!

Эй что за фигня? и Информ и ТАДС умеют задавать утчняющие вопросы! чем принципиально от процитированного отличается:(взято из threemed.exe)
>взять ложку
что вы имеете в виду: большую ложку, среднюю ложку или маленькую ложку?

Неактивен

0    0    #4
09.01.2003 02:54

FighteR
Участник
Откуда: Долгопрудный
Зарегистрирован: 12.12.2002
Сообщений: 33

Re: Размышления на тему...

про гоблина: чем не вариант? (мой парсер такое поймёт)
"гоблин с глазом"
"гоблина с глазом"
"гоблину с глазом"
"гоблина с глазом"
"гоблином с глазом"
"гоблине с глазом"

про ложки
1) можно просто сделать объекты
"самая большая ложка"
"средняя ложка"
"самая маленькая ложка"
(только тогда может случиться так:
>возьми самую ложку
какую: большую или маленькую?)

2) если хочешь реально обрабатывать "самые" , тогда придётся детальнее прописывать свойства объектов, а это уже усложнение жизни создателя игры

про книгу:
"которая на столе" - это сложное определение (в отличие от 'с глазом', к тому же относится не к самой книге а к её местоположению.) Пока что такое нигде не реализовано. Но можно сказать "возьми книгу со стола" - мой парсер (да и Inform'овский) понимает такое и выдаёт "remove(book,table)."

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru