Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
  • 0

Всем привет, нужна помощь с антидюпом.

Стоит скрипт от JustBullet
Но игроки продолжают дюпать через шнур от интернета
Порядок действий:

Открывают инвентарь

Выдёргивают кабель интернета

Выкладывают лут

Отходят от места хранилища, и за счёт того что интернет офф, таймер отсчёта 30 секунд не срабатывает

Как фиксить?

Share this post


Link to post
Share on other sites

17 answers to this question

Recommended Posts

  • 0

UP Проблема актуальна

Открываем папку с фильтрами и в файле publicvariable.txt и во 2-ой строчке дописать:

!="AD_AntiDupePlayer"

 

В самый конец файла AH.sqf вставить 

 

 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler

{

[] spawn

{

waitUntil {!isNull AD_AntiDupePlayer};

_plyr = AD_AntiDupePlayer;

_amnt = _plyr getVariable ['ClearToLeave',0];

_plyr setVariable ['ClearToLeave',_amnt+1,true];

};

};

 

Edited by OMOH71 (see edit history)

Share this post


Link to post
Share on other sites



  • 0

Есть скрипт если не ошибаюсь на то что если выйти неправильно то остается ящик или бот на том месте.

Share this post


Link to post
Share on other sites
  • 0

Это скрипт на анти релог, а они не релогаются, а выходят спокойно через лобби, да и не пойму как бы мне помог данный ящик?

Share this post


Link to post
Share on other sites
  • 0

Проблема актуальна всё еще...

Share this post


Link to post
Share on other sites
  • 0

ребята, проблема всё еще не решена!

В description.ext 
Стоит 

onPauseScript = "scripts\antidupe\antidupe.sqf";

Все пути верные, всё работает, но если связь разорвалась отсчёт не работает HELP!
Срочно!

Share this post


Link to post
Share on other sites
  • 0

Готов купить защиту от дюпа, предложения в лс

Share this post


Link to post
Share on other sites
  • 0

ребята, проблема всё еще не решена!

В description.ext 

Стоит 

onPauseScript = "scripts\antidupe\antidupe.sqf";

Все пути верные, всё работает, но если связь разорвалась отсчёт не работает HELP!

Срочно!

Попробуй соединить защиты отсюда http://s-platoon.ru/index.php?/topic/3226-anti-duping-anti-theft-from-locked-vehicles-antidiup-i-antivorovstvo-by-f507dmt/  и эту  от JustBullet  ,другого выхода пока что наверное нет(((

Share this post


Link to post
Share on other sites
  • 0

Попробуй соединить защиты отсюда http://s-platoon.ru/index.php?/topic/3226-anti-duping-anti-theft-from-locked-vehicles-antidiup-i-antivorovstvo-by-f507dmt/  и эту  от JustBullet  ,другого выхода пока что наверное нет(((

Помогал одному такому...

http://s-platoon.ru/index.php?/topic/4288-diup-luta/

Share this post


Link to post
Share on other sites
  • 0

Помогал одному такому...

http://s-platoon.ru/index.php?/topic/4288-diup-luta/

Нормально,только на разрыв связи не влияет,а человеку нужно 2 в 1)))

попробуй 2 эти скрипта так помирить

в dayz_spaceInterrupt.sqf вставить вот это 

 

//Esc

if (_dikCode == 0x01) then {

_nill = execvm "fixes\esc.sqf";

DZE_cancelBuilding = true;

call dayz_EjectPlayer;

};

if (_dikCode in actionKeys "Gear") then {

_nill = execvm "fixes\dup_fps.sqf";

};

 

соответственно с заменой и поменяв на свои пути

Содержимое esc.sqf

 

// F507DMT

for "_x" from 3 to 1 step -1 do {

(findDisplay 106) closeDisplay 1;

uiSleep 1;

 

if (isNil "EscBlock") then {

systemchat ": Инвентарь заблокирован на 5 секунд.";

EscBlock = true;

};

};

EscBlock = nil;

 

содержимое dup_fps.sqf

 

if (isNil "_triggerBLOCK") then {

_triggerBLOCK = true;

_triggerFPS = false;

 

private ["_timer","_playerFPS"];

disableSerialization;

waituntil{!isnull (finddisplay 46)};

 

_timer = 28;

while {_timer > 0} do {

_timer = _timer - 0.1;

_playerFPS = round(diag_fps);

if (_playerFPS < 5) then {

startLoadingScreen ["Анти-Дюп : У Вас слишком низкий ФПС, Вы заблокированы...", "DayZ_loadingScreen"];

disableUserInput true;

_triggerFPS = true;

} else {

endLoadingScreen;

disableUserInput false;

_triggerFPS = false;

};

if !(isnull (finddisplay 49)) then {

findDisplay 106 closeDisplay 1;

finddisplay 49 closeDisplay 2;

systemchat format["Анти-Дюп : Вы не cможете выйти еще: %1 сек. после доступа к инвентарю.", round(_timer)];

};

uiSleep 0.1;

};

 

if (_triggerFPS) then {endLoadingScreen; disableUserInput false; _triggerFPS = false;};

 

_triggerBLOCK = nil;

_triggerFPS = nil;

};

 

в description.ext строка 

onPauseScript = "fixes\antidupe.sqf";

содержимое antidupe.sqf

 

private ["_escMenu","_lastTimesScanned","_currTimesScanned"];

 

disableSerialization;

sleep 1;

call dayz_forcesave;

_escMenu = findDisplay 49;

_lastTimesScanned = player getVariable ["ClearToLeave",0];

 

AD_AntiDupePlayer = player;

publicVariable "AD_AntiDupePlayer";

 

sleep 5;

 

_currTimesScanned = player getVariable ["ClearToLeave",0];

 

 

if (_currTimesScanned - _lastTimesScanned < 1) then

{

titleText [": Потеряно соединение с сервером!", "PLAIN DOWN", 3];

systemchat ": Потеряно соединение с сервером!";

_escMenu closedisplay 0;

};

 

Ну и соответственно в инфи в самый конец вставляем 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler

{

[] spawn

{

waitUntil {!isNull AD_AntiDupePlayer};

_plyr = AD_AntiDupePlayer;

_amnt = _plyr getVariable ['ClearToLeave',0];

_plyr setVariable ['ClearToLeave',_amnt+1,true];

};

};

 

 

Есть конечно минусы у данного способа,но у меня вроде как работает,и при разрыве нет возможности дюпнуть(по крайней мере второй админ пытался-не вышло)

Минус состоит в том,что если горит красная или желтая цепочка диссинхрона,никого с сервака не выпустит,пока цепь не исчезнет)

Share this post


Link to post
Share on other sites
  • 0

Нормально,только на разрыв связи не влияет,а человеку нужно 2 в 1)))

попробуй 2 эти скрипта так помирить

в dayz_spaceInterrupt.sqf вставить вот это 

 

//Esc

if (_dikCode == 0x01) then {

_nill = execvm "fixes\esc.sqf";

DZE_cancelBuilding = true;

call dayz_EjectPlayer;

};

if (_dikCode in actionKeys "Gear") then {

_nill = execvm "fixes\dup_fps.sqf";

};

 

соответственно с заменой и поменяв на свои пути

Содержимое esc.sqf

 

// F507DMT

for "_x" from 3 to 1 step -1 do {

(findDisplay 106) closeDisplay 1;

uiSleep 1;

 

if (isNil "EscBlock") then {

systemchat ": Инвентарь заблокирован на 5 секунд.";

EscBlock = true;

};

};

EscBlock = nil;

 

содержимое dup_fps.sqf

 

