Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
vitacite

Создание простой Safe Zone на основе сенсоров в mission.sqf

Рекомендованные сообщения

Привет всем. 

Итак проблема: В трех точках спавна (центральная, западная и восточная) появляются новые игроки, которых сразу убивают те кто успел полутаться. Их конечно банят, но постоянно возникает спорная ситуация и тд.

 

Safe zone получила название Green Zone.

Как это работает. На вашей карте появятся три прозрачных зеленых круга, в местах выхода из тп к торговцам радиусом 150 м. 

Для каждого кто зайдет в зону обозначенную зелеными кругами, будет выведено сообщение с предупреждением, что убийство в этой зоне карается баном. Для тех кто выйдет о том, что теперь их могут убить. 

 

Установка:

Шаг первый - если вы еще не распаковали Altis.epoch.pbo и не разбинарили mission.sqm то самое время это сделать.

http://s-platoon.ru/index.php?/topic/2124-kak-razbinarit-missionsqf-v-arma3-epoch/

 

Шаг второй -  идем в блок где расположены маркеры и... удаляем все три маркера!!!

Шаг третий -  вставляем свой код:

	class Sensors {
		items = 3;
		class Item0 {
			name = "bazar1_m";
			position[] = {13321.2,-0.127439,14504.7};
			a = 150;
			b = 150;
			angle = -130.966;
			activationBy = "ANY";
			repeating = 1;
			interruptable = 1;
			age = "UNKNOWN";
			expCond = "(vehicle player) in thislist;";
			expActiv = "titleText [""ВЫ ВОШЛИ В ЗЕЛЕНУЮ ЗОНУ (в радиусе 150 м - нельзя убивать, нельзя воровать: карается BAN-ом)"", ""PLAIN DOWN"", 3];";
			expDesactiv = "titleText [""ВЫ ПОКИНУЛИ ЗЕЛЕНУЮ ЗОНУ (вас могут убить) "", ""PLAIN DOWN"", 3];";
			class Effects{};
	};
		class Item1 {
			name = "bazar2_m";
			position[] = {18454.9,0.148972,14272.8};
			a = 150;
			b = 150;
			angle = -130.966;
			activationBy = "ANY";
			repeating = 1;
			interruptable = 1;
			age = "UNKNOWN";
			expCond = "(vehicle player) in thislist;";
			expActiv = "titleText [""ВЫ ВОШЛИ В ЗЕЛЕНУЮ ЗОНУ (в радиусе 150 м - нельзя убивать, нельзя воровать: карается BAN-ом)"", ""PLAIN DOWN"", 3];";
			expDesactiv = "titleText [""ВЫ ПОКИНУЛИ ЗЕЛЕНУЮ ЗОНУ (вас могут убить) "", ""PLAIN DOWN"", 3];";
			class Effects{};
	};
		class Item2 {
			name = "bazar3_m";
			position[] = {6193.35,-0.210175,16834};
			a = 150;
			b = 150;
			angle = -130.966;
			activationBy = "ANY";
			repeating = 1;
			interruptable = 1;
			age = "UNKNOWN";
			expCond = "(vehicle player) in thislist;";
			expActiv = "titleText [""ВЫ ВОШЛИ В ЗЕЛЕНУЮ ЗОНУ (в радиусе 150 м - нельзя убивать, нельзя воровать: карается BAN-ом)"", ""PLAIN DOWN"", 3];";
			expDesactiv = "titleText [""ВЫ ПОКИНУЛИ ЗЕЛЕНУЮ ЗОНУ (вас могут убить) "", ""PLAIN DOWN"", 3];";
			class Effects{};
	};
};
	class Markers {
		items = 6;
		
		class Item0 {
			position[] = {14939.9, 0.0534991, 15083.3};
			name = "center";
			type = "Empty";
		};
		
		class Item1 {
			position[] = {23600.6, 3.19, 18000.7};
			name = "respawn_east";
			type = "Empty";
		};
		
		class Item2 {
			position[] = {23600.6, 3.19, 18000.8};
			name = "respawn_west";
			type = "Empty";
		};
		class Item3
		{
			position[]={13321.2,-0.127439,14504.7};
			name="GREEN ZONE1";
			text="GREEN ZONE";
			markerType="ELLIPSE";
			type="respawn_unknown";
			colorName="ColorGUER";
			a=150;
			b=150;
		};
		class Item4
		{
			position[]={6193.35,-0.210175,16834};
			name="GREEN ZONE2";
			text="GREEN ZONE";
			markerType="ELLIPSE";
			type="respawn_unknown";
			colorName="ColorGUER";
			a=150;
			b=150;
		};
		class Item5
		{
			position[]={18454.9,0.148972,14272.8};
			name="GREEN ZONE3";
			text="GREEN ZONE";
			markerType="ELLIPSE";
			type="respawn_unknown";
			colorName="ColorGUER";
			a=150;
			b=150;
		};
	};
};
 

 

