Forum.iFiction.Ru

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

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

Вы не зашли.

0    0    #1
30.12.2007 21:48

fireton
некто с бородой (+354, -92)
Откуда: Москва
Зарегистрирован: 22.08.2005
Сообщений: 1103
Вебсайт

Тон

Непонятные ситуации с RTADS

Пытаюсь сделать простейшую запертую дверь. Вот код:

<... удалено ...>

получаю в процессе прогона вот такое:

Код:

>з
Тебе сначала придётся открыть тяжелую дубовую дверь. 

>открыть
Что ты хочешь открыть? 

>дверь
Она заперта. 

>отпереть
(тяжелую дубовую дверь) 
(с помощью большого ключа) 

Отомкнута. 

>запереть
(тяжелую дубовую дверь) 
(с помощью большого ключа) 

Отомкнута. 

>запереть дверь ключом
Её уже заперта.

advr.t уже смотрел, ошибки ускользают... Помогите разобраться...

Отредактировано fireton (30.12.2007 22:14)

Неактивен

0    0    #2
29.08.2018 13:14

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Скачал демо «Золотой череп». Хочу скомпилировать, но выдаёт ошибку.

Код:

----- begin build: Wed Aug 29 13:04:42 2018 -----
>tc32 -i "." -i "C:\Program Files (x86)\TADS Tools" -o "GOLDSKLR_rls.gam" "D:\Games\TADS\GOLDSKLR.T"
TADS Compiler v2.5.16  Copyright (c) 1993, 2012 Michael J. Roberts
TADS for Windows [WIN32] patchlevel 0.0
Mike Roberts <mjr_@hotmail.com> maintains this port.

>tadsrsc32 "GOLDSKLR_rls.gam" -type html -add  "GameInfo.txt"
TADS Resource Manager version 2.2.4
Copyright (c) 1992, 1999 by Michael J. Roberts.  All Rights Reserved.
. adding GameInfo.txt (HTML)
GameInfo.txt: unable to open file

tadsrsc32: error code 1

Build failed.
----- end build: Wed Aug 29 13:04:42 2018 -----

Кому он блин сдался этот GameInfo.txt!?

UPD
Эта проблема возникает, если выбрать в меню Build — Compile for release. В остальных случая компилируется без ошибки. >tadsrsc32 "GOLDSKLR_rls.gam" -type html -add  "GameInfo.txt" — полагаю, если убрать этот «-add  "GameInfo.txt"» то всё будет работать как надо. Только я ещё не разобрался где это убирается.

Отредактировано Kephra (29.08.2018 13:18)

Неактивен

0    0    #3
29.08.2018 13:25

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Ещё вопрос: почему названия локаций не выделяются жирным?

Отредактировано Kephra (29.08.2018 13:25)


Прикрепленные файлы:
2018-08-29_132140.png, Размер: 17,362 байт, Скачано: 163

Неактивен

0    0    #4
29.08.2018 13:41

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

В шестой главе нет картинок http://rtads.org/man/TADSBEG.HTM

Неактивен

0    0    #5
29.08.2018 14:45

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

Потому что стандартной функциональностью это является лишь для RTADS, а не TADS 2.

В смысле? Интерпретатор-то ставиться на компуктер именно TADS 2, или есть ещё RTADS? Может имелось ввиду: подключаемые русские библиотеки, где эта фича есть? Я с ними и скомпилировал.

Неактивен

0    0    #6
29.08.2018 15:19

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Код:

----- begin build: Wed Aug 29 15:18:11 2018 -----
>tc32 -i "." -i "C:\Program Files (x86)\TADS Tools" -o "D:\Games\TADS\test.gam" -ds2 "D:\Games\TADS\test.t"
tc32: error: Синтаксическая ошибка в имени файла, имени папки или метке тома.



Build failed.
----- end build: Wed Aug 29 15:18:11 2018 -----

Что блин ему не так с именами?

Это нормально, что в воркбенче ошибки на русском выводятся кракозабрами?

Отредактировано Kephra (29.08.2018 15:24)

Неактивен

0    0    #7
29.08.2018 15:47

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

Нет, интерпретатор единый. Ну разве что для современного RTADS выше 17 релиза нужен минимум 2.5.8. RTADS - это именно альтернативная стандартная библиотека для общей инфраструктуры TADS 2.

Ну да, скачав и инсталлировав набор автора, интерпретатор поставился TADS 2.5.16

Скомпилировал ваш файл, теперь названия выделяются как надо, но:

 спойлер…

Это всё из-за extendr.t

На скриншоте, в начале говорится что эта шляпа выводится в режиме отладки и надо обнулить какой-то флаг у объекта generator
================

#include <generator.t>

Зачем его подключать? Как он работает? Я в будущем намерен использовать CaseGen (генератор падежных форм), или назначение generator.t в другом?

Отредактировано Kephra (29.08.2018 16:15)

Неактивен

0    0    #8
29.08.2018 17:14

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

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

А ничего что эта версия 2.5.14, когда последняя с сайта RTADS 2.5.16?

Nikita написал:

Потом один из них всё равно перешёл на Notepad++

Я собираюсь пользовать Sublime Text, мне этот копролит воркбенч (окаменелый экскремент) нафиг не нужон, только надо подключить компилятор, но это потом.

Nikita написал:

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

Попробуем

Nikita написал:

Кроме того, у встроенного генератора более совершенные алгоритмы, чем у внешнего, так как он сначала был портирован из внешнего, а потом несколько раз дорабатывался, тогда как внешний с 2003 года не развивался.

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


Nikita написал:

Когда вы собираете игру в отладочном режиме в Workbench, встроенный генератор специально показывает вам сгенерированные словоформы, чтобы вы могли проверить корректность генерации. О работе с Workbench и режимах её использования можно подробнее почитать в приложениях E и M, если уж вы хотите научиться с ней работать. Если всё же нет желания использовать встроенный генератор падежных форм, то тогда надо убрать из кода символ препроцессинга GENERATOR_INCLUDED и подключение библиотеки generator.t.

Не знаю в чем было дело. Но после того как я перезаписал файл игры в кодирове Cyrilic (win 1251) было в UTF-8 и словоформы больше не выводятся, также если скомпилировать для дебага. Однако перестало выводится и в UTF-8. Что это было, я не знаю.

Отредактировано Kephra (29.08.2018 17:15)

Неактивен

0    0    #9
29.08.2018 20:43

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

К сожалению, для Sublime Text нет готового варианта подсветки кода TADS 2, а только TADS 3. Впрочем, если для вас это не принципиально, то проблемы нет.

Да вроде подсветка для Си вполне себе ничего.

Nikita написал:

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

smile Тем не менее, на этом форуме в ветке RTADS люди сильно отзывчивые.

Nikita написал:

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

Да я уже заглядывал в исходники и заметил что многое там прокомментировано.

Nikita написал:

Да, основная кодировка RTADS - это Windows 1251. Если нужно собирать в другой кодировке, то нужно перекодировать и подключаемые библиотеки, то есть все модули программы должны иметь одну кодировку.

А интерпретатор прочитает? UTF-8 он не может.

Неактивен

0    0    #10
30.08.2018 01:14

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

TADS - это вообще платформа для поклонников парсеров старой школы в лучших её проявлениях, так что не успеете моргнуть, как вас здесь сожрут за попсу. Возможно даже прямо я. Это как есть Heavy Metal, тоже являющийся как и парсеры жанром из 80-х, но который играется и слушается до сих пор, продолжая своё развитие. На все же новомодные веянья, типа R&B или рэпа, металлистам плевать, хотя там больше аудитория и всё такое. Просто используется иное мерило успеха и иные эстетические предпочтения и ценности на основе сильных внутренних убеждений, не прогибающихся под толпу. В общем в TADS принято чтить канон и ковать самый прочный парсерный металл. Я вот вас регулярно отсылаю к руководству, как священно служитель к писанию, ну так про это там тоже есть в приложении A. :-)

Да, здесь хватает снобов-ретроградов smile Но мне то что, никто же не запретит мне запилить в ваш святой РТАДС карту. Только если вы не перестанете мне содействовать в этой ереси, помогая развернутыми ответами и отсылками к документации wink. Хотя, возможно, если я начну часто играть в парсер, то сам стану ретроградом. Оценю прелесть игры без карты, и прочей ереси, и не стану более запариваться по этому поводу.

====================
Это без генератора

 спойлер…

Далее, С генератором:

 спойлер…

Код взят из мануала

Код:

pedestal: surface, fixeditem
   desc = 'пьедестал/1м'
   noun = 'пьедестал/1м' 'постамент/1м'
   isHim = true
   location = cave
;

goldSkull: item
   desc = 'золотой/1мп череп/1м'
   noun = 'череп/1м'
   adjective = 'золотой/1мп'
   isHim = true
   location = pedestal
;

Отредактировано Kephra (30.08.2018 01:36)

Неактивен

0    0    #11
30.08.2018 03:55

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Посмотрим как будет играться с картой, если удастся её сделать. С картой и перемещением по названию локаций.

Nikita написал:

#define GENERATOR_INCLUDED

Блин, точно, заработало. Теперь смотрю на укороченный код падежных форм, аж дышать легче стало.


Nikita написал:

Кстати, в noun и adjective в принципе не обязательно дублировать те слова, которые уже есть в desc, они туда автоматически пропишутся генератором, когда он у вас заработает. Достаточно туда прописывать синонимы и остальные существенные слова описания из ldesc. То есть для вашего кода в объекте черепа noun и adjective вообще можно было бы не писать, так как всё охвачено desc, а в пьедестале ограничиться только синонимом "постамент".

А вот это вообще космос! Теперь код выглядит, как в англ версии. Я конечно сомневаюсь что генератор работает безупречно, но если его можно использовать в 90% случаях, тогда круто. Это сделало мой день smile. Мерси.

UPD

А это нормально? Что ещё за А? Куда-то подевалась Н. Стало так сразу после использования генератора.

 спойлер…

Отредактировано Kephra (30.08.2018 04:22)

Неактивен

0    0    #12
30.08.2018 17:11

Kephra
Участник (+1, -1)
Откуда: Украина
Зарегистрирован: 04.04.2011
Сообщений: 45

Re: Непонятные ситуации с RTADS

Nikita написал:

Если вы всё-таки воспользуетесь шаблоном игры из TADS Toolchain, то там, помимо прочего, будет и подключённый комплект библиотек Patcher, где находятся исправления, которые должны были бы войти в релиз 28 RTADS, который так и не был собран и выпущен.

Да, теперь как надо. Я где-то читал, вроде в документации к «TADS Toolchain», что уже всё пропатчено и отдельно его подключать не надо, по схожей причине не нужен и спелчекер, к тому же, они оба закомментированы, поэтому я их и не включал. Значит, если все-таки надо подключать патч, может надо и спелчекер?

Неактивен

Powered by PunBB
© copyright 2001–2024 iFiction.Ru