if (isNil "_triggerBLOCK") then {

_triggerBLOCK = true;

_triggerFPS = false;

 

private ["_timer","_playerFPS"];

disableSerialization;

waituntil{!isnull (finddisplay 46)};

 

_timer = 28;

while {_timer > 0} do {

_timer = _timer - 0.1;

_playerFPS = round(diag_fps);

if (_playerFPS < 5) then {

startLoadingScreen ["Анти-Дюп : У Вас слишком низкий ФПС, Вы заблокированы...", "DayZ_loadingScreen"];

disableUserInput true;

_triggerFPS = true;

} else {

endLoadingScreen;

disableUserInput false;

_triggerFPS = false;

};

if !(isnull (finddisplay 49)) then {

findDisplay 106 closeDisplay 1;

finddisplay 49 closeDisplay 2;

systemchat format["Анти-Дюп : Вы не cможете выйти еще: %1 сек. после доступа к инвентарю.", round(_timer)];

};

uiSleep 0.1;

};

 

if (_triggerFPS) then {endLoadingScreen; disableUserInput false; _triggerFPS = false;};

 

_triggerBLOCK = nil;

_triggerFPS = nil;

};

 

в description.ext строка 

onPauseScript = "fixes\antidupe.sqf";

содержимое antidupe.sqf

 

private ["_escMenu","_lastTimesScanned","_currTimesScanned"];

 

disableSerialization;

sleep 1;

call dayz_forcesave;

_escMenu = findDisplay 49;

_lastTimesScanned = player getVariable ["ClearToLeave",0];

 

AD_AntiDupePlayer = player;

publicVariable "AD_AntiDupePlayer";

 

sleep 5;

 

_currTimesScanned = player getVariable ["ClearToLeave",0];

 

 

if (_currTimesScanned - _lastTimesScanned < 1) then

{

titleText [": Потеряно соединение с сервером!", "PLAIN DOWN", 3];

systemchat ": Потеряно соединение с сервером!";

_escMenu closedisplay 0;

};

 

Ну и соответственно в инфи в самый конец вставляем 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler

{

[] spawn

{

waitUntil {!isNull AD_AntiDupePlayer};

_plyr = AD_AntiDupePlayer;

_amnt = _plyr getVariable ['ClearToLeave',0];

_plyr setVariable ['ClearToLeave',_amnt+1,true];

};

};

 

 

Есть конечно минусы у данного способа,но у меня вроде как работает,и при разрыве нет возможности дюпнуть(по крайней мере второй админ пытался-не вышло)

Минус состоит в том,что если горит красная или желтая цепочка диссинхрона,никого с сервака не выпустит,пока цепь не исчезнет)

Та моего метода более чем достаточно. С моим попробуй дюпнуть

Share this post


Link to post
Share on other sites
  • 0

Та моего метода более чем достаточно. С моим попробуй дюпнуть

хорошо) попробую) на досуге

Share this post


Link to post
Share on other sites
  • 0

Нормально,только на разрыв связи не влияет,а человеку нужно 2 в 1)))

попробуй 2 эти скрипта так помирить

в dayz_spaceInterrupt.sqf вставить вот это 

 

//Esc

if (_dikCode == 0x01) then {

_nill = execvm "fixes\esc.sqf";

DZE_cancelBuilding = true;

call dayz_EjectPlayer;

};

if (_dikCode in actionKeys "Gear") then {

_nill = execvm "fixes\dup_fps.sqf";

};

 

соответственно с заменой и поменяв на свои пути

Содержимое esc.sqf

 

// F507DMT

for "_x" from 3 to 1 step -1 do {

(findDisplay 106) closeDisplay 1;

uiSleep 1;

 

if (isNil "EscBlock") then {

systemchat ": Инвентарь заблокирован на 5 секунд.";

EscBlock = true;

};

};

EscBlock = nil;

 

содержимое dup_fps.sqf

 

