Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
21.05.2007 14:46

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

О новой платформе текстовых квестов - СТК

У каждого умника все получется всегда по своему. (цитата и народа)



Привет все поклоникам Адвентуры! Скажу в кратце в место введения. Я уже достаточно посмотрел разных текстовых квестов и платформ для их создания, но мне всегда не нравилось и не нравятся их короткие возможности или усложненный язык. Буду согласен, если мне скажут, что всегда делают свою платформу (т.к. знают ее хорошо) и под свой квест. Но почему бы тогда не сделать простой язык текстового квеста, который в одно и тоже время будет легким для понимания и мощный по своим возможнотсям. Опять же здесь вылезает мнение, что нашелся еще один умник, который создаст еще один горе язык. На это скажем, что язык СТК явялется специализированным языком, направленным на создание, как текстовой игры, так и текстового квеста. Понятие текстовой игры задается для большей свободы в написании хороших квестов. К примеру возмем редактор ТКР (автору движка: не обижайтесь на критику говорю по сущевству), сам пробовал ничего программа хороша, но есть один недостаток движок полностью ориентирован на создание только определенной группы текстовых квестов. Это конечно хорошо, когда не нужно лишний раз думать и изворачиваться в исходном коде - все просто и понятно, но характер перса может быть сложнее и даже задан по другому. Теперь возмем Урку, тоже хороша и проста, жалко что опять возможностей мало (опять же для хороших больших квестов) и плеер слетает при первой же ошибке. Конечно же скажете, что я бука и сам ничего лучше еще не сделал, но больше всего поражает, что никто (или почти никто) не делает редактор, с помощью которых создать простой квест плевое дело, а хороший самое то! Думаю, достаточно привел основных недостатков современного русского движения (можно привести и еще больше, но лень), поэтому решив не соглашаться с таким положением дел решил создать платформу поновее. Сразу огорошу, господа и дамы, всегда создаю универсально (дольше, но качественнее получается), мой СТК (только русскими) может сразу сбить с толку (многие вещи реализуются простыми командами, почти как веб страница по сути, но другое), создавать буду на языке ООП Visual C# 2005 с поддержкой .Net FrameWork 2.0. В конечном счете планируется создать ряд программ для СТК: редактор, прогрыиватели с разными варияциями испольнения, компилятор(в далеком будущем, если такое возможно). Естественно язык получится со своей концепцией и направленностью.
Чем отлчиается СТК? Ответ: Основное его отлчие в том, что он реализован на верхнем уровне тегами XML(на аглийском, увы таков стандарт), на нижнем кодом СТК, который позволяет влиять на квест и выполнять различные команды. Теги упрощают язык СТК и в плане восприятия, и в плане написания. СТК содержит простые команды как и у любого языка (т.е. стандартный набор), содержит специализрованные операторы, которые облегчают реализацию сложных моментов в квесте, а также полезны в обычном использовании (Например оператор множественного условия - содержит мно-во услвоий, связанных между собой не только по смыслу, но по зависимости от выполненных действий предыдущих условий, для тех кто хоть раз программировал хотя бы на Си - это среднее между простыми операторми условия и оператором выбора, но в тоже время совершенно другое. Использовать можно к примеру, для создания сложного замка, который игроку нужно взломать. Отвлеклись немного в подробности пора и меру знать, пойдем дальше.
Базовые типы данных (для тех кто не понял типы переменных: строка, целое и т.д.) мало, но их достатончо для реализации даже отменного квеста (кстати квест хорош не только возможностями исходного кода, но своим сюжет, а это главное).  Типы, следующие: число (десятичное), строка, булев, массив, перечисление, структура. Возможно что-то и еще появится, но это будет если без него в действительности не обойтись.
С помощью тегов можно реализовывать характер перса, инвертарь, настройки квеста, стартовое меню (одно из особенностей СТК), события, окружение ( к примеру время тоже относится к окружению квеста), локации( мульти и обычная). Здесь тоже будут добавления. Одна из особенностей данных локаций в том, что для вывода текста после действия, вовсе не надо создавать лишную локацию, СТК будет хранить в памяти локалные переенные локации и выполнять ее снова и свнова, до тех пор пока вы не сделаете переход в другую (согласен звучит жутко, дико и возможно намудрено, но в коде выглядит во много раз проще, зато и писать короче будет). Также соглашусь, если скажут, что тут надо уметь писать алгоритмы, но ведь такие алгоритмы может и школьник научиться писать без всякой заморочки и направленность, такая что можно будет создать хороший квсет. Основной понт в XML тегах то, что они ОС независимы и просты, поэтому такой формат сможет прочитать любой проигрывател СТК квестов, а редактором можно спрятать само написание тегов и вам останется только думать о создании самого квеста. Также в редакторе будет эмулятор СТК, с помощью которого будет производиться отладка квеста. Короче с проектированнием все в норме, рассказывать могу до посинения. Единственная проблема остается - это само создание и мнение участников форума ( с вопросами конечно), о самом СТК и чего бы ему не помешало бы добавить. Для тех у кого есть сомнения в хорошести даного языка приведу к примеру еще одну фишку: Когда изучал ТКР (ради интереса), то наткнулся на понятие режима боя, реализованно хорошо, но специфично. Попробовал перевести на свой язык СТК такую возможность, оказалось, что у меня это уже запросто осущевствимо через одни только локации и СТК (сам с начало не поверил, но факты сами за себя говорят).
З.Ы.
Скажу для желающих принять участие, помочь сможе только своими вопросами и критикой, так уж сложилось, что писать программы, как у меня получется могут понять не многие и достраивается все окончательно, только когда все перепробую и код пройдет через все возможные варианты (Предаствьте, что я построил 5 раз дом на даче и мне, что-то не понравилось в нем, взял да начал все сначало, только что-то одно отсавил так как есть.). Времени тоже мало(как и  у всех в общем), поэтому не так быстро движется разработка, щас работаю над созданием интерпритатора СТК, сложно, но реально (если кому интересно узнать об интерпритаторах и т.д. идите по этой ссылке: http://www.softcraft.ru). Также меня окончательно убедило, при создании данной темы, создать свой сайт на народе с описанием всего о проекте, как создам, ссылку напишу, но не раньше чем, через две неделе. Очень хочется услышать трезвую и коснтруктивную по сущевству критику, так как подобные вещи помогают больше выяснить об потребностях русского движения адвентуры. И не беспокойте, если вам кажется, что я пишу о проекте несколько туманно, все же реализуется в процессе создания.
Естественно это еще не все, будем и остальное, только переварю в нормальный вид. smile

Неактивен

0    0    #2
22.05.2007 06:21

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

Корвин прав, конечно.

А вообще, чтобы иметь возможность помочь конструктивной критикой и предложениями, требуется как минимум увидеть работоспособную демку.

Неактивен

0    0    #3
22.05.2007 22:17

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

Eten написал:

Только шо успел не много пощупать комплект TDAS (редактор и прлеер), одно слово КРУТО! Другое обидно, сделано то на запада и основа английская. RTADS всего лишь руссификация. Одного хорошо, куча интересного материала и возможность поиграть в переведенные западные игры. Но согласитесь, что куда приятнее использовать отечетственный комплект, а не одни руссификации.

А вот блин не соглашусь;). Отечественных игр мало, да, но это, при всех проблемах, дело наживное. (R)TADS дает все возможности для написания качестенной русскоязычной IF-игры.

А так можно дойти и до того, что "а какого хрена мы пользуемся IBM PC? Это всего лишь клон западной разработки. Резко все пересаживаемся на ЕС ЭВМ ("Сетунь", "Искру", "Эльбрус" - нужное подчеркнуть)".

Eten написал:

Говоря автору RTADS, молодец, твой вариант мне тоже понравился, но мне по нраву будет использовать русский язык в полном смылсе этого слова.

Eten написал:

самое большое отлчие СТК, что он полностью ориентирован на русский язык

Что значит "полностью ориентирован на русский язык"? Операторы на русском пишутся? Ну, так это сомнительное (точнее сказать, чисто декоративное) преимущество. Фразы-команды распознаются лучше, чем на RTADS? Хотелось бы посмотреть на это. Если это действительно так, первый сниму шляпу.

Eten написал:

Теперь у меня вопросы к участникам диалога, они следующие:
1) Имеет ли смысл создать поддержку тегов, как на русском, так и на английском?

