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

Материал из IFВики
Перейти к навигации Перейти к поиску
м (Правки Byte (обсуждение) откачены к версии Fireton)
(нашёл кусок старого лога IRC, Байт разрешил опубликовать)
 
(не показаны 32 промежуточные версии 7 участников)
Строка 1: Строка 1:
 
__NOTOC__
 
__NOTOC__
 +
{{Обновить}}
 
==Общая информация==
 
==Общая информация==
 
[[Изображение:QSPLogo.png|frame|Логотип QSP]]
 
[[Изображение:QSPLogo.png|frame|Логотип QSP]]
Преимущественно [[менюшная платформа]] (по утверждению автора, существует возможность реализации полноценного [[Парсер|парсера]] - как самостоятельного, так и параллельно с меню). Аббревиатура расшифровывается как "'''Quest Soft Player'''".
+
Преимущественно [[менюшная платформа]] (существует возможность реализации [[Парсер|парсера]] - как самостоятельного, так и параллельно с меню). Аббревиатура расшифровывается как "'''Quest Soft Player'''".
  
Встроенный простой язык для разработки игр, наличие подробной документации и огромное число примеров способствуют быстрому обучению программированию на QSP.
 
  
Наличие функционального редактора [[QGen]] для написания игр, ведение списка [[Локация|локаций]] и удобное представление компонентов, позволяет упростить написание и отладку. Также, можно создавать игры в любом текстовом редакторе, используя конвертирующую утилиту [[TXT2GAM]].
 
  
Существует возможность коллективного творчества, когда несколько авторов пишут разные ветви одной игры, а затем объединяют их в одном файле.
+
==Разработка, поддержка, доступность==
 +
Программа "Quest Soft Player" распространяется в соответствии с лицензией [[Wikipedia:GPL|GNU GPL]]. Главный разработчик – [[Аргунов, Валерий|Валерий Аргунов (Byte)]].
  
==Разработка, поддержка, доступность==
+
Список основных разработчиков платформы (по алфавиту): [[BaxZzZz]], [[Byte]], [[elmortem]], [[Nex]], [[Ntropy]], [[rrock.ru]].
Программа "Quest Soft Player" изготовлена компанией "[[Byte Soft]]" и распространяется в соответствии с лицензией [[Wikipedia:GPL|GNU GPL]]. Главный и единственный разработчик – [[Аргунов, Валерий|Валерий Аргунов (Byte)]]. Это означает, что проблемы совместимости разных [[интерпретатор|интерпретаторов]] практически не существует – есть только возможная несовместимость разных версий, но это решается использованием для некоторых старых игр старого интерпретатора QSP 3.
 
  
 
==Принципы технологии==
 
==Принципы технологии==
[[Интерпретатор]], работающий со специальным файлом с расширением ".QSP", который получается либо с помощью генератора [[QGen]], либо специальной утилиты [[TXT2GAM]] (конвертирующей текст квеста, написанный в любом текстовом редакторе, в файл ".QSP").
+
[[Интерпретатор]], работающий со специальным файлом с расширением ".QSP", который получается либо с помощью редактора [[QGen]], либо специальной утилиты [[TXT2GAM]] (конвертирующей текст квеста, написанный в любом текстовом редакторе, в файл ".QSP").
  
 
==Переносимость==
 
==Переносимость==
Все версии Windows. Портирован на Windows CE, Linux / Unix, Sony PSP, BeOS / Haiku. Существует веб-интерпретатор [[wiQSP]]. Теоретически, по заверениям разработчика, поскольку интерфейсная и логическая части программы разделены, а сама программа написана на C и C++, ее можно легко портировать на любую платформу.
+
Все версии Windows. Портирован на PocketBook, Android, Windows CE / Windows Mobile, Linux / Unix, MacOS, Sony PSP, BeOS / Haiku. Существует веб-интерпретатор [[wiQSP]]. Теоретически, по заверениям разработчика, поскольку интерфейсная и логическая части программы разделены, а сама программа написана на C и C++, ее можно легко портировать на любую платформу.
 +
 
 +
