URQ: Difference between revisions

From IFWiki

mNo edit summary
(Categorisation)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[URQ]], or '''Universal RipSoft Quest''', is a [[Russian]] [[authoring system]] for creating Russian [[CYOA]] games. According to a page on the [[RTADS]] site, URQ is the oldest and the most popular development system in Russian IF. The original author of URQ is [[Timofey Basanov]] a.k.a. RipOs. Also several people contributed to URQ's development, primarily [[Victor Koryanov]] and [[Anton Zhuchkov]].
{{Software infobox
|Type=Authoring system
|Style=Choice
|Home page=http://urq.plut.info/
}}
'''[[URQ]]''', or '''Universal RipSoft Quest''', is a [[Russian]] [[authoring system]] for creating Russian [[choice-based]] games. According to a page on the [[RTADS]] site, URQ is the oldest and the most popular development system in Russian IF. The original author of URQ is [[Timofey Basanov]] a.k.a. RipOs. Also several people contributed to URQ's development, primarily [[Victor Koryanov]] and [[Anton Zhuchkov]].
 
==Basic possibilities==
The main purpose of URQ is to create small games controlled by menu choices and built-in inventory support. However, the enthusiasts of the platform have repeatedly implemented with its help branching menu, navigation using a graphic map, "roguelike" games, or even a simple parser.
 
Quest game files are plain text files in win (Windows-1251) or dos (cp866) encoding and have an extension '''.qst''' (unencrypted quest), '''.qs1,.qs2,.qs3''' (encrypted quests). There is a file format for [[FireURQ]] '''.qsz''' (archive which can be Packed with all the resources of the quest).
 
To date, written more than 400 games. Quests can be written in any text editor, although there are special editors: old SMSQuest and actual [[URQEdit]]. They are written in a simple BASIC-like programming language (Universal Ripsoft Quest Language — URQL), which is gradually improved and developed.
 
The basic language tools allow you to display text and buttons, have numeric and string variables, perform branching and loops depending on certain conditions, refer subroutines. URQL code can be partially self-modifying.
 
The system is well documented. Most of the games are, also, available as source code.
 
Unfortunately, most of the documentation is only available in Russian.
 
