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
Mozart
Доброго времени суток , пытаюсь сделать простенький HUD для вывода параметров жизнедеятельности еда вода здоровье и тд . Собственно в чем вопрос, как его обернуть в графическую оболочку? например покрасить каждый параметр в свой собственный цвет, задать обводку, или сгруппировать их друг под друга? может сталкивался кто с таким вопросом? буду благодарен за любую наводку!
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
-
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 Serdce
Данный скрипт, меняет процесс ремонта вашей техники, делая её более логичней, как было в А2.
Для замены колеса, на нужно собственно само колесо, и тд. и тп.
Подробный список чего и для чего вы найдёте в файлах.
Итак, преступим!
Я не автор, я всего лишь перевожу.
Первоисточник - https://github.com/aussie-battler/Exilemod-Super-Advanced-Repair-System-SARS
По ссылке выше скачиваем архив, распаковываем в удобное место.
Распаковываем ваше миссию "Exile.ваша карта"
Из архива копируем папку "Custom" в папку вашей миссии "Exile.ваша карта"
Открываем ваш description.ext в нем мы ищем showHUD[] =
и полностью меняем на это -
Далее открываем ваш - initPLayerLocal.sqf
В этом файле, сразу после строки - if (!hasInterface || isServer) exitWith {};
Мы добавляем
//Bones Super Advanced Repair System (SARS)
Bones_fnc_salvageAndRepairMenu = compileFinal preprocessFileLineNumbers "Custom\advancedRepair\Bones_fnc_salvageAndRepairMenu.sqf";
Далее открываем ваш - config.cpp
В нем мы ищем - class Car
Внутри этого класса мы ищем
И меняем на
Так же далее чуть ниже - class Air
В нем мы также меняем это
На это
Далее для если у вас есть Infistar!
Распаковываем ваш инфистар и открываем его конфиг.
В нём ищем KCM = "true"; /* Just close ALL CommandingMenus */
И меняем значение на false
Чуть ниже в строке allowedCommandingMenus
Мы добавляем "#USER:ASL_Show_Repair_Options_Menu_Array"
Ну вот и всё готово, всё сохранили и запаковали как было!
-
By fedotovyasha
Пишу свой лаунчер на c#. Скачал клиент в котором был loader.exe. С ним работает норм, но я хочу без него запускать игру. Как это сделать? (Пиратка)
-
-
Our picks
Как мне в свой HUD добавить иконки от Single Currency & Banking, мне нужно добавить две иконки, иконка денег в банке и количество денег на руках,как это можно реализовать
http://s-platoon.ru/index.php?/topic/383-novyi-hud-kak-v-origins-dlia-dayz-epoch/ вот этот худ
Share this post
Link to post
Share on other sites