Jump to content
DAYZ-CODE.RU - Создай свой игровой сервер

Search the Community

Showing results for tags 'script'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • THE MAIN SECTION OF THE FORUM
    • DAYZ-CODE.RU
    • АРБИТРАЖ DAYZ-CODE.RU
    • DAYZ STANDALONE GAME NEWS
  • SERVER BUILDING - DAYZ STANDALONE
    • GUIDES/MANUALS AND OTHER INSTRUCTIONS
    • HELP - DAYZ STANDALONE
  • PRIVATE SECTION OF THE SITE
    • PRIVATE SECTION
  • TRADE SECTION AND PROVISION OF SERVICES
    • PURCHASE OF GOODS AND SERVICES
    • PROVISION OF SERVICES
    • WORK
  • PRODUCT SUPPORT TOPICS
    • PRODUCT SUPPORT DAYZ STANDALONE
    • SUPPORT FOR "USEFUL SOFTWARE"
  • Different
    • FLAME ON VARIOUS TOPICS
  • JOINT PURCHASES
    • ALL JOINT PURCHASES
  • SITE ARCHIVE DAYZ-CODE.RU
    • SITE ARCHIVE
  • ARMA 3
    • ARMA 3 - GUIDES/MANUALS AND OTHER INSTRUCTIONS
    • HELP - ARMA 3
  • ARMA 3
    • ARMA 3 - Missions and Campaigns
  • ARMA 3
    • ARMA 3 - Online game
  • ARMA 3
    • ARMA 3 - Editor
  • ARMA 3 -BIS
    • ARMA 3 - BIS Bugtracker
  • DAYZ STANDALONE -BIS
    • DAYZ SA - BIS Bugtracker

Categories

  • Equipment
    • Shoes
    • Masks
    • Hats
    • Glasses
    • Gloves
    • Vests
    • Backpacks
    • Cloth
    • Belts
  • Craft
  • Food
    • Meat and Fish
    • Canned food
    • Mushrooms
    • Vegetables and fruits
    • Water and Drinks
  • Indicators
  • Construction
  • Ammo
  • Modules
    • Magazines and clips
    • Add. Modifications
    • Butts
    • Sights
    • Muzzle modifications
    • Handguard and Handles
  • Weapons
    • G. launchers
    • Auth. Rifles
    • Shotguns
    • Pistols M. guns
    • Rifles
    • Pistols
    • Throwing
  • Medicine
  • Grenades
  • Diseases
  • Instruments
  • Tents and Containers
  • Resources
    • Fuel
    • Extracted resources
    • Building Resources
    • Animal skins
  • Electrical apps
  • Means of communication
  • Sources of light
  • Repair
  • Other
  • Cooking
  • Explosives

Categories

  • DayZ STANDALONE
    • Server builds
    • Scripts, mods
    • Map modding
    • Transport
    • Weapons
    • Furniture
    • Items
    • Models
  • DayZ useful software
    • Software
    • Other

Product Groups

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Information


Paul


City


Member Title


VKontakte


Discord


Boosty


Mail


Skype


