[MOD] BasilMod в Life is Feudal

[MOD] BasilMod в Life is Feudal


Доброго времени суток, Феодалы! Мы представляем Вам гайд по модификации "[MOD] BasilMod в Life is Feudal". И если Вы еще не ознакомились с предыдущими гайдами - мы рекомендуем Вам наверстать упущенное, чтобы Вам было понятно о чем сегодня пойдет речь. Мы надеемся, что этот гайд Вам будет полезен! Итак, приступим:

BasilMod :: Pack - это базовая модификация, предназначенная для использования на серверах, и на клиентах.
Она автоматизирует синхронизацию содержимого файлов между сервером и клиентом, аддоны к BasilMod используются только на сервере.
Для каждого конкретного сервера загружаются и используются свои версии модов.

Изначально, игрокам нужно скачать только этот пак, чтобы начать играть на модифицированном сервере.
Когда ваш клиент загрузит BasilMod :: Pack, версия будет отображаться в правом нижнем углу.

Сделайте свой сервер уникальным:

Поменяйте рецепты! Вашим игрокам не нужно будет повторно скачивать "modpack.zip" каждый раз, когда вы меняете что-то на своем сервере.

Добавляйте новый контент на сервер:
Скажите нет бревенчатым лестницам, и возрадуйтесь осадным башням!
Есть объявление или торговое предложение? Поделитесь им на доске объявлений (Этот контент не входит в оригинальный пак. Требуется мод BasilMod :: BulletinBoard.)
[MOD] BasilMod в Life is Feudal

Этот мод является частью комплекта BasilMods.

Бэкапы всех обновленных файлов, хранятся на стороне клиента, в папке BasilMod/_cache/server-id/ folder:
"backup/new" содержит отметки о добавленных файлах, которых не было в оригинальной игре LiF: Yo.
"backup/upd" содержит оригинальные файлы перед обновлением.
"update/" содержит кэшированные загруженные файлы с сервера.
Вы всегда можете восстановить обновленные файлы из окна настроек пакета.
Если вы присоединяетесь к серверу, на котором не включен BasilMod :: Pack, исходные файлы будут автоматически восстановлены из резервной копии, и потребуется перезагрузка игрового клиента.
Если вы переключаетесь между несколькими серверами с поддержкой BasilMod :: Pack, необходимые файлы будут автоматически синхронизированы, а другие файлы будут восстановлены в исходное состояние.
Вы можете загрузить / выгрузить / перезагрузить совместимые дополнения одним щелчком мыши. Если вы GM, вы можете обновить / настроить серверную часть без перезапуска сервера.

BasilMod :: Pack требуется для некоторых других модов, поскольку расширяет возможности связи между клиентом и игровым сервером.

Администратор сервера указывает содержимое, которое необходимо синхронизировать, например, cm_objects.xml, skill_types.xml - новые модели dts и т.д.
Кроме того, этот пак автоматически найдет все установленные аддоны к BasilMod на сервере, и загрузит их на клиент, так что на клиенте будет включен весь список новых функций.

Если сервер использует BasilMod :: Pack, администратор может запретить соединение, без установленной клиентской стороны. Игрок получит соответствующее уведомление.


Соображения безопасности:

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

BasilMod :: Pack предоставляет скомпилированные исполняемые файлы, а также исходный код для них, так что вы можете скомпилировать их самостоятельно, чтобы убедиться в отсутствии проблем безопасности. Эти исполняемые файлы используются для кодирования и декодирования данных обновления между сервером и клиентом.

Файлы помещаются в папку «BasilMod / pack».
Сервер запрашивает base64encoder, а клиент требует base64decoder.

Вы можете скомпилировать предоставленный исходный код для обеспечения функциональности кодера / декодера. https://github.com/custodian/lif-base64utils В качестве альтернативы вы можете создать свой собственный, следуя этим правилам:

base64encoder
Имя должно быть "base64encoder.exe"
Приложение должно принимать: путь arg1 к исходному файлу, целевой файл arg2 для закодированных данных.
Кодирование должно выполняться с помощью binary_to_base64 (gzip (data)).
пример: base64encoder.exe path/to/source/file.txt path/to/source/file.txt.base64
base64decoder
Имя должно быть "base64decoder.exe"
Приложение должно принимать: путь arg1 к исходному кодированному файлу, целевой файл arg2 для декодированных данных.
Декодирование должно быть выполнено с помощью ungzip (base64_to_binary (data)).
пример: base64decoder.exe path/to/source/file.txt.base64 path/to/source/file.txt


Инструкции для клиента:

Это очень просто, редактирование файлов не требуется! (На данный момент вам все еще нужно отредактировать файл main.cs)

Установка:
1.Загрузите архив basilmodloader.zip.
2.Поместите basilmodloader.zip в папку с игрой: "Life is Feudal Your Own\basilmodloader.zip".
Запрещается распаковывать архив!
3.Добавьте следующую строку в конец вашего файла main.cs в "Life is Feudal Your Own\main.cs"
exec("basilmodloader/loader.cs");
4.Играть в LiF: YO.

