Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
Sign in to follow this  
KaJIbMaP

Хеликраш

На сервере отсутствуют хеликраши, подскажите пожалуйста, что и в какой конфиг вписать, что бы они снова спавнились.

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

В init.sqf строка с EpochEvents, там цифра 30 в helicrash_spawner означает минуту работы сервера, когда спаунить краш. Вроде бы так.

Share this post


Link to post
Share on other sites



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By Муха0в0Кедах
      Хеликраш нет на сервере вообще, подскажите как можно включить или что надо сделать чтобы они появились, спасибо заранее за помощь.
    • By Alexandr116ru
      По сути, это всего лишь объединение двух скриптов в один. По мере сил и возможностей. Вероятно, тут всё грубо и далеко не идеально (ну не владею я такими навыками). Но скрипт работает 100% корректно.   Установка: 1. Создать файл с раширением ИМЯ_ФАЙЛА.sqf, скопировать в него содержимое кода:  
      private["_textPos","_rand_player","_playerpos","_randomLoot","_maxLootRadius","_playerPresent","_finder","_preWaypointPos","_startTime","_heliStart","_heliModel","_lootPos","_wp1","_wp2","_wp3","_landingzone","_aigroup","_wp","_helipilot","_crashwreck","_vel","_pos","_dir","_position","_num","_itemType","_CBLBase","_weights","_cntWeights","_index1","_index2","_crashName","_objectID","_marker_position","_marker","_mdot","_flyToPlayer","_dropPosition","_chute","_chutePos","_FlyingSupplyBox","_smoke","_var","_posATL","_SupplyBox","_mapLootPos"]; if ((count playableUnits) < 1) exitWith {diag_log("[ХЕЛИКРАШ ОТМЕНА]: Нет игроков на сервере");}; //СКРИПТ НЕ БУДЕТ ВЫПОЛНЯТЬСЯ, ЕСЛИ НА СЕРВЕРЕ НЕТ ИГРОКОВ _rand_player            = playableUnits call BIS_fnc_selectRandom; _playerpos                = [_rand_player] call FNC_GetPos; _heliModel                = ["Mi17_TK_EP1","Mi17_CDF","Mi17_Ins","Mi17_UN_CDF_EP1","Mi171Sh_CZ_EP1","AH6J_EP1","UH1H_TK_GUE_EP1","UH1H_TK_EP1","UH1Y","MH60S","UH60M_EP1","AH6X_EP1","MH6J_EP1","Mi17_Civilian","Mi17_medevac_Ins","Mi17_medevac_CDF","Mi17_medevac_RU","UH60M_MEV_EP1","BAF_Merlin_HC3_D","CH_47F_EP1","CH_47F_BAF","MV22","C130J"] call BIS_fnc_selectRandom; _heliStart                = [[1000.0,2.0],[3500.0,2.0],[5000.0,2.0],[7500.0,2.0],[9712.0,663.067],[12304.0,1175.07]] call BIS_fnc_selectRandom; //КООРДИНАТЫ, ОТКУДА БУДЕТ ВЫЛЕТАТЬ БОРТ. ДЛЯ ЧЕРНО _crashName                = getText (configFile >> "CfgVehicles" >> _heliModel >> "displayName"); _finder                    = ""; _randomLoot                = ["HeliCrash","Hospital","Military","MilitaryIndustrial","MilitarySpecial"] call BIS_fnc_selectRandom; //СПИСОК, ОТКУДА БУДЕТ БРАТЬСЯ ЛУТ ДЛЯ ПРИЗЕМЛИВШЕЙСЯ КОРОБКИ     //ЗДЕСЬ МОЖНО РАЗМЕСТИТЬ ОПОВЕЩЕНИЕ ИГРОКАМ О СТАРТЕ ИВЕНТА          _position = [getMarkerPos "center",0,5000,10,0,2000,0] call BIS_fnc_findSafePos;     diag_log(format["[ХЕЛИКРАШ НАЧАЛО]: %1 вылетел с позиции %2 к позиции %3!", _crashName,  str(_heliStart), str(_position)]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT          _startTime = time;     _crashwreck = createVehicle [_heliModel,_heliStart, [], 0, "FLY"];     _objectID = str(round(random 999999));     _crashwreck setVariable ["ObjectID", _objectID, true];     _crashwreck setVariable ["ObjectUID", _objectID, true];     PVDZE_serverObjectMonitor set [count PVDZE_serverObjectMonitor,_crashwreck];     waitUntil {(!isNull _crashwreck)};     _crashwreck setCombatMode "BLUE";     _crashwreck engineOn true;     _crashwreck flyInHeight 200; //ВЫСОТА ПОЛЁТА. ЕСЛИ НОВИЧОК, ЛУЧШЕ НЕ ТРОГАЙ. ИНАЧЕ БУДЕТ СБОИТЬ СБРОС КОРОБКИ. БОРТ БУДЕТ КРУЖИТЬ НАД ИГРОКОМ, ТЕМ САМЫМ, ДЕМОРАЛИЗУЯ И НАРУШАЯ ЕГО ПСИХИКУ     _crashwreck forceSpeed 150;     _crashwreck setspeedmode "NORMAL";          _landingzone = createVehicle ["HeliHEmpty", [_position select 0, _position select 1,0], [], 0, "CAN_COLLIDE"];     _aigroup = creategroup civilian;     _helipilot = _aigroup createUnit ["SurvivorW2_DZ",getPos _crashwreck,[],0,"FORM"];     _helipilot setCombatMode "BLUE";     _helipilot moveindriver _crashwreck;     _helipilot assignAsDriver _crashwreck;     uiSleep 0.5;          if ((isPlayer _rand_player) && (alive _rand_player)) then { //ЕСЛИ ВЫБРАННАЯ ЦЕЛЬ - ИГРОК И ЕСЛИ ИГРОК ЖИВ, ТО ПОЛЕТИТ НА ЕГО ПОЗИЦИЮ         _wp1 = _aigroup addWaypoint [[(_playerpos select 0),(_playerpos select 1),200],0];         _wp1 setWaypointType "MOVE";         _wp1 setWaypointBehaviour "CARELESS";         _flyToPlayer = true;         for "_x" from 1 to 5 do         {             _preWaypointPos = [getMarkerPos "center", 0, 5000, 10, 0, 2000, 0] call BIS_fnc_findSafePos;             _wp = _aigroup addWaypoint [_preWaypointPos, 0];             _wp setWaypointType "MOVE";             _wp setWaypointBehaviour "CARELESS";         };         diag_log(format["[ХЕЛИКРАШ]: %1 полетел к игроку %2", _crashName, (name _rand_player)]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT     } else {  //ЕСЛИ ПОЛЕТЕЛ НЕ К ИГРОКУ, БУДЕТ ПРОСТО ЛЕТАТЬ ПО ТОЧКАМ, ПОКА НЕ СОБЬЮТ ИЛИ ПОКА НЕ ДОЛЕТИТ ДО ФИНАЛЬНОЙ         for "_x" from 1 to 10 do         {             _preWaypointPos = [getMarkerPos "center", 0, 5000, 10, 0, 2000, 0] call BIS_fnc_findSafePos;             _wp = _aigroup addWaypoint [_preWaypointPos, 0];             _wp setWaypointType "MOVE";             _wp setWaypointBehaviour "CARELESS";         };         diag_log(format["[ХЕЛИКРАШ]: %1 полетел кружить по карте", _crashName]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT     };     _dropPosition = [(_playerpos select 0),(_playerpos select 1),200];     if (_flyToPlayer) then {  //ЕСЛИ ИЗНАЧАЛЬНО ЛЕТЕЛ К ИГРОКУ - НИЖЕ ОЖИДАНИЕ, КОГДА ПРИБЛИЗИТСЯ К ЕГО ПОЗИЦИИ. НУ И ДРУГИЕ ЧРЕЗВЫЧАЙНЫЕ СИТУАЦИИ. ЧТОБЫ ПРОДОЛЖИЛОСЬ ВЫПОЛНЕНИЕ СКРИПТА         waitUntil {(_crashwreck distance _dropPosition < 50) || !alive _crashwreck || (getPosATL _crashwreck select 2) < 5 || (damage _crashwreck) >= 1};         diag_log(format["[ХЕЛИКРАШ]: %1 долетел до игрока или был сбит", _crashName]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT     };     if ((_flyToPlayer) && (alive _crashwreck)) then { //ЕСЛИ ИЗНАЧАЛЬНО ЛЕТЕЛ К ИГРОКУ И НЕ СБИЛИ, ТО СБРОСИТ КОРОБКУ ПОЧТИ НА ГОЛОВУ БЕДНОЙ КЕПКИ, В ДРУГОМ СЛУЧАЕ, КУСОК СКРИПТА ПРОПУСКАЕТСЯ И СБРОСА НЕ БУДЕТ         diag_log(format["[ХЕЛИКРАШ]: %1 сбросил груз. Значит долетел", _crashName]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT         _aircraftpos = [_crashwreck] call FNC_GetPos;         _chute = createVehicle ["ParachuteMediumEast", _aircraftpos, [], 0, "FLY"];         _chutePos = getPos _chute;         _FlyingSupplyBox = createVehicle ["Supply_Crate_DZE", _chutePos, [], 0, "FLY"];         _FlyingSupplyBox attachTo [_chute, [0,0,0]];         _FlyingSupplyBox setVariable ["permaLoot",true];         _FlyingSupplyBox setVariable ["ObjectID", ""];         _FlyingSupplyBox addEventHandler ["handleDamage", {false}];         _chute setVariable ["ObjectID", ""];         _smoke = "SmokeShellGreen" createVehicle (getPos _FlyingSupplyBox);         _smoke attachTo [_FlyingSupplyBox, [0,0,1]];         _var = floor((random 2) + 1);         while {getPos _FlyingSupplyBox select 2 > 4} do         {             _chute SetVelocity [0,0,-5];             uiSleep 0.1;         };         detach _FlyingSupplyBox;         while {getPos _FlyingSupplyBox select 2 > 0} do {             _FlyingSupplyBox setPos [getPos _FlyingSupplyBox select 0, getPos _FlyingSupplyBox select 1, (getPos _FlyingSupplyBox select 2) - .25]         };         deleteVehicle _chute;         _posATL = getPosATL _FlyingSupplyBox;         _mapLootPos = mapGridPosition getPos _FlyingSupplyBox;         deleteVehicle _FlyingSupplyBox;         _SupplyBox = "Supply_Crate_DZE" createVehicle _posATL;         _SupplyBox setVariable ["permaLoot",true];         _SupplyBox enableSimulation false;         if (DZE_MissionLootTable) then {             dgx_itemTypes = [] + getArray (missionConfigFile >> "CfgBuildingLoot" >> _randomLoot >> "lootType");         } else {             dgx_itemTypes = [] + getArray (configFile >> "CfgBuildingLoot" >> _randomLoot >> "lootType");         };         _CBLBase = dayz_CBLBase find (toLower(_randomLoot));         _weights = dayz_CBLChances select _CBLBase;         _cntWeights = count _weights;         _num = (round(random 12)) + 12;         for "_x" from 1 to _num do {             _maxLootRadius = (random 4) + 4;             _lootPos = [_posATL, _maxLootRadius, random 360] call BIS_fnc_relPos;             _index1 = floor(random _cntWeights);             _index2 = _weights select _index1;             _itemType = dgx_itemTypes select _index2;             [_itemType select 0, _itemType select 1, _lootPos, 5] call spawn_loot;             diag_log(format["[ХЕЛИКРАШ СБРОС КОРОБКИ]: %1 сбросил груз из %2 на позиции @%3", _crashName, _randomLoot, _mapLootPos]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT         };         _nearby = _dropPosition nearObjects ["ReammoBox", sizeOf("Supply_Crate_DZE")];         {             _x setVariable ["permaLoot",true];         } count _nearBy;         //_textPos = format ["Воздушный транспорт сбросил груз на координтах %1.", _mapLootPos];         //RemoteMessage = ["radio",_textPos];         //publicVariable "RemoteMessage";         //ЗДЕСЬ МОЖНО РАЗМЕСТИТЬ ОПОВЕЩЕНИЕ ИГРОКАМ О СБРОСЕ ГРУЗА, В КАЧЕСТВЕ ПРИМЕРА, ПРИВЕДЕНО СООБЩЕНИЕ, ВЫВОДЯЩЕЕСЯ ПРИ ПОМОЩИ REMOTE MESSAGE ИЗ МОДА WAI 2.2.0         //_mapLootPos - ПОКАЖЕТ КВАДРАТ, В КОТОРОМ СБРОШЕНА КОРОБКА.          };     _wp2 = _aigroup addWaypoint [position _landingzone, 0];     _wp2 setWaypointType "MOVE";     _wp2 setWaypointBehaviour "CARELESS";     _wp2 setWaypointStatements ["true", "_crashwreck setdamage 1;"];          _wp3 = _aigroup addWaypoint [[0,16000,0], 0];     _wp3 setWaypointType "CYCLE";     _wp3 setWaypointBehaviour "CARELESS";          waitUntil {(_crashwreck distance _position) <= 1000 || !alive _crashwreck || (getPosATL _crashwreck select 2) < 5 || (damage _crashwreck) >= 1};          _crashwreck flyInHeight 100;     _crashwreck forceSpeed 100;     _crashwreck setspeedmode "NORMAL";          waitUntil {(_crashwreck distance _position) <= 500 || !alive _crashwreck || (getPosATL _crashwreck select 2) < 5 || (damage _crashwreck) >= 1};     deletevehicle _helipilot;          _crashwreck setHit ["mala vrtule", 1];     _ran15 = random 15;     _crashwreck setVelocity [_ran15,_ran15,-25];     _crashwreck setdamage .9;     waitUntil{uiSleep 1; getpos _crashwreck select 2 <= 30};     _helipilot setdamage 1;     _crashwreck setVelocity [_ran15,_ran15,-20];     waitUntil{uiSleep 1; getpos _crashwreck select 2 <= 10};     _crashwreck setdamage 1;          waitUntil{uiSleep 1; getpos _crashwreck select 2 <= 5};          diag_log(format["[ХЕЛИКРАШ ПАДЕНИЕ]: %1 упал на позиции %2!", _crashName, getpos _crashwreck]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT          _pos = [getpos _crashwreck select 0, getpos _crashwreck select 1,0];     _dir = getdir _crashwreck;     deletevehicle _landingzone;          _isWater = surfaceIsWater [getpos _crashwreck select 0, getpos _crashwreck select 1];     if(_isWater) then {     //ЗДЕСЬ МОЖНО РАЗМЕСТИТЬ ОПОВЕЩЕНИЕ, ЧТО ВОЗДУШНЫЙ ТРАНСПОРТ УПАЛ В ВОДУ. И НА ЭТОМ СКРИПТ ЗАКОНЧИТ СВОЮ РАБОТУ.     } else { //ЕСЛИ ВСЁ ХОРОШО, ТО НА МЕСТЕ КРУШЕНИЯ СПАВНИТСЯ ЛУТ ИЗ ТАБЛИЦЫ "HeliCrash". ЕСЛИ ХОЧЕТСЯ РАНДОМА, МОЖНО НИЖЕ ВСЕ ТРИ "HeliCrash" ЗАМЕНИТЬ НА _randomLoot         _num = round(random 12) + 12;         if (DZE_MissionLootTable) then {             dgx_itemTypes = [] + getArray(missionConfigFile >> "CfgBuildingLoot" >> "HeliCrash" >> "lootType");         } else {             dgx_itemTypes = [] + getArray(configFile >> "CfgBuildingLoot" >> "HeliCrash" >> "lootType");         };         _CBLBase = dayz_CBLBase find(toLower("HeliCrash"));         _weights = dayz_CBLChances select _CBLBase;         _cntWeights = count _weights;         for "_x" from 1 to _num do         {             _maxLootRadius     = (random 20) + 10;             _lootPos = [_pos, _maxLootRadius, random 360] call BIS_fnc_relPos;             _index1 = floor(random _cntWeights);             _index2 = _weights select _index1;             _itemType = dgx_itemTypes select _index2;             [_itemType select 0, _itemType select 1, _lootPos, 5] call spawn_loot;                          diag_log(format["[ХЕЛИКРАШ СПАВН ЛУТА]: %1 упал на позиции %2", _crashName, _lootPos]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT                          _nearby = _pos nearObjects ["ReammoBox", 20];             {                 _x setVariable ["permaLoot",true];             } forEach _nearBy;         };                  //ЗДЕСЬ МОЖНО РАЗМЕСТИТЬ ОПОВЕЩЕНИЕ ИГРОКАМ, О ТОМ, ЧТО БОРТ УПАЛ. ДАЛЕЕ ПОЯВИТСЯ МАРКЕР, НО ОСТАТКИ СГОРЕВШЕГО БОРТА, БУДУТ РАСПОЛАГАТЬСЯ НЕ ТОЧНО ПО ЦЕНТРУ МАРКЕРА, ИБО ПУСТЬ ИЩУТ         _marker_position = [_pos,0,400,0,1,2000,0] call BIS_fnc_findSafePos;         waitUntil         {             _marker = createMarker [ format ["loot_event_marker_%1", _startTime], _marker_position];             _marker setMarkerColor "ColorRed";             _marker setMarkerShape "ELLIPSE";             _marker setMarkerAlpha 0.5;             _marker setMarkerSize [400,400];             _marker setMarkerText _crashName;             _mdot = createMarker [format ["dot_%1", _startTime], _marker_position];             _mdot setMarkerColor "ColorBlack";             _mdot setMarkerType "hd_destroy";             _mdot setMarkerText (format["Место крушения: %1", _crashName]); //ТЕКСТ КОТОРЫЙ БУДЕТ ОТОБРАЖАТЬСЯ НА МАРКЕРЕ, С НАЗВАНИЕМ УПАВШЕГО БОРТА             uiSleep 10;             deleteMarker _marker;             deleteMarker _mdot;             _playerPresent = false;             {                 if((isPlayer _x) && (_x distance _pos <= 25)) then {                     _playerPresent = true;                     _finder = name _x;                 };             } foreach playableUnits;             (_playerPresent)         };         deleteMarker _marker; //НЕ УВЕРЕН, НАДО ЛИ ДУБЛИРОВАТЬ УДАЛЕНИЕ МАРКЕРОВ, ИБО НЕ СПЕЦ. НЕ ЗНАЮ. НО НЕ МЕШАЕТ (ЭТА СТРОКА И НИЖЕ).         deleteMarker _mdot;         //МАРКЕР БУДЕТ ПЕРЕСОЗДАВАТЬСЯ КАЖДЫЕ 10 СЕКУНД, ЧТОБЫ ВСЕ ИГРОКИ ЕГО ВИДЕЛИ, ДАЖЕ ПОСЛЕ ПЕРЕЗАХОДА. БУДЕТ ОТОБРАЖАТЬСЯ ДО ТЕХ ПОР, ПОКА К СГОРЕВШЕМУ БОРТУ НЕ ПОДОЙДЁТ ИГРОК         //ЗДЕСЬ МОЖНО РАЗМЕСТИТЬ ОПОВЕЩЕНИЕ ИГРОКАМ, О ТОМ ЧТО ХЕЛИКРАШ НАЙДЕН         diag_log(format["[ХЕЛИКРАШ КОНЕЦ]: Обнаружен игроком %1. Ивент выполнен!" , _finder]); //ЭТУ СТРОКУ МОЖНО УДАЛИТЬ, ЕСЛИ НЕ ТРЕБУЕТСЯ ЛОГГИРОВАНИЕ В СЕРВЕРНЫЙ RPT     };    
      2. Закинуть файл ИМЯ_ФАЙЛА.sqf в папку @DayZ_Epoch_Server\addons\dayz_server\modules\ 3. Добавить в init.sqf в EpochEvents, внутри [], код ["any","any","any","any",30,"ИМЯ_ФАЙЛА"], не забыв поставить запятую после предыдущего ивента. Пример: EpochEvents = [["any","any","any","any",10,"другой_ивент"],["any","any","any","any",30,"ИМЯ_ФАЙЛА"]];   Что происходит и как это работает: - По заданному в init.sqf промежутку времени, вылетает вертолёт/самолёт; - Если есть игроки и выбранная цель из всех юнитов игрок, то воздушный транспорт направляется к его позиции; - Долетев до позиции игрока, "сбрасывает" ящик на парашюте и продолжает свой маршрут по точкам; - После приземления, вокруг ящика спавнится лут. Да и сам ящик можно разобрать; - Если изначально цель не игрок, то борт сразу полетит кружить по карте; - Отлетав определённое количество точек, пойдёт на финальную, разобьётся и вокруг него отспавнится лут, с отображением информации на карте маркером; - Маркер будет отображаться до тех пор, пока кто либо из игроков не подойдёт к крашу; В принципе, функционал двух скриптов в одном, как оно и было, ничего экстраординарного.   Я лишь внёс пару проверок и поправок: - Если игроков нет на сервере, то работа скрипта прекращается; - Скрипт отработает всегда (в оригинале, только если выбранная цель - игрок). В моём случае, он стартанёт всегда, но если выбранная цель не игрок, то просто отработает, как анимированный хеликраш, без сброса груза; - Маркер будет отображаться даже после перезахода игрока на сервер. Пересоздаётся раз в 10 секунд. Увы, более ювелирных способов не нашёл. В миссиях WAI, маркеры вообще раз в секунду пересоздаются. Тут работает по тому же принципу; - Если борт сбить, на любом этапе, он упадёт и лут отспавнится вокруг него, с отображением маркера; - Читайте комментарии в скрипте, если хотите добавить оповещения игрокам о старте, сбросе груза, падении борта.
    • By TheFirstNoob
      В Epoch 1.0.5.1 стандартный HeliCrash не работает толком, точнее работает, но без лута.
      Не беда. Откапал как-то на Epochmod.com скрипт на анимированный HeliCrash. Чуток переделал и русифицировал и вуаля.

      Скрипт очень прост. Летит самолет/вертолет/истрибитель и "О нет! Говорит пилот Вася! Я падаю хрен знает где!" и бабах.
      Взрыв, огонь, дым и... Лут :)

      Что я изменил так это:
      - Добавил C-130
      - Убрал сообщения при падении, появлении и тп, но при желании их можно вернуть просто раскомментировать пару строчек.

      Скрипт легко отслеживается через InfiSTAR. Вы увидете :)

      Установка:

      1) Скачать скрипт: Нажми на меня :3

      2) Закинуть файл по пути dayz_server.pbo/modules и перепаковываем PBO.

      3) Идем в MPMissions и открываем init.sqf.

      4) Находим EpochEvents и дописываем активацию. (Я лично использую сразу 2-3 в разное время).
      ["any","any","any","any",7,"HeliCrashSpawner"], // ХелиКрашы ["any","any","any","any",15,"HeliCrashSpawner"] Число 7 и 15. Время задержки от старта сервера. В минутах!

      5) Открываем сам файл и находим
      _heliStart = [[3458.7625, 2924.917],[11147.994, 1516.9348],[14464.443, 2533.0981],[18155.545, 1416.5674],[16951.584, 5436.3516],[16140.807, 12714.08],[14576.426, 14440.467],[8341.2383, 15756.525],[2070.4771, 8910.4111],[16316.533, 17309.357]] call BIS_fnc_selectRandom;  
      Заменяем на нужный вам старт:

      Для Chernarus:
      _heliStart = [[1000.0,2.0],[3500.0,2.0],[5000.0,2.0],[7500.0,2.0],[9712.0,663.067],[12304.0,1175.07],[14736.0,2500.0],[16240.0,5000.0],[16240.0,7500.0],[16240.0,10000.0]] call BIS_fnc_selectRandom; Для Napf:
      _heliStart = [[3458.7625, 2924.917],[11147.994, 1516.9348],[14464.443, 2533.0981],[18155.545, 1416.5674],[16951.584, 5436.3516],[16140.807, 12714.08],[14576.426, 14440.467],[8341.2383, 15756.525],[2070.4771, 8910.4111],[16316.533, 17309.357]] call BIS_fnc_selectRandom;  Для Taviana (Origins):
       
      _heliStart = [[7637.1768, 4182.0859],[2154.2883, 17062.283],[8839.4092, 10396.975],[8821.5313, 19403.178],[15097.905, 15839.728],[17291.035, 7203.6821],[18815.258, 2757.0435],[13402.826, 12238.75],[12001.367, 15047.333],[5200.9824, 8429.251],[9564.2949, 5238.4321]] call BIS_fnc_selectRandom;  Для Taviana 2.0:
      _heliStart = [[11558.516, -56.829834],[7787.207, 3972.2046],[2279.2651, 6822.7891],[5548.9434, 8449.1914],[9465.4697, 7223.2925],[17441.467, 5454.5791],[13474.444, 11853.039],[8848.6611, 18823.994],[16224.908, 13310.733],[15171.845, 7629.0879]] call BIS_fnc_selectRandom;  Для Sauerland:
      _heliStart = [[3143.7053, 519.72656],[14047.064, 736.25336],[19551.301, 1638.9634],[22871.928, 3194.9937],[3216.1506, 8066.9844],[15430.821, 7462.8496],[22722.418, 8578.207],[3399.9622, 13945.776],[16220.508, 14363.767],[10220.176, 18679.586]] call BIS_fnc_selectRandom;  Для Pantera: 
      _heliStart = [[2354.8118, 2898.7732],[6441.2544, 604.39148],[5837.6265, 3852.1699],[3434.9966, 7324.9521],[1250.1727, 8301.4199],[6353.0869, 5563.6592],[3011.1584, 4440.96],[4967.9551, 6376.479],[8340.8125, 4563.1436],[4582.7534, 2080.5737]] call BIS_fnc_selectRandom;  Для Namalsk:
       
      _heliStart = [[5046.9678, 5943.2656],[6360.792, 6582.0723],[3544.4153, 6451.7793],[7504.9102, 5786.3271],[7752.436, 7067.6895],[3920.3354, 7530.4941],[6448.9805, 8406.374],[6098.7876, 10094.43],[4745.8853, 10273.457],[8271.7441, 10356.828]] call BIS_fnc_selectRandom;   Для Takistan:
       
      _heliStart = [[2877.6855, 703.94592],[7118.8374, 10659.661],[7281.5488, 690.51361],[9251.5283, 2722.7166],[3742.7253, 3439.4333],[1300.1748, 3303.4463],[6000.7114, 5670.394],[9339.2139, 6650.0625],[11687.854, 9396.415],[3025.9387, 9983.293]] call BIS_fnc_selectRandom;   Для Lingor:
      _heliStart = [[862.89911, 816.75781],[2884.9204, 1093.1793],[3923.7927, 1078.5016],[6571.9326, 1575.0684],[3046.9241, 2413.4119],[5652.1348, 2944.7871],[1866.0063, 4954.5566],[3748.3994, 5456.0498],[6348.8232, 4448.1694],[8368.7148, 7673.5293]] call BIS_fnc_selectRandom;   
       

      6) По сути все. Запускаем сервер и радуемся.

      Настройка:

      Все просто. Открываем сам файл и там все написано. Но выпишу и сюда.
      _spawnChance = 100; // Процент спавна ХелиКраша (От 1 до 100%). _guaranteedLoot = 12; // Количество лута которое точно отспавниться. _randomizedLoot = 12; // Насколько рандомно класс лута будет спавниться за каждый итем. _spawnFire = true; // После падения оставить Огонь и Дым на месте ХелиКраша. _fadeFire = false; // Спустя некоторое время пропадет Огонь и Дым. _preWaypoints = 15; // Количество точек через которые пройдет ХелиКраш перед тем как упасть. _crashDamage = 1; // Какое количество урона нанести вертолету в момент падения (0.1 - Минимальный урон, тогда придется 1 раз выстрелить в ХелиКраш. 1 - Максимальный урон, ХелиКраш сразу падает). _exploRange = 500; // Радиус получаемого урона при падении вертолета (В метрах). _minLootRadius = 7; // Минимальная дистанция спавна лута от ХелиКраша (В метрах). _maxLootRadius = 50; // Максимальная дистанция спавна лута от ХелиКраша (В метрах). _lootTable = "HeliCrash"; // Название таблицы откуда берется лут (НЕ ТРОГАЙ ЕСЛИ НЕ ЗНАЕШЬ!). _show_marker = true; // Показывать место падения ХелиКраша маркером. _show_name = false; // Добавить в центре точку и подписывает что упало. _markerRadius = 400; // Радиус маркера (В метрах). Количество выпадаемых вещей настраивается тут: (На двух примерах)
      if(_heliModel == "Mi24_D") then { _lootTable = "MilitarySpecial"; _crashModel = "Mi24Wreck"; _guaranteedLoot = 5; }; if(_heliModel == "Ka52Black") then { _lootTable = "MilitarySpecial"; _crashModel = "Ka52Wreck"; _guaranteedLoot = 3; }; Вот _guaranteedLoot    = Х отвечает за то, сколько предметов будет 100% валяться.
×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.