Перейти к содержанию

Рекомендуемые сообщения

Опубликовано (изменено)

Дружище, я недавно увидел твою прогу. Искал в нете что то, что может создавать файлы а'ля FOMOD для Скайрима. Поисковик кинул меня к тебе. Поэтому выручай :) Прогу забрал, облазил - ВЕЩЬ. Но скажи мне, как создавать запускные файлы то? Чтоб со всеми картинками были и с описаниями. Ну как в Нексус моде. Кинь пожалуйста инструктаж. Спасибо :)

 

Оп- паа... И ещё такая песня... Не нравятся проге Zip файлы мои. В чём спектакль? Вроде архивы простые... Честно говоря я запутался слегка в новых - старых архиваторах. Мой зип видать туповат для твоей проги :) Как правильно архивировать для неё ?

Изменено пользователем Lorian7
  • Ответов 527
  • Создана
  • Последний ответ

Топ авторов темы

Опубликовано
12.08.2013 17:48:44, Кербер сказал(-а):

А читать инструкцию не пробовал? Там написано как всё правильно надо делать. Если что, инструкция идёт вместе с программой.

Так нет у меня ничего там. Только прога и всё. Один файл.

Опубликовано (изменено)

Откуда скачана, отсюда? Если так, то открываешь программу и нажимаешь на знак вопроса в панели меню, что сверху и справа.

 

Здесь буду выкладывать некоторые готовые инсталляторы.

http://yadi.sk/d/aF18t_0d7qGK4

Изменено пользователем Кербер
  • Нравится 1
pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано (изменено)

Ах ты имеешь в виду типа "Справка" в программе?... Блин. Действительно... Из головы выпало... Я вообще люблю инструкции копать обычно. Чтоб все конфеты вытащить :) а тут тупанул чёт. Спасибо мен :)

 

Всё! Поймал полный инструктаж :) Всё обо всём, что нужно есть. Ну поееехалиии :D

Изменено пользователем Lorian7
Опубликовано (изменено)
12.08.2013 14:38:21, Кербер сказал(-а):

Хм, насчёт наборов требований не знаю, но у меня есть вопрос. Я сделал некоторую часть системы копирования, что предложишь дальше? При установке происходит копирование и архивирование уже существующих файлов. Они сохраняются в отдельную папку с такими же путями как оригинал, но а архиве (поймёшь, когда посмотришь файл). В журнал записывается их прежний путь и путь к архиву. Я в некотором замешательстве что делать дальше. Запись файлов и архивирование не происходит при обновлении одного и того же инсталлятора, то есть если он уже был установлен с помощью SKSM. Может сделать проверку версий инсталляторов, чтобы не установить случайно старую версию? Структура журнала замен и папка архивов прилагается.
 
http://rghost.ru/48070206


Пока ничем не могу помочь, заболел, лежу в постели на обезболивающих... Сам понимаешь, сейчас не до программ. Как станет получше - помогу. Изменено пользователем Lord-Vadim
Опубликовано (изменено)
13.08.2013 10:57:20, Кербер сказал(-а):

Выздоравливай. Я пока продолжу работу.

 

Здоровье моё немного улучшилось. Можем пообщаться.

Только мне сейчас удобней по e-mail мой: 

Изменено пользователем Lord-Vadim
Опубликовано

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

pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано

Трудись, пока над FAQ, а я подумаю как проще сделать установку/удаление.

Да, еще ответь, ты из программы можешь в уже созданный архив .zip добавлять файлы? И удалять из него часть файлов?

Опубликовано (изменено)

Понял. Дай мне пру дней на переваривание информации.

После выходных мы решим вопрос с установкой/удалением.

Изменено пользователем Lord-Vadim
Опубликовано (изменено)

Принято.
 

FAQ

Что делает эта программа, зачем она мне?
В общем программа предназначена для лучшей настройки игры (графики, в основном) и подключение плагинов (модов, если хотите). И с версии 1.4 также можно создавать установщики для облегчения установки этого плагина ещё раз или же его удаления.

Где официальный сайт/откуда лучше скачать?
На TesAll.ru, вы можете перейти туда по ссылке в разделе О программе. Так же вы можете посетить страницу программы на ModGames.net, она не является основной, но контролируется мной (автором то есть). Не загружайте программу с других сайтов. На них она может быть старой версии или в неправильной комплектации. Оригинальная авторская версия поставляется в специальном установщике (.exe файл), находящемся внутри ZIP или 7z архива. На вопросы по поводу копии программы скачанной неизвестно где ответы даваться не будут, кроме совета скачать откуда надо.

