URQ: различия между версиями

Материал из IFВики
Перейти к навигации Перейти к поиску
м (Ссылки)
Строка 1: Строка 1:
 
'''URQ''' - [[менюшная платформа|менюшная]] [[freeware]]-платформа отечественного происхождения для разработки [[ИЛ]] (в первую очередь - для создания игр, управляемых с помощью меню и кнопок, однако существуют множественные прецеденты переписывания авторами стандартного управления). Аббревиатура расшифровывается как Universal Ripsoft Quest, по названию первой программы-интерпретатора.
 
'''URQ''' - [[менюшная платформа|менюшная]] [[freeware]]-платформа отечественного происхождения для разработки [[ИЛ]] (в первую очередь - для создания игр, управляемых с помощью меню и кнопок, однако существуют множественные прецеденты переписывания авторами стандартного управления). Аббревиатура расшифровывается как Universal Ripsoft Quest, по названию первой программы-интерпретатора.
 
[[Изображение:Akurq.jpg|Интерпретатор AkURQ]]
 
 
==Принципы технологии==
 
[[Интерпретатор]] языка [[URQL]] работает непосредственно с исходными текстами. В процессе выполнения игры может происходить динамическая генерация фрагментов кода, что создает возможность так называемой самомодификации, которая позволяет существенно расширить функциональный потенциал языка. В частности, очень часто самомодификация используется для работы с массивами, формально в URQL не предусмотренными.
 
 
==Переносимость==
 
 
[[Изображение:urq_dos.gif|Досурка]]
 
 
"Официальные" интерпретаторы поддерживают все версии Windows ([[рипурка]], [[URQ_DOS]], [[AkURQ]],[[FireURQ]]) и DOS (с 2003 года — только 32-разрядная версия URQ_DOS). Существуют отдельные проблемы совместимости между разными версиями интерпретатора (в частности, версиями под Win и DOS). Для Win-версии URQ 1.4, написанной на VB, также должны быть установлены некоторые нестандартные OCX-компоненты, доступные с сайта разработчика. AkURQ использует только стандартные компоненты VB.
 
 
Существует также интерпретатор [[FireURQ]], построенный на основе DirectX.
 
 
Существует также несколько альтернативных интерпретаторов для других платформ: DOS ([[BEST_URQ]]) и др. Известно несколько попыток создать кроссплатформенный интерпретатор на Java, PHP и Perl. Наиболее стабильной, хотя и поддерживает лишь базовые возможности URQL, является написанная на Java [http://urq.borda.ru/?1-0-0-00000144-000-0-0-1176030377 OverURKa]. Среди последних попыток портировать URQ на мобильные устройства следует выделить [http://urq.borda.ru/?1-0-0-00000226-000-0-0-1200557377 эту].
 
  
 
==Основные возможности==
 
==Основные возможности==
Основное назначение URQ - создание игр, управляемых с помощью выбора вариантов меню и встроенной поддержкой инвентаря. Впрочем, энтузиасты платформы неоднократно реализовывали с ее помощью ветвящиеся меню, навигацию с помощью графической карты, так называемые "рогалики" или даже несложный [[парсер]].
+
Основное назначение URQ - создание небольших игр, управляемых с помощью выбора вариантов меню и встроенной поддержкой инвентаря. Впрочем, энтузиасты платформы неоднократно реализовывали с ее помощью ветвящиеся меню, навигацию с помощью графической карты, так называемые "рогалики" или даже несложный [[парсер]].
  
 
Файлы игр-квестов являются обычными текстовыми файлами в win (Windows-1251) или dos (cp866) кодировке, и имеющими расширение .qst (незашифрованный квест), .qs1, .qs2, .qs3 (зашифрованные квесты). Для [[FireURQ]] существует формат файлов .qsz (архив, в который могут быть запакованы все ресурсы квеста).
 
Файлы игр-квестов являются обычными текстовыми файлами в win (Windows-1251) или dos (cp866) кодировке, и имеющими расширение .qst (незашифрованный квест), .qs1, .qs2, .qs3 (зашифрованные квесты). Для [[FireURQ]] существует формат файлов .qsz (архив, в который могут быть запакованы все ресурсы квеста).
  
На настоящий день написано более 200 квестов. Квесты пишутся в любом текстовом редакторе, - что очень удобно, - хотя существуют специальные редакторы: старый [[SMSQuest]] и актуальный [[URQEdit]]. Они пишутся на простом Бейсик-подобном языке программирования (Universal Ripsoft Quest Language — [[URQL]]), который понемногу совершенствуется и развивается.
+
На настоящий день написано более 400 игр. Квесты пишутся в любом текстовом редакторе, - что очень удобно, - хотя существуют специальные редакторы: старый [[SMSQuest]] и актуальный [[URQEdit]]. Они пишутся на простом Бейсик-подобном языке программирования (Universal Ripsoft Quest Language — [[URQL]]), который понемногу совершенствуется и развивается.
  
 
Базовые средства языка позволяют выводить текст и управляющие кнопки, иметь числовые и строковые переменные, выполнять ветвления и циклы в зависимости от определенных условий, обращаться к подпрограммам. URQL-код может быть частично самомодифицирующимся.
 
Базовые средства языка позволяют выводить текст и управляющие кнопки, иметь числовые и строковые переменные, выполнять ветвления и циклы в зависимости от определенных условий, обращаться к подпрограммам. URQL-код может быть частично самомодифицирующимся.
 
В последних версиях WinURQ и в AkURQ присутствуют неплохие мультимедиа-возможности. Можно вставлять в текст графические изображения (в т.ч. работающие как гиперссылки), использовать звуки и музыку (WAV и MID), разбивать квест на модули, запрашивать у пользователя ввод (числа, текстовые строки).
 
  
 
Система хорошо документирована. Большинство игр, к тому же, доступны в виде исходных кодов.
 
Система хорошо документирована. Большинство игр, к тому же, доступны в виде исходных кодов.
  
 +
*[http://narmiel.github.io/UrqW/docs/urql.html Описание языка URQL]
 +
*[http://ifwiki.ru/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F:%D0%94%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F_FireURQ Документация FireURQ]
 +
*[http://urq.borda.ru/?1-0-0-00000466-000-0-0-1481638604 Всякие полезные механики]
 +
*[[Медиа:URQL 0.zip|Описание URQL для URQ_DOS версии 1.35 от Корвина]]
 +
*[[Медиа:AkURQ.rar|Документация по AkURQ от Корвина]]
 +
[http://urq.plut.info/texts Библиотека]
 +
==Недостатки==
 
К главным недостаткам [[URQL]] можно отнести:  
 
К главным недостаткам [[URQL]] можно отнести:  
 
*нестрогий и не слишком продуманный синтаксис языка, создававшегося разными авторами по запросам разных пользователей. В результате имеется несколько несовместимых между собой интерпретаторов и серьезные проблемы перед разработчиками игр - каким образом добиться безошибочного выполнения игры на любом проигрывателе.
 
*нестрогий и не слишком продуманный синтаксис языка, создававшегося разными авторами по запросам разных пользователей. В результате имеется несколько несовместимых между собой интерпретаторов и серьезные проблемы перед разработчиками игр - каким образом добиться безошибочного выполнения игры на любом проигрывателе.
*отсутствие встроенных механизмов объектно-ориентированного программирования, затрудняющее написание больших проектов. Правда, этот недостаток исправим с помощью самомодификации. Впрочем, большая часть игр на URQ вообще не используют ООП.
+
*отсутствие встроенных механизмов объектно-ориентированного программирования, затрудняющее написание больших проектов. Правда, этот недостаток исправим с помощью самомодификации.  
 +
См. также: [http://urq.borda.ru/?1-0-0-00000517-000-0-0-1484411628 Рефакторинг URQL]
 +
 
 +
==Интерпретаторы==
 +
На данный момент существует два основных интерпретатора, которые рекомендуется использовать для написания игр:
 +
* [[FireURQ]]
 +
* [[UrqW]]
 +
 
 +
Более старые и заброшенные интерпретаторы:
 +
*[[URQ v.1.4]]
 +
*[[URQ_DOS]]
 +
*[[AkURQ]]
 +
*[[BEST_URQ]]
 +
*[http://urq.borda.ru/?1-0-0-00000144-000-0-0-1176030377 OverURKa]
 +
 
 +
[http://urq.plut.info/soft Список всех интерпретаторов и программ для работы с URQL]
  
 
== Ссылки ==
 
== Ссылки ==
 
* [http://urq.plut.info/games Квесты на платформе URQ]
 
* [http://urq.plut.info/games Квесты на платформе URQ]
 
* [http://urq.plut.info/ Сайт URQ]
 
* [http://urq.plut.info/ Сайт URQ]
* [http://ripsoft.narod.ru Сайт Ripsoft]
+
* [http://ripsoft.narod.ru Сайт Ripsoft (Очень древний сайт, сейчас неактуален)]
* Самый популярный и актуальный URQ-интерпретатор [[FireURQ]]
+
 
* Актуальный редактор для создания игр [[URQEdit]]
 
* Веб интерпретатор [[UrqW]]
 
  
 
[[Категория:Платформы]] [[Категория:Менюшные платформы]]
 
[[Категория:Платформы]] [[Категория:Менюшные платформы]]

Версия 01:56, 20 января 2017

URQ - менюшная freeware-платформа отечественного происхождения для разработки ИЛ (в первую очередь - для создания игр, управляемых с помощью меню и кнопок, однако существуют множественные прецеденты переписывания авторами стандартного управления). Аббревиатура расшифровывается как Universal Ripsoft Quest, по названию первой программы-интерпретатора.

Основные возможности

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

Файлы игр-квестов являются обычными текстовыми файлами в win (Windows-1251) или dos (cp866) кодировке, и имеющими расширение .qst (незашифрованный квест), .qs1, .qs2, .qs3 (зашифрованные квесты). Для FireURQ существует формат файлов .qsz (архив, в который могут быть запакованы все ресурсы квеста).

На настоящий день написано более 400 игр. Квесты пишутся в любом текстовом редакторе, - что очень удобно, - хотя существуют специальные редакторы: старый SMSQuest и актуальный URQEdit. Они пишутся на простом Бейсик-подобном языке программирования (Universal Ripsoft Quest Language — URQL), который понемногу совершенствуется и развивается.

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

Система хорошо документирована. Большинство игр, к тому же, доступны в виде исходных кодов.

Библиотека

Недостатки

К главным недостаткам URQL можно отнести:

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

См. также: Рефакторинг URQL

Интерпретаторы

На данный момент существует два основных интерпретатора, которые рекомендуется использовать для написания игр:

Более старые и заброшенные интерпретаторы:

Список всех интерпретаторов и программ для работы с URQL

Ссылки