Forum.iFiction.Ru

iFiction.Ru · ifHub · FAQ · IFWiki · QSP · URQ · INSTEAD · AXMA

форум об interactive fiction, текстовых приключенческих играх и всём таком...

Вы не зашли.

0    0    #1
27.09.2010 11:24

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Комплект поставки qsp-игры вместе с файлами плеера

В настоящее время тестирую на знакомых (в том числе и очень далёких от темы текстовых игр) всякое разное, написанное на QSP. Чаще всего люди готовы лишь скачать-запустить-посмотреть, а технические подробности (как скачать плеер, как его запустить и как из него открыть игру) им не особо интересны. Поэтому я в архив с тестируемым модулем (игрой это пока язык не поворачивается назвать) вкладываю и плеер, и запускной файл — чтобы всё запускалось по одному щелчку. Сперва это был bat-файл, но поскольку он открывает консольное окно, которое висит, пока не закроешь QSP, я перешёл на VBS-скрипт (я в нём не особо силён, но уж что есть).

Код:

set FS=CreateObject("Scripting.FileSystemObject")
set FOLDER=FS.GetFolder(FS.GetAbsolutePathName("."))
for each FILE in FOLDER.Files
    if lcase(mid(FILE.Name,len(FILE.Name)-3))=".qsp" then
        if instr(1,lcase(FILE.Name),"_lib_")=0 then
            set FTR=CreateObject("WScript.Shell")
            RC=FTR.Run("qsp\qspgui.exe " & FILE.Name,1,false)
            exit for
        end if
    end if
next

Подразумевается, что в каталоге с игрой в корне лежит qsp-файл игры, а в подкаталоге "qsp" лежат файлы и подкаталоги QSP-плеера. Дополнительно добавлен фильтр, отбрасывающий дополнительные qsp-файлы, содержащие в имени "_lib_" (у меня внешние библиотеки в такие файлы вынесены).
Если у кого есть свои идеи по этому вопросу — буду рад услышать.


Прикрепленные файлы:
run-qsp.zip, Размер: 572 байт, Скачано: 601

Неактивен

0    0    #2
27.09.2010 11:54

Nex
Участник (+120, -130)
Зарегистрирован: 11.06.2007
Сообщений: 2053

---

Re: Комплект поставки qsp-игры вместе с файлами плеера

Зачем перебирать все файлы, если имя нужного .qsp-файла известно заранее?

Неактивен

0    0    #3
27.09.2010 12:12

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Nex написал:

Зачем перебирать все файлы, если имя нужного .qsp-файла известно заранее?

Чтобы не заморачиваться с редактированием ещё и vbs-файла. Так кинул в папку — и всё.

Неактивен

0    0    #4
27.09.2010 12:36

Серый Волк
Модератор (+1194, -91)
Откуда: Тверь
Зарегистрирован: 22.02.2008
Сообщений: 1096
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Дык можно ж сделать одним ехе-файлом. Например, игра с КРИЛ-2008 "Конец". Инструкцию, как так делается, могу вечерком выложить, сейчас под рукой нету.

Отредактировано Серый Волк (27.09.2010 12:40)

Неактивен

0    0    #5
27.09.2010 13:35

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Серый Волк написал:

Дык можно ж сделать одним ехе-файлом. Например, игра с КРИЛ-2008 "Конец". Инструкцию, как так делается, могу вечерком выложить, сейчас под рукой нету.

Отлично! Было бы интересно взглянуть.

Неактивен

0    0    #6
27.09.2010 18:54

Серый Волк
Модератор (+1194, -91)
Откуда: Тверь
Зарегистрирован: 22.02.2008
Сообщений: 1096
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Из какого то фака:

Можно ли как то создать ехе файл чтоб играть без плеера?
Пошаговая инструкция (необходим установленный WinRAR, желательно 3.70 или выше):
1) Копируем файлы игры в папку с плеером.
2) Переименовываем запускаемый файл в "auto.gam".
3) Выделяем все файлы + папки игры и плеера (лучше с файлом конфигурации "qspgui.cfg"), жмём правую кнопку и выбираем "Добавить в архив...".
4) В появившемся окошке выбираем формат архива - "RAR", метод сжатия - "Максимальный" и, указав имя архива, ставим галочку "Создать SFX-архив".
5) Переключаемся на вкладку "Дополнительно", жмём кнопку "Параметры SFX...".
6) На первой открывшейся вкладке в поле "Выполнить после распаковки" вводим строчку "qspgui.exe".
7) Переключаемся на вкладку "Режимы" и устанавливаем галочку "Распаковать во временную папку". В поле "Режим вывода информации" выбираем "Скрыть всё" и в поле "Режим перезаписи" - "Перезаписывать все файлы без запроса".
8) Переключаемся на вкладку "Текст и графика" и выбираем иконку для SFX-архива.
9) Жмём "OK" и создаём архив.