4. Шаг четвертый сохраняем и пользуемся. Не забывайте про }; в данном пример последняя закрывает собой все классы выше. Включая спавн игроков. 

 

5. Если хотите использовать не для Altis - поменяйте координаты на свои.

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


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





Я думаю, чтобы избежать спорных моментов, нужно сделать ремарку "Убийство игрока находящегося в "Green Zone" карается баном!". Как минимум от спавнкемперов избавиться можно.

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


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

Там такая ремарка есть на весь экран;) Сообщения Bec традиционно никто не читает, как и правила...

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


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

allowDamage=false;

 

решит проблему ОРД

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


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

allowDamage=false;

 

решит проблему ОРД

Что за орд?

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


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

allowDamage=false;

 

решит проблему ОРД

Это не работает.

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


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

Обратите внимание на гайд выше там работает все.

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


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

Огромное спасибо автору скрипта,всё отлично работает...и что самое главное - ничего лишнего,никаких бух-бах-тратата в мирной зоне.Это я по-поводу звуков)

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


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

какой код нужно вставлять в миссию v52 ? Я так понимаю указанный выше уже не катит?

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: blackredghost
      Здравствуйте! Пытаюсь запустить сервер в Arma 3. Файлы миссии достались мне от разраба, который сейчас в очень тяжелом материальном положении.
      Я плохо понимаю в Arma 3. Я БУДУ ОЧЕНЬ БЛАГОДАРЕН, если поможете мне разобраться как починить эту хрень. ДАЖЕ ДЕНЕГ ЗАПЛАЧУ!
      Вот
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: MrMiBl
      Всем привет! С наступающим!  
      Проблема такая: безсознанка очень долгая (от двух минут и больше от рандомной пульки...)
      Собственно вопрос: как её отключить либо сократить время?  
      покопавшись в файлах нашел такую тему: fn_unconscious.sqf
      // (c) facoptere@gmail.com, licensed to DayZMod for the community private ["_count","_anim","_weapon","_sprint","_stance","_transmove","_start","_timeout","_short","_sandLevel","_speed"]; if (r_player_unconsciousInProgress) exitWith {}; r_player_unconsciousInProgress = true; r_player_unconsciousInputDisabled = true; //this is like this in order to release the current user input disableUserInput true; disableUserInput true; disableUserInput false; disableUserInput false; disableUserInput true; disableUserInput true; _start = diag_tickTime; _timeout = abs r_player_timeout; _short = _timeout < 4; if (!_short) then { 4 cutRsc ["playerStatusWaiting", "PLAIN",1]; playSound "heartbeat_1"; }; _count = 0; // can be set to false by medEPI.sqf, during the 'while' loop r_player_unconscious = true; player setVariable ["NORRN_unconscious", r_player_unconscious, true]; _sandLevel = ctrlPosition ((uiNamespace getVariable 'DAYZ_GUI_waiting') displayCtrl 1400); //diag_log [(diag_tickTime - _start) < _timeout , !r_player_unconscious , alive player ]; dayz_autoRun = false; if (player == vehicle player) then { player playAction "CanNotMove"; }; "dynamicBlur" ppEffectEnable true;"dynamicBlur" ppEffectAdjust [2]; "dynamicBlur" ppEffectCommit 0; "colorCorrections" ppEffectEnable true;"colorCorrections" ppEffectEnable true;"colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 0.1], [1, 1, 1, 0.0]];"colorCorrections" ppEffectCommit 0; if (dayz_soundMuted) then {call player_toggleSoundMute;}; // hide icon before fadeSound 0 fadeSound 0.05; while { (diag_tickTime - _start) < _timeout and r_player_unconscious and alive player } do { player setVariable ["unconsciousTime", _timeout - diag_tickTime + _start, (_count % 10) == 0]; if (!_short) then { _sandLevel set [ 3, 0.136829 * safezoneH * (diag_tickTime - _start) / _timeout ]; ((uiNamespace getVariable 'DAYZ_GUI_waiting') displayCtrl 1400) ctrlSetPosition _sandLevel; ((uiNamespace getVariable 'DAYZ_GUI_waiting') displayCtrl 1400) ctrlCommit 0.05; }; /*_veh = vehicle player; if ((player != _veh) and {(_veh iskindOf "LandVehicle")}) then { _speed = [0,0,0] distance velocity _veh; if (_speed > 10) then { _veh engineOn false; } else { player action ["eject", _veh]; player leaveVehicle _veh; [] spawn { uiSleep 0.1; player playMoveNow "amovppnemstpsnonwnondnon"; }; // instant prone }; }; if (player == _veh) then { player setVelocity [0,0,0]; }; */ uiSleep 0.1; _count = _count + 1; }; if (!_short) then{ 4 cutRsc ["default", "PLAIN",0]; }; r_player_unconscious = false; player setVariable ["NORRN_unconscious", r_player_unconscious, true]; r_player_timeout = 0; player setVariable ["unconsciousTime", r_player_timeout, true]; r_player_cardiac = false; player setVariable ["USEC_isCardiac",r_player_cardiac, true]; r_player_unconsciousInProgress = false; 4 cutRsc ["default", "PLAIN",1]; if (player == vehicle player) then { // "AinjPpneMstpSnonWnonDnon" rolls from back first (jarring transition if player was knocked out prone or fell to stomach) [nil, player, rSWITCHMOVE, "AmovPpneMstpSnonWnonDnon_healed"] call RE; player SWITCHMOVE "AmovPpneMstpSnonWnonDnon_healed"; PVDZ_plr_SwitchMove = [player,"AmovPpneMstpSnonWnonDnon_healed"]; publicVariableServer "PVDZ_plr_SwitchMove"; //Needed to execute switchMove on server machine. rSwitchMove only executes on other clients player playMoveNow "AmovPpneMstpSnonWnonDnon_healed"; }; 10 fadeSound 1; "dynamicBlur" ppEffectAdjust [0]; "dynamicBlur" ppEffectCommit 5; "colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1], [1, 1, 1, 1]];"colorCorrections" ppEffectCommit 5; if ({getNumber (configFile >> "CfgWeapons" >> _x >> "type") in [1,2]} count (weapons player) > 0) then { //Prevent firing while weapon is still shown on back or holstered. AmovPpneMstpSnonWnonDnon_healed has disableWeapons=0 in config (should be 1) waitUntil {uiSleep 1; !(animationState player in ["ainjppnemstpsnonwnondnon_rolltofront","amovppnemstpsnonwnondnon_healed","amovppnemstpsnonwnondnon"])}; }; //once more to be safe disableUserInput false; disableUserInput false; disableUserInput true; disableUserInput true; disableUserInput false; disableUserInput false; r_player_unconsciousInputDisabled = false; //diag_log [ __FILE__, diag_tickTime, "done" ]; Копать тут или где-то в другом месте?
    • Автор: Anton81
      ...
    • Автор: DrTauren
      DZAI создана простой, легко настраиваемой, лёгкой в установке системой. Она создана для работы с любыми DayZ-модами и картами.

      Особенности системы:
      Статичный спавн ботов - в городах, деревнях, на военных базах Динамический спавн ботов - спавнятся рандомно по всей карте. Могут появиться где угодно и когда угодно Патрули на воздушной технике - патрули также появляются рандомно. Пешие игроки имеют маленький шанс быть обнаруженными, но игрокам на какой-либо технике повезло гораздо меньше  Сухопутные патрули на технике - появляются так же рандомно, курсируют по дорогам между городами и деревнями Собственноручно настраиваемые патрули - спавните ботов и различные патрули в нужных вам местах. Например на ваших кастомных военных базах Боты используют только лутабельное оружие - вы можете подобрать любое оружие с убитого бота без каких-либо проблем, т.к. их лут генерируется с учётоб таблиц лута вашего мода. Чем реже лут у бота, тем он опасней (автор имеет ввиду скилл бота) Система жизней - боты имеют столько же жизней, как игрок. Точно так же могут упасть без сознания. Так что лучше стрелять по головам  
       
      Установка:
      1) Качаем архив: 
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      2) Распаковываем наш dayz_server.pbo, затем открываем файл server_monitor.sqf
      3) Находим строку:
      allowConnection = true; и добавляем над ней эту:
      [] call compile preprocessFileLineNumbers "\z\addons\dayz_server\DZAI\init\dzai_initserver.sqf"; 4) Копируем папку DZAI из скаченного архива в корень нашего dayz_server
      5) Настроить работу системы под себя вы можете в этом файле: DZAI\init\dzai_config.sqf
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.