Куда установить?
В любую папку на вашем компьютере. Не обязательно в папку со Skyrim или в его папку Data. Но всё же будет лучше если выбранный вами путь для установки не будет слишком длинным. Не таким уж точно: "C:\Новая папка (1)\Новая папка (2)\ ... \Новая папка (15)\". Итого около 235 символов, из максимума 256. Не делайте так, иначе что-нибудь точно не будет работать.

Встроен ли сюда BOSS?
Нет не встроен, учитесь думать своей головой.

Требует ли программа регистрации?
Нет, не требует. "Установи и пользуйся!". Так же она работает независимо от наличия интернет-соединения.

Я слышал(а) что программа неправильно настраивает тени.
Такое было до версии 2.0a. В более поздних версиях всё исправлено.

После установки этой программы у меня перестал запускаться Skyrim/не загружается игра/вылетает через каждые пять минут/вместо букв квадраты.
Без комментариев. Нет, правда я не знаю как у вас это получается. Я тут не при чём!

Будут ли конфликты с Nexus Mod Manager (NMM)/Wrye Bash (Wrye Smash)/BOSS/другими менеджерами модов?
Не знаю точно, так как не использую ни один из них. Конфликт может быть с порядком загрузки плагинов, так как каждая программа может хранить его отличным от SKSM способом.

Нужно ли теперь запускать Skyrim только через программу?
Нет. Вы можете запускать его как вам угодно. Не забудьте про SKSE, если он у вас установлен.

У меня не сохраняется список подключенных плагинов.
Для сохранения списка надо нажать кнопку Сохранить в нижней панели программы. Также проверьте что у файлов Plugins.txt и DLCList.txt (а так же LoadOrder.txt) снята галочка "Только для чтения" в свойствах файла. Файлы могут находится по такому пути: "C:\Users\%UserName%\AppData\Local\Skyrim" или "%UserProfile%\Local Settings\Application Data\Skyrim" (можете скопировать этот путь в окно команды "Выполнить"), если вам не удаётся их найти, воспользуйтесь поиском.

Есть ли в программе функция <...> как во Wrye Bash?
Независимо от того о какой функции вы хотели спросить, ответ скорее всего (99.9%) будет нет. Если вам нужен функционал Wrye Bash, то и используйте его.

Есть ли в программе вирусы?
Нет. Ищите вирусы у себя в системе.
Изменено пользователем Кербер
pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано (изменено)

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

Так же сохраняется слишком много не нужной информации в файле "BackupLog.xml", ты ведь делаешь инсталлятор плагинов для Skyrim, тогда зачем тебе каждый раз запоминать полные пути к файлам если ты и так знаешь путь к игре и путь к папке BackupLog.

Поэтому давай делать по другому.
Я не буду сейчас расписываться весь алгоритм, как это делал раньше, так как это сложно для восприятия.
Давай двигаться постепенно.

Сначала рассмотрим структуру сохранения файлов, структуру "BackupLog.ini" и структуру "RenameLog.ini"
Идея сохранения каждого файла в свой архив правильна.
Папку BackupLog я советую разместить в папке установленного SKSM.
Для каждого файла создаем свой каталог в нем будут храниться разные версии одного и того-же файла.
Архив называем по имени сигнатуры.
Так же понадобятся два журнала:
1) "BackupLog.ini" - в него будем записывать информацию об установленных файлах.
2) "RenameLog.ini" - в него будем записывать информацию об изменяемых файлах.


Рассмотрим на примере "tamriel.32.32.32.dds" и "tamriel.32.-32.-32.dds" из твоего лога и "новый.32.-32.-32.dds" (файл которого не было в игре).
Сигнатура "EE525631C45ECB147F2C1B4CF156C162".

1) Два файла из игры будут сохранены следующим образом:

путь программы SKSM\BackupLog\Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds\EE525631C45ECB147F2C1B4CF156C162.zip
путь программы SKSM\BackupLog\Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds\EE525631C45ECB147F2C1B4CF156C162.zip