Неактивен

0    0    #7
27.09.2010 20:08

ASBer
Модератор (+160, -20)
Откуда: Москва
Зарегистрирован: 19.07.2007
Сообщений: 816
Вебсайт

Эники-Бэники
ели вареники,
а Джоники-Мнемоники
ели психотроники.

Re: Комплект поставки qsp-игры вместе с файлами плеера

Гениально! wink

Неактивен

0    0    #8
27.09.2010 20:15

HzD_Byte
Модератор (+1, -1)
Откуда: Далеко
Зарегистрирован: 15.04.2006
Сообщений: 271
Вебсайт

Я люблю людей

http://qsp.su

Re: Комплект поставки qsp-игры вместе с файлами плеера

2) Переименовываем запускаемый файл в "auto.gam".

Сейчас "auto.qsp".

Неактивен

0    0    #9
27.09.2010 22:45

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Серый Волк написал:

Можно ли как то создать ехе файл чтоб играть без плеера?
Пошаговая инструкция (необходим установленный WinRAR, желательно 3.70 или выше)…

Ну этот метод мне известен. И мне почему-то хочется пристрелить каждого, кто его применяет.

Неактивен

0    0    #10
28.09.2010 08:04

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Комплект поставки qsp-игры вместе с файлами плеера

Olegus t.Gl. написал:

Серый Волк написал:

Можно ли как то создать ехе файл чтоб играть без плеера?
Пошаговая инструкция (необходим установленный WinRAR, желательно 3.70 или выше)…

Ну этот метод мне известен. И мне почему-то хочется пристрелить каждого, кто его применяет.

А каковы причины такого, столь, опрометчивого желания?

Неактивен

0    0    #11
28.09.2010 20:36

Dark[Ol(U23)leneri]
Участник (-3)
Зарегистрирован: 16.05.2010
Сообщений: 203

Re: Комплект поставки qsp-игры вместе с файлами плеера

А каковы причины такого, столь, опрометчивого желания?

Чтобы сыграть в любую игру, приходится заново скачивать плеер.

Неактивен

0    0    #13
28.09.2010 21:01

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Комплект поставки qsp-игры вместе с файлами плеера

Dark[Ol(U23)leneri] написал:

А каковы причины такого, столь, опрометчивого желания?

Чтобы сыграть в любую игру, приходится заново скачивать плеер.

Ну и что с того, ты же скачивашь плеер и игровой пакет? Это разве не две разные вещи. У меня тоже игруха выложена с акуркой, может и не так. Но не вижу в этом ничего дурного. Ты же не будешь искать исходники к граф. игре, чтобы запустить ее на компьютере. Ты просто найдешь диск с самой игрой и запустишь его. Тем более, что нет смысла вытаскивать плеер из пакета. Так что, я тебя не фига не понял. tongue

Отредактировано Eten (28.09.2010 21:02)

Неактивен

0    0    #16
29.09.2010 15:47

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Eten написал:

Olegus t.Gl. написал:

Серый Волк написал:

Пошаговая инструкция (необходим установленный WinRAR, желательно 3.70 или выше)…

Ну этот метод мне известен. И мне почему-то хочется пристрелить каждого, кто его применяет.

А каковы причины такого, столь, опрометчивого желания?

Минусы именно этой конкретной реализации: программа распаковывается во временную папку, которая потом сама собой очищается. При этом нельзя рассчитывать на то, что между запусками сохранятся некоторые вещи, например, сохранёнки, записанные по относительному пути (SAVEGAME 'save.001').

Неактивен

0    0    #17
29.09.2010 21:31

Eten
Участник (+9, -307)
Откуда: Балаково, Санкт-Петербург.
Зарегистрирован: 21.05.2007
Сообщений: 1416
Вебсайт

---

Re: Комплект поставки qsp-игры вместе с файлами плеера