В конце 2009 - начале 2010 года был выпущен AeroQSP - Flash-версия проигрывателя с расширенной поддержкой графики, позволяющая играть в браузере.
 +
 
 +
Примерно в 2013 году появился альтернативный плеер под названием Quest Navigator, разработанный [[Nex|Nex'ом]]. Реализован с применением Awesomium, что позволяет авторам применять больше HTML-тэгов при оформлении игр. Однако часть функционала классического плеера была вырезана, что привело к потере совместимости со значительной частью старых игр.
  
 
==Основные возможности==
 
==Основные возможности==
Язык поддерживает элементарные математические операции с целыми числами (совершенно достаточные для написания [[Текстовый квест|текстовых квестов]]), и очень многие функции работы со строками, в частности, обработку [[Wikipedia:Регулярные выражения|регулярных выражений]], которые позволяют реализовать на QSP свой собственный [[Парсер|синтаксический анализатор]].
+
Язык поддерживает элементарные математические операции с целыми числами (совершенно достаточные для написания [[Текстовый квест|текстовых квестов]]), и очень многие функции работы со строками, в частности, обработку [[Wikipedia:Регулярные выражения|регулярных выражений]], которые позволяют реализовать на QSP [[Парсер|синтаксический анализатор]].
  
 
QSP позволяет использовать для оформления игры:
 
QSP позволяет использовать для оформления игры:
* графику - большинство распространенных форматов, включая анимацию;
+
* графику - большинство распространенных форматов, включая анимацию (GIF);
* музыку и звуки - множество различных форматов (в том числе WAV, MID, MP3, OGG), с установкой уровня громкости;
+
* музыку и звуки - множество различных форматов (в том числе WAV, MID, MP3, OGG и большинство форматов [[Wikipedia:Трекерная музыка|трекерной музыки]]), с установкой уровня громкости;
* многие теги [[Wikipedia:HTML|HTML]] – имеется встроенный обработчик. Теги позволяют использовать иконки, например, для изображения предметов [[Инвентарь|инвентаря]].
+
* многие теги [[Wikipedia:HTML|HTML]] – имеется встроенный обработчик. Теги позволяют применять сложное форматирование текста, а также использовать иконки, например, для изображения предметов [[Инвентарь|инвентаря]].
 +
 
 +
Встроенный простой язык для разработки игр, наличие подробной документации и огромное число примеров, идущих с программой, способствует быстрому обучению программированию на QSP.
 +
 
 +
Наличие специализированного редактора [[QGen]] для написания игр, ведение списка локаций и удобное представление компонентов, позволяет упростить написание и отладку. Также, можно создавать игры в любом текстовом редакторе, используя конвертирующую утилиту [[TXT2GAM]].
 +
 
 +
Имеется поддержка [[Wikipedia:Unicode|Unicode]].
 +
 
 +
Существует возможность коллективного творчества, когда несколько авторов пишут разные ветви одной игры, а затем объединяют их в одном файле.
  
 
<gallery caption="Скриншоты" widths="450px" heights="340px">
 
<gallery caption="Скриншоты" widths="450px" heights="340px">
Строка 31: Строка 42:
 
Изображение:QSP_shot2.png|Игра "[[Серафим]]"
 
Изображение:QSP_shot2.png|Игра "[[Серафим]]"
 
</gallery>
 
</gallery>
 +
 +
== История ==
 +
{{Спойлер|Логи IRC-чата|
 +
(время по GMT+7)
 +
 +
[1:38] HronoStranger: простите за пять копеек, а логом и символом :QSP: обязательно должна быть "Q"?
 +
[1:41] Byte: острова - это вариант приглашения к путешествию
 +
[1:41] Byte: применимо не только к QSP конечно
 +
[1:41] Byte: но там была идея вписать остров в Q опять же
 +
[1:42] Byte: потом были двери еще в виде Q
 +
[1:42] Byte: где хвостик - дорожка к двери
 +
<...>
 +
[1:43] Byte: квест это путешествие в мир игры тоже
 +
[1:43] HronoStranger: тогда и книга подходит
 +
[1:43] Byte: да
 +
[1:44] MAlischka: kniga uze est u insteada
 +
[1:44] Byte: но книга уже есть
 +
[1:44] Byte: книга и шестеренки
 +
[1:44] HronoStranger: вот-вот...
 +
[1:45] HronoStranger: стоп!
 +
[1:45] HronoStranger: какая первая игра на QSP?
 +
[1:46] Byte: не помню
 +
[1:46] Byte: сначала были демки просто
 +
[1:46] Byte: демки на тему Zork'а
 +
[1:58] Byte: я начал с orczero тогда уже
 +
[1:59] Byte: мне когда-то он попался и я решил, что надо бы нормальный движок сделать
 +
[2:01] Byte: потом мне попался urq.. но это было уже после самых первых версий куспа
 +
[2:01] Byte: автор urq тоже вдохновлялся orczero в начале
 +
[2:04] Byte: сейчас уже сложно вспомнить какая игра была первой. одной из первых игр был порт Чукчи с urq. это был один из тестов движка фактически
 +
[2:05] Byte: Некс потом портировал Подземелья Темного замка (из формата книги).. но это было гораздо позже уже. до этого было очень много игр про школьников(изменено)
 +
[2:17] Byte: а еще в первых версиях куспа встроенный язык практически отсутствовал и называлось это не QSP на тот момент. не знаю, можно ли считать их QSP
 +
[2:18] Byte: но они сильно повлияли на кусп)
 +
[2:32] Pseudopod:
 +
> в первых версиях куспа встроенный язык практически отсутствовал
 +
@Byte, он был раньше визуальным?
 +
[2:38] Byte:
 +
> @Byte, он был раньше визуальным?
 +
@Pseudopod да, но и не такой гибкий конечно
 +
[2:38] Byte: были переменные, условия, локации
 +
[2:39] Byte: действия и предметы тоже были
 +
[2:39] Byte: нет
 +
[2:39] Byte: там почти не было кода
 +
[2:41] Byte: но это настолько ранние версии куспа, что я даже не помню кто их видел
 +
[2:41] Byte: да, больше визуального программирования было
 +
[2:42] Pseudopod: Ну, в QGen'е, как я понял, еще остались отголоски того QSP'а
 +
[2:42] Byte: когда появился QSP с кодом - я даже не связывал эти движки в один
 +
[2:42] Byte: да, первый QGen был связан с тем движком
 +
[2:43] Byte: но в QGen было уже намного больше кодирования)
 +
[2:44] Byte:
 +
типо конструктора, набор готовых блоков(шаблонов) из них лепились игры?
 +
@Final Walker там упор был на условия, ветвления и предметы. то есть тоже было состояние игры, но меньше возможстей оперировать этим состоянием
 +
[2:45] Byte: тот движок году в 99м пояился
 +
[2:45] Byte: кусп в 2001
 +
[2:45] Byte: я их не связывал между собой никогда т.к. они достаточно сильно отличались
 +
[2:46] Byte: но первый движок повлиял на кусп конечно
 +
[2:46] Byte: у него даже отдельное название было, которое я даже не помню
 +
[2:48] Byte: тот движок почти никто в интернете не застал наверно. кроме моих знакомых его видел только автор урки
 +
[2:48] Pseudopod: Так Sonne верно сказал, что там все строилось блок-схемами? Это довольно любопытная штука. [2:48] Byte: нет, там не блок-схемы даже были
 +
[2:48] Byte: был редактор с разными типами полей ввода для разных целей
 +
[2:48] Byte: кое-где можно было простой код писать
 +
[2:49] Oreolek: ну это в каком году было?
 +
[2:49] Byte: был еще специальный режим, в котором автоматически строилась карта локаций
 +
[2:50] Byte: и можно было визуально смотреть расположение частей мира друг к другу
 +
[2:50] Byte:
 +
> ну это в каком году было?
 +
@Oreolek примерно 99й
 +
[2:50] Byte: 1999
 +
[2:50] Byte: может, даже чуть раньше
 +
[2:51] Byte: он был на vb сначала
 +
[2:51] Byte: visual basic
 +
[2:54] Byte: главная проблема с первым движком-редактором была в сложности отслеживания зависимостей в игре
 +
[2:54] Byte: поэтому появился кусп
 +
[2:54] Sonne: о интересно, то есть можно было включать: едит мод, прямо во время игры?
 +
[2:55] Byte: даже в первых версиях куспа это было(изменено)
 +
[2:55] Byte: был встроенный в плеер отладчик
 +
[2:56] Byte: окошко ввода текста - оттуда
 +
[2:56] Byte: где-то в меню плеера можно было перейти в режим отладки игры
 +
[2:57] Byte: очень полезная штука была, но в последующих версиях мне было лень его реализовывать, поэтому он исчез
 +
[3:01] Byte: теперь это часть истории, которую мало кто знает)
 +
[3:03] Byte: Некс наверно застал тот режим отладки игр в первых версиях
 +
[3:03] Byte: но это уже qsp был конечно
 +
[3:04] Byte: движок перед qsp почти никто не видел)
 +
[3:05] Byte: да и с интернетом у меня были сложности тогда
 +
[3:06] Byte: доступ только по dial-up и с ограничением по времени :slight_smile:
 +
 +
Записано 07.09.2020.
 +
}}
  
 
== См. также ==
 
== См. также ==
 
* [[QSP Уроки]]
 
* [[QSP Уроки]]
 +
* [[:Категория:Игры_на_QSP|Игры на QSP]]
 +
* [[:Категория:Интерпретаторы QSP|Интерпретаторы QSP]]
 +
* [[:Категория:QSP-Compo|Конкурсы игр на QSP (QSP-Compo)]]
  
 
== Ссылки ==
 
== Ссылки ==
# [http://qsp.su Официальный сайт QSP] - интерпретатор, средства разработки, документация и игры.
+
# [http://qsp.su Официальный сайт QSP] - интерпретатор, средства разработки, документация, игры, форум.
# [http://qsp.borda.ru Форум по QSP]
+
# [http://github.com/QSPFoundation/qsp SourceCode]
# [http://elmortem.mirgames.ru/?path=psp-qsp QSP на PSP (порт)]
+
# [http://qsp.su/index.php?option=com_agora&task=topic&id=1220&Itemid=57 Видеоуроки по QSP] от [[Aleks Versus]]
# [http://svn2.assembla.com/svn/qsp/trunk/ SourceCode]
+
# [http://qsp.su/index.php?option=com_agora&task=topic&id=1280&Itemid=57 F.A.Q.: Часто задаваемые вопросы из темы "Как сделать?"] от него же
 +
# [https://aleksversus.github.io/howdo_faq/ Онлайн-версия справочника]
 +
# {{Старая_ссылка|на=http://elmortem.mirgames.ru/?path=psp-qsp|QSP на PSP (порт)}}
 +
# [http://wiki.qsp.su/help:navigator Страница на wiki.qsp.su про Quest Navigator]
  
[[Категория:Платформы]] [[Категория:Менюшные платформы]]
+
[[Категория:Менюшные платформы]]

Текущая версия на 04:16, 30 мая 2024


Time.png Информация в этой статье или некоторых её разделах устарела.
Вы можете помочь проекту, обновив её и убрав после этого данный шаблон.

Общая информация

Логотип QSP

Преимущественно менюшная платформа (существует возможность реализации парсера - как самостоятельного, так и параллельно с меню). Аббревиатура расшифровывается как "Quest Soft Player".


Разработка, поддержка, доступность

Программа "Quest Soft Player" распространяется в соответствии с лицензией GNU GPL. Главный разработчик – Валерий Аргунов (Byte).

Список основных разработчиков платформы (по алфавиту): BaxZzZz, Byte, elmortem, Nex, Ntropy, rrock.ru.

Принципы технологии

Интерпретатор, работающий со специальным файлом с расширением ".QSP", который получается либо с помощью редактора QGen, либо специальной утилиты TXT2GAM (конвертирующей текст квеста, написанный в любом текстовом редакторе, в файл ".QSP").

Переносимость

Все версии Windows. Портирован на PocketBook, Android, Windows CE / Windows Mobile, Linux / Unix, MacOS, Sony PSP, BeOS / Haiku. Существует веб-интерпретатор wiQSP. Теоретически, по заверениям разработчика, поскольку интерфейсная и логическая части программы разделены, а сама программа написана на C и C++, ее можно легко портировать на любую платформу.

В конце 2009 - начале 2010 года был выпущен AeroQSP - Flash-версия проигрывателя с расширенной поддержкой графики, позволяющая играть в браузере.

Примерно в 2013 году появился альтернативный плеер под названием Quest Navigator, разработанный Nex'ом. Реализован с применением Awesomium, что позволяет авторам применять больше HTML-тэгов при оформлении игр. Однако часть функционала классического плеера была вырезана, что привело к потере совместимости со значительной частью старых игр.

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

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

QSP позволяет использовать для оформления игры:

  • графику - большинство распространенных форматов, включая анимацию (GIF);
  • музыку и звуки - множество различных форматов (в том числе WAV, MID, MP3, OGG и большинство форматов трекерной музыки), с установкой уровня громкости;
  • многие теги HTML – имеется встроенный обработчик. Теги позволяют применять сложное форматирование текста, а также использовать иконки, например, для изображения предметов инвентаря.

Встроенный простой язык для разработки игр, наличие подробной документации и огромное число примеров, идущих с программой, способствует быстрому обучению программированию на QSP.

Наличие специализированного редактора QGen для написания игр, ведение списка локаций и удобное представление компонентов, позволяет упростить написание и отладку. Также, можно создавать игры в любом текстовом редакторе, используя конвертирующую утилиту TXT2GAM.

Имеется поддержка Unicode.

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

История

Логи IRC-чата