BackupLog.ini
     [EE525631C45ECB147F2C1B4CF156C162]
     Файл00001=Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds
     Файл00002=Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds
     Файл00003=Data\Textures\terrain\Tamriel\новый.32.-32.-32.dds

RenameLog.ini
     [Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds]
     Файл001=EE525631C45ECB147F2C1B4CF156C162.zip

     [Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds]
     Файл001=EE525631C45ECB147F2C1B4CF156C162.zip


Так как файл "новый.32.-32.-32.dds" новый и в игре ничего не менял, то для него не нужен архив и соответственно нет записи в RenameLog.ini


2) Если после будет установлен плагин с сигнатурой, например: "A90B42E2FA89CC75F41834D33E8C65DC" меняющий эти же файлы будут добавлены архивы:

путь программы SKSM\BackupLog\Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds\A90B42E2FA89CC75F41834D33E8C65DC.zip
путь программы SKSM\BackupLog\Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds\A90B42E2FA89CC75F41834D33E8C65DC.zip
путь программы SKSM\BackupLog\Data\Textures\terrain\Tamriel\новый.32.-32.-32.dds\A90B42E2FA89CC75F41834D33E8C65DC.zip (так как он уже меняется)

BackupLog.ini
     [EE525631C45ECB147F2C1B4CF156C162]
     Файл00001=Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds
     Файл00002=Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds
     Файл00003=Data\Textures\terrain\Tamriel\новый.32.-32.-32.dds

     [A90B42E2FA89CC75F41834D33E8C65DC]
     Файл00001=Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds
     Файл00002=Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds
     Файл00003=Data\Textures\terrain\Tamriel\новый.32.-32.-32.dds


RenameLog.ini
     [Data\Textures\terrain\Tamriel\tamriel.32.32.32.dds]
     Файл001=EE525631C45ECB147F2C1B4CF156C162.zip
     Файл002=A90B42E2FA89CC75F41834D33E8C65DC.zip

     [Data\Textures\terrain\Tamriel\tamriel.32.-32.-32.dds]
     Файл001=EE525631C45ECB147F2C1B4CF156C162.zip
     Файл002=A90B42E2FA89CC75F41834D33E8C65DC.zip

     [Data\Textures\terrain\Tamriel\новый.32.-32.-32.dds]
     Файл001=A90B42E2FA89CC75F41834D33E8C65DC.zip


Обрати внимание на краткость структур BackupLog.ini и RenameLog.ini - есть все, что нужно и никакой лишней информации.

Далее порядок действий при установке:
(пока не будем заострять внимание на установке обновлений плагинов разных версий)

1) Берем первый файл из плагина и делаем запись в BackupLog.ini.
2) Проверяем его наличие в игре.
3) Если в игре такого файла нет, то записываем его в игру.
4) Берем второй файл из плагина и делаем запись в BackupLog.ini.
5) Проверяем его наличие в игре.
6) Если в игре такой файл есть сохраняем файл из игры в архив, записываем новый на его место и делаем запись в RenameLog.ini.
7) И так до конца установки.

Для начала хватит. Пример BackupLog.
Для разборки установок новых версий плагинов, расскажи мне как ты формируешь сигнатуры?

И как ты собираешься определять, что такой плагин с более ранней версией уже был установлен?

Какие есть функции для работы с ini файлами, в том инструментарии, что ты пользуешься?

Изменено пользователем Lord-Vadim
Опубликовано

То есть ты предлагаешь мне отказаться от XML файла и использовать INI с параметрами-номерами в секции? Хм, в последний раз при использовании такой нумерации резко падала производительность анализа файла, но тогда и скрипт был менее умным (старый файл требований). Или XML должен работать вместе с ним? Полные пути в журнале просто удобны, не влияют на производительность. К тому же это позволяет использовать деинсталлятор для других игр, не выбранных на данный момент в качестве пути к Скайриму. Может быть я буду использовать его для установки модов к другим играм, Dragon Age'у, например. Кстати, как получился FAQ?
 

16.08.2013 17:19:46, Lord-Vadim сказал(-а):

Для разборки установок новых версий плагинов, расскажи мне как ты формируешь сигнатуры?

Сигнатура - это MD5 хэш-сумма из строки с ID. Сделал для того, чтобы можно было записать ID инсталлятора как имя папки, так как в ID может быть недопустимый символ. Обратное декодирование сигнатуры невозможно, но и не нужно.
 

16.08.2013 17:19:46, Lord-Vadim сказал(-а):

И как ты собираешься определять, что такой плагин с более ранней версией уже был установлен?

Очень просто, если он есть в журнале и помечен как установленный. В журнале есть версия установленного плагина. Так как я избавился от записи всей информации о плагине в журнал просто при его открытии, то это будет работать, информация записывается непосредственно при установке. Но если он не установлен через SKSM, то тут уж никак, кроме программных компонентов и DLC, конечно.
Кстати, по категориям. Если инсталлятор уже есть в журнале, то в качестве категории будет предложена та, в которой он находится, независимо от настройки в самом инсталляторе.

pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано (изменено)

FAQ - нормальный, всё понятно, а это главное.

 

Вопросы:

1) Какие есть функции для работы с ini файлами, в том инструментарии, что ты пользуешься?

2)  Какие есть функции для работы с XML файлами, в том инструментарии, что ты пользуешься? Там есть быстрые функции поиска информации в файле?

 

Тяжело давать какие-то советы не зная твоих возможностей.

Изменено пользователем Lord-Vadim
Опубликовано

Шлю тебе всю инструкцию к инструментарию. Раздел Action Referense. Там все имеющиеся функции. Документ на английском, но всё достаточно понятно, на мой взгляд.

 

http://rghost.ru/48175010

pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано
17.08.2013 08:51:27, Кербер сказал(-а):

Шлю тебе всю инструкцию к инструментарию. Раздел Action Referense. Там все имеющиеся функции. Документ на английском, но всё достаточно понятно, на мой взгляд.

 

http://rghost.ru/48175010

Спасибо! Посмотрю.

Опубликовано

Посмотрел. Функционал, конечно слабенький, но что есть - то есть.
Предлагаю, всё таки, обойтись двумя файлами BackupLog.ini и RenameLog.ini без XML.

Плюс еще в том, что при установке с помощью функции TextFile.ReadToString мы сможем прочитать BackupLog.ini в строку и затем выполнить поиск совпадений файлов с помощью FindPlagin и выдать пользователю информацию, что устанавливаемый плагин заменит файлы следующих плагинов ... и у пользователя будет выбор продолжать установку или нет.

function FindPlagin(sBackupLog, sFindFile)
     sSignatura = "";
     nPos = String.Find(BackupLog, sFindFile, 1, false);
     if nPos > 0 then
          nPosBegin = String.ReverseFind(BackupLog, "[", nPos, false);
          nPosEnd = String.Find(BackupLog, "]", nPosBegin, false);
          sSignatura = String.Mid(BackupLog, nPosBegin+1, nPosEnd-nPosBegin-2);
     end
     return sSignatura;
end

sBackupLog - передаём строку прочитанную с помощью TextFile.ReadToString из BackupLog.ini
sFindFile - передаём имя файла, который проверяем
функция возвращает сигнатуру плагина в котором встречается проверяемый файл или пустое значение если файл нигде не встречается.

Опубликовано

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

pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано (изменено)
17.08.2013 13:21:47, Кербер сказал(-а):

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

 

Чего там разбираться? Синтаксис как в Delphi и Pascal.

В XML функция поиска будет работать хуже, так как структура файла сложней и объём информации будет больше.

Но вообще программа твоя - делай как тебе удобней.

Только сначала хорошенько все обдумай, чтобы потом переделывать не пришлось.

 

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

Как ты собираешься реализовывать эту проверку в XML?

Изменено пользователем Lord-Vadim
Опубликовано

Шкаф собран, хорошо бы приступить к программе.

17.08.2013 16:26:54, Lord-Vadim сказал(-а):

В XML функция поиска будет работать хуже, так как структура файла сложней и объём информации будет больше.

Не, всё работает быстро.
 

17.08.2013 16:26:54, Lord-Vadim сказал(-а):

И еще. Функции записи, это хорошо, но это не сложно, а вот при деинсталляции любого плагина тебе каждый его файл надо будет проверять - не был ли он изменен.
Как ты собираешься реализовывать эту проверку в XML?

Не знаю, я ещё не думал об этом. В случае чего, мне не в новинку переписывать всю программу практически с нуля.

pre_1454504183__logo.png.webp.png Kortex Mod Manager: Discord | GitHub | Web-site
Опубликовано

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

Пока суть да дело - начну делать свою коллекцию модов.

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...