Steam ID

  1. TheDJ

    MF Blowout

    Просмотр файла MF Blowout Хвалёный выброс MF полностью деобфускацирован и вырезана защита. P.S Код полностью как у Совы. The vaunted MF release has been completely deobfuscated and protection has been cut out. P.S. The code is completely like that of an Owl. Добавил TheDJ Добавлено 07.02.2025 Категория Скрипты, моды  
  2. Version 1.0.0

    65 downloads

    файл init.c, с уже готовыми 4-мя вариантами одежды при спавне на берегу, то есть после каждой смерти персонаж будет появляться в одном из 4-х этих сетов, в файле подписал какая строчка за что отвечает. the init.c file, with 4 ready-made clothing options when spawning on the shore, that is, after each death, the character will appear in one of these 4 sets, in the file signed which line is responsible for what.
    Free
  3. Просмотр файла MF Anomaly+Detectors - Аномалии и Детекторы Убрана защита в моде, код полностью открыт. Модификация позволит вам настроить и разместить на своем сервере систему разнообразных Аномалий с возможностью тонкой настройки под свои нужды. Так же в комплекте идут Детекторы, которые позволят вам не попасть в аномалии, либо найти в Аномалиях Артефакты В данный момент в шаблон включено Аномалия Химическая (болотная, красная, желтая, голубая) Аномалия Огненная Термическая Аномалия Пар Аномалия Фрост (морозная) Аномалия Трамплин Аномалия Электрическая (двух видов) Аномалия Гравитационная Горизонтальная Аномалия Гравитационная Вертикальная Аномалия Мухоловка (как большая мухоловка) Аномальное растение Жгучие Ветви Аномальные летающие камни 3 вида Аномалия Комета - Блуждающая аномалия (да, как в Metro Exodus) 3 вида, В сумме 21 аномалия. Детекторы Детектор Соник (Звуковое оповещение о аномалии рядом) Детектор Начальный (Примитивный детектор аномальных образований) Детектор Мишка (Детектор с расширенным функционалом) Детектор Палка Поводыря (Активные антенны покажут вам приближение к Артефакту, а дисплей покажет дистанцию) Детектор Цифровой (Цифровой детектор 3его уровня) Детектор Цифровой Улучшенный г (Улучшенный цифровой детектор 4 уровня) Ну и конечно болты для проверки аномалии сделаны удобной кнопкой B Предусмотрено: Оптимизация аномальных полей, через систему кластеров. Динамический респавн аномалий вместе с MF_Blowout. Настройка спавна артефактов в аномалиях. Настройка урона от аномалий. Настройка защитных предметов одежды и предметов и инвентаре для защиты от аномалий. Оптимизация клиента для слабых пк (отключение источника света аномалий и уменьшение дальности прорисовки аномалий для каждого клиента(игрока). Возможность просмотреть аномальные зоны через ESP в VPPTOOLS а так же отображение кластеров через визуальную форму(шейпы). Настройка детекторов по дальности обнаружения и доступным тирам артефактов. Система спавна аномалий для ивентов через VPPADMIN/ Spawn temp anomaly throught bild in spawner Система отображения полей аномалий для администратора/Anomaly clusters can be showed throught VPPAdmin extension The mod's security has been removed, and the code is fully open. The modification will allow you to set up and host a system of various Anomalies on your server with the possibility of fine-tuning to suit your needs. Detectors are also included, which will allow you not to get into the anomalies, or to find Artifacts in the Anomalies Currently included in the template. Chemical Anomaly (marsh, red, yellow, blue) The anomaly is Fiery Thermal The anomaly of Pairs Anomaly Frost (frosty) Springboard Anomaly Electrical anomaly (of two types) Gravity Anomaly Horizontal Vertical Gravity Anomaly Anomaly Flycatcher (like a large flycatcher) Abnormal Plant Burning Branches There are 3 types of anomalous flying stones The Comet anomaly is a wandering anomaly (yes, as in Metro Exodus) of 3 types, There are 21 anomalies in total. Detectors Sonic Detector (Sound alert about an anomaly nearby) Initial detector (Primitive detector of anomalous formations) Mishka Detector (Detector with advanced functionality) Guide Stick Detector (Active antennas will show you the approach to the Artifact, and the display will show the distance) Digital Detector (Digital detector of the 3rd level) Enhanced Digital Detector G (Enhanced Digital Detector Level 4) And of course, the bolts for checking the anomaly are made with a convenient B button. Provided by: Optimization of abnormal fields through a cluster system. Dynamic respawn of anomalies along with MF_Blowout. Setting up artifact spawn in anomalies. Adjusting anomaly damage. Customize protective clothing and items and inventory to protect against anomalies. Optimization of the client for weak PCs (turning off the light source of anomalies and reducing the range of drawing anomalies for each client (player). The ability to view abnormal zones through ESP in VPPTOOLS, as well as display clusters through a visual form (shapes). Configuring detectors by detection range and available ranges of artifacts. Anomaly spawn system for events via VPPADMIN/ Spawn temp anomaly through bild in spawner Anomaly field display system for the administrator/Anomaly clusters can be shown through VPPAdmin extension Добавил TheDJ Добавлено 07.02.2025 Категория Скрипты, моды  
  4. Делюсь базой мода, который пишу для своего сервера. Суть мода в наличии репутации игрока которая начисляется в зависимости от его действий (в базе действия 2 - убийство зомби и убийство игрока). В зависимости от репутации игроку при повторном респе выдается определенный лут (для теста использую яблоки и сливы) Древовидная структура архива и назначения файлов: scripts/4_World/reputation/ReputationManager.c — Менеджер логики репутации scripts/4_World/reputation/ReputationDefines.c — Константы, диапазоны репутации scripts/4_World/players/PlayerBase.c — Расширение класса PlayerBase c логикой репутации scripts/4_World/zombies/DayZInfected.c — Модификация для начисления очков за зомби config.cpp — Подключение скриптов, настройки мода scripts/4_World/reputation/ReputationManager.c class ReputationManager { static int GetReputationMode(int rep) { if (rep >= -25 && rep <= 25) return 0; // Нейтральная if (rep > 25 && rep <= 50) return 1; // Положительная if (rep < -25 && rep >= -50) return -1; // Отрицательная return 0; } } scripts/4_World/reputation/ReputationDefines.c const int REPUTATION_NEUTRAL_MIN = -25; const int REPUTATION_NEUTRAL_MAX = 25; const int REPUTATION_POSITIVE_MIN = 26; const int REPUTATION_POSITIVE_MAX = 50; const int REPUTATION_NEGATIVE_MIN = -50; const int REPUTATION_NEGATIVE_MAX = -26; const int REPUTATION_START = 0; const int REPUTATION_ZOMBIE_KILL = 5; const int REPUTATION_PLAYER_KILL = -25; scripts/4_World/players/PlayerBase.c modded class PlayerBase { int m_Reputation; override void OnInit() { super.OnInit(); m_Reputation = REPUTATION_START; } int GetReputation() { return m_Reputation; } void AddReputation(int value) { m_Reputation += value; ShowReputationToPlayer(); } void SetReputation(int value) { m_Reputation = value; ShowReputationToPlayer(); } void ShowReputationToPlayer() { string repText = string.Format("Ваша репутация: %1", m_Reputation); Param1 msgParam = new Param1(repText); GetGame().RPCSingleParam(this, 333, msgParam, true, GetIdentity()); } override void OnRPC(PlayerIdentity sender, int rpc_type, ParamsReadContext ctx) { super.OnRPC(sender, rpc_type, ctx); if (rpc_type == 333) { Param1 repParam; if (ctx.Read(repParam)) { Param1 chatMsg = new Param1(repParam.param1); GetGame().Chat(chatMsg.param1); } } } override void StartingEquipSetup(PlayerBase player, bool clothesChosen) { super.StartingEquipSetup(player, clothesChosen); int rep = this.GetReputation(); if (rep >= 15 && rep <= 50) { player.GetInventory().CreateInInventory("Apple"); } else if (rep <= -50 && rep >= -150) { player.GetInventory().CreateInInventory("Plum"); } } override void EEKilled(Object killer) { super.EEKilled(killer); PlayerBase killerPlayer = PlayerBase.Cast(killer); if (killerPlayer && killerPlayer != this) { int victimReputation = this.GetReputation(); if ((victimReputation > 0) || (victimReputation < 0)) { killerPlayer.AddReputation(REPUTATION_PLAYER_KILL); } } } } scripts/4_World/zombies/DayZInfected.c modded class DayZInfected { override void EEHitBy(EntityAI attacker, int component, string ammo, vector pos, float energy, float dmg) { super.EEHitBy(attacker, component, ammo, pos, energy, dmg); if (IsAlive()) return; PlayerBase player = PlayerBase.Cast(attacker); if (player) { player.AddReputation(REPUTATION_ZOMBIE_KILL); } } } config.cpp class CfgPatches { class MyReputationMod { units[] = {}; weapons[] = {}; requiredAddons[] = {"DZ_Data"}; }; };
  5. Немного структурированные знания по скриптингу в Dayz Введение Моддинг и скриптинг в DayZ Standalone — это процессы создания и изменения игрового контента с помощью внешних модификаций и программных скриптов. Моддинг позволяет добавить новые возможности, изменить баланс или добавить уникальный контент, а скриптинг — это инструмент расширения функционала игры за счёт написания кода на языке Enfusion Script. Существует несколько основных типов модов: Балансные моды — корректируют игровые параметры, например, урон оружия, здоровье персонажей или частоту появления ресурсов. Контентные моды — добавляют новые предметы, сущности, анимации или даже целые игровые механики, как кастомные рецепты крафта или уникальные задания. Серверные моды — расширяют возможности управления сервером, добавляют админ-команды, систему логирования или настройки экономики. Скриптинг необходим для реализации логики, которая не поддерживается стандартными средствами игры. Например, создание взаимодействия с окружением, динамический спавн лута, реализация уникальных действий для персонажа или разработка сложных игровых событий. Знания скриптинга важны как для начинающих, так и для опытных моддеров. Новички смогут создавать собственные простые моды, экспериментировать с игровыми механиками, а профессионалы — разрабатывать комплексные модификации, оптимизировать код и интегрировать новые функции в DayZ с максимальной гибкостью. Структура модов и файлов Стандартная структура мода для DayZ Standalone построена так, чтобы обеспечить удобство разработки, сборки и подключения модификаций как на клиентской, так и на серверной стороне. Рассмотрим подробно основные папки и ключевые файлы. Основные папки мода addons — содержит скомпилированные PBO-файлы, которые игра загружает как готовые модули. Это конечный формат мода для запуска. scripts — исходный код скриптов на Enfusion Script, включая логику игрового поведения, классы, функции и т.д. config — файлы конфигурации, такие как config.cpp, определяющие параметры сущностей, предметов, настройки мода. meta — метаданные, в том числе системные файлы, описывающие зависимости и структуру мода. Ключевые файлы конфигурации config.cpp — основной конфигурационный файл, содержащий описание классов, наследования, определение настроек объектов и скриптов. types.xml — определяет параметры лута и спавна предметов в мире игры: частоту появления, количество, зоны генерации. events.xml — задаёт группы событий со списком предметов, которые могут появляться при наступлении определённых условий. Процесс сборки и подключение мода Для упаковки мода создаётся PBO-файл — специальный архив, который содержит все важные файлы и папки. PBO формат используется движком DayZ для быстрого и упорядоченного доступа к ресурсам. Для создания PBO применяются инструменты: Addon Builder — официальный инструмент из Arma Tools для упаковки папки с модом в PBO. Community Tools — сторонние программы, например, PBO Manager, которые позволяют упаковывать и распаковывать PBO. После сборки мод помещается на сервер и/или клиент, подключается в конфигурационных файлах сервера (например, serverDZ.cfg) через параметр mods=. При запуске игры или сервера мод автоматически загружается и используется. Пример простой структуры модификации MyMod/ ├── scripts/ │ └── 4_World/ │ └── Entities/ │ └── MyCustomEntity.c ├── config.cpp ├── mod.cpp └── types.xml Основы Enfusion Script Enfusion Script — это специализированный скриптовый язык, разработанный компанией Bohemia Interactive для управления игровой логикой в DayZ Standalone. Он основан на синтаксисе, похожем на C++ и SQF, но адаптирован под особенности движка Enfusion, обеспечивая мощный и гибкий инструмент для моддинга. Переменные и типы данных В Enfusion Script поддерживаются основные типы данных: int — целочисленные значения float — числа с плавающей точкой bool — логические значения (true/false) string — текстовые строки ref — ссылки на объекты и классы В примере класс CustomPlayer наследует базовые свойства и методы PlayerBase, переопределяя метод OnPlayerHit с вызовом родительской реализации через super. Особенности языка Enfusion Script Строгая типизация — ошибки типов легко обнаруживаются на этапе компиляции. Поддержка событий и хуков для реакций на игровые действия. Интеграция с движком игры через специальные API для работы с объектами, игроками и окружением. Поддержка декларативных конфигураций файлов, таких как config.cpp, в тесной связке со скриптами. Знание этих основ критично для успешной работы с моддингом в DayZ, поскольку понимание структуры и возможностей Enfusion Script позволяет создавать не только простые корректировки, но и сложные игровые механики, интегрируя собственный код с базовой логикой игры. Объявление переменной происходит с явным указанием типа: int playerHealth = 100; float speed = 4.5; bool isAlive = true; string playerName = "Survivor"; Функции и методы Функции объявляются с использованием ключевого слова void или возвращаемого типа, если функция возвращает значение. Параметры передаются в круглых скобках: void PrintPlayerName(string name) { Print("Player: " + name); } int Add(int a, int b) { return a + b; } Наследование классов Enfusion Script поддерживает объектно-ориентированное программирование с наследованием. Для создания нового класса от существующего используется оператор :: class CustomPlayer : PlayerBase { override void OnPlayerHit(int damage) { super.OnPlayerHit(damage); Print("Custom damage reaction"); } } Работа с сущностями В DayZ ключевыми игровыми сущностями являются PlayerBase, ItemBase и AnimalBase. Эти базовые классы представляют игрока, предметы и животных соответственно. Создание и модификация сущностей позволяет добавлять новые игровые механики, расширять взаимодействия и изменять поведение объектов в мире. Основные классы сущностей PlayerBase — отвечает за логику и состояния персонажа: здоровье, инвентарь, движения, взаимодействия. ItemBase — базовый класс для всех предметов в игре, включая оружие, снаряжение, расходники. AnimalBase — класс, управляющий поведением дикой природы, включая передвижения, агрессивность и реакции. Создание кастомной сущности Для создания собственной сущности используется наследование из одного из базовых классов. Например, создадим новый предмет с дополнительной логикой: class CustomItem : ItemBase { void CustomItem() { Print("Создан кастомный предмет"); } override void OnUse() { super.OnUse(); Print("Использован кастомный предмет"); } } Здесь CustomItem наследуется от ItemBase, добавляет конструктор и переопределяет метод OnUse(), чтобы выполнить дополнительный код при использовании предмета. Модификация поведения сущностей Расширение классов позволяет изменять логику без переписывания всего кода. Например, для игрока можно добавить дополнительную реакцию на получение урона: class CustomPlayer : PlayerBase { override void OnHit(int damage, string source) { super.OnHit(damage, source); Print("Игрок получил " + damage + " урона от " + source); } } Особенности работы с сущностями Все кастомные классы необходимо прописывать в config.cpp для правильной регистрации игры. Взаимодействие с миром и лутом В DayZ спавн объектов и лута в игровом мире регулируется с помощью файлов types.xml и events.xml. Эти конфигурации определяют, какие предметы и с какой частотой появляются, а также в каких зонах и в каких условиях. Такой подход позволяет гибко настраивать генерацию ресурсов, настроить уникальные локации и события, влияющие на игровой процесс. Наследование позволяет переопределять методы, расширяя базовый функционал, сохраняя при этом совместимость. Используйте вызов super для вызова методов родительского класса, чтобы не потерять основную логику Файл types.xml В types.xml задаётся базовый список объектов для спавна — оружие, еда, медикаменты, бытовые предметы и многое другое. Каждая запись описывается с помощью параметров: name — идентификатор предмета; nominal — желаемое количество предметов на карте; lifetime — время существования объекта в секунду; restock — через сколько секунд после спавна объект может появиться вновь; min и quantmin — минимальное количество предметов и минимальный стэк; max и quantmax — максимальное количество и стек. Пример записи в types.xml для нового предмета: <type name="CustomBandage" nominal="20" lifetime="7200" restock="3600" min="1" max="3" quantmin="1" quantmax="1" /> Файл events.xml Файл events.xml описывает группы предметов, которые появляются вместе при определённых игровых событиях, например, в заброшенных складах или в лагере рейдеров. События помогают создавать больше живых и уникальных точек интереса, повышая реализм и разнообразие. Пример события, создающего набор лута: <event name="RaidersLoot" chance="0.2"> <item name="CustomBandage" count="2" /> <item name="Ammo_9mm" count="15" /> </event> Создание спавна через скрипты Кроме XML-конфигов, в DayZ можно создавать и управлять спавном объектов программно через Enfusion Script. Для этого используются методы создания объектов в мире, например: Entity SpawnCustomItem(vector position) { return GetGame().CreateObject("CustomBandage", position, false, true); } Данный код создаёт экземпляр объекта CustomBandage в указанной позиции без прикрепления к персонажу. Особенности событийного спавна Событийный спавн может быть привязан к определённым триггерам — началу миссии, достижению локации игроком, изменению игрового времени и другим условиям. Использование таких триггеров позволяет делать динамичный и адаптивный игровой мир, в который постоянно что-то происходит. Важно тщательно балансировать частоты и зону появления лута, чтобы сохранять интерес и вызов для игроков, не делая игру слишком простой или хаотичной. Обработка событий и хуки В DayZ Standalone жизненный цикл объектов охватывает три ключевых этапа: создание, обновление и уничтожение. Во время создания объект инициализируется с базовыми параметрами, на стадии обновления происходит обработка логики поведения, а при уничтожении — освобождение ресурсов и возможное выполнение завершающих действий. Для отслеживания важных игровых событий применяются хуки — специальные точки подключения к внутренним функциям движка, позволяющие моддерам вставлять свой код и расширять логику игры без изменения исходного кода. События игрока Рождение (OnPlayerSpawn) — инициализация состояния персонажа после входа в игру. Смерть (OnPlayerDeath) — момент обработки смерти для сохранения состояния или запуска дополнительных эффектов. Действия (например, OnItemUse, OnHit) — реакции на использование предметов, получение урона и другие игровые взаимодействия. Action-система Action-система отвечает за выполнение и обработку пользовательских действий (например, взятие предмета, открытие двери). Добавление нового действия требует создания класса-наследника ActionBase, определяющего логику, условия запуска и анимации. Пример простого добавления действия: class ActionCustom : ActionBase { override void OnStartClient(ActionData action_data) { super.OnStartClient(action_data); Print("Пользователь начал кастомное действие"); } } Пример подписки на событие и обработка Возьмём пример подписки на событие смерти игрока через хук: modded class PlayerBase { override void EEKilled(Object killer) { super.EEKilled(killer); Print("Игрок погиб, убийца: " + killer); // Дополнительная логика при смерти } } Здесь EEKilled — виртуальный метод, вызываемый в момент смерти. Использование ключевого слова override позволяет модифицировать поведение без уничтожения базовой логики, а вызов super.EEKilled(killer) гарантирует сохранение стандартной обработки. Благодаря хукам и системе событий в DayZ моддеры получают мощный инструмент для гибкого расширения и глубокой кастомизации игрового поведения. Пользовательские предметы и крафт Создание собственного предмета в DayZ требует последовательного подхода, включающего создание моделей, конфигурацию и добавление логики и рецептов крафта. Рассмотрим основные шаги. 1. Создание модели и текстур Первый этап — подготовка 3D-модели предмета в стороннем редакторе (например, Blender или 3ds Max) и экспорт в формат, поддерживаемый движком (обычно .p3d). Также необходимы текстуры в форматах .paa или .tga, которые создаются на основе исходных изображений. 2. Описание предмета в config.cpp В конфигурационном файле описывается класс предмета с указанием модели, информации для инвентаря и параметров взаимодействия. Пример: class CfgVehicles { class Inventory_Base; class CustomKnife : Inventory_Base { scope = 2; displayName = "Кастомный нож"; descriptionShort = "Острый нож, подходящий для выживания."; model = "\MyMod\Models\custom_knife.p3d"; weight = 500; itemSize[] = {2,1}; lootTag[] = {"Survival", "Weapon"}; }; }; 3. Добавление рецепта крафта в config.cpp и скрипты Чтобы игрок мог создавать новый предмет, следует описать рецепт крафта. Для этого в cfgRecipes (кастомном или существующем) задаются необходимые компоненты и количество. class CfgRecipes { class CraftCustomKnife { name = "Создать кастомный нож"; tools[] = {"Knife"}; inputs[] = { {"MetalPlate",1}, {"WoodenStick",1} }; output = "CustomKnife"; }; }; В скриптах можно дополнительно контролировать логику крафта, проверку условий или создавать кастомные действия. 4. Добавление анимаций и взаимодействий Анимации для новых предметов задаются в cfgMoves и связаны с Action-системой. Для кастомных взаимодействий обычно создают новые классы действий (ActionBase). Например, можно добавить уникальное использование ножа для добычи ресурсов или нанесения урона. Итоговый пример использования в скрипте class CustomKnife : Inventory_Base { void CustomKnife() { Print("Кастомный нож создан."); } override void OnUse() { super.OnUse(); Print("Использован кастомный нож."); // Дополнительная логика, например, нанесение урона } } Таким образом, создание предмета включает работу с моделью, описанием в конфиге, настройкой рецепта крафта и добавлением логики поведения и анимаций через скрипты и Action-систему для полноценного взаимодействия с игровым миром. Работа с инвентарём и характеристиками В DayZ Standalone управление инвентарём и характеристиками игрока осуществляется через сочетание скриптов и конфигурационных файлов. Моддеры могут изменять параметры здоровья, голода, жажды, а также добавлять, удалять или передавать предметы между персонажами и объектами. Изменение характеристик игрока Для изменения параметров состояния персонажа (здоровья, голода, жажды и др.) используются методы класса PlayerBase. Например, чтобы изменить здоровье игрока, доступен метод SetHealth, а для работы с голодом и жаждой — свойства, связанные с компонентом StaminaHandler или Stats. void SetPlayerHealth(PlayerBase player, float health) { player.SetHealth("", "", health); } void AddHunger(PlayerBase player, float amount) { float currentHunger = player.GetStatEnergy().Get(); player.GetStatEnergy().Add(amount); // Добавляет энергию, уменьшая голод } Работа с инвентарём: добавление и удаление предметов Взаимодействие с инвентарём реализуется через классы EntityAI и Inventory. Для выдачи предмета игроку используется метод GiveItem или создание объекта с последующим добавлением в инвентарь. // Создание и выдать предмет игроку void GiveItemToPlayer(PlayerBase player, string itemType) { EntityAI item = player.GetInventory().CreateInInventory(itemType); if (item) { Print("Предмет " + itemType + " выдан игроку."); } } // Удалить предмет из инвентаря void RemoveItemFromPlayer(PlayerBase player, string itemType) { array items = new array; player.GetInventory().EnumerateInventory(InventoryTraversalType.PREORDER, items); foreach (EntityAI item : items) { if (item.GetType() == itemType) { player.GetInventory().DropEntity(item); item.Delete(); Print("Предмет " + itemType + " удалён."); break; } } } Передача предметов между игроками Для передачи предмета от одного игрока к другому предмет сначала удаляется из инвентаря донора и добавляется в инвентарь получателя: void TransferItem(PlayerBase fromPlayer, PlayerBase toPlayer, string itemType) { array items = new array; fromPlayer.GetInventory().EnumerateInventory(InventoryTraversalType.PREORDER, items); foreach (EntityAI item : items) { if (item.GetType() == itemType) { // Удаляем у донора fromPlayer.GetInventory().DropEntity(item); item.SetPosition(toPlayer.GetPosition()); // Добавляем в инвентарь получателя toPlayer.PredictiveTakeEntityToInventory(toPlayer, item); Print("Предмет передан игроку."); break; } } } Типичные задачи и решения Выдача стартового набора: при спавне игрока. Автоматическое лечение: изменение показателей здоровья через скрипты при использовании аптечек. Удаление нелегальных предметов: проверка инвентаря и удаление через цикл. Пользовательский интерфейс и HUD В DayZ Standalone пользовательский интерфейс (UI) создаётся с помощью встроенного UI API, позволяющего создавать окна, кнопки, текстовые поля и другие элементы для взаимодействия с игроком. Основу UI составляет система виджетов, которые можно размещать на экране и управлять ими через скрипты на Enfusion Script. Структура UI и взаимодействие со скриптом UI элементы создаются в виде классов, наследующих Widget или WidgetScript. Основная сцена HUD реализована в виде специального виджета, который отвечает за отображение информации поверх игрового мира. Для взаимодействия с игровым кодом UI использует события и методы на скриптовой стороне. Пример создания простого HUD Ниже пример создания простого HUD, выводящего здоровье игрока в левом верхнем углу экрана: class CustomHUD extends UIScriptedMenu { TextWidget healthText; override Widget Init() { layoutRoot = GetGame().GetWorkspace().CreateWidgets("MyMod/gui/layouts/customhud.layout"); healthText = TextWidget.Cast(layoutRoot.FindAnyWidget("HealthValue")); return layoutRoot; } override void Update() { PlayerBase player = PlayerBase.Cast(GetGame().GetPlayer()); if (player) { float health = player.GetHealth("", ""); healthText.SetText("Здоровье: " + Math.Floor(health).ToString()); } } } В данном примере создаётся класс CustomHUD, который инициализирует виджет из layout-файла и обновляет текст с текущим значением здоровья игрока каждое игровое обновление. Советы по отладке и оформлению UI Используйте встроенный Workspace Debugger для просмотра иерархий виджетов и свойств; Разделяйте логику и оформление: храните лейауты в .layout файлах, а логику — в скриптах; Минимизируйте количество обновлений: обновляйте UI только при изменении данных, чтобы снизить нагрузку; Проверяйте Null-ссылки: всегда убеждайтесь, что виджеты корректно инициализированы перед использованием; Используйте стили и шаблоны: для единообразия интерфейса и удобства поддержки кода. Серверная логика и администрирование В DayZ Standalone скрипты могут исполняться как на стороне клиента, так и на сервере. Разделение ролей важно для оптимизации и безопасности. Клиент отвечает за отображение, управление пользовательским интерфейсом и локальную логику, тогда как сервер обрабатывает важные игровые процессы, валидацию действий, управление состояниями и синхронизацию между игроками. Основные различия между серверным и клиентским кодом: Сервер: контролирует игровые правила, спавн объектов, обработку событий и действия игроков; все критичные вычисления выполняются здесь. Клиент: отвечает за визуализацию, анимации, интерфейс и локальный отклик на действия игрока. Админ-команды и их обработка Администрация сервера может использовать кастомные команды для управления игровым процессом, выдачи предметов или выполнения других операций. Для добавления админ-команды в Enfusion Script необходимо: Создать класс команды, реализующий интерфейс ChatCommandHandler или аналогичный. Зарегистрировать команду в системе через специальный менеджер команд. Обработать ввод и выполнить соответствующие действия. Пример простой админ-команды для выдачи предмета: class GiveItemCommand : ChatCommandHandler { override string GetCommandName() { return "give"; } override void Execute(PlayerIdentity sender, array params) { if (params.Count() != 2) { sender.SendDirectMessage("Использование: /give <player> <item>"); return; } string playerName = params[0]; string itemName = params[1]; PlayerBase targetPlayer = FindPlayerByName(playerName); if (!targetPlayer) { sender.SendDirectMessage("Игрок не найден."); return; } targetPlayer.GetInventory().CreateInInventory(itemName); sender.SendDirectMessage("Предмет " + itemName + " выдан игроку " + playerName + "."); } } Работа с логами сервера Логирование – важный инструмент для мониторинга работы сервера, отладки и аудита админских действий. В DayZ можно писать собственные сообщения в лог с помощью функции Print или специализированных методов сервера. Print("Сообщение") — выводит строку в общий лог сервера и консоль. Для разделения логов рекомендуется добавлять теги или префиксы, например: Print("[MyMod] Действие выполнено"). Для более сложной логики можно реализовать запись в отдельные файлы через API сервера или внешние плагины. Рекомендации по эффективному управлению сервером и модами Всегда разграничивайте серверный и клиентский код, минимизируя выполнение тяжелых операций на клиенте. Используйте проверки прав администратора перед выполнением команд, чтобы избежать злоупотреблений. Логируйте важные действия админов и критичные события для последующего анализа. Тестируйте моды в условиях, максимально приближенных к боевым, чтобы выявлять возможные ошибки и утечки производительности. Регулярно обновляйте и чистите логи, чтобы сервер не тормозил из-за больших файлов. Оптимизация и best practices Оптимизация кода и соблюдение лучших практик имеют решающее значение для создания стабильных, производительных и совместимых модификаций в DayZ Standalone. Ниже представлены ключевые рекомендации для моддеров любого уровня. Рекомендации по стилю и структуре кода Чёткая организация файлов: разделяйте логику по папкам и классам, используйте понятные имена для файлов и классов, чтобы упростить навигацию и поддержку. Комментирование: сопровождайте сложный или нестандартный код комментариями, чтобы облегчить понимание и последующую доработку. Избегайте дублирования кода: выносите часто повторяющиеся операции в функции или базовые классы, что улучшает читаемость и снижает вероятность ошибок. Типовые ошибки и их предотвращение Null-ссылки: всегда проверяйте объекты на >null< перед использованием, особенно при работе с инвентарём и сущностями. Неправильное наследование: при переопределении методов не забывайте вызывать super для сохранения базовой логики. Чрезмерная частота вызовов: минимизируйте вычисления в методах Update или на каждую итерацию, используйте события и таймеры. Совместимость и тестирование Тестируйте моды в изолированном окружении и на сервере с другими модификациями, чтобы выявить возможные конфликты. Используйте уникальные префиксы в именах классов и функций, чтобы избежать коллизий с другими модами. Регулярно обновляйте моды в соответствии с изменениями клиента и сервера, следя за актуальностью API и форматов конфигов. Советы по производительности Оптимизируйте циклы и алгоритмы — избегайте вложенных вызовов без необходимости. Используйте локальные переменные, где это возможно, для снижения нагрузки на память и уменьшения доступа к объектам. Минимизируйте количество создаваемых объектов и спавн объектов строго при необходимости. Профилируйте скрипты и анализируйте точки узкого места с помощью встроенных средств и логов. Примеры реализации В этом разделе представлены три законченных примера кода с подробным объяснением их работы и инструкциями по интеграции в игру DayZ Standalone 1.24+. 1. Кастомный игровой ивент с уникальным поведением Этот пример демонстрирует создание кастомного игрового ивента, который при активации спавнит группу врагов в радиусе от игрока. Ивент можно вызывать по триггеру или вручную из скрипта. class CustomEnemyEvent { void TriggerEvent(PlayerBase player) { vector pos = player.GetPosition(); int enemyCount = 5; for (int i = 0; i < enemyCount; i++) { vector spawnPos = pos + Vector(Math.RandomFloat(-10,10), 0, Math.RandomFloat(-10,10)); EnemyBase enemy = EnemyBase.Cast(GetGame().CreateObject("ZomBear", spawnPos, false, true)); enemy.SetAIBehaviour("Aggressive"); enemy.SetTarget(player); } Print("[CustomEnemyEvent] Спавн врагов у игрока: " + player.GetIdentity().GetName()); } } Интеграция: вызовите метод TriggerEvent, например, по выполнению определённого условия в игровом событии или через консоль. Ивент автоматически создаст врагов рядом с игроком и заставит их атаковать игрока. 2. Админ-команда для управления игроками на сервере Пример реализации простой админ-команды /kick, которая позволяет администратору выгнать игрока с сервера по имени. class KickPlayerCommand : ChatCommandHandler { override string GetCommandName() { return "kick"; } override void Execute(PlayerIdentity sender, array params) { if (params.Count() != 1) { sender.SendDirectMessage("Использование: /kick <имя_игрока>"); return; } string targetName = params[0]; PlayerBase target = FindPlayerByName(targetName); if (!target) { sender.SendDirectMessage("Игрок " + targetName + " не найден."); return; } target.GetPlayerAgent().Kick("Вы были кикнуты администратором."); sender.SendDirectMessage("Игрок " + targetName + " был кикнут."); Print("[KickPlayerCommand] Админ " + sender.GetName() + " кикнул игрока " + targetName); } } Использование: зарегистрируйте этот класс в системе команд серверного скрипта. Админы смогут вызвать команду в чате /kick JohnDoe, где JohnDoe — ник игрока. 3. Простой мод для изменения поведения животных Модификация, которая изменяет поведение стандартных животных, делая их более агрессивными и быстрее реагирующими на игрока. modded class AnimalBase { override void OnInitialize() { super.OnInitialize(); SetAggressionLevel(3); // Увеличение агрессии (1-5) SetReactionDistance(40); // Расстояние реакции на игрока в метрах } override void OnPlayerApproach(PlayerBase player) { super.OnPlayerApproach(player); if (player) { Print("Животное заметило игрока: " + player.GetIdentity().GetName()); } } } Интеграция: данный мод необходимо добавить в скрипты, перекрыв базовый класс AnimalBase. После этого все животные будут обладать улучшенными параметрами агрессивности и быстрее реагировать на подход игроков. КОМУ ПОМОГЛА ДАННАЯ СТАТЬЯ СТАВЬТЕ РЕКЦИИ😄
  6. Создание нового типа nv: // 4_world\entities\manbase\dayzplayer\dayzplayercamera_base.c enum MY_NVTypes { NV_GOGGLES_MULTI = 442; NV_GOGGLES_LIGHT_GREEN = 443; }; modded class DayZPlayerCameraBase { override void SetNVPostprocess(int NVtype) { super.SetNVPostprocess(NVtype); switch (NVtype) { case MY_NVTypes.NV_GOGGLES_MULTI: PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>( PPERequester_CameraNV.NV_GOGGLES_MULTI ) ); if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets()) { GetGame().GetMission().GetEffectWidgets().AddActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER}); GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER}); } break; case MY_NVTypes.NV_GOGGLES_LIGHT_GREEN: PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>( PPERequester_CameraNV.NV_GOGGLES_LIGHT_GREEN ) ); if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets()) { GetGame().GetMission().GetEffectWidgets().AddActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER}); GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER}); } break; } }; // 3_game\ppemanager\requesters\ppercameranv.c modded class PPERequester_CameraNV { static const int NV_GOGGLES_MULTI = 442; static const int NV_GOGGLES_LIGHT_GREEN = 443; override void SetNVMode(int mode) { super.SetNVMode(mode); switch (mode) { case NV_GOGGLES_LIGHT_GREEN: SetTargetValueColor( PostProcessEffectType.Glow, PPEGlow.PARAM_COLORIZATIONCOLOR, { 0.48, 1.00, 0.48, 0.00 }, PPEGlow.L_23_NVG, PPOperators.MULTIPLICATIVE ); SetTargetValueFloat( PPEExceptions.EXPOSURE, PPEExposureNative.PARAM_INTENSITY, false, 3 * m_UGExposureCoef, PPEExposureNative.L_0_NVG_GOGGLES, PPOperators.ADD ); SetTargetValueFloatDefault( PostProcessEffectType.FilmGrain,PPEFilmGrain.PARAM_SHARPNESS ); SetTargetValueFloatDefault( PostProcessEffectType.FilmGrain,PPEFilmGrain.PARAM_GRAINSIZE ); SetTargetValueFloat( PPEExceptions.NVLIGHTPARAMS, PPELightIntensityParamsNative.PARAM_LIGHT_MULT, false, 2.0, PPELightIntensityParamsNative.L_0_NVG, PPOperators.HIGHEST ); SetTargetValueFloat( PPEExceptions.NVLIGHTPARAMS, PPELightIntensityParamsNative.PARAM_NOISE_MULT, false, 2.0, PPELightIntensityParamsNative.L_1_NVG, PPOperators.HIGHEST ); break; case NV_GOGGLES_MULTI: /* Colorize param in rgba, { 0, 0, 0, 0 } == black screen, { 1, 1, 1, 0 } == like a day */ SetTargetValueColor( PostProcessEffectType.Glow, PPEGlow.PARAM_COLORIZATIONCOLOR, { 1.00, 1.00, 1.00, 0.00 }, PPEGlow.L_23_NVG, PPOperators.MULTIPLICATIVE ); SetTargetValueFloat( PPEExceptions.EXPOSURE, PPEExposureNative.PARAM_INTENSITY, false, 3 * m_UGExposureCoef, PPEExposureNative.L_0_NVG_GOGGLES, PPOperators.ADD ); SetTargetValueFloatDefault( PostProcessEffectType.FilmGrain,PPEFilmGrain.PARAM_SHARPNESS ); SetTargetValueFloatDefault( PostProcessEffectType.FilmGrain,PPEFilmGrain.PARAM_GRAINSIZE ); SetTargetValueFloat( PPEExceptions.NVLIGHTPARAMS, PPELightIntensityParamsNative.PARAM_LIGHT_MULT, false, 2.0, PPELightIntensityParamsNative.L_0_NVG, PPOperators.HIGHEST ); /* Noise param, than more -> then more 'defects' on screen you get */ SetTargetValueFloat( PPEExceptions.NVLIGHTPARAMS, PPELightIntensityParamsNative.PARAM_NOISE_MULT, false, 1.0, PPELightIntensityParamsNative.L_1_NVG, PPOperators.HIGHEST ); break; /* - For recolor vanilla nvg, use NV_DEFAULT_GLASSES case and change PARAM_COLORIZATIONCOLOR how you want */ } } }; Для изменения вида NV с ванильного на ваш, в классе с очками в методах OnWorkStart, OnWorkStop, OnWork меняете айдишник NV на свой: player.AddActiveNV(NVTypes.NV_GOGGLES); player.RemoveActiveNV(NVTypes.NV_GOGGLES); -> player.AddActiveNV(MY_NVTypes.NV_GOGGLES_MULTI); player.RemoveActiveNV(MY_NVTypes.NV_GOGGLES_MULTI); Первая тема тут, надеюсь не последняя🙂 Ну и результат собсно:
  7. Version 1.0.0

    93 downloads

    Убрана защита в моде, код полностью открыт. Модификация позволит вам настроить и разместить на своем сервере систему разнообразных Аномалий с возможностью тонкой настройки под свои нужды. Так же в комплекте идут Детекторы, которые позволят вам не попасть в аномалии, либо найти в Аномалиях Артефакты В данный момент в шаблон включено Аномалия Химическая (болотная, красная, желтая, голубая) Аномалия Огненная Термическая Аномалия Пар Аномалия Фрост (морозная) Аномалия Трамплин Аномалия Электрическая (двух видов) Аномалия Гравитационная Горизонтальная Аномалия Гравитационная Вертикальная Аномалия Мухоловка (как большая мухоловка) Аномальное растение Жгучие Ветви Аномальные летающие камни 3 вида Аномалия Комета - Блуждающая аномалия (да, как в Metro Exodus) 3 вида, В сумме 21 аномалия. Детекторы Детектор Соник (Звуковое оповещение о аномалии рядом) Детектор Начальный (Примитивный детектор аномальных образований) Детектор Мишка (Детектор с расширенным функционалом) Детектор Палка Поводыря (Активные антенны покажут вам приближение к Артефакту, а дисплей покажет дистанцию) Детектор Цифровой (Цифровой детектор 3его уровня) Детектор Цифровой Улучшенный г (Улучшенный цифровой детектор 4 уровня) Ну и конечно болты для проверки аномалии сделаны удобной кнопкой B Предусмотрено: Оптимизация аномальных полей, через систему кластеров. Динамический респавн аномалий вместе с MF_Blowout. Настройка спавна артефактов в аномалиях. Настройка урона от аномалий. Настройка защитных предметов одежды и предметов и инвентаре для защиты от аномалий. Оптимизация клиента для слабых пк (отключение источника света аномалий и уменьшение дальности прорисовки аномалий для каждого клиента(игрока). Возможность просмотреть аномальные зоны через ESP в VPPTOOLS а так же отображение кластеров через визуальную форму(шейпы). Настройка детекторов по дальности обнаружения и доступным тирам артефактов. Система спавна аномалий для ивентов через VPPADMIN/ Spawn temp anomaly throught bild in spawner Система отображения полей аномалий для администратора/Anomaly clusters can be showed throught VPPAdmin extension The mod's security has been removed, and the code is fully open. The modification will allow you to set up and host a system of various Anomalies on your server with the possibility of fine-tuning to suit your needs. Detectors are also included, which will allow you not to get into the anomalies, or to find Artifacts in the Anomalies Currently included in the template. Chemical Anomaly (marsh, red, yellow, blue) The anomaly is Fiery Thermal The anomaly of Pairs Anomaly Frost (frosty) Springboard Anomaly Electrical anomaly (of two types) Gravity Anomaly Horizontal Vertical Gravity Anomaly Anomaly Flycatcher (like a large flycatcher) Abnormal Plant Burning Branches There are 3 types of anomalous flying stones The Comet anomaly is a wandering anomaly (yes, as in Metro Exodus) of 3 types, There are 21 anomalies in total. Detectors Sonic Detector (Sound alert about an anomaly nearby) Initial detector (Primitive detector of anomalous formations) Mishka Detector (Detector with advanced functionality) Guide Stick Detector (Active antennas will show you the approach to the Artifact, and the display will show the distance) Digital Detector (Digital detector of the 3rd level) Enhanced Digital Detector G (Enhanced Digital Detector Level 4) And of course, the bolts for checking the anomaly are made with a convenient B button. Provided by: Optimization of abnormal fields through a cluster system. Dynamic respawn of anomalies along with MF_Blowout. Setting up artifact spawn in anomalies. Adjusting anomaly damage. Customize protective clothing and items and inventory to protect against anomalies. Optimization of the client for weak PCs (turning off the light source of anomalies and reducing the range of drawing anomalies for each client (player). The ability to view abnormal zones through ESP in VPPTOOLS, as well as display clusters through a visual form (shapes). Configuring detectors by detection range and available ranges of artifacts. Anomaly spawn system for events via VPPADMIN/ Spawn temp anomaly through bild in spawner Anomaly field display system for the administrator/Anomaly clusters can be shown through VPPAdmin extension
    Free
  8. Version 1.0.0

    110 downloads

    Хвалёный выброс MF полностью деобфускацирован и вырезана защита. P.S Код полностью как у Совы. The vaunted MF release has been completely deobfuscated and protection has been cut out. P.S. The code is completely like that of an Owl.
    Free
  9. Каким образом сделать объект что будет перемещаться из точки А в точку Б, возможно с промежуточной точкой. Я понимаю что это надо делать через телепорт, по какой то условной формуле. По достижению точки, скрытие объекта (включая геометрию) или удаление, ожидание некого времени, и пересоздание объекта в точке А с последующим движением в точку Б. Возможно какие то эффекты накладываемые на игроков при начале, конце движения или касании игрока.
  10. Просмотр файла Файл init.c, для спавна в рандомных сетах файл init.c, с уже готовыми 4-мя вариантами одежды при спавне на берегу, то есть после каждой смерти персонаж будет появляться в одном из 4-х этих сетов, в файле подписал какая строчка за что отвечает. the init.c file, with 4 ready-made clothing options when spawning on the shore, that is, after each death, the character will appear in one of these 4 sets, in the file signed which line is responsible for what. Добавил drofonest Добавлено 03.09.2023 Категория Скрипты, моды  
  11. Просмотр файла Restart System with Autokick / Система рестартов с автокиком игроков Описание: Серверный скрипт, осуществляющий автоматические рестарты сервера с уведомлениями в чате сервера о времени до рестартов, времени работы сервера, а также автоматической блокировкой возможности входа на сервер, киком игроков с сервера на момент блокировки сервера, а также выключением сервера. Для полноценного рестарта вам остается лишь включить сервер заного снова (например, из настроенного вами batch-файла или любой другой программы). Игра, для который подходит данный товар: DayZ Standalone Тип: серверный скрипт Авторство: я (123new) Возможности: Автоматические уведомления в чате о времени до рестарта (можно отключить) Автоматические уведомления в чате о времени работы сервера с момента старта (можно отключить) Автоматические настраиваемые уведомления перед непосредственным рестартом сервера для игроков в чат. (можно отключить) Автоматическая блокировка входа на сервер за X минут до физического рестарта сервера (можно отключить) Автоматический кик всех играющих на сервере игроков с сервера за X минут до физического рестарта сервера. (можно отключить) К сожалению, возможности выводить причину кика на экран не возможно сделать без своего клиент-серверного мода (особенность языка игры). Сохранение персонажа при этом выполняется штатными системами сервера игры. Автоматический кик (иммитация блокировки сервера) всех входящих на сервер игроков, если сервер заблокирован. (можно отключить) К сожалению, возможности выводить причину кика на экран не возможно сделать без своего клиент-серверного мода (особенность языка игры). Автоматическое выключение сервера в момент рестарта с корректным выключением сервера. (можно отключить) Настраиваемые тексты уведомлений и оповещений в чат перед каждым действием. Два типа рестартов с возможностью включения и настройки нужного режима: 1) рестарт фиксированный, по указанному времени (аналог sheduler BEC). 2) рестарт динамичный, через фиксированное время от момента запуска сервера. Комманды, доступные извне для других скриптов через вызов кода Get_RestartServer_System() для исполнения в своих скриптах и службах. С их помощью возможна ручная блокировка, разблокировка сервера, кик всех игроков и перезагрузка сервера. Рекоммендую для простоты програмку из способа 3. Важно: Работоспособность скрипта напрямую зависит от функции и исполнения игрой CallLater (отложенный запуск). Если вдруг после какой-то модификации или обновления игры функция будет сломана, либо заторможена, рестарт может быть задержан на какое-то время. На момент работы с патчем 1.07 такие зависания найдены после работы сервера 5.5 часов без перезагрузки (без модов), на более старых версиях игры таких проблем не наблюдалось. По этой причине не рекоммендую ставить частоту рестартов выше 5 часов! Скрипт проверен на чистой версии игры на момент публикации и является работоспособным по сей день и час. Настройка: Настройка скрипта состоит из нескольких блоков, часть настроек в которых зависит друг от друга. Советую вам крайне внимательно отнестись к заполнению настроек! Общие настройки: Параметр Name_Block_Log_Script - метка, отображаемая в script.log файлах в моменты исполнения скриптовых комманд данного скрипта, включая информацию об отправках сервера на рестарт и чат. Формат значений - Произвольные значения текста! Метка поможет оледить выполнение работы скрипта и исправлять ошибки. Параметр enable_work_script - включает и отключает работу всего скрипта. При false будет отключен, и не будет ничего делать впринципе вообще. Формат значений - true или false Параметр enable_shutdown_server_procedures - включает и отключает функционал рестартов сервера скриптом (при false отключится именно сам функционал рестартов, остальное будет работать) Параметр Enabled_Restarts_In_fixed_time - переключение режима рестартов сервера (true - по фиксированному времени, false - по времени от старта сервера) (параметр 'enable_shutdown_server_procedures' не влияет на это зачение) (время используемое для кика игроков и блокировки сервера при 'true' используется фиксированное, при 'false' - динамическое от старта сервера) Далее для полноценной работы скрипта обязательно необходимо настроить один из 2 блоков ниже! Именно настроить, а не удалить, закомментировать!!! От них зависит работоспособность функционала блокировки сервера и кика игроков, даже если "enable_shutdown_server_procedures = false;" Блок 1 - фиксированное время выключений сервера: Параметр-массив Restarts_Fixed_Time - Фиксированное время для рестартов сервера (работает при Enabled_Restarts_In_fixed_time = true) (если enable_shutdown_server_procedures = false и Enabled_Restarts_In_fixed_time = true то от этого времени будет зависеть функционал блокировки и автокика с сервера) Блок 2 - динамическое время выключений сервера: Параметр time_format - Формат времени для динамических рестартов (по времени от старта сервера) для значения ниже. Возможные значения: seconds, minutes, hours. (работает при Enabled_Restarts_In_fixed_time = false) Параметр time_wait_autorestart - Время для динамического рестарта, которое сервер будет отсчитывать от момента запуска сервера. Значение указывается в формате по параметру time_format (например 3.2) (не рекоммендуется ставить более 4 часов). Формат значений - число с точкой. Например, если указано 3.0 и hours то это значит что рестарт будет через 3.0 часа. (работает при Enabled_Restarts_In_fixed_time = false) Опциональный функционал скрипта: 1. Функционал, работающий только при включенной опции enable_shutdown_server_procedures = true; Параметр Time_Wait_AfterChatInformation_shutdown_server - тут указывается за столько секунд перед фактическим рестартом будет автоинформирование в чат сервера. Формат значений - простое число, без точки. Время в секундах! Параметр text_ChatInformation_shutdown_server - сообщение автоинформирования в чат перед непосредственно выполнением рестарта сервера, для параметра выше. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Параметр enable_shutdown_server_chat_RestartInformation_functions - включение-отключение функционала уведомлений в чат перед скорым рестартом по указанному ниже времени. Формат значений - true или false Параметр-массив RestartsInformation_chat_minutes - время, за сколько будет отправлено каждое уведомление в чат о скором рестарте сервера. Формат значений - простое число, без точки. Время в минутах! Работает только при enable_shutdown_server_chat_RestartInformation_functions = true. Параметр text_RestartsInformation_chat - Уведомление в чат о скором рестарте сервера. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_shutdown_server_chat_RestartInformation_functions = true. 2. Функционал, отвечающий за фоновые уведомления в чат о времени до рестарта и времени работы сервера (uptime) Параметр enable_chat_info_restart_and_uptime - включение-отключение информирования в чат через равные промежутки времени о времени работы сервера и времени, оставшегося до рестарта сервера (true - вкл., false - откл.) Параметр text_chat_info_restart_and_uptime - Уведомление автоинформирования в чат. Вместо %time% и %uptime% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_chat_info_restart_and_uptime = true. Параметр time_format_chat_info_restart_and_uptime - Формат времени, какое будет выводиться в сообщении выше. Может иметь только значения: 'seconds', 'minutes', 'hours'. Работает только при enable_chat_info_restart_and_uptime = true. Параметр match_time_chat_info_restart_and_uptime - включение-отключение округления времени в сообщении выше до целого числа (true - вкл., false - откл.). Работает только при enable_chat_info_restart_and_uptime = true. Параметр time_chat_information_autorestart - Время между повтором отправки в чат информации о том, сколько сервер работает и сколько времени осталось до рестарта.). Значение указывается в формате по параметру time_format_chat_info_restart_and_uptime. Формат значений - число с точкой. Например, если указано 0.10 и hours то значит каждые 0.10 часа (час напоминаю это 60 минут, т.е. значение 1.0 = 1 час, значит 0.10 от 1 часа (10% от 60 минут) это 6 минут). 3. Функционал, отвечающий за блокировки входа на сервер переод рестартом: Параметр enable_lock_server_in_restart - включение-отключение блокировки входа на сервер перед рестартом (true - вкл., false - откл.) Параметр text_lock_server_in_restart - сообщение в чат, отправляемое играющим в чат, когда вход на сервер заблокирован. Формат значений - любой текст. Работает только при enable_lock_server_in_restart = true. Параметр time_undo_lock_server - Время в минутах до того, как сервер закроется на рестарт и перестанет пускать игроков (т.е. за X минут до момента самого рестарта). Формат значений - число с точкой. Время до рестарта берется в зависимости от настроек 1 из 2 обязательных блоков настроек выше. Работает только при enable_lock_server_in_restart = true. 4. Функционал, отвечающий за кик всех игроков перед рестартом сервера: Параметр enable_kick_all_from_server_in_restart - включение-отключение кика всех игроков перед рестартом сервера (true - вкл., false - откл.) Параметр Time_kick_all_informationWait - время в секундах, за столько секунд перед фактическим киком с сервера будет автоинформирование в чат. Формат значений - простое число, без точки. Время в секундах! Работает только при enable_kick_all_from_server_in_restart = true. Параметр text_kick_all_from_server_in_restart - сообщение автоинформирования в чат перед непосредственно выполнением кика всех игроков с сервера, для параметра выше. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_kick_all_from_server_in_restart = true. Параметр time_undo_kick_all_from_server_after_lock - время в минутах, за столько будет запущен автокик всех игроков с сервера (перед фактическим рестартом сервера). Формат значений - число с точкой. Работает только при enable_kick_all_from_server_in_restart = true. Исправлена ошибка в логике определения времени до рестарта в скрипте при включенном функционале рестартов по фиксированному времени. (для случаев, когда время рестарта и текущее время почти совпадали, отличались лишь секунды) Добавлено дополнительное логирование по выбираемому режиму рестарта и времени рестарта в логах сервера Добавлено дополнительное логирование времени, которое выберет скрипт по окончании расчетов для будущего рестарта сервера Добавлено дополнительное логирование времени по оставшемуся до рестарта времени В случае возникновения каких-либо проблем в работе скрипта рестартов по фиксированному прописанному времени (функционал-альтернатива BEC) измените следующий параметр на указанное ниже значение. bool EnableDebugLogs = true; Это поможет мне отследить работу данного функционала и найти проблему! При обращении за помощью обязательно прикладывайте ваш script.log рабочего сервера на момент с проблемой и включенной данной опцией в скрипте! Description: A server script that performs automatic server restarts with notifications in the server chat about the time before restarts, server operation time, as well as automatic blocking of the possibility of logging on to the server, kicking players from the server at the time of server blocking, as well as turning off the server. For a full restart, you just need to turn on the server again (for example, from the batch file you configured or any other program). The game for which this product is suitable: DayZ Standalone Type: Server script Authorship: me (123new) Opportunities: Automatic chat notifications about the time before the restart (can be disabled) Automatic chat notifications about server operation time from the start (can be disabled) Automatic customizable notifications before the server restarts directly for players in the chat. (can be disabled) Automatic blocking of login to the server X minutes before the physical restart of the server (can be disabled) Automatic kick of all players playing on the server from the server X minutes before the physical restart of the server. (can be disabled) Unfortunately, it is not possible to display the reason for the kick on the screen without its client-server mod (a feature of the language of the game). The character is saved at the same time by the regular systems of the game server. Automatic kick (server lock imitation) of all players entering the server if the server is blocked. (can be disabled) Unfortunately, it is not possible to display the reason for the kick on the screen without its client-server mod (a feature of the language of the game). Automatic shutdown of the server at the time of restart with the correct shutdown of the server. (can be disabled) Customizable texts of notifications and alerts in the chat before each action. Two types of restarts with the ability to enable and configure the desired mode: 1) the restart is fixed, at the specified time (analogous to sheduler BEC). 2) the restart is dynamic, after a fixed time from the moment the server is started. Commands accessible from outside to other scripts via code call Get_RestartServer_System() for execution in their scripts and services. With their help, it is possible to manually lock, unlock the server, kick all players and restart the server. I recommend for simplicity a program from method 3. Important: The performance of the script directly depends on the function and execution of the game callLater (delayed launch). If suddenly, after some modification or update of the game, the function is broken or slowed down, the restart may be delayed for some time. At the time of working with patch 1.07, such freezes were found after the server had been running for 5.5 hours without restarting (without mods), no such problems were observed on older versions of the game. For this reason, I do not recommend setting the frequency of restarts above 5 hours! The script was tested on a clean version of the game at the time of publication and is operational to this day and hour. Customization: The script setup consists of several blocks, some of the settings in which depend on each other. I advise you to pay very close attention to filling in the settings! General Settings: The Name_Block_Log_Script parameter is a label displayed in script.log files at the time of execution of the script commands of this script, including information about server restart and chat dispatches. The format of values is Arbitrary text values! The label will help to ice the execution of the script and correct errors. The enable_work_script parameter enables and disables the operation of the entire script. If false, it will be disabled, and will not do anything in principle at all. The format of the values is true or false The enable_shutdown_server_procedures parameter - enables and disables the functionality of server restarts by script (if false, it is the restart functionality itself that will be disabled, the rest will work) The Enabled_Restarts_In_fixed_time parameter - switching the server restarts mode (true - by fixed time, false - by time from the server start) (the 'enable_shutdown_server_procedures' parameter does not affect this offset) (the time used for kicking players and blocking the server is fixed when 'true', dynamic from the server start when 'false') Next, for the script to work properly, you must configure one of the 2 blocks below! It is to configure, not delete, comment out!!! The operability of the server blocking and player kick functionality depends on them, even if "enable_shutdown_server_procedures = false;" Block 1 - fixed time of server shutdowns: Parameter-array Restarts_Fixed_Time - Fixed time for server restarts (works when Enabled_Restarts_In_fixed_time = true) (if enable_shutdown_server_procedures = false and Enabled_Restarts_In_fixed_time = true, then the functionality of blocking and auto-kicking from the server will depend on this time) Block 2 - Dynamic server shutdown time: The time_format parameter is the time format for dynamic restarts (according to the time from the server start) for the value below. Possible values: seconds, minutes, hours. (works when Enabled_Restarts_In_fixed_time = false) The time_wait_autorestart parameter is the time for a dynamic restart, which the server will count from the moment the server starts. The value is specified in the format by the time_format parameter (for example 3.2) (it is not recommended to set more than 4 hours). The format of the values is a number with a dot. For example, if 3.0 and hours are specified, it means that the restart will be in 3.0 hours. (works when Enabled_Restarts_In_fixed_time = false) Optional script functionality: 1. Functionality that works only when the enable_shutdown_server_procedures = true option is enabled; The Time_Wait_AfterChatInformation_shutdown_server parameter is specified here for as many seconds before the actual restart there will be auto-information in the server chat. The format of the values is a simple number, without a dot. Time in seconds! The text_ChatInformation_shutdown_server parameter is an auto-information message to the chat before the server restart is performed directly, for the parameter above. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. The enable_shutdown_server_chat_RestartInformation_functions parameter is enabling or disabling the notification functionality in the chat before the fast restart at the time specified below. The format of the values is true or false Parameter-array RestartsInformation_chat_minutes - the time for how long each notification will be sent to the chat about the imminent restart of the server. The format of the values is a simple number, without a dot. Time in minutes! Works only when enable_shutdown_server_chat_RestartInformation_functions = true. The text_RestartsInformation_chat parameter is a notification to the chat about the imminent restart of the server. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_shutdown_server_chat_RestartInformation_functions = true. 2. The functionality responsible for background notifications in the chat about the time before the restart and the server's uptime The enable_chat_info_restart_and_uptime parameter - enables or disables informing the chat at regular intervals about the server's operating time and the time remaining before the server restart (true - on, false - off) The text_chat_info_restart_and_uptime parameter is an auto-information notification to the chat. Instead of %time% and %uptime%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_chat_info_restart_and_uptime = true. The time_format_chat_info_restart_and_uptime parameter is the format of the time that will be displayed in the message above. It can only have the values: 'seconds', 'minutes', 'hours'. Works only when enable_chat_info_restart_and_uptime = true. The match_time_chat_info_restart_and_uptime parameter - enables or disables rounding the time in the message above to an integer (true - on, false - off). Works only when enable_chat_info_restart_and_uptime = true. The time_chat_information_autorestart parameter is the time between the repetition of sending information to the chat about how long the server is running and how much time is left before the restart.). The value is specified in the format by the time_format_chat_info_restart_and_uptime parameter. The format of the values is a number with a dot. For example, if 0.10 and hours are specified, then it means every 0.10 hours (an hour is 60 minutes, i.e. the value 1.0 = 1 hour, means 0.10 of 1 hour (10% of 60 minutes) it's 6 minutes). 3. The functionality responsible for blocking the entrance to the server before restarting: The enable_lock_server_in_restart parameter is enabling or disabling the server login lock before restarting (true - on, false - off) The text_lock_server_in_restart parameter is a chat message sent to the chat player when the server login is blocked. The format of the values is any text. Works only when enable_lock_server_in_restart = true. The time_undo_lock_server parameter is the time in minutes before the server closes for restart and stops letting players in (i.e. X minutes before the restart itself). The format of the values is a number with a dot. The time to restart is taken depending on the settings of 1 of the 2 mandatory settings blocks above. Works only when enable_lock_server_in_restart = true. 4. The functionality responsible for kicking all players before restarting the server: The enable_kick_all_from_server_in_restart parameter - enabling-disabling the kick of all players before restarting the server (true - on, false - off) The Time_kick_all_informationWait parameter is the time in seconds, so many seconds before the actual kick from the server there will be auto-information in the chat. The format of the values is a simple number, without a dot. Time in seconds! Works only when enable_kick_all_from_server_in_restart = true. The text_kick_all_from_server_in_restart parameter is an auto-information message to the chat before directly kicking all players from the server, for the parameter above. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_kick_all_from_server_in_restart = true. The time_undo_kick_all_from_server_after_lock parameter is the time in minutes for which the auto-kick of all players from the server will be launched (before the actual server restart). The format of the values is a number with a dot. Works only when enable_kick_all_from_server_in_restart = true. Fixed an error in the logic of determining the time to restart in the script when the fixed-time restart functionality is enabled. (for cases when the restart time and the current time almost coincided, only seconds differed) Additional logging was added according to the selected restart mode and restart time in the server logs Added additional time logging, which the script will select at the end of calculations for the future server restart. Added additional time logging for the time remaining before the restart In case of any problems in the operation of the restart script at a fixed prescribed time (functional alternative to BEC), change the following parameter to the value specified below. bool EnableDebugLogs = true; This will help me track the operation of this functionality and find the problem! When asking for help, be sure to attach your script.log of the working server at the time with the problem and this option enabled in the script! Добавил nescafe Добавлено 20.11.2022 Категория Скрипты, моды  
  12. Привет! Я ищу мод для блокировки ванильных дверей кодовым замком, я знаю сервер, на котором есть этот мод, но не могу найти его ни на верстаке, ни в сети.
  13. Всем привет. Осмелюсь попросить о помощи с аттачментами. Суть. Допустим есть бочка и в бочке есть аттачмент для оружия, рюкзака и шмоток. У некоторых предметов, например у рюкзака Алисы есть аттачмент для рации. Вопрос: Как запретить класть рацию именно с батарейкой или батарейку в рацию (Если рация уже находится в рюкзаке) в слоте рюкзака, если рюкзак уже в слоте бочки? То есть, если кладём в аттачмент бочки рюкзак, а потом нужно сделать проверку на добавление в аттачмент рюкзака рации с батарейкой или батарейку в рацию (Если рация уже находится в рюкзаке) Пробовал сделать в CanReceiveAttachment и CanReceiveItemIntoCargo Не фига не работает. Если класть рюкзак с рацией и с батарейкой в аттачмент бочки, я реализовал проверку и запрет, а вот как сделать запрет вложение рации с батарейкой когда рюкзак уже в бочке, не получается. ПОМОГИТЕ! За ранние благодарю.
  14. Version 1.0.0

    58 downloads

    Этот плагин добавляет дополнительную информацию при наведении курсора мыши на элементы. Отображается информация о функциях защиты: Защита от пуль Защита от ударов Защита в ближнем бою Защита от взрыва При наведении на оружие отображается информация о следующих характеристиках Режим стрельбы Скорострельность оружия Отступать Баланс Дополнение поддерживает предметы и оружие из сторонних модов. В настоящее время оно выпущено на испанском языке, но вы можете свободно редактировать его This plugin adds advanced information when hovering over elements. Information about protection features is displayed: Bullet protection Shock protection Melee protection Explosion protection When aiming at a weapon, information about the following characteristics is displayed Shooting mode Weapon Rate Recoil Balance The addon supports items and weapons from third-party mods. It is currently in Spanish, but you can edit it freely
    Free
  15. View File AOD Exclusion Zone | Cache Spawn Point 700+ Более 700 очков спавна для Shrony cache spawner Совместим с картой зоны отчуждения AOD и картой зональной зоны Вам придется изменить предметы и частоту появления. Не стесняйтесь изменять это по своему усмотрению. Если вам нужна помощь, просто присоединяйтесь к моему discord : https://discord.gg/9sfkqnkaKj 700+ Spawn points for Shrony cache spawner Compatible with AOD Exclusion Zone Map and TheZone Map You'll have to change items and spawn rate. Feel free to change it as you like. If you need help just join my discord : https://discord.gg/9sfkqnkaKj Submitter Sfaccimmo Submitted 08/05/2024 Category Scripts, mods  
  16. Version 1.0.0

    68 downloads

    Более 700 очков спавна для Shrony cache spawner Совместим с картой зоны отчуждения AOD и картой зональной зоны Вам придется изменить предметы и частоту появления. Не стесняйтесь изменять это по своему усмотрению. Если вам нужна помощь, просто присоединяйтесь к моему discord : https://discord.gg/9sfkqnkaKj 700+ Spawn points for Shrony cache spawner Compatible with AOD Exclusion Zone Map and TheZone Map You'll have to change items and spawn rate. Feel free to change it as you like. If you need help just join my discord : https://discord.gg/9sfkqnkaKj
    Free
  17. Привет! Я пытаюсь добавить новый уровень (Tier5) на карту Черноруси через это руководство и не могу это сделать, помещая элементы в "types.xml", который я устанавливаю, чтобы они появлялись в зонах "tier5", они появиться в любом месте карты. https://www.youtube.com/watch?v=FyZ4TON4COk
  18. Добрый день. Подскажите пожалуйста нужен скрипт на 1. привязку предмета определенному игроку. т.е. чтобы этот предмет взять в руки или в инвентарь не могли, кроме определенного игрока. 2. Предмет, который бы давался игроку только на время (например на месяц) а потом удалялся из его инвентаря. Как такое можно реализовать? Может быть это должен быть мод какой а не скрипт? Заранее спасибо.
  19. Просмотр файла craft script. Скрипт работающий на момент 1.0 патча в архиве всё интуитивно всё понятно. приличное время назад ушёл из dayz как тех. админ И решил выложить в свободных доступ то что имеется у меня в недрах моего пк. Проверил скрипт на лвс, мод запускается, но в игре не проверял просьба кто запустит отписаться в личные сообщения чтобы удостовериться в работе скрипта для дальнейшего изменения описания. Если будут вопросы пишите в личные сообщения на форуме, постараюсь помочь The script running at the time of the 1.0 patch in the archive is all intuitively clear. I left dayz a good while ago as a tech. admin And I decided to put in free access what I have in the bowels of my PC. I checked the script on the LAN, the mod runs, but I did not check in the game , please who will start unsubscribe in private messages to make sure the script works for further changes in the description. If you have any questions, write in private messages on the forum, I will try to help Добавил shufi Добавлено 07.02.2024 Категория Скрипты, моды  
  20. Gente, eu preciso apagar um item que está com o jogador, essa exclusão vai ocorrer quando ele tirar o item do seu inventário e soltar o item no chão Esse código está correto? E em caso afirmativo, devo colocá-lo em 4_World ou 3_game? void DropInventoryItems(PlayerBase body) { array<EntityAI> children = new array<EntityAI>; body.GetInventory().EnumerateInventory(InventoryTraversalType.LEVELORDER, children); foreach (EntityAI child : children) { if (child.GetName() == "BR_EB_Pants") { GetGame().ObjectDelete(child); } } }
  21. Version 1.0.4

    211 downloads

    Описание: Серверный скрипт, осуществляющий автоматические рестарты сервера с уведомлениями в чате сервера о времени до рестартов, времени работы сервера, а также автоматической блокировкой возможности входа на сервер, киком игроков с сервера на момент блокировки сервера, а также выключением сервера. Для полноценного рестарта вам остается лишь включить сервер заново снова (например, из настроенного вами batch-файла или любой другой программы). Игра, для который подходит данный товар: DayZ Standalone Тип: серверный скрипт Авторство: (123new) Возможности: Автоматические уведомления в чате о времени до рестарта (можно отключить) Автоматические уведомления в чате о времени работы сервера с момента старта (можно отключить) Автоматические настраиваемые уведомления перед непосредственным рестартом сервера для игроков в чат. (можно отключить) Автоматическая блокировка входа на сервер за X минут до физического рестарта сервера (можно отключить) Автоматический кик всех играющих на сервере игроков с сервера за X минут до физического рестарта сервера. (можно отключить) К сожалению, возможности выводить причину кика на экран не возможно сделать без своего клиент-серверного мода (особенность языка игры). Сохранение персонажа при этом выполняется штатными системами сервера игры. Автоматический кик (имитация блокировки сервера) всех входящих на сервер игроков, если сервер заблокирован. (можно отключить) К сожалению, возможности выводить причину кика на экран не возможно сделать без своего клиент-серверного мода (особенность языка игры). Автоматическое выключение сервера в момент рестарта с корректным выключением сервера. (можно отключить) Настраиваемые тексты уведомлений и оповещений в чат перед каждым действием. Два типа рестартов с возможностью включения и настройки нужного режима: 1) рестарт фиксированный, по указанному времени (аналог sheduler BEC). 2) рестарт динамичный, через фиксированное время от момента запуска сервера. Команды, доступные извне для других скриптов через вызов кода Get_RestartServer_System() для исполнения в своих скриптах и службах. С их помощью возможна ручная блокировка, разблокировка сервера, кик всех игроков и перезагрузка сервера. Рекомендую для простоты програмку из способа 3. Важно: Работоспособность скрипта напрямую зависит от функции и исполнения игрой CallLater (отложенный запуск). Если вдруг после какой-то модификации или обновления игры функция будет сломана, либо заторможена, рестарт может быть задержан на какое-то время. На момент работы с патчем 1.07 такие зависания найдены после работы сервера 5.5 часов без перезагрузки (без модов), на более старых версиях игры таких проблем не наблюдалось. По этой причине не рекомендую ставить частоту рестартов выше 5 часов! Скрипт проверен на чистой версии игры на момент публикации и является работоспособным по сей день и час. Настройка: Настройка скрипта состоит из нескольких блоков, часть настроек в которых зависит друг от друга. Советую вам крайне внимательно отнестись к заполнению настроек! Общие настройки: Параметр Name_Block_Log_Script - метка, отображаемая в script.log файлах в моменты исполнения скриптовых команд данного скрипта, включая информацию об отправках сервера на рестарт и чат. Формат значений - Произвольные значения текста! Метка поможет отследить выполнение работы скрипта и исправлять ошибки. Параметр enable_work_script - включает и отключает работу всего скрипта. При false будет отключен, и не будет ничего делать в принципе вообще. Формат значений - true или false Параметр enable_shutdown_server_procedures - включает и отключает функционал рестартов сервера скриптом (при false отключится именно сам функционал рестартов, остальное будет работать) Параметр Enabled_Restarts_In_fixed_time - переключение режима рестартов сервера (true - по фиксированному времени, false - по времени от старта сервера) (параметр 'enable_shutdown_server_procedures' не влияет на это значение) (время используемое для кика игроков и блокировки сервера при 'true' используется фиксированное, при 'false' - динамическое от старта сервера) Далее для полноценной работы скрипта обязательно необходимо настроить один из 2 блоков ниже! Именно настроить, а не удалить, закомментировать!!! От них зависит работоспособность функционала блокировки сервера и кика игроков, даже если "enable_shutdown_server_procedures = false;" Блок 1 - фиксированное время выключений сервера: Параметр-массив Restarts_Fixed_Time - Фиксированное время для рестартов сервера (работает при Enabled_Restarts_In_fixed_time = true) (если enable_shutdown_server_procedures = false и Enabled_Restarts_In_fixed_time = true то от этого времени будет зависеть функционал блокировки и автокика с сервера) Блок 2 - динамическое время выключений сервера: Параметр time_format - Формат времени для динамических рестартов (по времени от старта сервера) для значения ниже. Возможные значения: seconds, minutes, hours. (работает при Enabled_Restarts_In_fixed_time = false) Параметр time_wait_autorestart - Время для динамического рестарта, которое сервер будет отсчитывать от момента запуска сервера. Значение указывается в формате по параметру time_format (например 3.2) (не рекомендуется ставить более 4 часов). Формат значений - число с точкой. Например, если указано 3.0 и hours то это значит что рестарт будет через 3.0 часа. (работает при Enabled_Restarts_In_fixed_time = false) Опциональный функционал скрипта: 1. Функционал, работающий только при включенной опции enable_shutdown_server_procedures = true; Параметр Time_Wait_AfterChatInformation_shutdown_server - тут указывается за столько секунд перед фактическим рестартом будет автоинформирование в чат сервера. Формат значений - простое число, без точки. Время в секундах! Параметр text_ChatInformation_shutdown_server - сообщение автоинформирования в чат перед непосредственно выполнением рестарта сервера, для параметра выше. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Параметр enable_shutdown_server_chat_RestartInformation_functions - включение-отключение функционала уведомлений в чат перед скорым рестартом по указанному ниже времени. Формат значений - true или false Параметр-массив RestartsInformation_chat_minutes - время, за сколько будет отправлено каждое уведомление в чат о скором рестарте сервера. Формат значений - простое число, без точки. Время в минутах! Работает только при enable_shutdown_server_chat_RestartInformation_functions = true. Параметр text_RestartsInformation_chat - Уведомление в чат о скором рестарте сервера. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_shutdown_server_chat_RestartInformation_functions = true. 2. Функционал, отвечающий за фоновые уведомления в чат о времени до рестарта и времени работы сервера (uptime) Параметр enable_chat_info_restart_and_uptime - включение-отключение информирования в чат через равные промежутки времени о времени работы сервера и времени, оставшегося до рестарта сервера (true - вкл., false - откл.) Параметр text_chat_info_restart_and_uptime - Уведомление автоинформирования в чат. Вместо %time% и %uptime% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_chat_info_restart_and_uptime = true. Параметр time_format_chat_info_restart_and_uptime - Формат времени, какое будет выводиться в сообщении выше. Может иметь только значения: 'seconds', 'minutes', 'hours'. Работает только при enable_chat_info_restart_and_uptime = true. Параметр match_time_chat_info_restart_and_uptime - включение-отключение округления времени в сообщении выше до целого числа (true - вкл., false - откл.). Работает только при enable_chat_info_restart_and_uptime = true. Параметр time_chat_information_autorestart - Время между повтором отправки в чат информации о том, сколько сервер работает и сколько времени осталось до рестарта.). Значение указывается в формате по параметру time_format_chat_info_restart_and_uptime. Формат значений - число с точкой. Например, если указано 0.10 и hours то значит каждые 0.10 часа (час напоминаю это 60 минут, т.е. значение 1.0 = 1 час, значит 0.10 от 1 часа (10% от 60 минут) это 6 минут). 3. Функционал, отвечающий за блокировки входа на сервер перед рестартом: Параметр enable_lock_server_in_restart - включение-отключение блокировки входа на сервер перед рестартом (true - вкл., false - откл.) Параметр text_lock_server_in_restart - сообщение в чат, отправляемое играющим в чат, когда вход на сервер заблокирован. Формат значений - любой текст. Работает только при enable_lock_server_in_restart = true. Параметр time_undo_lock_server - Время в минутах до того, как сервер закроется на рестарт и перестанет пускать игроков (т.е. за X минут до момента самого рестарта). Формат значений - число с точкой. Время до рестарта берется в зависимости от настроек 1 из 2 обязательных блоков настроек выше. Работает только при enable_lock_server_in_restart = true. 4. Функционал, отвечающий за кик всех игроков перед рестартом сервера: Параметр enable_kick_all_from_server_in_restart - включение-отключение кика всех игроков перед рестартом сервера (true - вкл., false - откл.) Параметр Time_kick_all_informationWait - время в секундах, за столько секунд перед фактическим киком с сервера будет автоинформирование в чат. Формат значений - простое число, без точки. Время в секундах! Работает только при enable_kick_all_from_server_in_restart = true. Параметр text_kick_all_from_server_in_restart - сообщение автоинформирования в чат перед непосредственно выполнением кика всех игроков с сервера, для параметра выше. Вместо %time% будет автоматически подставлено время скриптом. Формат значений - любой текст. Работает только при enable_kick_all_from_server_in_restart = true. Параметр time_undo_kick_all_from_server_after_lock - время в минутах, за столько будет запущен автокик всех игроков с сервера (перед фактическим рестартом сервера). Формат значений - число с точкой. Работает только при enable_kick_all_from_server_in_restart = true. Исправлена ошибка в логике определения времени до рестарта в скрипте при включенном функционале рестартов по фиксированному времени. (для случаев, когда время рестарта и текущее время почти совпадали, отличались лишь секунды) Добавлено дополнительное логирование по выбираемому режиму рестарта и времени рестарта в логах сервера Добавлено дополнительное логирование времени, которое выберет скрипт по окончании расчетов для будущего рестарта сервера Добавлено дополнительное логирование времени по оставшемуся до рестарта времени В случае возникновения каких-либо проблем в работе скрипта рестартов по фиксированному прописанному времени (функционал-альтернатива BEC) измените следующий параметр на указанное ниже значение. bool EnableDebugLogs = true; Это поможет мне отследить работу данного функционала и найти проблему! При обращении за помощью обязательно прикладывайте ваш script.log рабочего сервера на момент с проблемой и включенной данной опцией в скрипте! Description: A server script that performs automatic server restarts with notifications in the server chat about the time before restarts, server operation time, as well as automatic blocking of the possibility of logging on to the server, kicking players from the server at the time of server blocking, as well as turning off the server. For a full restart, you just need to turn on the server again (for example, from the batch file you configured or any other program). The game for which this product is suitable: DayZ Standalone Type: Server script Authorship: me (123new) Opportunities: Automatic chat notifications about the time before the restart (can be disabled) Automatic chat notifications about server operation time from the start (can be disabled) Automatic customizable notifications before the server restarts directly for players in the chat. (can be disabled) Automatic blocking of login to the server X minutes before the physical restart of the server (can be disabled) Automatic kick of all players playing on the server from the server X minutes before the physical restart of the server. (can be disabled) Unfortunately, it is not possible to display the reason for the kick on the screen without its client-server mod (a feature of the language of the game). The character is saved at the same time by the regular systems of the game server. Automatic kick (server lock imitation) of all players entering the server if the server is blocked. (can be disabled) Unfortunately, it is not possible to display the reason for the kick on the screen without its client-server mod (a feature of the language of the game). Automatic shutdown of the server at the time of restart with the correct shutdown of the server. (can be disabled) Customizable texts of notifications and alerts in the chat before each action. Two types of restarts with the ability to enable and configure the desired mode: 1) the restart is fixed, at the specified time (analogous to sheduler BEC). 2) the restart is dynamic, after a fixed time from the moment the server is started. Commands accessible from outside to other scripts via code call Get_RestartServer_System() for execution in their scripts and services. With their help, it is possible to manually lock, unlock the server, kick all players and restart the server. I recommend for simplicity a program from method 3. Important: The performance of the script directly depends on the function and execution of the game callLater (delayed launch). If suddenly, after some modification or update of the game, the function is broken or slowed down, the restart may be delayed for some time. At the time of working with patch 1.07, such freezes were found after the server had been running for 5.5 hours without restarting (without mods), no such problems were observed on older versions of the game. For this reason, I do not recommend setting the frequency of restarts above 5 hours! The script was tested on a clean version of the game at the time of publication and is operational to this day and hour. Customization: The script setup consists of several blocks, some of the settings in which depend on each other. I advise you to pay very close attention to filling in the settings! General Settings: The Name_Block_Log_Script parameter is a label displayed in script.log files at the time of execution of the script commands of this script, including information about server restart and chat dispatches. The format of values is Arbitrary text values! The label will help to ice the execution of the script and correct errors. The enable_work_script parameter enables and disables the operation of the entire script. If false, it will be disabled, and will not do anything in principle at all. The format of the values is true or false The enable_shutdown_server_procedures parameter - enables and disables the functionality of server restarts by script (if false, it is the restart functionality itself that will be disabled, the rest will work) The Enabled_Restarts_In_fixed_time parameter - switching the server restarts mode (true - by fixed time, false - by time from the server start) (the 'enable_shutdown_server_procedures' parameter does not affect this offset) (the time used for kicking players and blocking the server is fixed when 'true', dynamic from the server start when 'false') Next, for the script to work properly, you must configure one of the 2 blocks below! It is to configure, not delete, comment out!!! The operability of the server blocking and player kick functionality depends on them, even if "enable_shutdown_server_procedures = false;" Block 1 - fixed time of server shutdowns: Parameter-array Restarts_Fixed_Time - Fixed time for server restarts (works when Enabled_Restarts_In_fixed_time = true) (if enable_shutdown_server_procedures = false and Enabled_Restarts_In_fixed_time = true, then the functionality of blocking and auto-kicking from the server will depend on this time) Block 2 - Dynamic server shutdown time: The time_format parameter is the time format for dynamic restarts (according to the time from the server start) for the value below. Possible values: seconds, minutes, hours. (works when Enabled_Restarts_In_fixed_time = false) The time_wait_autorestart parameter is the time for a dynamic restart, which the server will count from the moment the server starts. The value is specified in the format by the time_format parameter (for example 3.2) (it is not recommended to set more than 4 hours). The format of the values is a number with a dot. For example, if 3.0 and hours are specified, it means that the restart will be in 3.0 hours. (works when Enabled_Restarts_In_fixed_time = false) Optional script functionality: 1. Functionality that works only when the enable_shutdown_server_procedures = true option is enabled; The Time_Wait_AfterChatInformation_shutdown_server parameter is specified here for as many seconds before the actual restart there will be auto-information in the server chat. The format of the values is a simple number, without a dot. Time in seconds! The text_ChatInformation_shutdown_server parameter is an auto-information message to the chat before the server restart is performed directly, for the parameter above. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. The enable_shutdown_server_chat_RestartInformation_functions parameter is enabling or disabling the notification functionality in the chat before the fast restart at the time specified below. The format of the values is true or false Parameter-array RestartsInformation_chat_minutes - the time for how long each notification will be sent to the chat about the imminent restart of the server. The format of the values is a simple number, without a dot. Time in minutes! Works only when enable_shutdown_server_chat_RestartInformation_functions = true. The text_RestartsInformation_chat parameter is a notification to the chat about the imminent restart of the server. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_shutdown_server_chat_RestartInformation_functions = true. 2. The functionality responsible for background notifications in the chat about the time before the restart and the server's uptime The enable_chat_info_restart_and_uptime parameter - enables or disables informing the chat at regular intervals about the server's operating time and the time remaining before the server restart (true - on, false - off) The text_chat_info_restart_and_uptime parameter is an auto-information notification to the chat. Instead of %time% and %uptime%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_chat_info_restart_and_uptime = true. The time_format_chat_info_restart_and_uptime parameter is the format of the time that will be displayed in the message above. It can only have the values: 'seconds', 'minutes', 'hours'. Works only when enable_chat_info_restart_and_uptime = true. The match_time_chat_info_restart_and_uptime parameter - enables or disables rounding the time in the message above to an integer (true - on, false - off). Works only when enable_chat_info_restart_and_uptime = true. The time_chat_information_autorestart parameter is the time between the repetition of sending information to the chat about how long the server is running and how much time is left before the restart.). The value is specified in the format by the time_format_chat_info_restart_and_uptime parameter. The format of the values is a number with a dot. For example, if 0.10 and hours are specified, then it means every 0.10 hours (an hour is 60 minutes, i.e. the value 1.0 = 1 hour, means 0.10 of 1 hour (10% of 60 minutes) it's 6 minutes). 3. The functionality responsible for blocking the entrance to the server before restarting: The enable_lock_server_in_restart parameter is enabling or disabling the server login lock before restarting (true - on, false - off) The text_lock_server_in_restart parameter is a chat message sent to the chat player when the server login is blocked. The format of the values is any text. Works only when enable_lock_server_in_restart = true. The time_undo_lock_server parameter is the time in minutes before the server closes for restart and stops letting players in (i.e. X minutes before the restart itself). The format of the values is a number with a dot. The time to restart is taken depending on the settings of 1 of the 2 mandatory settings blocks above. Works only when enable_lock_server_in_restart = true. 4. The functionality responsible for kicking all players before restarting the server: The enable_kick_all_from_server_in_restart parameter - enabling-disabling the kick of all players before restarting the server (true - on, false - off) The Time_kick_all_informationWait parameter is the time in seconds, so many seconds before the actual kick from the server there will be auto-information in the chat. The format of the values is a simple number, without a dot. Time in seconds! Works only when enable_kick_all_from_server_in_restart = true. The text_kick_all_from_server_in_restart parameter is an auto-information message to the chat before directly kicking all players from the server, for the parameter above. Instead of %time%, the time will be automatically substituted by the script. The format of the values is any text. Works only when enable_kick_all_from_server_in_restart = true. The time_undo_kick_all_from_server_after_lock parameter is the time in minutes for which the auto-kick of all players from the server will be launched (before the actual server restart). The format of the values is a number with a dot. Works only when enable_kick_all_from_server_in_restart = true. Fixed an error in the logic of determining the time to restart in the script when the fixed-time restart functionality is enabled. (for cases when the restart time and the current time almost coincided, only seconds differed) Additional logging was added according to the selected restart mode and restart time in the server logs Added additional time logging, which the script will select at the end of calculations for the future server restart. Added additional time logging for the time remaining before the restart In case of any problems in the operation of the restart script at a fixed prescribed time (functional alternative to BEC), change the following parameter to the value specified below. bool EnableDebugLogs = true; This will help me track the operation of this functionality and find the problem! When asking for help, be sure to attach your script.log of the working server at the time with the problem and this option enabled in the script!
    Free
  22. Version 1.0.0

    81 downloads

    Скрипт работающий на момент 1.0 патча в архиве всё интуитивно всё понятно. приличное время назад ушёл из dayz как тех. админ И решил выложить в свободных доступ то что имеется у меня в недрах моего пк. Проверил скрипт на лвс, мод запускается, но в игре не проверял просьба кто запустит отписаться в личные сообщения чтобы удостовериться в работе скрипта для дальнейшего изменения описания. Если будут вопросы пишите в личные сообщения на форуме, постараюсь помочь The script running at the time of the 1.0 patch in the archive is all intuitively clear. I left dayz a good while ago as a tech. admin And I decided to put in free access what I have in the bowels of my PC. I checked the script on the LAN, the mod runs, but I did not check in the game , please who will start unsubscribe in private messages to make sure the script works for further changes in the description. If you have any questions, write in private messages on the forum, I will try to help
    Free
  23. Ищу мододела/скриптера, который сможет реализовать внутриигровой скрипт, который будет у прописанных в этот скрипт админов вызывать менюшку по кнопке с функционалом изменения в реальном времени таких параметров как: 1. Изменение скина персонажа в реальном времени. Тоесть человеку достаточно будет умереть, чтобы появиться в другом скине уже. 2. Изменение прописи человека в определенную фракцию с заданными параметрами начального прессета при возрождении и постоянной точки спавна. Так же ему достаточно будет умереть кепкой где-нибудь, чтобы его админ мог прописать сразу же в фракцию без перезагрузки сервера, и чтобы он постоянно спавнился, пока его оттуда не выпишут. 3. Восстановление персонажа по кнопке (К примеру человека любого убили не по правилам (RDM) и чтобы не восстанавливать ему вещи по его сохраненному его видеооткату(в лучшем случае, в худшем по словам восстанавливать), просто достаточно нажать на кнопку и на нем появятся вещи, которые были в момент его смерти. Так же этот скрипт должен давать запрет на самостоятельную возможность изменения внешности своего персонажа (Возвращаемся в пункт 1, таким образом админ будет вручную прописывать в реальном времени определенный скин человеку, чтобы в будущем он его не смог поменять, дабы не ломать атмосферу, а то человек где-то накосячил, потом умер и поменял себе персонажа, тем самым его уже не идентифицировать 🙂 ) Так же, если вы сможете выполнить этот функционал, сразу пишите свою точную цену и оставляйте контакты для связи с вами.
  24. Требуется исполнитель, для переработки механики респауна персонажей после смерти.Переработки системы лута с тел игроков. Разработка статичных ивентовых областей. Оплата труда договорная. Дискорд cookies.497
  25. Всем привет, не у кого нет мода или скрипта на car flip? толкание транспорта Только что бы его можно было спокойно использовать на сервере) или в мод паке
×
×
  • Create New...