*[http://narmiel.github.io/UrqW/docs/urql.html The URQL description for the UrqW]
*[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 Documentation]
*[http://urq.borda.ru/?1-0-0-00000466-000-0-0-1481638604 All sorts of useful mechanics]
*[http://urq.plut.info/texts Library with useful texts]
 
==Disadvantages==
The main URQL disadvantages:
 
* non-strict and not too thoughtful syntax of the language created by different authors at the requests of different users. As a result, there are several not completely compatible interpreters and serious challenges for games designers - how to achieve smooth execution of the game on every  interpreter.
* the absence of built-in mechanisms of object-oriented programming, making it difficult to write large projects. However, this shortcoming will be corrected by means of modernisation.
 
==Interpreters==
At the moment there are four basic interpreter that should be used for writing games:
 
*[https://ifwiki.ru/files/Fireurq.zip FireURQ] (last version 17.12.2017 FireURQ 2.2.3) (Written on Delphi. [https://github.com/fireton/fireurq Source code]. Author - Fireton([[Anton Zhuchkov]] Implementation of URQL, close to the classic URQ_DOS. Advanced syntax, which allows, for example, to pass parameters to a location-subroutine (syntax differences are described in detail in the help file).The ability to insert an image (or part of it) into text. Decorators: fragments of text or images (including animated GIFs) that can be placed anywhere on the screen and manipulate them in different ways. Custom fonts, including TrueType (used by FreeType for rendering) Support for the archive format of .QSZ quests, with the use of which resources can be placed in the quest file. Enhanced music and sound support. Supported formats WAV, AIFF, MP3, MP2, MP1, OGG, as well as tracker music formats: XM, IT, S3M, MOD, MTM, UMX. In addition, MIDI music is also played (MID files). Also supported is the MO3 format (tracker music with OGG-packed samples). *Implemented fadein and fadeout for music. Convenient mode of debugging, in which it is easy to detect an error and modify the quest without restarting the interpreter.)
 
*[https://github.com/narmiel/UrqW UrqW] (last version 20.12.2016) (UrqW - сrossplatform (including for mobile devices) interpreter for urq quests in JavaScript with open [https://github.com/narmiel/UrqW Source code], developed by [[Alexander Sevryugin]](Akela). It supports almost all the capabilities of the URQ_DOS and RipURQ interpreters, new features, such as xbtn, links in the text and more (see the documentation) are added. You can use html, javascript and css to design and expand the engine's capabilities.)
 
*[https://github.com/PolyQuest/PolyQuest.github.io PolyQuest] (modified version UrqW. Author - [[Arseniy Shuvalov]]. The platform is oriented mainly on the creation of interactive versions of gamebooks. [https://github.com/PolyQuest/PolyQuest.github.io Source code])  (Compared to UrqW, PolyQuest provides the following additional features: Support the web markup using special tags. Support execution of JavaScript code using special tags. The ability to change the HTML content of the current (working) page using special tags for the HTML, CSS and JavaScript components. The possibility of introducing variables URQL to a running JavaScript snippets. Ability to control the sequence of music playback. The ability to perform additional actions while saving and loading the game. A number of JavaScript helper functions that interact with URQL-part of the game.)
*[http://instead-games.ru/game.php?ID=151 URQ-module INSTEAD] (limited interpreter for the platform [[INSTEAD]]) Author - [[Peter Kosyh]].


URQ games can be downloaded from the main URQ site (see below).
URQ games can be downloaded from the main URQ site (see below).
Line 5: Line 44:
==Links==
==Links==
* [http://urq.plut.info/ urq.plut.info] - The main URQ site, including the URQ Forum. - In Russian only.
* [http://urq.plut.info/ urq.plut.info] - The main URQ site, including the URQ Forum. - In Russian only.
* [http://ripsoft.narod.ru/Ripsoft.htm Ripsoft Corp.] - In Russian only.
* [http://sparkynet.com/spag/backissues/spag48.html SPAG #48] (May 2007) contains an interview with several members of the Russian IF community that use URQ: [[Victor Koryanov]], [[Akela]], [[Eugene Tugolukov]] a.k.a. Korwin, [[Evgeny Bychkov]] a.k.a. brevno, [[Yuri Pavlenko]] a.k.a. Goraph, and [[ZombX]]. The interviewer was [[Jenny Waynest]]. The interview was translated to English by [[Valentine Kopteltsev]].
* [http://sparkynet.com/spag/backissues/spag48.html SPAG #48] (May 2007) contains an interview with several members of the Russian IF community that use URQ: [[Victor Koryanov]], [[Akela]], [[Eugene Tugolukov]] a.k.a. Korwin, [[Evgeny Bychkov]] a.k.a. brevno, [[Yuri Pavlenko]] a.k.a. Goraph, and [[ZombX]]. The interviewer was [[Jenny Waynest]]. The interview was translated to English by [[Valentine Kopteltsev]].
* [http://ripsoft.narod.ru/Ripsoft.htm Ripsoft Corp.] - In Russian only. (Old site)


[[Category:Russian]] [[Category:Authoring system]] [[Category:CYOA]]
[[Category:Russian]]  
{{software navbox}}

Latest revision as of 18:32, 26 November 2023

URQ
Authoring system
[[File:|385px|center]]
Link Home page
Developer
Format
Interaction style Choice
System
System details
Latest version
Status
Implements
Uses
Multimedia support
License
Notes
Browse the software database
Edit this infobox

URQ, or Universal RipSoft Quest, is a Russian authoring system for creating Russian choice-based games. According to a page on the RTADS site, URQ is the oldest and the most popular development system in Russian IF. The original author of URQ is Timofey Basanov a.k.a. RipOs. Also several people contributed to URQ's development, primarily Victor Koryanov and Anton Zhuchkov.

Basic possibilities

The main purpose of URQ is to create small games controlled by menu choices and built-in inventory support. However, the enthusiasts of the platform have repeatedly implemented with its help branching menu, navigation using a graphic map, "roguelike" games, or even a simple parser.

Quest game files are plain text files in win (Windows-1251) or dos (cp866) encoding and have an extension .qst (unencrypted quest), .qs1,.qs2,.qs3 (encrypted quests). There is a file format for FireURQ .qsz (archive which can be Packed with all the resources of the quest).

To date, written more than 400 games. Quests can be written in any text editor, although there are special editors: old SMSQuest and actual URQEdit. They are written in a simple BASIC-like programming language (Universal Ripsoft Quest Language — URQL), which is gradually improved and developed.

The basic language tools allow you to display text and buttons, have numeric and string variables, perform branching and loops depending on certain conditions, refer subroutines. URQL code can be partially self-modifying.

The system is well documented. Most of the games are, also, available as source code.

Unfortunately, most of the documentation is only available in Russian.

Disadvantages

The main URQL disadvantages:

  • non-strict and not too thoughtful syntax of the language created by different authors at the requests of different users. As a result, there are several not completely compatible interpreters and serious challenges for games designers - how to achieve smooth execution of the game on every interpreter.
  • the absence of built-in mechanisms of object-oriented programming, making it difficult to write large projects. However, this shortcoming will be corrected by means of modernisation.

Interpreters

At the moment there are four basic interpreter that should be used for writing games:

  • FireURQ (last version 17.12.2017 FireURQ 2.2.3) (Written on Delphi. Source code. Author - Fireton(Anton Zhuchkov Implementation of URQL, close to the classic URQ_DOS. Advanced syntax, which allows, for example, to pass parameters to a location-subroutine (syntax differences are described in detail in the help file).The ability to insert an image (or part of it) into text. Decorators: fragments of text or images (including animated GIFs) that can be placed anywhere on the screen and manipulate them in different ways. Custom fonts, including TrueType (used by FreeType for rendering) Support for the archive format of .QSZ quests, with the use of which resources can be placed in the quest file. Enhanced music and sound support. Supported formats WAV, AIFF, MP3, MP2, MP1, OGG, as well as tracker music formats: XM, IT, S3M, MOD, MTM, UMX. In addition, MIDI music is also played (MID files). Also supported is the MO3 format (tracker music with OGG-packed samples). *Implemented fadein and fadeout for music. Convenient mode of debugging, in which it is easy to detect an error and modify the quest without restarting the interpreter.)
  • UrqW (last version 20.12.2016) (UrqW - сrossplatform (including for mobile devices) interpreter for urq quests in JavaScript with open Source code, developed by Alexander Sevryugin(Akela). It supports almost all the capabilities of the URQ_DOS and RipURQ interpreters, new features, such as xbtn, links in the text and more (see the documentation) are added. You can use html, javascript and css to design and expand the engine's capabilities.)
  • PolyQuest (modified version UrqW. Author - Arseniy Shuvalov. The platform is oriented mainly on the creation of interactive versions of gamebooks. Source code) (Compared to UrqW, PolyQuest provides the following additional features: Support the web markup using special tags. Support execution of JavaScript code using special tags. The ability to change the HTML content of the current (working) page using special tags for the HTML, CSS and JavaScript components. The possibility of introducing variables URQL to a running JavaScript snippets. Ability to control the sequence of music playback. The ability to perform additional actions while saving and loading the game. A number of JavaScript helper functions that interact with URQL-part of the game.)
  • URQ-module INSTEAD (limited interpreter for the platform INSTEAD) Author - Peter Kosyh.

URQ games can be downloaded from the main URQ site (see below).

Links

Authoring systems
By style ParserChoiceParser-choice hybrid
By system BrowserAndroidiOSLinuxmacOSWindows
Browse Stable authoring systemsSearch formDrilldown
Other software InterpretersUtilities