(время по GMT+7)
[1:38] HronoStranger: простите за пять копеек, а логом и символом :QSP: обязательно должна быть "Q"?
[1:41] Byte: острова - это вариант приглашения к путешествию
[1:41] Byte: применимо не только к QSP конечно
[1:41] Byte: но там была идея вписать остров в Q опять же
[1:42] Byte: потом были двери еще в виде Q
[1:42] Byte: где хвостик - дорожка к двери
<...>
[1:43] Byte: квест это путешествие в мир игры тоже
[1:43] HronoStranger: тогда и книга подходит
[1:43] Byte: да
[1:44] MAlischka: kniga uze est u insteada
[1:44] Byte: но книга уже есть
[1:44] Byte: книга и шестеренки
[1:44] HronoStranger: вот-вот...
[1:45] HronoStranger: стоп!
[1:45] HronoStranger: какая первая игра на QSP?
[1:46] Byte: не помню
[1:46] Byte: сначала были демки просто
[1:46] Byte: демки на тему Zork'а
[1:58] Byte: я начал с orczero тогда уже
[1:59] Byte: мне когда-то он попался и я решил, что надо бы нормальный движок сделать
[2:01] Byte: потом мне попался urq.. но это было уже после самых первых версий куспа
[2:01] Byte: автор urq тоже вдохновлялся orczero в начале 
[2:04] Byte: сейчас уже сложно вспомнить какая игра была первой. одной из первых игр был порт Чукчи с urq. это был один из тестов движка фактически
[2:05] Byte: Некс потом портировал Подземелья Темного замка (из формата книги).. но это было гораздо позже уже. до этого было очень много игр про школьников(изменено)
[2:17] Byte: а еще в первых версиях куспа встроенный язык практически отсутствовал и называлось это не QSP на тот момент. не знаю, можно ли считать их QSP 
[2:18] Byte: но они сильно повлияли на кусп)
[2:32] Pseudopod:
> в первых версиях куспа встроенный язык практически отсутствовал 
@Byte, он был раньше визуальным?
[2:38] Byte:
> @Byte, он был раньше визуальным?
@Pseudopod да, но и не такой гибкий конечно
[2:38] Byte: были переменные, условия, локации
[2:39] Byte: действия и предметы тоже были
[2:39] Byte: нет
[2:39] Byte: там почти не было кода
[2:41] Byte: но это настолько ранние версии куспа, что я даже не помню кто их видел
[2:41] Byte: да, больше визуального программирования было
[2:42] Pseudopod: Ну, в QGen'е, как я понял, еще остались отголоски того QSP'а
[2:42] Byte: когда появился QSP с кодом - я даже не связывал эти движки в один
[2:42] Byte: да, первый QGen был связан с тем движком
[2:43] Byte: но в QGen было уже намного больше кодирования)
[2:44] Byte: 
типо конструктора, набор готовых блоков(шаблонов) из них лепились игры?
@Final Walker там упор был на условия, ветвления и предметы. то есть тоже было состояние игры, но меньше возможстей оперировать этим состоянием
[2:45] Byte: тот движок году в 99м пояился
[2:45] Byte: кусп в 2001
[2:45] Byte: я их не связывал между собой никогда т.к. они достаточно сильно отличались
[2:46] Byte: но первый движок повлиял на кусп конечно
[2:46] Byte: у него даже отдельное название было, которое я даже не помню
[2:48] Byte: тот движок почти никто в интернете не застал наверно. кроме моих знакомых его видел только автор урки
[2:48] Pseudopod: Так Sonne верно сказал, что там все строилось блок-схемами? Это довольно любопытная штука. [2:48] Byte: нет, там не блок-схемы даже были
[2:48] Byte: был редактор с разными типами полей ввода для разных целей
[2:48] Byte: кое-где можно было простой код писать
[2:49] Oreolek: ну это в каком году было?
[2:49] Byte: был еще специальный режим, в котором автоматически строилась карта локаций
[2:50] Byte: и можно было визуально смотреть расположение частей мира друг к другу
[2:50] Byte:
> ну это в каком году было?
@Oreolek примерно 99й
[2:50] Byte: 1999 
[2:50] Byte: может, даже чуть раньше
[2:51] Byte: он был на vb сначала
[2:51] Byte: visual basic 
[2:54] Byte: главная проблема с первым движком-редактором была в сложности отслеживания зависимостей в игре
[2:54] Byte: поэтому появился кусп 
[2:54] Sonne: о интересно, то есть можно было включать: едит мод, прямо во время игры?
[2:55] Byte: даже в первых версиях куспа это было(изменено)
[2:55] Byte: был встроенный в плеер отладчик
[2:56] Byte: окошко ввода текста - оттуда
[2:56] Byte: где-то в меню плеера можно было перейти в режим отладки игры
[2:57] Byte: очень полезная штука была, но в последующих версиях мне было лень его реализовывать, поэтому он исчез
[3:01] Byte: теперь это часть истории, которую мало кто знает)
[3:03] Byte: Некс наверно застал тот режим отладки игр в первых версиях
[3:03] Byte: но это уже qsp был конечно
[3:04] Byte: движок перед qsp почти никто не видел)
[3:05] Byte: да и с интернетом у меня были сложности тогда
[3:06] Byte: доступ только по dial-up и с ограничением по времени :slight_smile:
Записано 07.09.2020.

См. также

Ссылки

  1. Официальный сайт QSP - интерпретатор, средства разработки, документация, игры, форум.
  2. SourceCode
  3. Видеоуроки по QSP от Aleks Versus
  4. F.A.Q.: Часто задаваемые вопросы из темы "Как сделать?" от него же
  5. Онлайн-версия справочника
  6. QSP на PSP (порт) (архивная копия)
  7. Страница на wiki.qsp.su про Quest Navigator