Нужна помощь?
Создайте тему в соответствующем разделе
Не нужно писать всё в чат!Загляните на торговую площадку
Там вы можете купить
всё что касается игровых серверовНе хотите бан?
Пожалуйста, ознакомьтесь с нашими правилами
Не нарушайте порядок!Продаёте или покупаете?
Пользуйтесь услугами гаранта
Мы сделаем вашу сделку безопасной
Поиск по сайту
Результаты поиска по тегам 'Mod'.
Найдено 20 результатов
-
Всем привет. пишу мод и столкнулся с проблемой в реализации. Суть: Пытаюсь сделать проверку, если игрок стоит прям у окна или у дверного проёма он должен получать урон. Делал вот так. int wallHits = 0; float d = 2.2; // Дистанция до стены. Если стена дальше — считаем, что там окно или проем. // 8 направлений "снежинкой" для проверки стен вокруг игрока // Используем Vector(x, y, z) для точности ref array<vector> checkDirs = { Vector(d,0,0), Vector(-d,0,0), Vector(0,0,d), Vector(0,0,-d), Vector(d,0,d), Vector(-d,0,-d), Vector(d,0,-d), Vector(-d,0,d) }; foreach (vector dir : checkDirs) { // Пускаем горизонтальные лучи от позиции игрока (from) if (DayZPhysics.RayCastBullet(from, from + dir, collisionLayerMask, this, hitObject, hitPosition, hitNormal, hitFraction)) { // ПРОВЕРКА: Это должна быть вертикальная стена (Y нормали < 0.5) // Чтобы не засчитать низкий потолок за стену if (Math.AbsFloat(hitNormal[1]) < 0.5) { wallHits++; } } } // УСЛОВИЕ БЕЗОПАСНОСТИ: // В комнате wallHits будет 6-8. У окна или в проеме — 1-4. if (wallHits < 5) { hasSafeCeiling = false; // Слишком открытое пространство (окно/дверь) } Пытался менять дистанции, но всё ровно не как не хочет работать. Что я делаю не так, или я вообще делаю не то? Мне нужно проверять игрока, в укрытии он или нет. С высотой я разобрался, а вот с боковыми лучами у меня траблы и не во всех помещениях работает как нужно. В некоторых помещениях вообще не работает, удаляешь строки проверки, начинает работать и то по высоте. Просто забегаешь по навес и игрок под защитой, так не должно быть. Помогите пожалуйста решить задачу.
- 1 ответ
-
- dayz
- server-side
-
(и ещё 1)
Теги:
-
Приветствую всех. Образовалась проблема. Установили сервер еxil мод на арму 3. В целом сборка хорошая, но на военках не спавнится оружие. Интересует конкретно военка. CfgExileLootServer.hpp в этом конфиге же меняется процент лута? И в этом ли конфиге мне надо увеличить процент лута, чтоб на военках начали стволы спавнится?
-
Установка сервера проверялась на ExileServer - 1.0.2 "Kohlrabi" Понадобится софт: Navicat Premium Notepad++ PBO Manager Нам понадобится сам мод и файлы сервера: Качаем серверные файлы и клиент для Arma 3 можно и через A3Launcher Перейдем к установки: 1) - В папку с сервером закидываем @Exile и @ExileServer 1.1) У кого есть чистый сервер пропускаем - Как это сделать я написал тут (КЛИКНИ) 2) - В @ExileServer настраиваем файл extdb-conf.ini - это очень важно! [Rcon] IP = IPСЕРВЕРА Port = ПОРТСЕРВЕРА //Password = Должны совпадать BEServer.cfg и config.cfg Password = 1234(пример) 2.1) - смотрим ниже - тоже настраиваем: [exile] Type = MySQL Name = exile Username = root Password = 1234 IP = 127.0.0.1 3) - так же настраиваем config.cfg в @ExileServer hostname = "TEST SERVER"; password = ""; passwordAdmin = "1234"; serverCommandPassword = "1234"; 4) - Из архива копируем в папку с сервером папку keys 5) - Из архива копируем в папку с сервером папку mysql 6) - Из архива копируем в папку с сервером папку mpmissions 7) - В папке battleeye надо создать файл BEServer.cfg (если его у вас нет) в него вписываем следующее: RConPassword 1234 MaxPing 333 RConIP 127.0.0.1 RConPort 1337 8) - Создать файл в папке с сервером start.bat в него вставить следующий код: ВНИМАНИЕ!!!! в параметре -cpuCount=ставьте свое количество ядер (у меня 4 ядра и 4 виртуальных = я ставлю 8) cd C:\Arma3Server\ start /REALTIME arma3server.exe -noCB -maxMem=2047 -cpuCount=8 -port=2302 "-config=instance_Exile\config.cfg" "-cfg=instance_Exile\basic.cfg" "-profiles=instance_Exile" "-name=instance_Exile" "-servermod=@ExileServer" "-mod=@Exile" -name=Exile -loadMissionToMemory exit 9) - Далее заливаем через Navicat базы данных exile.sql ПРИМЕР КАК ЭТО ДЕЛАЕТСЯ СМОТРИ ВИДЕО 9.1) - идем в папку mysql (мой путь C:\Program Files\MySQL\MySQL Server 5.7) и ищем там файл my-default.ini Бывает еще и такой путь у меня их два xD (для этого откройте скрытые папки и файлы) C:\ProgramData\MySQL\MySQL Server 5.7 там тоже проделываем ищем строку: sql-mode="STRICT_TRANS_TABLE,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" меняем на этот: sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" или, что бы было так: (лично мне помогло на моем пк) sql_mode="" Распаковываем exile_server_config.pbo в файле config.cpp ищем строку: serverPassword = ""; ставим пароль: serverPassword = "1234"; Пароль для Rcon также должен быть одинаковым с паролями которые вы указываете в файлах config.cfg и BEServer.cfg Ну вот и все, доброго фпс!
-
Всем привет. Суть в чём, пишу мод на событие и когда происходит событие, параллельно должна меняться скорость ветра, не могу понять как заставить скрипт управлять силой ветра. Понижать силу ветра получилось сделать, а вот повышать не как. Только после перезагрузки сервера сила ветра задаётся в нужном значение. Как сделать, что бы по вызову функции менялась сила ветра в большую или в меньшую сторону? protected void SetWind(float wind, float time) { if (!g_Game) return; Weather m_Weather = g_Game.GetWeather(); if (!m_Weather) return; m_Weather.SetWindMaximumSpeed(wind); m_Weather.SetWind(Vector(1/Math.Sqrt(3), 1/Math.Sqrt(3), 1/Math.Sqrt(3)) * wind); m_Weather.SetWindSpeed(wind); m_Weather.SetWindFunctionParams(1.0, 1.0, -1); } Это скрипт на понижение силы ветра. Работает понижение силы ветра в том случае, если до этого сила ветра была выше. Пример: Изначально на сервере сила ветра = 20 m/s А нужно понизить до 10 m/s Только в этом случае сработает скрипт который я приложил выше. Помогите пожалуйста решить этот вопрос. За ранние благодарю.
-
Всем привет. Подскжите ну или помогите пожалуйста решить вопрос. Вопрос звучит так. На сервере есть трейдер зоны и базы игроков. Если в течение определённого времени, на пример 1 - 2 часа с машиной не кто не взаимодействует и машина не находится в зоне трейдера или на теретории базы, то машина отлетает в гараж или на штраф стоянку. На сервере используется TraderPlus. Есть такие решения у кого? За ранние благодарю.
-
Будьте добры, помогите пожалуйста. Проблема в том, что не приходят сообщения в нужное время. Скорее всего неправильная логика. class FakeChatNotifier { ref Timer m_Timer; ref Timer m_MessageTimer; bool m_IsActive; // Списки диалогов ref array<ref array<string>> m_WelcomeDialogs; ref array<ref array<string>> m_RegularDialogs; ref array<ref array<string>> m_ThreatDialogs; void FakeChatNotifier() { m_Timer = new Timer(); m_MessageTimer = new Timer(); m_IsActive = false; // Инициализация диалогов InitializeDialogs(); Print("[FakeChatNotifier] Initialized"); // Лог для проверки инициализации } void InitializeDialogs() { // Приветственные диалоги m_WelcomeDialogs = new array<ref array<string>>; m_WelcomeDialogs.Insert({"Hello!", "How are you?"}); m_WelcomeDialogs.Insert({"Anyone alive?", "Yes, I am here. What's new?"}); m_WelcomeDialogs.Insert({"What's the situation?", "It seems quiet, but stay sharp."}); // Обычные диалоги m_RegularDialogs = new array<ref array<string>>; m_RegularDialogs.Insert({"Check radio frequency 98.7", "Got it, I'll stay alert."}); m_RegularDialogs.Insert({"Never trust strangers", "Right, it's every man for himself here."}); m_RegularDialogs.Insert({"I saw someone near the old factory", "Thanks for the info, I'll check it out."}); // Угрозы m_ThreatDialogs = new array<ref array<string>>; m_ThreatDialogs.Insert({"We will find you...", "Try, but I won't give up."}); m_ThreatDialogs.Insert({"You won't escape", "I'm ready for this."}); m_ThreatDialogs.Insert({"Your loot will be ours", "You wish."}); } void Start() { if (!m_IsActive) { m_IsActive = true; m_Timer.Run(60, this, "CheckTime", NULL, true); // Запуск таймера на проверку каждые 60 секунд Print("[FakeChatNotifier] Started main timer"); // Лог для проверки запуска } } void Stop() { m_IsActive = false; m_Timer.Stop(); m_MessageTimer.Stop(); Print("[FakeChatNotifier] Stopped timers"); // Лог для проверки остановки } // Функция для получения текущего времени void GetCurrentHour(out int hour) { int year, month, day, minute; GetGame().GetWorld().GetDate(year, month, day, hour, minute); // Получаем текущий час из даты Print("[FakeChatNotifier] Current hour: " + hour); // Лог для проверки текущего времени } void CheckTime() { int hour; GetCurrentHour(hour); // Используем нашу функцию для получения текущего часа if (hour >= 22 || hour < 6) { if (!m_IsActive) { Print("[FakeChatNotifier] Night time detected, starting dialog cycle"); // Лог для ночного времени StartDialogCycle(hour); } } else { Print("[FakeChatNotifier] Day time, stopping dialogs"); // Лог для дневного времени Stop(); } } void StartDialogCycle(int hour) { if (!m_IsActive) return; array<string> dialog; if (hour >= 22 && hour < 23) { dialog = m_WelcomeDialogs.GetRandomElement(); // Приветственные диалоги Print("[FakeChatNotifier] Sending welcome dialog"); // Лог для приветственных диалогов } else if (hour >= 23 && hour < 3) { dialog = m_RegularDialogs.GetRandomElement(); // Обычные диалоги Print("[FakeChatNotifier] Sending regular dialog"); // Лог для обычных диалогов } else if (hour >= 3 && hour < 6) { dialog = m_ThreatDialogs.GetRandomElement(); // Угрозы Print("[FakeChatNotifier] Sending threat dialog"); // Лог для угроз } SendDialog(dialog); ScheduleNextDialog(); // Планирование следующего диалога } void ScheduleNextDialog() { int interval = Math.RandomIntInclusive(900, 1500); // Интервал (15-25 минут в секундах) m_MessageTimer.Run(interval, this, "StartDialogCycle", NULL, false); Print("[FakeChatNotifier] Scheduled next dialog in " + interval + " seconds"); // Лог для планирования следующего диалога } void SendDialog(array<string> dialog) { for (int i = 0; i < dialog.Count(); i++) { float delay = i * Math.RandomIntInclusive(5, 9); // Задержка между сообщениями в диалоге (5-9 секунд) m_MessageTimer.Run(delay, this, "SendMessageToPlayers", new Param1<string>(dialog[i]), false); Print("[FakeChatNotifier] Scheduled message with delay " + delay + " seconds: " + dialog[i]); // Лог для отправки сообщения } } void SendMessageToPlayers(Param1<string> param) { string message = param.param1; array<Man> players = new array<Man>; GetGame().GetPlayers(players); if (players.Count() > 0) { foreach (Man player : players) { Param1<string> globalMessage = new Param1<string>(message); GetGame().RPCSingleParam(player, ERPCs.RPC_USER_ACTION_MESSAGE, globalMessage, true, player.GetIdentity()); } Print("[FakeChatNotifier] Sent message to all players: " + message); // Лог для отправленного сообщения } else { Print("[FakeChatNotifier] No players online to send message: " + message); // Лог для случая, если нет игроков } } }
-
Всем привет. Помогите пожалуйста со скриптом. Суть. Я пытаюсь сделать синхранизацию сервера с клиентом передавая c конфига время разделки животного. В родных скриптах есть class UATimeSpent с константами и там есть константа SKIN. Мне нужно её перезаписать на своё значение и мне выдаёт ошибку: Trying to modify write protected variable 'SKIN' в переводе на Русский Попытка изменить защищенную от записи переменную «SKIN». Функция скрипта: Когда игрок запускает клиент, идёт запрос на серверную часть и получает в ответ время разделки. Задача: Нужно перезаписать константу SKIN на новое значение и всё. Сам скрипт. class timeToComplete extends UATimeSpent { protected ref UATimeSpent m_UATimeSpent; void timeToComplete() { GetDayZGame().Event_OnRPC.Insert(OnRPC); CheckUATimeSpent(); } void ~timeToComplete() { GetDayZGame().Event_OnRPC.Remove(OnRPC); } void CheckUATimeSpent() { GetGame().RPCSingleParam(NULL, SOC_TIME_RPCs.SOC_GT, NULL, true); } void OnRPC(PlayerIdentity sender, Object target, int rpc_type, ParamsReadContext ctx) { if (rpc_type == SOC_TIME_RPCs.SOC_RT) { Param1<float> soc_srt; if (ctx.Read(soc_srt)) { if (soc_srt.param1!= 0) { m_UATimeSpent.SKIN = soc_srt.param1; Print("Пришёл ответ от сервера в m_UATimeSpent.SKIN - " + m_UATimeSpent.SKIN) } } } } };
-
Всем привет. Подскжите ну или помогите пожалуйста решить вопрос. Вопрос звучит так. Нужно сделать так, что бы на всей карте был запрет на строительство. Если нужно построить например базу с палатками, то нужно установить верстак или флаг, который установит зону для строительства с радиусом примерно 20-25 метров от центра и желательно что бы зона была квадратной. Есть такие решения у кого? За ранние благодарю.
-
*Каеф, не заметил "Изменение политики распространения InfiSTAR"* За ссылкой - в приватный раздел сайта Установка панели infistar на ExileServer - 1.0.2 "Kohlrabi" Немного информации: F1 - Стандартная кнопка меню F6 - Вылечить себя F7 - Вылечить\починить в радиусе 15М F10 - Прекратить наблюдение F11- Добавить патроны к оружию в руках SHIFT+4 - Полет SHIFT+5 - Телепорт в точку, куда смотришь (Если включено в панеле) SHIFT+F2 - Админская консоль SHIFT+I - Показать код от машины\двери SHIFT+TAB - Открыть карту Понадобится софт: Notepad++ PBO Manager Перейдем к установке: 1)В папку с сервером закидываем @infiSTAR_servermod 2)Идем в "Server\@infiSTAR_servermod\addons\a3_infiSTAR" и редактируем "EXILE_AHAT_CONFIG.sqf" (Добавляем UID администрации) 3)Конвертируем папку "a3_infiSTAR" в "a3_infiSTAR.pbo" с помощью PBO Manager 4)Модифицируем батник запуска сервера, добавив ещё один мод серверу, должно выглядеть так: "-servermod=@ExileServer;@infiSTAR_servermod" 5)Открываем MPmissions и конвертируем Exile.****.pbo в папку. (****-название вашей карты) 6)Закидываем "infiSTAR_AdminMenu.hpp" в Exile.**** 7)Открываем "description.ext" и добавляем #include "infiSTAR_AdminMenu.hpp" После #include "config.cpp" 8) Конвертируем Exile.**** обратно в Exile.****.pbo Установка завершена.
-
Хотелось бы сделать новый мод на карту с палитрой на любой цвет и с большим кол-во иконок для меток и настройки сомой метки что бы можно было выбрать что будет в ней отображаться то есть просто иконка или иконка+название или иконка и растояние
- 1 ответ
-
- dayz
- standalone
-
(и ещё 2)
Теги:
-
серверный мод(для выдачи товаров), скрипт для работы сайта Похожий сайты: https://midnight-dayz.ru/store https://dayzpay.ru/ Если знаете как сделать или есть уже готовое что то пишите в лс Вк: https://vk.com/whoiam5637
- 3 ответа
-
- dayz
- dayz standalone
-
(и ещё 1)
Теги:
-
Всем привет, в очередной раз прошу вашей помощи. Решил сделать тестовый мод чтобы попробовать работать через Workbench, но почему-то распакованный мод не работает, а вот если его запаковать и положить как .pbo в @Dlya_Primera/Addons/, то всё ок. Просто мод для теста, добавляет объекты для спавна. Структура папки: Test (папка), внутри файл config.cpp config.cpp #define _ARMA_ class CfgPatches { class Test { units[] = {}; weapons[] = {}; requiredVersion = 0.1; requiredAddons[] = {"DZ_Data"}; worlds[] = {}; }; }; class CfgVehicles { class HouseNoDestruct; class cb_alicebackpack_f: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\alicebackpack_f.p3d"; }; class cb_alicebackpack_g: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\alicebackpack_g.p3d"; }; class cb_alicebackpack_m: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\alicebackpack_m.p3d"; }; class cb_bag_leathersack_f: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\Bag_LeatherSack_f.p3d"; }; class cb_bag_leathersack_g: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\Bag_LeatherSack_g.p3d"; }; class cb_bag_leathersack_m: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\Bag_LeatherSack_m.p3d"; }; class cb_boulder_m53_f: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\boulder_m53_f.p3d"; }; class cb_boulder_m53_g: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\boulder_m53_g.p3d"; }; class cb_boulder_m53_m: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\boulder_m53_m.p3d"; }; class cb_bp_improvisedfur_f: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\bp_ImprovisedFur_f.p3d"; }; class cb_bp_improvisedfur_g: HouseNoDestruct { scope = 1; model = "\DZ\characters\backpacks\bp_ImprovisedFur_g.p3d"; }; } Параметры запуска сервера: -DoLogs -noPause -port=2302 -config=serverDZ.cfg -filePatching -profiles=!Server_Instance "-mod=@Dlya_Primera;Test" Параметры запуска клиента: -connect=127.0.0.1:2302 -profiles=!Client_Instance -window -name=%PlayerName% -noPause -filePatching -dologs -password=ok "-mod=@Dlya_Primera;Test" -world=%PathGame%/mpmissions/dayzOffline.chernarusplus UPD! Вопрос даже не в Workbench, а в том что мод распакованный не грузится через -filePatching Test.zip Test_pbo.zip
- 4 ответа
-
- filepatching
- mod
-
(и ещё 2)
Теги:
-
Доброго времени суток всем! Состоялся релиз нового мода на Arma 3. Если кто-то уже пробовал устанавливать сервер самостоятельно отзовитесь. Нужна помощь в настройке сервера и базы данных. Буду очень благодарен за помощь!
-
Всем привет! Поделитесь пожалуйста файликом initPlayerLocal.sqf, где прописаны трейды для Чернорусии. Или подскажите, как их добавить самостоятельно. Заранее Спасибо!
-
Добрый вечер! Собственно задался целью сделать выбор игрокам спаниться им с раскрытым парашютом или закрытым! В ориинальном конфиге не чего такого не нашел, есть только возможность сделать спавн в воздухе или на земле! Буду очень благодарен тому кто подскажет где искать желаемую настройку
-
Всем привет! Подскажите пожалуйста, какие файл отвечают за перевод мода?
- 1 ответ
-
- Русификация
- Arma
-
(и ещё 2)
Теги:
