Jump to content


Photo

Анти-релог


Best Answer Sa-Matra , 15 February 2016 - 13:31

Выключает кнопку аборт на 10 секунд, помести в init.sqf куда-нибудь.

comment "Delayed abort script by Sa-Matra";

addMissionEventHandler ["Draw3d", {
	if(!isNull(findDisplay 49)) then {
		_abort = (findDisplay 49 displayCtrl 104);
		if(isNil "client_abortText") then {
			client_abortText = ctrlText _abort;
		};
		if(uiNamespace getVariable ["abort_button", controlNull] != _abort) then {
			uiNamespace setVariable ["abort_button", _abort];
			client_abortAt = diag_tickTime + 10;
		};

		if(diag_tickTime < client_abortAt) then {
			_abort ctrlEnable false;
			_abort ctrlSetText format ["%1: %2s", client_abortText, ceil(client_abortAt - diag_tickTime)];
		} else {
			_abort ctrlEnable true;
			_abort ctrlSetText client_abortText;
		};
	};	
}];
Go to the full post


  • Please log in to reply
13 replies to this topic

#1 OFFLINE   Targon

Targon

    Ефрейтор

  • Пользователи
  • 36 posts

Posted 15 February 2016 - 09:32

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


  • 0

#2 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 posts

Posted 15 February 2016 - 13:31   Best Answer

Выключает кнопку аборт на 10 секунд, помести в init.sqf куда-нибудь.
comment "Delayed abort script by Sa-Matra";

addMissionEventHandler ["Draw3d", {
	if(!isNull(findDisplay 49)) then {
		_abort = (findDisplay 49 displayCtrl 104);
		if(isNil "client_abortText") then {
			client_abortText = ctrlText _abort;
		};
		if(uiNamespace getVariable ["abort_button", controlNull] != _abort) then {
			uiNamespace setVariable ["abort_button", _abort];
			client_abortAt = diag_tickTime + 10;
		};

		if(diag_tickTime < client_abortAt) then {
			_abort ctrlEnable false;
			_abort ctrlSetText format ["%1: %2s", client_abortText, ceil(client_abortAt - diag_tickTime)];
		} else {
			_abort ctrlEnable true;
			_abort ctrlSetText client_abortText;
		};
	};	
}];

Edited by Sa-Matra, 15 February 2016 - 13:37.

  • 0

#3 OFFLINE   Targon

Targon

    Ефрейтор

  • Пользователи
  • 36 posts

Posted 16 February 2016 - 09:07

Выключает кнопку аборт на 10 секунд, помести в init.sqf куда-нибудь.

comment "Delayed abort script by Sa-Matra";

addMissionEventHandler ["Draw3d", {
	if(!isNull(findDisplay 49)) then {
		_abort = (findDisplay 49 displayCtrl 104);
		if(isNil "client_abortText") then {
			client_abortText = ctrlText _abort;
		};
		if(uiNamespace getVariable ["abort_button", controlNull] != _abort) then {
			uiNamespace setVariable ["abort_button", _abort];
			client_abortAt = diag_tickTime + 10;
		};

		if(diag_tickTime < client_abortAt) then {
			_abort ctrlEnable false;
			_abort ctrlSetText format ["%1: %2s", client_abortText, ceil(client_abortAt - diag_tickTime)];
		} else {
			_abort ctrlEnable true;
			_abort ctrlSetText client_abortText;
		};
	};	
}];

Спасибо большое! Добавил но было бы неплохо сделать ещё что-то вроде блокировки кнопки выхода пока ты в режиме pvp. Как это было в Arma 2 DayZ.


  • 0

#4 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 16 February 2016 - 09:33

Targon, если делать таким способом, то выйти можно спокойно - Alt+F4
По поводу стрельбы и того что я написал выше попробую сегодня после обеда что-нибудь вас прислать
  • 0

#5 OFFLINE   Targon

Targon

    Ефрейтор

  • Пользователи
  • 36 posts

Posted 16 February 2016 - 14:33

Targon, если делать таким способом, то выйти можно спокойно - Alt+F4
По поводу стрельбы и того что я написал выше попробую сегодня после обеда что-нибудь вас прислать

По крайне мере на кнопки alt, delete, ctrl, можно прописать смерть юнита! (Как антирелог)


  • 0

