Привет!
QuestBox (QBox) - платформа ИЛ (менюшных текстовых квестов) для Windows. ИЛ пишется в любом удобном текстовом редакторе, исходный код остается открытым. Скриптовая часть для программирования логики может использовать несколько разных языков программирования в одном квесте: Lua, Pascal, C, VB, JavaScript и др. В их число входит внутренний очень простой скриптовый язык Simple, похожий на бейсик и URQL.
Файлы квестов: *.qbx - это обычные файлы *.xml с квестом и скриптами внутри; *.qbz - файл-zip-архив с файлом квеста *.qbх, описанием квеста index.txt, также в архиве могут содержаться другие файлы, необходимые для проигрывания квеста, например, рисунки или звуки.
Страница: http://ifiction.pascalgames.net/questbox.html
Поддержка: http://qbox.uaforums.net/
Отредактировано APROMIX (30.08.2011 22:30)
Неактивен
APROMIX написал:
QuestBox (QBox) - платформа менюшных текстовых квестов для Windows. Квесты пишутся в любом удобном текстовом редакторе, исходный код остается открытым. Скриптовая часть использует язык Lua. Написана на С++
А в чем ее плюсы-минусы по сравнению с существующими платформами? (URQ, QSP и т.п.)
Неактивен
Logger написал:
А в чем ее плюсы-минусы по сравнению с существующими платформами? (URQ, QSP и т.п.)
И не забываем про INSTEAD.
Мне больше интересна игра. APROMIX, расскажи подробнее про игру.
Неактивен
Это порт урк'ушной игры.
Неактивен
To Nex
На этой игре я и Kariot тестировали QuestBox. Квест - порт одноименного квеста для URQ. Это моя первая игра, в которую я сыграл в урке Поэтому решил перенести на QuestBox. Для QuestBox уже начал писать вторую игру, называется "Логово Гидры", также этот квест будет портирован на URQ.
Неактивен
QuestBox обновлен до версии 0.5
Неактивен
QuestBox обновлен до версии 0.7.
Основные изменения:
1. Отказ от старого формата файла .qbf и переход на xml (.qbx) c соблюдением логики .qbf.
2. Замена Lua на внутренний простой скриптовый язык, названый мною SIMPLE, по синтаксису близкий к бейсику, lua и URQL.
3. На будущее заложена возможность использовать в одном квесте скрипты на разных языках программирования: Simple, Lua, Pascal, VB, C и других. В этой версии поддерживается только Simple.
4. Поглощение проекта IFPhoenix (QPas), ИЛ на Паскале. Все наработки будут использованы в QBox.
Неактивен
Язык программирования "Simple" уже есть
Неактивен
Спасибо Байт Значит переименуем его в другое название - Quest Box Language (QBL). Кстати, в этом языке есть скромная, но удобная фишечка, которую хотелось бы видеть в QSP и URQL. Подобная штука есть в Lua. Сразу соглашусь, что она не часто используется, и что без нее можно обойтись, но она добавляет некоторой упрощенности и гибкости языку. Это множественное присваивание:
Переменная1, Переменная2, Переменная3 = 0
или
Переменная1, Переменная2 = Переменная3 * Pi
Что-то в этом роде Что скажешь, Байт?
Неактивен
По примеру ничего не понял
Неактивен
Подумал тут и решил, что выдумывать новый язык QBL не буду Если нету ничего проще для квестописателя, чем URQL из URQDOS, то буду использовать его как язык для скриптов по-умолчанию, благо, документации по нему море.
Канечно это будет некий упрощенный диалект URQL, но все это будет в свежей версии.
[b]HzD_Byte[/]
Читай, как Nex написал
"Множественное присваивание", в первом примере, я присваиваю трем переменным одно значение, ноль, получается сокращенная запись, короче, чем обычный способ. Я не знаю, будет ли такой способ плодить больше ошибок, но сокращает код и делает его нагляднее - это точно В Lua есть такая фишка, она несколько инная, но там не побоялись ее использовать и это только выгоднее отличает язык от остальных. Это только примеры, нужно копать глубже, даже подсмотреть, как это сделано в Lua.
Вот выдержка по Lua 4 из русского руководства:
...синтаксис определяет список переменных слева и список значений с правой стороны... Эта инструкция сначала оценивает все значения справа и возможные индексы слева, а затем делает присваивание.
Используя этот метод, вот так просто можно поменять два значения:
x, y = y, x
А пришлось бы делать так:
a = x
x = y
y = a
Неактивен
Такой вариант уже планировался к реализации. Но это не то, что ты написал ранее.
Неактивен
HzD_Byte написал:
Такой вариант уже планировался к реализации. Но это не то, что ты написал ранее.
Не понял Множественное присваивание и в Африке множественное присваивание Может в постах я не навел не все возможные примеры? Это да, примеров много будет, тема широка.
Аргументируй, плиз.
Неактивен
Это так не записывается:
Переменная1, Переменная2, Переменная3 = 0
Записывается как
Переменная1, Переменная2, Переменная3 = 1,2,3
Неактивен
То есть, если я хочу 5-м переменным присвоить 0, то я, по-твоему, должен писать так:
a, b, c, d, e = 0, 0, 0, 0, 0
А не проще так:
a, b, c, d, e = 0
Это первый вариант, второй, когда вместо 0 будет еще проводиться какое-то арифм. действие или подобное.
a, b, c, d, e = 128 * 64 / 2
Ну и третий вариант, когда переменных поровно с обеих сторон:
a, b, c = 1, 345, x
Да вобщем я только предложил...
Неактивен
В Python'е такой вариант не заработает, к примеру:
a, b, c, d, e = 128 * 64 / 2
Неактивен
QuestBox обновлен до версии 0.9.3. http://www.onlinedisk.ru/file/665752/
Неактивен
Свершилось QuestBox наконец-то дорос до версии 1.0
Страница: http://ifiction.pascalgames.net/questbox.html
Неактивен
APROMIX написал:
Свершилось QuestBox наконец-то дорос до версии 1.0
Страница: http://ifiction.pascalgames.net/questbox.html
Та же история - все умерли.
Неактивен