RU

Senpai Load Guardian - библиотека для работы с файлами

Svartberg #1555 06.01.2023 16:32 3 comments 1749 views

*Senpai Load Guardian
version 0.6.0:230110а

Небольшой помощник для вашей фантазии.*

Немного лишней болтавни:

Spoiler

Что-ж, пока у нас идут новогодние отпуска, у меня появилось немного времени, чтобы пострадать своим любимым делом. Поскольку разработка библиотеки Dopamine потребовала наличия стороннего софта, для работы (которого, естественно нет), я решил взять всё в свои руки и заняться реализацией небольших утилит, для своих нужд. Как обычно, я люблю делиться своими наработками с другими, чтобы хоть как то подстегнуть собственный интерес к работе.

И так, сейчас я занят разработкой довольно корявенькой смеси (поскольку пишу быстро, времени до конца отпуска не так много) консольного java приложения и qsp-шного программирования, облегчающего работу для некоторой прослойки интересующихся разработчиков.

А именно, решил я реализовать способ, как классическому купсу передать весь список файлов, хранящихся в папках, ну и заодно как сделать так, чтобы купс потом мог отслеживать их наличие. Попутно продумал как закидывать ini файлы с ключами=значениями, в сам купс и главное: Чтобы это всё генерилось автоматом, а разрабу это подгружалось в купс отдельным .qsp файлом.

Считаю это весьма благородной миссией, хоть и бесполезной для многих авторов.

По вопросам же практического применения…

  1. Это позволит закинуть в игру все списки объектов в папке, чтобы знать, что они точно есть.
  2. Встраиваниеini файлов позволит быстро и просто составлять какие-либо настройки. К примеру, захотелось нового персонажа самому игроку закинуть или что либо ещё.

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

Можно заделать простой лаунчер и подгружать с сервера там статистику, к примеру… или ещё что-то. Сделать систему обновления или даже просто установку модов в одно нажатие.

Большой просто для действий.

Пожалуй, если коротко, то эту библиотеку можно описать так:
Возможность подгруздки нового контента во время запущенного проекта.

На данный момент реализовано только сканирование каталога проекта и создание на его основе файла с данными, которые добавляются в проект при помощи SenpaiGuardian.qsp. Данная версия представлена только для примера возможностей.
Запуск приложения осуществляется через “Senpai Load Guardian.exe”

Краткая инструкция:

Spoiler

- Запуск проекта осуществляется только через приложение: “Senpai Load Guardian.exe”;
- Папка SenpaiLib необходима для корректной работы приложения, пожалуйста, не удаляйте её;
- Ваш проект должен находиться в папке data, с наименованием main.qsp;

Если вы хотите изменить расположение некоторых файлов (или поменять их наименование), не забудьте так же изменить пути расположения файлов в файле “SenpaiLoadGuardian.ini”. Поддерживается как относительные так и прямые пути к файлам.

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

$senpai.FILEPATH - хранит прямые пути к местонахождению файлов;
Пример:
$senpai.FILEPATH[0] = “D:\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\data\data\config\some.txt”
$senpai.FILEPATH[1] = “D:\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\data\data\eni.png”

$senpai.FILEMARK - хранит прямые путик файлам с проверкой наличия ваших файлов в проекте.

$senpai.FILEMARK[”D:\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\data\ini load test\test.ini”] = “D:\Work\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\SenpaiLib\data\system\settings\a2c7dd0b-fa56-4c88-8c5e-5a3d8ef1f19a.csenpai”

$senpai.FILEMARK[”D:\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\data\ini load test\new\test3.ini”] = “D:\Work\QSP\Project\SenpaiGuardian\RELASE\SenpaiGuardian 0.6.0\SenpaiLib\data\system\settings\c0e5e23c-a1ec-4e5e-af28-82a5361b7dce.csenpai”

К сожалению, QSP не имеет функционала по проверке наличия файла в проекте, однако он может проверять воспроизводится ли звук или нет.
Благодаря тому, что файлы проверки генерируются в момент запуска приложения, вы всегда сможете знать, доступен ли необходимый файл или нет.
Используете возможности “PLAY” для проигрывания звуков и “ISPLAY” для проверки проигрывания.

Приложение поддерживает чтение и запись сторонних ini файлов.
Для это, в файле “SenpaiLoadGuardian.ini”, в поле “customINIFolder” достаточно указать месторасположение папке, где находятся файлы (поддерживается уровень вложеyности файлов).
Приложение сгенерирует переменные для доступа к данным ini файла.

Пример:

test3.ini——
[FilePath]
43sdo = 3 83j


test.ini—––
[Some Info]
info02 = kljkljj
info9423 = 35345


QSP————
$game.FilePath[”43sdo”] = “3 83j”
$game.Some_Info[”info02”] = “kljkljj”
$game.Some_Info[”info9423”] = “35345”


Если приложение не запускается:

  • В корневой папке должна сгенерироваться папка logs, в которой будут храниться записи ошибок.

Актуальная версия: 0.6.0:230110а

SenpaiGuardian.zip файлообменник mega.nz 0.6.0:230110а 10.01.2023
SenpaiGuardian.zip файлообменник mega.nz 0.2.6:230107а 07.01.2023
SenpaiGuardian.zip файлообменник mega.nz 0.2.4:230106а 06.01.2023

Требования для работы:

- Windows 7 или выше
- пакет Java JRE Version 8

(https://www.java.com/ru/download/manual.jsp)

Всегда с вами, Svartberg.

Edited at 13.01.2023 18:35 (3 years ago)

Если ваш антивирус реагирует на .exe в архивах, пожалуйста, перепроверьте архив нормальными анивирусами. Некоторые антивирусы могут реагировать на временное отсутствие электронной подписи и сертификата.

Aleks Versus Moderator 08.01.2023 11:51 (3 years ago)

:) вещь нужная и полезная. Так держать. Тыцну и в вк.

Залил новую версию и краткое руководство по использованию.
Надеюсь, есть желающие протестировать.

Log in or Register to post comments.