Что имеется в виду под поддержкой тегов? Возможность использования в игре гипертекстовых ссылок? Если так, то вещь полезная, но не первой необходимости для текстовой игры. Для начала неплохо было бы реализовать "джентльменский набор" функциональности.

Если имеется в виду что-то иное, просьба объяснить.

Eten написал:

2) Было бы ли вам удобно, если команды СТК и переменные воспринимались, как на английском, так и на русском, исходя из того что каждый привык к своему способу писать квесты?

Лично мне нет (я все равно все пишу латинскими буквами), но кому-то, возможно, было бы удобно иметь возможность выбирать из двух вариантов. Однако опять же - это нельзя назвать вопросом первостепенной важности.

Eten написал:

3) Хотелось ли бы вам в конечном счете увидеть СТК таким, тчобы его могли поддерживать многие CLR совместимые плеера квестов, а также получить в варианте независящим от возможностей плеера?

Перефразируем и расширим вопрос: "хотелось бы вам в конечном счете увидеть СТК таким, чтобы он позволял с полпинка создавать захватывающие квесты с минимальными трудозатратами со стороны автора, поддерживал бы
любые мультимедийные возможности и "бегал" бы на любых компьютерах - от "Спектрума", "Микроши" и i8088 до многопроцессорных Оптеронов, Ксеонов и Итаниумов, был совместим с любыми операционными системами - от DOS 2.0 через Windows Vista до qnx - и все это без малейших глюков?" Думаю, ответ очевиден.

