Интерпретатор для dos/windows/java, отличительная особенность - полностью идентичный на 100% код интерпретатора и интерфейс для всех версий. Описание в прилагаемой документации.
dos16bit - для систем с ограниченными ресурсами
win32bit - работа с сетью, музыка, картинки во внешнем окне
j2me - для практически любых телефонов, с памятью java-машины более 400 кб. Неплохо работает на быстрых java-интерпретаторах телефонов Nokia / Sony Ericsson и т.д., но медленно на телефонах Motorola.
Отредактировано abcdef (23.11.2009 13:37)
Неактивен
URQ на J2ME - это очень интересно.
Правильно ли я понял, что твой интерпретатор не понимает перехода по переменной. То есть
goto #LOCATION$
не распознается (в LOCATION - номер локации, куда надо перейти)
Неактивен
Подстановка переменных #LOCATION$, #%LOCATION$ осуществляется только в строках, как того требуют ЯВУ.
Но существует динамическая переменная, запись в которую позволяет обращаться к произвольным данным
Т.е. запись goto #LOCATION$, где #LOCATION$ заменяется на число, эквивалентно:
instr sys=#LOCATION$
goto system
В ветке "Нужны ли новые версии URQ и URQ_DOS ?" в двух архивах выложено более 200 адаптированных квестов.
Текущая j2me версия работает при любом разрешении экрана, кроме того используется эмуляция дробных чисел, т.к. это совместимо со всеми телефонами, чего не скажешь о большинстве других urq - java.
немного увеличил быстродействие
Отредактировано abcdef (24.11.2009 15:46)
Неактивен
abcdef написал:
Т.е. запись goto #LOCATION$, где #LOCATION$ заменяется на число, эквивалентно:
instr sys=#LOCATION$
goto system
"Напиши раз, используй везде"
А представь, что если бы у Явы синтаксис в J2ME чуть-чуть отличался от J2SE&J2EE В результате, квест, написанный под твою урку не будет работать на других (это как байт-код, собранный под Windows, не работал бы на Mac)
Ну ладно, это поправимо (в моем случае). Начал проверять свой квест на твоей урке. Все почти сразу виснет. В то же время на урке 1.3 от Рипоса все просто замечательно работает. В debug.txt появляется сообщение типа
Error: [parser] BREAK (STR:27,POS:0,TOKEN:end)
(но может это результат нажатия Esc и выхода из программы)
Содержимое строки 27 (это как раз кусок "заплатки", чтобы квест работал и у тебя и на прочих урках)
if currentLocation=24 then goto 24
Не подскажешь, чем можно полечить?
(я на всякий случай текст квеста приложу к сообщению, если захочешь проверить)
Отредактировано Logger (24.11.2009 18:09)
Неактивен
Еще очень хорошо бы было переносить слова, а не резать их, иначе читается плохо. А так же кнопки делать не по вертикали, а в линию. Вот как выглядит один и тот же текст у тебя и в рипурке:
P.S. Как я понял, какая-то есть беда в aurq когда много команд в одной линии, типа
if ... then d=6&proc dice¶m1=d&...
немного оптимизировал код, теперь квест запускается и на aurq, но потом опять зависает, когда попадает на неоптимизированный код. Нельзя ли подправить проблему?
Отредактировано Logger (25.11.2009 07:28)
Неактивен
Люблю что-то новое К сожалению мои квесты, даже самые простые, не пошли, или ведут себя совсем не так, как надо Я ориентируюсь на AkURQ и FireURQ. И еще один маленький совет: сделай поддержку квестов FireURQ в файлах-архивах .qsz. На каком языке программирования написана новая версия?
Неактивен
запустил выложенный квест Logger с параметрами: "aurq_net 3 w game.qst", из появившегося
warning: STR 170, <PROC> pos(74) warning: STR 170, <PROC> pos(169) warning: STR 171, <PROC> pos(74) warning: STR 171, <PROC> pos(169) ...
диагностичекого сообщения видно, что команда proc не стоит в конце строки (все требования к структуре описаны в документации)., других ошибок интерпретатор не выявил
Неактивен
abcdef написал:
диагностичекого сообщения видно, что команда proc не стоит в конце строки (все требования к структуре описаны в документации)., других ошибок интерпретатор не выявил
Дык, а что делать, если хочется такую конструкцию
if ... then proc doSomething1&proc doSomething2&proc doSomething3
Более того - прочие урки корректно обрабатывают такой код
просто URQL (в отличии от Явы) не имеет блоков кода if (...) {...много строк }, посему и приходится ставить команды в одну строку. Конечно, в моем случае можно создать doSomething123 (куда затолкать вызовы doSomething1, proc doSomething2 и proc doSomething3), но этот сопособ не всем подойдет, не всякий автор захочет ручками переписывать квест.
Предлагаю придерживаться политики Sun (строго следовать общим стандартам), а не Microsoft (делать свои стандарты, не совместимые с общими). Или тогда писать не на Java, а на .Net
Неактивен
1. глянь в архив конвертированных квестов, там есть решение подобных случаев
2. при чем тут java SE/ME и т.д., все версии aurq написаны только в pascal'е
___
поправил алгоритм в j2me для генерации random
Отредактировано abcdef (26.11.2009 12:47)
Неактивен
abcdef написал:
1. глянь в архив конвертированных квестов, там есть решение подобных случаев
Эх...понятно, как всегда - придется самому...
Неактивен
abcdef
Не отступай от стандартов urq-dos, это не сделает интерпретатор aurq популярным и твой труд может оказаться напрасным Раз есть правила длиною в 10 лет - почему по ним не играть?!
Неактивен
abcdef написал:
поправил алгоритм в j2me для генерации random
Потестил j2me версию на Sony Ericsson. Cобственно, j2me и ценна для меня. Нельзя ли поправить пару багов (связанных с btn)
1) Если список действий не помещается на экран - надо делать скроллинг, как и для текста. А сейчас, даже в Буратино, текст оканчивается, а список возможных действий уходит за пределы экрана и нет возможности его промотать.
2) Хорошо бы печатать полный текст действия, ну как миниум 25 символов (как в прочих урках). А то, опять же, в Буратино пишет "Сказать 'Толк>" и приходится догадываться, что это "Сказать 'Толкиен форевер'"
Неактивен
клавиши скролла это джойстик влево-вправо, прокручивает и текст и меню. Клавиша '#' включает в себя BackSpace и Выход по клавише Esc (при этом появится запрос на сохранение). Инвентарь как обычно клавиши 'i','u'. Курсор без прокрутки экрана также сдублирован на кнопку '*', Enter сдублирован на '#'.
Текст btn обрезает по ширине экрана, с большим разрешением все поместится, потом уберу обрезание.
__
некоторые смартфоны nokia не хотят устанавливать программу из-за отсутствия иконки на приложении.
__
найдена ошибка в квесте, не выполняется inv +лодка
Неактивен
abcdef написал:
клавиши скролла это джойстик влево-вправо, прокручивает и текст и меню.
Дык, так-то оно так, но сейчас это выглядит следующим образом - курсор в меню доходит до низа экрана и пропадает (при нажатии Вниз). И не всякий догадается нажать Вправо, чтобы промотать (я вот - не догадался, так как привык, что программа сам делает сроллинг в таком случае)
abcdef написал:
Инвентарь как обычно клавиши 'i','u'.
Ты наверное обладаеть смартфона с полной клавиатурой. Потому как нажимать i на обычном телефоне тебя бы быстро....достало. Для этого нужно нажать 4, и символы начинают быстро сменяться (чаще чем раз в секунду), нужно успеть отпустить на i. То есть элементарный вызов инвентаря превращается в небольшую аркадную игру u - аналогично.
Неактивен
Интерфейс обрабатывает библиотека адаптации, поэтому выставить больший интервал для кнопок приведет к замедлению ввода - а это не желательно. Меню прокручивается, т.е. сразу видно за последним элементом возвращаемся в начало.
___
Добавлен ввод чисел с точкой, исправлен квест "Буратино", создана иконка на приложение для установки в некоторых nokia.
Неактивен
AURQ010_. Исправлена ошибка функции STRPOS в J2ME версии, тестовый пример "ИКЭ - Разговоры с мумией (frodo)" ike.qst (furq версия) - хочется отметить что ошибок в данной версии обнаружено не было.
Для запуска в AURQ потребовалось адаптировать некоторые алгоритмы.
Тексты локаций, копирайты и тд. оригинальные, умышленное изменение логики квеста не проводилось.
Неактивен
aurq012. j2me обновление: дополнительное меню клавиш: inv, use, up, down, left, right, enter, bksp, esc, а также увеличена длительность переключения на клавишах "*", "0", "#".
__
прошел ike.qst - добавил пару обрамлений строковых переменных #%.....$ для корректного прохождения, кроме того заменил цифровой подбор сейфов на ввод строк.
выявил некоторую особенность: если в инвентаре создается кнопка, то нужно обновить меню, для этого можно вызвать в инвентаре команду "pause 0"
Неактивен
Привет!
Приложенный кусок квеста при проверке на AURQ выдает
warning: STR 24, TOO LARGE BLOCK
В чем беда?
Отредактировано Logger (20.01.2010 08:25)
Неактивен
abcdef
А почему в архиве нет исходника? Раньше, помнится, это была как традиция, можно было посмотреть, что и как реализовано. Или AURQ поставляется уже в закрытом формате и не free? Раньше я тебе предлагал сделать вместе хороший GUI для AURQ, предложение с моей стороны еще в силе.
Неактивен
"warning" - это предупреждение, в описании рассказано о каждом сообщении, а в данном случае говорится о блоке текста локации, который может не поместиться в один экран (для чтения удобней чтоб локация была не больше одного экрана).
"почему в архиве нет исходника?" - исходник имеется где-то в версии 0082, в текущие версии ни чего принципиально нового добавлено не было, кроме исправления некоторых ошибок, логики и работы инвентаря.
Неактивен
abcdef написал:
кроме исправления некоторых ошибок, логики и работы инвентаря.
А этого разве недостаточно для того, чтобы выложить исходник ?
Неактивен
Разбираясь с Кеперлейсом и Фуркой, попутно выявил бага/фичу AURQ.
Если в игре есть предметы "Приказ" и "Приказ_Матросу", то :use_Приказ Матросу_Применить выполняется для обоих предметов. См приложенный keper_test.qst.
Если имя инвентаря содержит пробел, то предмет показывается без пробела. См. приложенный quest.qst
Отредактировано Logger (27.01.2010 07:04)
Неактивен
"выполняется для обоих предметов" - это не ошибка, при построении меню действий инвентаря "приказ" ищется метка ":use_приказ.....", т.е. окончание метки может быть любым, поэтому инвентарь "приказ" хватает метки "use_Приказ Матросу_Применить1" и "use_Приказ_Матросу_Применить2"
:start&inv+Приказ&inv+Приказ_Матросу&btn start,не слышу, повторите&:common&end :use_Приказ Матросу_Применить1&pln "Приказ Матросу" с пробелом&end :use_Приказ_Матросу_Применить2&pln "Приказ_Матросу" со знаком подчеркивания&end
специально настроенный парсер автоматически удаляет все пробелы из имен переменных - т.к. иногда лишний пробел не заметен, но это уже другая переменная
Неактивен
JPEG screenshot FAIL
Неактивен
abcdef написал:
"выполняется для обоих предметов" - это не ошибка, при построении меню действий инвентаря "приказ" ищется метка ":use_приказ.....", т.е. окончание метки может быть любым, поэтому инвентарь "приказ" хватает метки "use_Приказ Матросу_Применить1" и "use_Приказ_Матросу_Применить2"
Беда в том, что другие интерпрететоры так НЕ делают. См. мой пример про "приказ матросу" в теме про Кеперлейс Нельзя ли подправить что-то, чтобы
1) Не печатало "use_" при выборе действий
2) Отличало "Приказ" от "Приказ матросу"
abcdef написал:
специально настроенный парсер автоматически удаляет все пробелы из имен переменных - т.к. иногда лишний пробел не заметен, но это уже другая переменная
IMHO - много хуже, когда переменные "Приказ" от "Приказ матросу" воспринимаются как одна и таже. Ибо тут разница отлично видна для Автора, но не для AURQ А лишний проблел...пусть лучше будет лишний пробел, Автор исправит ошибку (тем более, что у меня код квестов генерируется и лишний пробел там невозможен).
Неактивен