if (isNil "_triggerBLOCK") then {

_triggerBLOCK = true;

_triggerFPS = false;

 

private ["_timer","_playerFPS"];

disableSerialization;

waituntil{!isnull (finddisplay 46)};

 

_timer = 28;

while {_timer > 0} do {

_timer = _timer - 0.1;

_playerFPS = round(diag_fps);

if (_playerFPS < 5) then {

startLoadingScreen ["Анти-Дюп : У Вас слишком низкий ФПС, Вы заблокированы...", "DayZ_loadingScreen"];

disableUserInput true;

_triggerFPS = true;

} else {

endLoadingScreen;

disableUserInput false;

_triggerFPS = false;

};

if !(isnull (finddisplay 49)) then {

findDisplay 106 closeDisplay 1;

finddisplay 49 closeDisplay 2;

systemchat format["Анти-Дюп : Вы не cможете выйти еще: %1 сек. после доступа к инвентарю.", round(_timer)];

};

uiSleep 0.1;

};

 

if (_triggerFPS) then {endLoadingScreen; disableUserInput false; _triggerFPS = false;};

 

_triggerBLOCK = nil;

_triggerFPS = nil;

};

 

в description.ext строка 

onPauseScript = "fixes\antidupe.sqf";

содержимое antidupe.sqf

 

private ["_escMenu","_lastTimesScanned","_currTimesScanned"];

 

disableSerialization;

sleep 1;

call dayz_forcesave;

_escMenu = findDisplay 49;

_lastTimesScanned = player getVariable ["ClearToLeave",0];

 

AD_AntiDupePlayer = player;

publicVariable "AD_AntiDupePlayer";

 

sleep 5;

 

_currTimesScanned = player getVariable ["ClearToLeave",0];

 

 

if (_currTimesScanned - _lastTimesScanned < 1) then

{

titleText [": Потеряно соединение с сервером!", "PLAIN DOWN", 3];

systemchat ": Потеряно соединение с сервером!";

_escMenu closedisplay 0;

};

 

Ну и соответственно в инфи в самый конец вставляем 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler

{

[] spawn

{

waitUntil {!isNull AD_AntiDupePlayer};

_plyr = AD_AntiDupePlayer;

_amnt = _plyr getVariable ['ClearToLeave',0];

_plyr setVariable ['ClearToLeave',_amnt+1,true];

};

};

 

 

Есть конечно минусы у данного способа,но у меня вроде как работает,и при разрыве нет возможности дюпнуть(по крайней мере второй админ пытался-не вышло)

Минус состоит в том,что если горит красная или желтая цепочка диссинхрона,никого с сервака не выпустит,пока цепь не исчезнет)

Что именно в конец инфы дописывать? в какой файл, при нажатие ESC кикает batleey

Share this post


Link to post
Share on other sites
  • 0

UP Проблема актуальна

Share this post


Link to post
Share on other sites
  • 0

Проблема решена, администрацию просьба закрыть тему, возможно написать гайд, т.к способ оч действейный

Share this post


Link to post
Share on other sites
  • 0

Та моего метода более чем достаточно. С моим попробуй дюпнуть

Попробовал на досуге,скинул рюкзак в палатку,выдернул кабель и дюпнул). Я ж писал,что человеку нужно 2 в 1,универсальную ,так сказать,а твое на обрыв кабеля...ну никак не влияет..извини)

Share this post


Link to post
Share on other sites
  • 0

Открываем папку с фильтрами и в файле publicvariable.txt и во 2-ой строчке дописать:

!="AD_AntiDupePlayer"

 

В самый конец файла AH.sqf вставить 

 

 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler

{

[] spawn

{

waitUntil {!isNull AD_AntiDupePlayer};

_plyr = AD_AntiDupePlayer;

_amnt = _plyr getVariable ['ClearToLeave',0];

_plyr setVariable ['ClearToLeave',_amnt+1,true];

};

};

 

 

 

перед строкой 

 

BIS_Effects_Burn={};

 

добавлять или после?

Edited by godmode8 (see edit history)

Share this post


Link to post
Share on other sites
  • 0

перед строкой 

 

BIS_Effects_Burn={};

 

добавлять или после?

Перед строкой.

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

×
×
  • 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.