Eten написал:

4) Каков способ реализации действия в синтасическом анализаторе русского языка нужен?

Как говаривал персонаж фильма "Москва слезам не верит": "П-переведи!"wink

А вообще Alduda дело говорит;).

Отредактировано uux (22.05.2007 22:35)

Неактивен

0    0    #4
24.05.2007 18:38

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

Eten написал:

Это представляет из себя первый пробный вариант кода СТК. Сразу скажу писал его давно, поэтому в некоторых местах может быть не так, но в принципе все как надо. Самое главное взгляните на метод написания. Согласен, теги грамоздкие, но я же не буду заставлять авторов писать в блокноте, для этого будет редактор. В плане примера, то щас работаю над материалом для сайта и там вывешу все в полном объеме.

При взгляде на код прежде всего возникает впечатление, что его структура ориентирована все-таки на менюшную игру. Почему так? Потому что, например, совершенно непонятно, каким образом:

а) происходит привязка предметов к локациям, а также перемещение предметов из одной локации в другую;
б) полная неясность с лексикой aka синонимами. Признака "имя" в заглавии тега явно недостаточно;
в) не видно шаблонов команд "глобального действия". Т. е. пока из этого кода можно понять так, что набор применимых команд задается для каждого предмета индивидуально - т. е. как пункты меню в менюшной игре.

И еще один вопрос, несколько офф-топный: а как же я все это отлаживать-то буду?wink

Вопросы этим не исчерпываются, это - то, что первым пришло в голову.

Eten написал:

Прошу обратить особое внимание на проблему кода представленную, GrAndrey и на мой. Сам могу сказать, что мое применение XML разгружает СТК от излишеств мудрого кода, да и теги проще (как всегда wink ) понять, чем замысловатый код, GrAndrey, который к тому же нужно еще и учить, а теги они везде теги. Да и с технической стороны также просты в работе, даже если всбрендит написать сервак СТК. lol

Исключительно дело вкуса, кто к чему привык. Мне, например, код читать легче. И опять же, если для одной и той же задачи, с одной стороны, надо выучить три десятка тегов, пусть самых разрусскоязычных, а с другой - можно обойтись пятью-шестью инструкциями, то лично я бы по-любому выбрал второй вариант. (Это не наезд персонально на СТК - я не знаю, сколько там в итоге будет тегов, а размышление на предмет того, что безапелляционное заявление "теги всегда проще, чем код" в общем случае верным не будет).

Eten написал:

Также прошу в кратце обрисовать ООП RTADS, ее преимущества, способы написания, применния и прочее, дабы отразить все возможности применения ОПП в адвентуре. Я же по началу не стал ставить ООП, дабы не грузить народ излишней морокой посчитав (исходя из квестов написанных самим народом и т.д.), что ООП ими сильно использоваться не будет. Но вижу, что не много не прав.

Что касается способов написания, применения и т. п. - лучше всего посмотреть документацию, размещенную на www.rtads.org. Что касается преимуществ ООП в RTADS, то они те же, что и в программировании в целом: возможность наследования свойств объектов позволяет определять их только один раз, и затем использовать во многих объектах, изменяя их только в том случае, если это действительно необходимо. При этом TADS допускает множественное наследование, что позволяет в одном объекте объединять свойства двух разных родительских классов или объектов. Инкапсуляция, "привязка" методов и атрибутов к конкретным объектам упорядочивает код, улучшает его восприятие и облегчает отладку. (Да, кстати о птичках, помимо редактора и компилятора в экзешник, в комплекте с TADS идет очень неслабый отладчик. Его тоже придется писать для СТК, чтобы "переплюнуть" RTADS;).

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

Eten написал:

Помню, кто-то из собеседников заговорил про сетевую версию, но что он подразумевает, вебстраницы или серваки с клиентами и как?

Я так понимаю, ГрАнд имел в виду возможность многопользовательской игры по сети. А уж как это реализовать... тут полная свобода для автора системы;).

Неактивен

0    0    #5
24.05.2007 18:42

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

AldudaTheGreat написал:

А не пишут квесты потому, что написать квест на порядок сложнее, чем написать платформу для него.

Тоже не стал бы так безапеляционно говорить. Просто это совершенно разные вещи.

Неактивен

0    0    #6
03.07.2009 18:49

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

Eten написал:

Написал для справки на скрижалиях форума. Возможно в данном случае моя позиция покажется жесткой, но это вгзляд с позиции человека самореализации и только. wink

Этен, позиция может быть жесткой, а вот формулировки хамскими (как у тебя про консервные банки) не должны бы быть...

Неактивен

0    0    #7
07.07.2009 20:36

uux
Участник (+884, -80)
Откуда: Москва
Зарегистрирован: 02.12.2006
Сообщений: 1624

Re: О новой платформе текстовых квестов - СТК

Этен, см. личку.

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru