Нужна помощь?
Создайте тему в соответствующем разделе
Не нужно писать всё в чат!Загляните на торговую площадку
Там вы можете купить
всё что касается игровых серверовНе хотите бан?
Пожалуйста, ознакомьтесь с нашими правилами
Не нарушайте порядок!Продаёте или покупаете?
Пользуйтесь услугами гаранта
Мы сделаем вашу сделку безопасной
- 0
Восстановление разрушенных построек через plotManagement
Спросил
pekar0201
-
Похожие публикации
-
Автор: Miduznya
Всем привет, чет не нашел не где как можно в ручную обновить через .bat или .cmd файл
если есть у кого такой поделитесь плиз. Прошу сильно не пинать если есть такая тема дайте ссылку
-
Автор: BorizzK
Чет упустил сей момент
Ща в разьездах и пытаюсь заранее понять
что за это отвечает из констант и скриптов
Такт сам разберусь, но хотелось бы сделать это быстрей, потому вдруг кто знает где и что копать
PS игроки пишут, что кровь восстанавливается не более чем на половину... Или она и не должна и надо применять переливание, физраствор итп?
-
Автор: RedLink
Всем привет.
Один из разработчиков мода Epoch (Salival's scripts) поделился скриптом для админ-панели Инфистара, чтобы вручную спавнить миссии WAI, DZMS, а также ивенты.
Открываем файл админ-панели Инфистара AT.sqf и ищем код (примерно 289-я строка):
adminadd = adminadd + [" Force Disconnect (Self)",{(findDisplay 46) closeDisplay 0;},"0","0","0","0",[]]; }; и после нее вставляем:
Где [EVENT] - это ивенты которые хранятся у меня в папке "modules", а "building_supplies" - это наименование файла (пробелов быть не должно).
Где [HERO]/[BANDIT] - это мисии для Героев/Бандитов. Так же в строке идет наименование папки "hero"/"bandit", и соответственно наименование файла миссии, например "abandoned_trader", которые соответствуют наименованию файла миссии в папке с героем или бандитом.
Тоже самое и для миссий DZMS - "major"/"minor" - это имя папки миссий, а "SMxxx" - это имя файла миссии.
Далее открываем сам Инфистар - AH.sqf и ищем следующие строки:
} forEach _arrayforcrate; }; и под ними вставляем:
if(_option == 8000) then { _mtype = _array select 2; _mname = _array select 3; if (_mtype == "hero" || {_mtype == "bandit"}) then { diag_log format ["%1 (%2) Spawning mission [%3] %4",name (_array select 1),getPlayerUID (_array select 1),_mtype,_mname]; wai_mission_markers set [(count wai_mission_markers), format ["Main%1%2",_mtype,count(wai_mission_data)]]; if (isNil "ai_show_count") then {wai_mission_data = wai_mission_data + [[0,"",[],[0,0,0]]];} else {wai_mission_data = wai_mission_data + [[0,[],[],[],[]]]}; execVM format ["\z\addons\dayz_server\WAI\missions\%1\%2.sqf",_mtype,_mname]; _sl = format['%1 (%2) spawned WAI\missions\%3\%4.sqf',_clientName,_clientUID,_mtype,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; if (_mtype == "event") then { [] execVM "\z\addons\dayz_server\modules\" + _mname + ".sqf"; _sl = format['%1 (%2) spawned Event - %3.sqf',_clientName,_clientUID,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; if (_mtype == "major" || {_mtype == "minor"}) then { diag_log format ["%1 (%2) Spawning mission [%3] %4",name (_array select 1),getPlayerUID (_array select 1),_mtype,_mname]; execVM format ["\z\addons\dayz_server\DZMS\missions\%1\%2.sqf",_mtype,_mname]; _sl = format['%1 (%2) spawned DZMS\missions\%3\%4.sqf',_clientName,_clientUID,_mtype,_mname]; PVAH_WriteLogReq = [_playerObj,toArray _sl]; publicVariableServer 'PVAH_WriteLogReq'; }; }; Отдельно добавлю, что все миссии, которые спавнит админ, записываются в лог файл и панель Инфистара.
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
-
Автор: SPIRT
Поделюсь еще одним рецептом )))))
Имеем сервер Арма3 который запускаем для себя любимого и для друга, системник, кабель интернета и роутер или модем кому как нравится, так в чем проблема спросите, а вот в чем, если кабель инета подключен напрямую в системник то сервер виден в сетевой игре, а вот если подключаем интернет через модем то наш сервер пропадает из видимости. Бросаемся открывать порты, смотреть что не так, кароч глаза на лоб. Я тоже через все это прошел. Решилась проблема незатейливо включением на роутере функции DMZ или функции демилитаризованная зона. Расскажу на примере собственного роутера ASUS. Собственно к делу : Открываем в брузере настройки роутера, далее в левом меню нам нужна вкладка "Локальная сеть"
Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
в открывшемся меню жмем на вкладку "DHCP сервер" в низу видим ----- "Список присвоенных вручную IP-адресов в обход DHCP (Максимум : 64)" ------ там еть пустое поле
MAC-адрес со стрелочкой, жмем на стрелку вылезает имя нашего компьтера и ip адрес --- жмем "добавить" на "+" с правой стороны ,в итоге получаем мак адрес нашей сетевой карты и присвоенный ip, жмем применить.
Идем далее --- в левом меню выбираю вкладку интернет , в верхнем баре появляются разделы ..... ...... ..... "DMZ" Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
жмем на нее вылезает вкладка на ней 2 поля "Включить DMZ" и "IP-адрес выделенной станции", в первом жмем включить, во втором клацаем в пустое поле появляется IP адрес, или вбиваем в ручную тот который выпал рядом с мак адресом сетевой карты ---- жмем применить . Обязательно перезагружаем модем.
Далее запускаем свой сервак Арма и радуемся.
Кому помогло + в репу.
-
Наш выбор
-
Создаем свой серверный мод. [DayZ 1.4 to Discontined]
123new опубликовал тему в Версия 1.0 и выше,
-
Увеличение карты х2
vitacite опубликовал тему в Картостроение,
При обслуживании (Maintain) построек не только чинятся повреждённые постройки, а и полностью восстанавливаются разрушенные. В том числе и разрушенный плот.
Как сделать так что-бы разрушенные постройки не восстанавливались сией функцией?
Эксперементировал с - if (damage > 0.9) then {
Но ничего не получилось. Может я конечно где-то не там его пихал.
P.S. Если объяснил не особо доходчиво, то - Как сделать так что-бы постройки нельзя было починить при определённом уровне урона!?
Вот сам файл "обслуживания (Maintain)" построек:
private ["_newWealth","_missing","_missingQty","_proceed","_itemIn","_countIn","_target","_objectClasses","_range","_objects","_requirements","_count","_cost","_option"];
disableSerialization;
if (DZE_ActionInProgress) exitWith { cutText [(localize "STR_EPOCH_ACTIONS_2") , "PLAIN DOWN"]; };
DZE_ActionInProgress = true;
player removeAction s_player_maintain_area;
s_player_maintain_area = 1;
player removeAction s_player_maintain_area_preview;
s_player_maintain_area_preview = 1;
_target = cursorTarget;
_objectClasses = DZE_maintainClasses;
_range = DZE_PlotPole select 0;
_objects = nearestObjects [_target, _objectClasses, _range];
_objects_filtered = [];
{
if (damage _x >= DZE_DamageBeforeMaint) then {
_objects_filtered set [count _objects_filtered, _x];
};
} count _objects;
_objects = _objects_filtered;
_count = count _objects;
if (_count == 0) exitWith {
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7012);
_result = format["Objects to maintain: %1" , _count];
_ctrl ctrlSetText _result;
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7013);
_result = format["Price to maintain: %1 %2" , 0, CurrencyName];
_ctrl ctrlSetText _result;
DZE_ActionInProgress = false;
s_player_maintain_area = -1;
s_player_maintain_area_preview = -1;
};
_theCost = _count * 150;
_requirements = [[CurrencyName,_theCost]];
_option = _this select 0;
switch _option do {
case "maintain": {
_wealth = player getVariable["cashMoney",0];
_missing = "";
_missingQty = 0;
_proceed = true;
{
_itemIn = _x select 0;
_countIn = _x select 1;
if (_wealth < _countIn) exitWith { _missing = _itemIn; _missingQty = (_countIn - _wealth); _proceed = false; };
} count _requirements;
if (_proceed) then {
_newWealth = (_wealth - _countIn);
player playActionNow "Medic";
[player,_range,true,(getPosATL player)] spawn player_alertZombies;
player setVariable["cashMoney",_newWealth,true];
PVDZE_plr_Save = [player,(magazines player),true,true];
publicVariableServer "PVDZE_plr_Save";
PVDZE_maintainArea = [player,1,_target];
publicVariableServer "PVDZE_maintainArea";
cutText [format[(localize "STR_EPOCH_ACTIONS_4"), _count], "PLAIN DOWN", 5];
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7012);
_result = format["SUCCESS : Objects maintained: %1" , _count];
_ctrl ctrlSetText _result;
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7013);
_result = format["SUCCESS : Price maintained: %1 %2" , _theCost, CurrencyName];
_ctrl ctrlSetText _result;
} else {
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7012);
_result = format["FAILED: Objects to maintain: %1" , _count];
_ctrl ctrlSetText _result;
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7013);
_result = format["FAILED: Price to maintain: %1 %2" , _theCost, CurrencyName];
_ctrl ctrlSetText _result;
cutText [format[(localize "STR_EPOCH_ACTIONS_6"), _missingQty, CurrencyName], "PLAIN DOWN"];
};
};
case "preview": {
_cost = "";
{
_itemIn = _x select 0;
_countIn = _x select 1;
if (_cost != "") then {
_cost = _cost + " and ";
};
_cost = _cost + (str(_countIn) + " " + CurrencyName);
} count _requirements;
cutText [format[(localize "STR_EPOCH_ACTIONS_7"), _count, _cost], "PLAIN DOWN"];
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7012);
_result = format["Objects to maintain: %1" , _count];
_ctrl ctrlSetText _result;
_ctrl = ((uiNamespace getVariable "PlotManagement") displayCtrl 7013);
_result = format["Price to maintain: %1 %2" , _theCost, CurrencyName];
_ctrl ctrlSetText _result;
};
};
DZE_ActionInProgress = false;
s_player_maintain_area = -1;
s_player_maintain_area_preview = -1;
За помощь\адекватные ответы ставлю + !
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах