NoNameUltima

скрипт
DayZ Standalone Серверный мод

34 сообщения в этой теме

Автор: NoNameUltima

v. 0.1.7

Стоимость: 2500

 

Мод предоставляется в двух частях:

  • Клиентский мод(для игроков). Ключи и подписи, присутствуют(При необходимости изменения содержимого - ключ и подписи можно переделать).
  • Серверный мод(только для сервера).

*Моды связанны между собой.

 

Что присутствует:

 

  • Дебаг монитор

*Есть настройка в конфигурации - отображать, или нет монитор при заходе на сервер.
**Кнопка вкл\выкл настраивается в конфигурации

Скрытый текст

 

  • Отображение собственного имени
  • Отображение координат
  • Отображение наличных
  • Отображение счета в банке
  • Отображение донат монет
  • Отображение репутации
  • Отображение кол-ва убийств людей
  • Отображение кол-ва убийств зомби
  • Отображение онлайна.
  • Отображение ФПС.

  • Отображение времени ДО рестарта.

 

  • За убийство зомби, повышается счетчик убийств зомби.
  • За убийство зомби, начисляются наличные(кол-во настраивается в конфигурации).
  • При смерти игрока, наличные остаются в трупе.(Забрать можно).
  • За убийство игрока, повышается счетчик убийств людей.
  • Оповещение о проверке мода.
  • Оповещение о завершении проверки мода.
  • Метки на карте с указанием торговых зон.
  • Стартовое приветствие игроков.
  • ПНВ работающий от батарейки.
  • Панель игрока
Скрытый текст

 

Магазин
*Продажа и покупка техники пока не реализована!
**Продажа осуществляется той вещи которая В РУКАХ!

  • Игроки могут покупать вещи(какие, где, сколько стоят - настраивается в конфигурации)
  • Игроки могут продавать вещи(какие, где, за сколько - настраивается в конфигурации)

Банк
*Передача наличных средств другому игроку, осуществляется через банк.
**Дополнительный пункт - передача наличных напрямую(без банкинга), пока не реализован!

  • Игроки могут положить наличные в банк.
  • Игроки могут снять наличные из банка.
  • Игроки могут передать наличные другому игроку(даже если он не в сети, по UID *При условии, что данный игрок, хоть раз заходил на сервер - присутствует в БД)

Друзья(пункт работает, но вложенные пункты временно отключены.)

 

  • Зараженные зоны.
Скрытый текст

