Need help?
Create a topic in the appropriate section
Don't write everything in the chat!Take a look at the marketplace
There you can buy
everything related to game serversDon't want a ban?
Please read our rules
Don't disturb the order!Sell or buy?
Use services of the guarantor
We will make your deal safe



- 0
-
Similar Content
-
By 123new
В данной теме я распишу возможность создания серверного мода для сервера на собственном примере и объясню как его собрать.Работающий на момент публикации статьи на версии сервера игры 1.04.152050.
Темы к ознакомлению, связанные с данным материалом:
https://s-platoon.ru/topic/8701-enscript-uchimsya-osnovam-skriptinga/
https://s-platoon.ru/topic/8622-enscript-delaem-skript-dlya-moda-i-osnovnye-principy-skriptinga-modov/
Нам понадобятся:
1. Сервер игры актуальной версии, не ниже патча 1.04. Как установить можно узнать тут:
До версии 1.04 параметра servermod у сервера игры не существовало!!!
2. Программа 'PBO manager' с состава инструментария армы из сети: https://www.armaholic.com/page.php?id=16369
Зеркало: https://yadi.sk/d/_gmzoNSDpNJTt
Еще зеркало:
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
3. Скрипты для упаковки в наш мод, сформированные и подготовленные нами вручную. Как - смотрите тему
4. Notepad++ https://notepad-plus-plus.org/download
P.S. Вместо 'PBO manager' можно использовать DayZ Tools, но как им пользоваться разбираемся сами 😉
И так, приступим:
1. Предположим, что у нас имеется свой некий набор
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
Подробнее о создании скриптов для своих целей - читайте вот эту тему!
2. Создаем папку с нашим модом. Для примера, это будет папка '@My_Server_Mod'. В созданной нами папке создаем папку 'Addons', а в ней папку 'My_Server_Mod'.
3. Помещаем содержимое распакованного архива в папку 'My_Server_Mod'. Должно получиться так:
4. В папке 'My_Server_Mod' создаем файлик 'config.cpp' и заполняем его следующими данными (советую использовать Notepad++ для этого):
class CfgPatches // требуется обязательно { class My_Server_Mod // требуется обязательно, совпадает с именем мода { units[]={}; // may be not worked weapons[]={}; // may be not worked requiredVersion=0.1; // may be not worked requiredAddons[]={}; /* requiredAddons[]= { "DZ_Data", // Перечисляем требуемые и используемые модом аддоны (pbo-файлы игры и модов по их внутренним скриптовым именам) }; */ }; }; class CfgMods // // требуется обязательно, совпадает с именем мода { // https://community.bistudio.com/wiki/DayZ:Modding_Structure#Mod_presentation class My_Server_Mod { dir = "My_Server_Mod"; // Имя папки мода, совпадает с именем мода picture = ""; // Картинка в описании мода action = ""; // Ссылка, например вот так: action = "https://dayz.com/"; hideName = 1; // Не уверен, что этот параметр работает hidePicture = 1; // Не уверен, что этот параметр работает name = "My_Server_Mod"; // Имя мода (а также его внутреннее скриптовое имя) logoSmall = "Mods/TestMod/modlogosmall.tga"; // значок рядом с именем мода, если описание не развернуто logo = "Mods/TestMod/modlogo.tga"; // логотип под меню игры logoOver = "Mods/TestMod/modlogohover.tga"; // при наведении курсора мыши на логотип tooltip = "tooltip"; // подсказка при наведении курсора мыши overview = "My Server Mod"; // Описание credits = "123new"; // credits author = "123new"; // author authorID = "0"; // author steam ID version = "1.0"; // version extra = 0; // Не уверен, что этот параметр работает type = "mod"; // требуется обязательно, остается неизменным // inputs = "mods\testmod\inputs\my_new_inputs.xml"; // необязательно, при использовании пользовательских inputs dependencies[]={"Core","GameLib","Game","World","Mission"}; // необязательно, если необходимо установить зависимость класса class defs { class engineScriptModule { value=""; // если значение пустое, используется функция ввода по умолчанию files[]={"My_Server_Mod/scripts/1_Core"}; // вы можете добавить любое количество файлов или каталогов, и они будут скомпилированы вместе с оригинальными скриптами игрового модуля }; class gameLibScriptModule { value=""; files[]={"My_Server_Mod/scripts/2_GameLib"}; }; class gameScriptModule { //value="CreateGameMod"; // когда значение заполнено, имя функции ввода модуля скрипта по умолчанию перезаписывается им value = ""; files[]={"My_Server_Mod/scripts/3_Game"}; }; class worldScriptModule { value=""; files[]={"My_Server_Mod/scripts/4_World"}; }; class missionScriptModule { value=""; files[]={"My_Server_Mod/scripts/5_Mission"}; }; }; // Если какой-то из разделов скриптинга вам не нужен и вы не сибираетесь его паковать, сотрите необходимый блок с ним выше и в массиве dependencies }; }; Пояснения в файле оставил. Файл готовый:
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
Как видите, в 'deffs' названия классов и путей соответствуют родным из 'scripts.pbo', но с допиской имени мода. Имя мода в данном случае и есть идентификатор для обращения к своему моду извне. А в 'dependencies' перечисляются используемые классы оригинальных скриптов без дописки номера секции. Количество используемых 'dependencies' и блоков 'deffs' должно быть идентично.
Пояснения есть также и в официальной документации от разработчика: https://community.bistudio.com/wiki/DayZ:Modding_Structure#Mod_presentation
5. Запаковываем нашу папку 'My_Server_Mod' в pbo-файл 'My_Server_Mod.pbo' через 'PBO manager', как на скриншоте ниже:
Можно использовать и другие способы запаковки, если знаете их или привычны вам.
6. Добавляем в параметры запуска сервера параметр:
"-servermod=@My_Server_Mod;" -FilePatching 7. Радуемся, наш серверный
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
P.S. Создавать bikey файл для мода и bisign подписи для него не требуется, иначе это может привести к неработоспособности серверной модификации (возможно, недоработка сервера игры разработчиком)
Отмечу сразу, что данный способ подходит для модификации и переписывания оригинальных классов скриптов сервера от разработчиков и модификации чужих модов с помощью моддинга, применяется исключительно на стороне сервера игры и клиент игры не затрагивает. Распространять такой мод игрокам НЕ НУЖНО!
Изменение оригинальных скриптов, для которых не предусмотрена операция 'modded class' в движке игры, а также классов и функций, которые защищены языком и движком игры от такого рода действий через серверные моды не получится. Если вы столкнулись с этим, вам проще распаковать scripts.pbo и поместить папку scripts в корень сервера игры, добавить в параметры запуска сервера параметр -FilePatching и изменять напрямую в папке необходимые вам файлы.Запаковывать назад в pbo папку и размещать в dta в таком случае не нужно!
P.P.S. Процедура создания своего собственного клиент-серверного мода на основе скриптов работает таким же образом. В случае создания такого мода, файл 'config.cpp' может быть для стандартного мода более разнообразным, а также после требуется обязательная подпись такого мода в bisign и создание bikey файлов. Более подробно это освещать требуется отдельно!
-
By DrTauren
На нашем сайте предусмотрена возможность рекламирования вашего игрового сервера/сайта/програмного обеспечения при помощи баннеров и ссылок.
Баннеры под первым сообщением темы ↓
Баннер на главной странице (над чатом) ↓
Ссылки над первым сообщением темы ↓
Ссылка на главной странице (над чатом) ↓
Заявку вы можете заполнить в этой же теме, либо написать мне в ЛС.
Любые сообщения не по теме запрещены.
-
By
NoNameUltima
Еще одна тема, по которой возникают вопросы - как залить свой мод в steam
Видео пару минут, надеюсь все понятно
-
By BORN
Хелп кто знает как подключить свой сервер тс3 к серверу армы 3 alris life куда нужно лесть в какие файлы серва или что нужно для этого
-
By Igor172
Всем добрый ночи, не смог найти нужный раздел на форуме. ((
Ситуация следующая, есть свой сервак (физический) стоит в датацентре. На нем можно запустить различные online проекты. Предложения в пм. Также есть ООО, можем официально оформить отношения с потонцеальными партнерами. П.с. Сервак мощный!!
-
-
Our picks
Собсна есть 3D моделька и текстура для неё. Хочу сделать как доп. модель для игроков. Как сделать свой аддон чтобы в админке можно было поставить этот скин? А ещё лучше как загружать его вместе с миссией чтобы отдельно ничего не качать?
Share this post
Link to post
Share on other sites