Olegus t.Gl., ну что ж ты сразу про сохраненки не сказал. Тогда и вопрос мой отлетает, только не надо говорить, что и так понятно, будете не правы. wink

Неактивен

0    0    #18
21.11.2011 13:19

WladySpb
Участник (+2)
Зарегистрирован: 21.12.2008
Сообщений: 33

Re: Комплект поставки qsp-игры вместе с файлами плеера

Можно сделать инсталлятор, по принципу набора игрока, но там вроде у Некса были проблемы с разными версиями винды и правами на запись в program files. В идеале, установщик должен проверять, установлена ли актуальная версия куспа, при необходимости устанавливать его, потом устанавливать игру и делать для неё ярлык. Но я с вин-инсталлером не работал, так что конкретные методы реализации подсказать не смогу(

Неактивен

0    0    #19
21.11.2011 19:32

Nex
Участник (+120, -130)
Зарегистрирован: 11.06.2007
Сообщений: 2053

---

Re: Комплект поставки qsp-игры вместе с файлами плеера

Проблемы были у стандартной библиотеки установщика, и это было давно.
Наверняка с тех пор уже сделали адекватную версию.

Вообще, автоматический сборщик stand-alone версий для Classic и Aero игр давно нужен, но, увы, не могу найти время на это. Ничего особо сложного в этом нет, нужен лишь человек, готовый этим заняться.

Неактивен

0    0    #20
08.04.2012 11:04

Olegus t.Gl.
Участник (+1049, -249)
Откуда: Москва
Зарегистрирован: 01.03.2001
Сообщений: 2866
Вебсайт

Re: Комплект поставки qsp-игры вместе с файлами плеера

Немного доработал vbs-скрипт запуска игры. Теперь есть возможность запускать игру в полноэкранном режиме. Не развёрнутом, а именно полноэкранном — чтобы даже системное меню не было видно.
Да, и вынес настройки в начало файла.

Код:

'--------------------------------------------------------------------------------
' FullScreen
' Нужно ли после запуска разворачивать игру на полный экран.
' При этом панель с системным меню плеера ("Квест", "Игра", "Установки", "Помощь")
' тоже пропадает.
'----------
' LibFile
' Цепочка символов, характерная для подключаемых qsp-библиотек.
' Если файл содержит данную цепочку, то он игнорируется
'----------
' Player
' Директория и имя файла с QSP-плеером относительно корневой директории игры
'----------
prmFullScreen    = true
prmLibFile        = "_lib_"
prmPlayer        = "qsp\qspgui.exe"
'--------------------------------------------------------------------------------
' Создаём объект для работы с файлами
set FS=CreateObject("Scripting.FileSystemObject")
' Получаем текущую директорию
set FOLDER=FS.GetFolder(FS.GetAbsolutePathName("."))
' Перебираем файлы в текущей директории
for each FILE in FOLDER.Files
    ' Если очередной файл имеет расширение ".qsp" - он нам подходит
    if lcase(mid(FILE.Name,len(FILE.Name)-3))=".qsp" then
        ' Если файл не содержит цепочки символов, характерных для qsp-библиотеки,
        ' то он подходит нам ешё больше
        if instr(1,lcase(FILE.Name),prmLibFile)=0 then
            set FTR=CreateObject("WScript.Shell")
            ' Запускаем QSP-плеер с найденным qsp-файлом
            set GAME=FTR.Exec(prmPlayer&" "&FILE.Name)
            ' Если включён режим запуска в полноэкранном режиме, то пытаемся
            ' послать окну с игрой комбинацию клавиш Alt+Enter
            if prmFullScreen then
                ' Но сперва подождём, пока окно не станет активным
                do
                loop while not FTR.AppActivate(GAME.ProcessID)
                ' А вот теперь посылаем комбинацию клавиш Alt+Enter
                FTR.SendKeys "%~"
            end if
            exit for
        end if
    end if
next
'--------------------------------------------------------------------------------

Проверено на Windows 7 (x64) и Windows XP (x32).
Немного смущает, что в документации сказано, что для посылки окну комбинации Alt+Enter нужно выполнить команду SendKeys "{%}{~}", т.е. символы % и ~ должны быть экранированы, но это не работает.


Прикрепленные файлы:
start.vbs, Размер: 1,826 байт, Скачано: 568

Неактивен

Powered by PunBB
© copyright 2001–2022 iFiction.Ru