В каждую зону можно прописать:

  •  Радиус зоны.
  •  Урон по игрокам(за итерацию).
  •  Комплекты вещей. - Объект, урон за итерацию.

 Описание работы:

  •  Если на игроке нет ни одного комплекта, - урон проходит по игроку.
  •  Если на игроке есть хоть один комплект, - урон проходит по объектам комплекта. (первый встреченный комплект при переборе).
  • Стартовый инвентарь для игроков(по UID'ам, и общий).
  • Стартовые позиции для игроков(по UID'ам, и случайные для тех кого нет в списке).
  • Статичные постройки на карте(загрузка из класса).
  • Создание коробок с содержимым.
  • Команды чата:
  • Скрытый текст

    Для примера добавлены 2 команды:

    /kit

    /help

    /kit - выдает определенный в конфигурации инвентарь, для игрока.

    /help - выводит определенные в конфигурации строки текста(Адресс группы в ВК и т.п.)

     

  • Доп. статичные функции:
Скрытый текст
  • Запись журналов в отдельные файлы.
  • Получения даты.
  • Получения времени.
  • Расчет дистанции в 2D(без учета высоты).
  • и многие другие...

 

skype: hf-trade

 

P.S. Обновления платные(для тех кто приобретал мод ранее: 25% от общей стоимости, до актуальной версии).

P.S.P.S. Весь функционал является БЕТА-ВЕРСИЕЙ!

Изменено пользователем NoNameUltima (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Забронировать это рекламное место


UPD: v,0.0.2

Добавлено:

  • Скрипт создания коробок с содержимым(loot box).

 

Изменено пользователем NoNameUltima (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

UPD: v.0.0.3

Добавлено:

  • Телепорт сразу всех игроков на сервере в одну точку.
  • Выдача объектов сразу всем игрокам на сервере.
  • Случайные координаты возрождения для игроков(не по группам и UID'ам) вынесены в отдельный файл.
  • Файл стартового инвентаря для игроков(не по группам и UID'ам), вынесен в отдельный файл. Возможность создания случайных комплектов инвентаря.
Изменено пользователем NoNameUltima (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Аннонс:

Добавляем валюту, и монитор отладки.

*Мод будет состоять из двух частей - Клиентский и серверный.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мод упаковывается.

Тема в шапке будет обновлена.

P.S. (Таурен обнови плс название темы - вместо серверный, напиши - клиент-серверный)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

UPD: v.0.0.4

Добавлено в серверный мод:

  • Нанесение урона игроку по UID, из файла, в реал-тайм(без необходимости захода в игру). *Урон может быть как в +, так и в -. т.е. и лечение и урон\убийство.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мод предоставляется в двух частях:

  • Клиентский мод(для игроков). Ключи и подписи, присутствуют(При необходимости изменения содержимого - ключь и подписи можно переделать).
  • Серверный мод(только для сервера).

*Оба мода связанны между собой.

UPD: v.0.0.5
Добавлено:

  • Дебаг монитор

*Есть настройка в конфигурации - отображать, или нет монитор при заходе на сервер.
**Кнопка вкл\выкл настраивается в конфигурации

 

Скрытый текст
  • Отображение собственного имени
  • Отображение координат
  • Отображение наличных
  • Отображение счета в банке
  • Отображение донат монет
  • Отображение репутации
  • Отображение кол-ва убийств людей
  • Отображение кол-ва убийств зомби
  • За убийство зомби, повышается счетчик убийств зомби.
  • За убийство зомби, начисляются наличные(кол-во настраивается в конфигурации).
  • При смерти игрока, наличные остаются в трупе.(Забрать можно).
  • За убийство игрока, повышается счетчик убийств людей.
  • Панель игрока
Скрытый текст

 

Магазин
*Продажа и покупка техники пока не реализована!
**Продажа осуществляется той вещи которая В РУКАХ!

  • Игроки могут покупать вещи(какие, где, сколько стоят - настраивается в конфигурации)
  • Игроки могут продавать вещи(какие, где, за сколько - настраивается в конфигурации)

Банк
*Передача наличных средств другому игроку, осуществляется через банк.
**Дополнительный пункт - передача наличных напрямую(без банкинга), пока не реализован!

  • Игроки могут положить наличные в банк.
  • Игроки могут снять наличные из банка.
  • Игроки могут передать наличные другому игроку(даже если он не в сети, по UID *При условии, что данный игрок, хоть раз заходил на сервер - присутствует в БД)

 

 

  • Ведение журнала всех операций с валютой(вкл\откл в конфигурации)
  • База данных валюты в простом файловом формате.
  • База данных с данными о репутации, и убийствах в простом текстовом формате.

Цена сборки изменена: 3500.
Все кто приобретал сборку ранее, как и всегда независимо от того кака версия была преобретена, могут обновить ее за 25% от текущей стоимости.

 

P.S. Весь функционал является БЕТА-ВЕРСИЕЙ!

Изменено пользователем NoNameUltima (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Аннонс возможного обновления:

Админка.
 

Скрытый текст

 

Рабочие пункты:

  • Телепорт по карте.
  • Телепорт игрока к администратору.
  • Телепорт администратора к игроку.
  • Сообщения о действиях модератора.
  • Лечение игрока.
  • Убийство игрока.
  • Кик игрока.
  • Отображение собственного местонахождения на карте.
  • Отображение имен персонажей над головой.
  • Отображение списка администраторов, модераторов, и игроков в сети.

*Все пункты являются предварительными.

**Цена сборки(мода) будет меняться в зависимости от наполнения контентом.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

UPD: v.0.0.6

Добавлено в серверный мод:

Скрипты администратора:

  • Обработчики пунктов администратора с клиента.
  • Журнал действий администрации.
  • Конфигурация администрации.

Добавлен клиентский мод администратора.

Рабочие пункты админки:

  • Телепорт по карте.
  • Телепорт игрока к администратору.
  • Телепорт администратора к игроку.
  • Сообщения о действиях модератора.*
  • Отображение имен персонажей над головой.**
  • Отображение списка администраторов, модераторов, и игроков в сети.

*Не проверено.

**В тестовом режими, включено постоянно для администратора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

UPD: v.0.0.7

Добавлено:

  • Простая проверка, что игрок заходит с модом. Иначе - кик.
  • Карта для игроков и администраторов на клавишу М. С отображением собственного местоположения.

 

Изменено пользователем NoNameUltima (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

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

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

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Похожие публикации

    • Автор: 123new
      Нам понадобится:
      1. Сервер DayZ Standalone (см. тему вот эту)
      2. Notepad++: бесплатно на оф. сайте
      3. Немного времени и настойчивости (обычно бывает в комплекте и так)
       
      И так, начинаем:
      1. Открываем блокнотом mpmissions\dayzOffline.chernarusplus\init.c
      P.S. Имя папки dayzOffline.chernarusplus у вас может отличаться, будьте внимательны
      2. В начале файла добавляем:
      static int time_repeat_info_players = 10; //in seconds static string file_name_info_players = "$profile:PlayersLogFile.txt"; static void WriteFile(string file_name, string text) { private FileHandle fhandle; if ( !FileExist(file_name) ) { fhandle = OpenFile(file_name, FileMode.WRITE); } else { fhandle = OpenFile(file_name, FileMode.APPEND); } if ( fhandle == 0 ) { Print("[#Запись_в_файл]: Не удалось открыть файл для записи: " + file_name); Print("[#Запись_в_файл]: [Запись]: " + text); return; } FPrintln(fhandle, text); CloseFile(fhandle); } static void WritePlayersInfo() { array<Man> players = new array<Man>; Man player; Man player_test; GetGame().GetPlayers( players ); if (players.Count() > 0) { if ( FileExist(file_name_info_players) ) { DeleteFile(file_name_info_players); } for ( int i = 0; i < players.Count(); ++i ) { player_test = players.Get(i); if( player_test ) { PlayerIdentity p_identity = player_test.GetIdentity(); private string coord_pl = player_test.GetPosition().ToString(); private string Name_P = p_identity.GetName(); private string UID_P = p_identity.GetPlainId(); WriteFile(file_name_info_players, "User name: " + Name_P + " UID: " + UID_P + " Coords: " + coord_pl); } } } else { if ( FileExist(file_name_info_players) ) { DeleteFile(file_name_info_players); } } } Где 'PlayersLogFile.txt' меняем на нужное вам имя файла, а в 'time_repeat_info_players' настраиваем время повтора проверки списка игроков для перезаписи файла
      3. Находим в файле блок 'void main()' и в его конце перед закрывающей '}', поумолчанию это строка
      weather.SetWindFunctionParams(0.1, 0.3, 50); добавляем ниже строку:
      GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(WritePlayersInfo, (time_repeat_info_players * 1000), true); 4. Готово, если не допустили ошибок, при наличии хотя бы 1 игрока на сервере ваш файл с данными по игрокам будет присутствовать и заполняться информацией, а в случае их отсутствия удаляться.
    • Автор: 123new
      В данной теме я распишу возможность создания серверного мода для сервера на свобственном примере и объясню как его собрать.Работающий на момент публикации статьи на версии сервера игры 1.4.152050.
       
      Нам понадобятся:
      1. Сервер игры актуальной версии, не ниже патча 1.04. Как установить можно узнать тут:
      До версии 1.04 параметра servermod у сервера игры не существовало!!!
      2. Программа 'PBO manager' с состава инструментария армы из сети: https://www.armaholic.com/page.php?id=16369
      Зеркало: https://yadi.sk/d/_gmzoNSDpNJTt
      Еще зеркало:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

      4. Notepad++ https://notepad-plus-plus.org/download P.S. Вместо 'PBO manager' можно использовать DayZ Tools, но как им пользоваться разбираемся сами ;)
       
      И так, приступим:
      1. Предположим, что у нас имеется свой некий набор скриптов, который необходимо добавить серверу, но не на уровне миссии сервера, а на более ранних уровнях его загрузки. Например, добавить свой killfeed, модифицировать или изменить какой-либо из родных скриптов сервера игры, либо вовсе модификации, подключенной у вас.
      Для примера в этой теме и данного гайда я взял вот этот набор скриптов, собранный непосредственно для данной темы за 5 минут, и не изменяющий в сервере ровным счетом ничего. Он может послужить базой для создания своих модов, функций, переменных или классов. Данный гайд будем описывать, исходя из этого архива.
      Архив:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      2. Создаем папку с нашим модом. Для примера, это будет папка '@My_Server_Mod'. В созданной нами папке создаем папку 'Addons', а в ней папку 'My_Server_Mod'.
      3. Помещаем содержимое распакованного архива в папку 'My_Server_Mod'. Должно получиться так:

      4. В папке 'My_Server_Mod' создаем файлик 'config.cpp' и заполняем его следующими данными (советую использовать Notepad++ для этого):
      class CfgPatches // требуется обязательно { class My_Server_Mod // требуется обязательно, совпадает с именем мода { units[]={}; // may be not worked weapons[]={}; // may be not worked requiredVersion=0.1; // may be not worked requiredAddons[]={}; /* requiredAddons[]= { "DZ_Data", // Перечисляем требуемые и используемые модом аддоны (pbo-файлы игры и модов по их внутренним скриптовым именам) }; */ }; }; class CfgMods // // требуется обязательно, совпадает с именем мода { // https://community.bistudio.com/wiki/DayZ:Modding_Structure#Mod_presentation class My_Server_Mod { dir = "My_Server_Mod"; // Имя папки мода, совпадает с именем мода picture = ""; // Картинка в описании мода action = ""; // Ссылка, например вот так: action = "https://dayz.com/"; hideName = 1; // Не уверен, что этот параметр работает hidePicture = 1; // Не уверен, что этот параметр работает name = "My_Server_Mod"; // Имя мода (а также его внутреннее скриптовое имя) logoSmall = "Mods/TestMod/modlogosmall.tga"; // значок рядом с именем мода, если описание не развернуто logo = "Mods/TestMod/modlogo.tga"; // логотип под меню игры logoOver = "Mods/TestMod/modlogohover.tga"; // при наведении курсора мыши на логотип tooltip = "tooltip"; // подсказка при наведении курсора мыши overview = "My Server Mod"; // Описание credits = "123new"; // credits author = "123new"; // author authorID = "0"; // author steam ID version = "1.0"; // version extra = 0; // Не уверен, что этот параметр работает type = "mod"; // требуется обязательно, остается неизменным // inputs = "mods\testmod\inputs\my_new_inputs.xml"; // необязательно, при использовании пользовательских inputs dependencies[]={"Core","GameLib","Game","World","Mission"}; // необязательно, если необходимо установить зависимость класса class defs { class engineScriptModule { value=""; // если значение пустое, используется функция ввода по умолчанию files[]={"My_Server_Mod/scripts/1_Core"}; // вы можете добавить любое количество файлов или каталогов, и они будут скомпилированы вместе с оригинальными скриптами игрового модуля }; class gameLibScriptModule { value=""; files[]={"My_Server_Mod/scripts/2_GameLib"}; }; class gameScriptModule { //value="CreateGameMod"; // когда значение заполнено, имя функции ввода модуля скрипта по умолчанию перезаписывается им value = ""; files[]={"My_Server_Mod/scripts/3_Game"}; }; class worldScriptModule { value=""; files[]={"My_Server_Mod/scripts/4_World"}; }; class missionScriptModule { value=""; files[]={"My_Server_Mod/scripts/5_Mission"}; }; }; // Если какой-то из разделов скриптинга вам не нужен и вы не сибираетесь его паковать, сотрите необходимый блок с ним выше и в массиве dependencies }; }; Пояснения в файле оставил. Файл готовый:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      Как видите, в 'deffs' названия классов и путей соответствуют родным из 'scripts.pbo', но с допиской имени мода. Имя мода в данном случае и есть идентификатор для обращения к своему моду извне. А в 'dependencies' перечисляются используемые классы оригинальных скриптов без дописки номера секции. Количество используемых 'dependencies' и блоков 'deffs' должно быть идентично.
      Пояснения есть также и в официальной документации от разработчика: https://community.bistudio.com/wiki/DayZ:Modding_Structure#Mod_presentation
      5. Запаковываем нашу папку 'My_Server_Mod' в pbo-файл 'My_Server_Mod.pbo' через 'PBO manager', как на скриншоте ниже:

      Можно использовать и другие способы запаковки, если знаете их или привычны вам.
      6. Добавляем в параметры запуска сервера параметр:
      "[email protected]_Server_Mod;" -FilePatching 7. Радуемся, наш серверный мод готов. Пример готового серверного мода:
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      P.S. Создавать bikey файл для мода и bisign подписи для него не требуется, иначе это может привести к неработоспособности серверной модификации (возможно, недоработка сервера игры разработчиком)
       
      Отмечу сразу, что данный способ подходит для модификации и переписывания оригинальных классов скриптов сервера от разработчиков и модификации чужих модов с помощью моддинга, применяется исключительно на стороне сервера игры и клиент игры не затрагивает. Распространять такой мод игрокам НЕ НУЖНО!
      Изменение оригинальных скриптов, для которых не предусмотрена операция 'modded class' в движке игры, а также классов и функций, которые защищены языком и движком игры от такого рода действий через серверные моды не получится. Если вы столкнулись с этим, вам проще распаковать scripts.pbo и поместить папку scripts в корень сервера игры, добавить в параметры запуска сервера параметр -FilePatching и изменять напрямую в папке необходимые вам файлы. (правда из-за ошибки разработчиков на патче 1.04 данный метод не работает корректно)
       
      P.P.S. Процедура создания своего собственного клиент-серверного мода на основе скриптов работает таким же образом. В случае создания такого мода, файл 'config.cpp' может быть для стандартного мода более разнообразным, а также после требуется обязательная подпись такого мода в bisign и создание bikey файлов. Более подробно это освещать требуется отдельно!
    • Автор: NoNameUltima
      Автор: Я.
      Модификация банка, для DayZ Standalone для мода торговли(Trader)
       
      Мод позволяет:
      Снимать деньги со счета. Вносить деньги на счет.  
      Настройки серверной части:
      Точки в которых доступен банк. Радиус в котором доступен банк(от центра точки - см. выше). Горячая клавиша вызывающая на клиентской стороне меню банкомата. Папку профиля для хранения данных о банковских балансах игроков.  
      *Мод автоматически производит обмен валюты по номиналу, при внесении, или изъятии денежных средств.
      *Клиентскую часть можно скачать в STEAM.
      *Для подключения серверной части, - достаточно закинуть ее в папку сервера, и указать папку для хранения баланса.
       
      Цена: 1500
       
      Контакты:
      Skype: hf-trade  
      STEAM: https://steamcommunity.com/sharedfiles/filedetails/?id=1714035636
      Видео работы:
      Серверная часть, подключается как -serverMod=