#6 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 16 February 2016 - 15:05


Targon, если делать таким способом, то выйти можно спокойно - Alt+F4
По поводу стрельбы и того что я написал выше попробую сегодня после обеда что-нибудь вас прислать

По крайне мере на кнопки alt, delete, ctrl, можно прописать смерть юнита! (Как антирелог)
Далеко не лучший вариант - человек может и за другим нажать данные кнопки (Alt+Tab или через диспетчер выключить программу которая его бесит или которая вылетела, например) вас за такое только пошлют в хорошее место

Edited by vlad333000, 16 February 2016 - 15:06.

  • 0

#7 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 16 February 2016 - 17:04

Самый кошерный вариант, это сделать так что бы после дисконекта игрока его перс оставался на сервере некое кол-во времени.

Можно будет делать классные порно фильмы с телом релогера.


  • 1

#8 OFFLINE   Targon

Targon

    Ефрейтор

  • Пользователи
  • 36 posts

Posted 16 February 2016 - 20:24

Самый кошерный вариант, это сделать так что бы после дисконекта игрока его перс оставался на сервере некое кол-во времени.

Можно будет делать классные порно фильмы с телом релогера.

Вопрос как это можно сделать!


  • 0

#9 OFFLINE   Targon

Targon

    Ефрейтор

  • Пользователи
  • 36 posts

Posted 18 February 2016 - 10:37

Спасибо Sa-Matra большое за скрипт. Чу-чуть переделал под свой скрипт выброса. Думаю не возражаешь :) 

if (isNil "client_abortAt") then {client_abortAt = false;};

addMissionEventHandler ["Draw3d", {
	if(!isNull(findDisplay 49)) then {
		_abort = (findDisplay 49 displayCtrl 104);
		if(isNil "client_abortText") then {
			client_abortText = ctrlText _abort;
		};
		if(uiNamespace getVariable ["abort_button", controlNull] != _abort) then {
			uiNamespace setVariable ["abort_button", _abort];
			agent_abortAt = diag_tickTime + 10;
		};
		if(client_abortAt) then {
			uiNamespace setVariable ["abort_button", _abort];
			_abort ctrlEnable false;
			_abort ctrlSetText format ["antirelog = activated"];
		} else {
			if (diag_tickTime < agent_abortAt) then {
				_abort ctrlEnable false;
				_abort ctrlSetText format ["%1: %2s", client_abortText, ceil(agent_abortAt - diag_tickTime)];
			} else {
				_abort ctrlEnable true;
				_abort ctrlSetText client_abortText;
			};
		};
	};	
}];

  • 0

#10 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 18 February 2016 - 17:27

 

Самый кошерный вариант, это сделать так что бы после дисконекта игрока его перс оставался на сервере некое кол-во времени.

Можно будет делать классные порно фильмы с телом релогера.

Вопрос как это можно сделать!

 

 

Я как то в поисках другого натолкнулся на фишку, вполне легальная от БЕСов, хоть убейте, не помню, по моему это был параметр конфигурации миссии.

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


  • 0

#11 OFFLINE   vlad333000

vlad333000

    Полковник

  • Пользователи
  • 3224 posts
  • Откуда:Кострома

Posted 18 February 2016 - 18:01

SteelRat, не оно?
disabledAI = 0;

  • 0

#12 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 19 February 2016 - 01:44

SteelRat, не оно?

disabledAI = 0;

 

Это отключает АИ в миссии, по этому персонажи игроков и дохнут при дисконекте, управлять то телом не кому АИ отключен. Так вот та фишка как раз и работает на отключенном АИ. Игрок дисконектится, сервер не убивает бесконтрольное тело, а забирает его себе.


  • 0

#13 OFFLINE   Sa-Matra

Sa-Matra

    Ефрейтор

  • Пользователи
  • 97 posts

Posted 19 February 2016 - 09:04

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание


Edited by Sa-Matra, 19 February 2016 - 09:04.

  • 0

#14 OFFLINE   SteelRat

SteelRat

    Полковник

  • Пользователи
  • 3241 posts
  • Откуда:РФ

Posted 20 February 2016 - 04:00

Пожалуйста Войдите или Зарегистрируйтесь чтобы увидеть скрытое содержание

Так и есть, оно.


  • 0




Яндекс.Метрика