Удаление:
Удалите архив basilmodloader.zip из папки с игрой.
Удалите папку BasilMod / из папки с игрой.

Когда ваш клиент загрузит BasilMod :: Pack, версия будет показана в правом нижнем углу. Если Сервер поддерживает BasilMod :: Pack, клиент автоматически свяжется с ним. Сервер может предоставить клиенту кнопку «Быстрое соединение».

Инструкции для сервера:

Найти последнюю версию можно здесь: https://www.dropbox.com/sh/b6ih3z8dhopmhhq/AACWZfRU_z4FzhN38PNTImHZa?dl=0

Установка:

1.Загрузите и поместите файлы мода в папку «BasilMod / pack /» корневого каталога сервера.
2.Изменить конфигурацию: настроить обновления содержимого.
3.Добавьте эту строку в конец "main.cs", расположенного в корневой папке, или запустите его в консоли сервера для загрузки мода без перезагрузки
exec("BasilMod/pack/pack.cs");
4.Играть в LiF.

Конфигурация:
Общая конфигурация загружается из файла config.cs.
$BasilMod::cmVersionCompatible = "0.7.0.6";
Необязательный параметр. Укажите совместимую версию сервера. Это сделано для отключения автозагрузки модуля при поступлении нового патча на сервер. Ваши изменения содержания должны быть проверены вручную. Как правило, мод должен быть совместим с будущими версиями, но если это не так, вам придется ждать обновления.
$BasilMod::pack::noModDisconnect = false;
Будет отключать игроков, без установленного на клиент мода.
Если установлено значение «true», игрок не сможет присоединиться. Будет отображено сообщение с текстом.
Если установлено значение «false», игрок сможет присоединиться, но увидит окно сообщения (и сообщение системного канала) с предоставленным вами текстом.
$BasilMod::pack::noModMessage = "Посетите basilmod-pack-t14651 / для более подробной информации!"; Сообщение будет показано для игроков без мода. Ограничения ~ 200 символов.

Конфигурация контента загружается из файлов content.cs.
BasilMod::pack_favoriteServer("Awesome Server", "127.0.0.1:28000", "basil");
Функция добавления кнопки "FavoritesServer" для клиента.
Параметры: заголовок кнопки, адрес сервера, пароль сервера
BasilMod::pack_updateRecipe();
Автоматически генерировать и синхронизировать с клиентом информацию по рецептам, на основе базы данных. Не требуется редактирование XML.
BasilMod::pack_updateRecipeRequirement();
Автоматическая генерация и синхронизация данных по требованиям к рецептам у клиента на основе базы данных. Не требуется редактирование XML.
BasilMod::pack_updateObjectsTypes();
Автоматически генерировать и синхронизировать информацию о типах объектов клиента на основе базы данных. Не требуется редактирование XML.
BasilMod::pack_content("targetfile", "sourcefile");
Функция для регистрации обновления контента для клиента.
"targetfile", где файл должен быть размещен.
"sourcefile", какой файл сервера следует использовать в качестве исходного. Параметр является необязательным, если он не указан, тот же целевой файл используется в качестве источника.
BasilMod::pack_contentdir("sourcedir");
запакуйте весь каталог с его структурой в качестве обновления. Структура каталогов должна соответствовать расположению клиента по умолчанию, считая sourcedir корневым клиентом.
Пример: "sourcedir/art/Modesl/3D/MyServer/MyModel.dts" будет помещен в "art/Modesl/3D/MyServer/MyModel.dts" на клиенте.
Функция полезна для доставки обновлений содержимого моделей и текстур клиенту.

Пример и конфигурация:

Общая конфигурация config.cs

CODE: SELECT ALL$BasilMod::cmVersionCompatible = "0.7.0.6";
$BasilMod::pack::noModDisconnect = false;
$BasilMod::pack::noModMessage = "Visit http://lifeisfeudal.com/forum/basilmod-pack-t14651/ for more details!";

Конфигурация контента content.cs

CODE: SELECT ALL//Syncronize object settings, skills and equipment
BasilMod::pack_content("data/skill_types.xml");
BasilMod::pack_content("data/cm_objects.xml");
BasilMod::pack_content("data/cm_equipTypes.xml");

//Auto-update recipes and object types.
BasilMod::pack_updateRecipe();
BasilMod::pack_updateRecipeRequirement();
BasilMod::pack_updateObjectsTypes();

//Add fast connect button for client for clients
BasilMod::pack_favoriteServer("Awesome Server", "127.0.0.1:28000", "basil");

А на этом все, Феодалы. Мы надеемся, что гайд по модификации "[MOD] BasilMod в Life is Feudal" был полезен для Вас. Ищите описание всех модификаций BasilMod на нашем сайте. Ищите больше гайдов по всем играм на нашем сайте!Держите свои клинки заточенными, а склады полными, и приятной Вам игры!


Комментарии


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