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

Как побороть эту заразу? :) (определенный способ ДЮПа)

Как побороть этот дюп? Если есть у Вас готовые решения, поделитесь парни.

 

Share this post


Link to post
Share on other sites

10 answers to this question

Recommended Posts

  • 0
private ["_escMenu","_typf","_mxBckpcks"];
 
disableSerialization;
waitUntil {!isNull findDisplay 49};
_escMenu = findDisplay 49;
{
   _typf = typeOf cursortarget;
   _mxBckpcks = getNumber (configFile >> "CfgVehicles" >> _typf >> "transportmaxbackpacks");
   if (!(isNull _x) && (canbuild) && !(_x == player || typeOf _x in ["WeaponHolder","DebugBoxPlayer_DZ"]) && (_mxBckpcks > 0)) exitWith
   {
      titleText ["<Антидюп>: Ты не можешь выйти возле хранилища!", "PLAIN DOWN", 3];
      systemchat "<Антидюп>: Ты не можешь выйти возле хранилища!";
      _escMenu closedisplay 0;
   };
} foreach (nearestObjects [player, ["All"], 7.5]);

У меня такой скрипт не дает выходить рядом с любым хранилищем, независимо от того выдернул ли ты шнур. Нужно создать файл DupingFix.sqf, и положить его в папку с миссией. а в файле description.ext найти onPauseScript = и прописать, чтобы получилось так: onPauseScript = "custom\DupingFix.sqf"; (у меня файл лежит в папке Custom)

Edited by Sash96rus (see edit history)

Share this post


Link to post
Share on other sites



  • 0

 

private ["_escMenu","_typf","_mxBckpcks"];
 
disableSerialization;
waitUntil {!isNull findDisplay 49};
_escMenu = findDisplay 49;
{
   _typf = typeOf cursortarget;
   _mxBckpcks = getNumber (configFile >> "CfgVehicles" >> _typf >> "transportmaxbackpacks");
   if (!(isNull _x) && (canbuild) && !(_x == player || typeOf _x in ["WeaponHolder","DebugBoxPlayer_DZ"]) && (_mxBckpcks > 0)) exitWith
   {
      titleText ["<Антидюп>: Ты не можешь выйти возле хранилища!", "PLAIN DOWN", 3];
      systemchat "<Антидюп>: Ты не можешь выйти возле хранилища!";
      _escMenu closedisplay 0;
   };
} foreach (nearestObjects [player, ["All"], 7.5]);

У меня такой скрипт не дает выходить рядом с любым хранилищем, независимо от того выдернул ли ты шнур. Нужно создать файл DupingFix.sqf, и положить его в папку с миссией. а в файле description.ext найти onPauseScript = и прописать, чтобы получилось так: onPauseScript = "custom\DupingFix.sqf"; (у меня файл лежит в папке Custom)

Спасибо за инфомацию, сегодня я проверю его и более того я планирую пройти по всем известным ДЮПАМ и собрать все эффективные скрипты защиты по ним, создать отдельную тему и выложить для нас на этом форму.

 

Дело в том что один из защиты от дюпа уже использует onPauseScript, скорее всего в него добавлю просто но может есть способ сделать отдельно? Люблю когда все по отдельности не намешано и по полочкам, у меня пунктик на такие вещи)))

Edited by JustBullet (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
 
Скрипт не дает открывать одновременно инвентарь и меню ЕСкейка, во многих случаях он создает большие проблемы но обойти с понижением ФПСа до 1-3 можно при желании, лично проверено, тем ни менее в дополнении с тем что вы дали выше, это будет очень хороший союз.
 
Сам скрипт должен быть на форуме но я решил для Вас сделать перевод небольшой, главное что бы всем хорошо было, там по ссылке еще есть доп установка и в той же теме есть ссылка на защиту от воровства с техники:
открываем description.ext находим эту строку:

 

onPauseScript = "";
 

 

 
изменяем ее на эту:

 

onPauseScript = "scripts\DupingFix.sqf";
 

 

 
Создаем файл DupingFix.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 ["<Anti-dupe>: Connection to the server is not found!", "PLAIN DOWN", 3];
systemchat "<Anti-dupe>: Connection to the server is not found!";
_escMenu closedisplay 0;
};
 

 

 
 
открываем AH.sqf от InfiStar и в самый низ добавляем этот код:
 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler
{
[] spawn {
waitUntil {!isNull AD_AntiDupePlayer};
_plyr = AD_AntiDupePlayer;
_amnt = _plyr getVariable ['ClearToLeave',0];
_plyr setVariable ['ClearToLeave',_amnt+1,true];
};
};
 

 

 
в compiles.sqf ищем строку :

 

dayz_spaceInterrupt =            compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\dayz_spaceInterrupt.sqf";
 

 

 
и меняем ее на свой путь, к примеру: (тем самым мы делаем его кастомным но если он уже у Вас есть то просто пропустите это действие)

 

dayz_spaceInterrupt =            compile preprocessFileLineNumbers "scripts\dayz_spaceInterrupt.sqf";
 

 

 
в dayz_spaceInterrupt.sqf находи эти строку:

 

if (_dikCode == 0x01) then {
 

 

и ниже нее добавляем это:

 

_nill = execvm "scripts\esc.sqf";
 

 

 
вот как тут на примере:

 

//Esc
if (_dikCode == 0x01) then {
    _nill = execvm "scripts\esc.sqf";
    DZE_cancelBuilding = true;
    call dayz_EjectPlayer;
};
 

 

 
создаем файл in scripts\esc.sqf и в него вставляем этот ког:

 

// F507DMT
for "_x" from 3 to 1 step -1 do {
(findDisplay 106) closeDisplay 1;
uiSleep 1;


if (isNil "EscBlock") then {
systemchat "<Anti-dupe>: Gear is locked for 5 seconds.";
EscBlock = true;
};
};
EscBlock = nil;
 

 

 
 
в фильтрах от батлай в publicvariable.txt, в конец второй линии добавляем новый фильтр:

 

!="AD_AntiDupePlayer"
 

 

 

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

Edited by JustBullet (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

 

 
Скрипт не дает открывать одновременно инвентарь и меню ЕСкейка, во многих случаях он создает большие проблемы но обойти с понижением ФПСа до 1-3 можно при желании, лично проверено, тем ни менее в дополнении с тем что вы дали выше, это будет очень хороший союз.
 
Сам скрипт должен быть на форуме но я решил для Вас сделать перевод небольшой, главное что бы всем хорошо было, там по ссылке еще есть доп установка и в той же теме есть ссылка на защиту от воровства с техники:
открываем description.ext находим эту строку:

 

onPauseScript = "";
 

 

 
изменяем ее на эту:

 

onPauseScript = "scripts\DupingFix.sqf";
 

 

 
Создаем файл DupingFix.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 ["<Anti-dupe>: Connection to the server is not found!", "PLAIN DOWN", 3];
systemchat "<Anti-dupe>: Connection to the server is not found!";
_escMenu closedisplay 0;
};
 

 

 
 
открываем AH.sqf от InfiStar и в самый низ добавляем этот код:
 

 

'AD_AntiDupePlayer' addPublicVariableEventHandler
{
[] spawn {
waitUntil {!isNull AD_AntiDupePlayer};
_plyr = AD_AntiDupePlayer;
_amnt = _plyr getVariable ['ClearToLeave',0];
_plyr setVariable ['ClearToLeave',_amnt+1,true];
};
};
 

 

 
в compiles.sqf ищем строку :

 

dayz_spaceInterrupt =            compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\dayz_spaceInterrupt.sqf";
 

 

 
и меняем ее на свой путь, к примеру: (тем самым мы делаем его кастомным но если он уже у Вас есть то просто пропустите это действие)

 

dayz_spaceInterrupt =            compile preprocessFileLineNumbers "scripts\dayz_spaceInterrupt.sqf";
 

 

 
в dayz_spaceInterrupt.sqf находи эти строку:

 

if (_dikCode == 0x01) then {
 

 

и ниже нее добавляем это:

 

_nill = execvm "scripts\esc.sqf";
 

 

 
вот как тут на примере:

 

//Esc
if (_dikCode == 0x01) then {
    _nill = execvm "scripts\esc.sqf";
    DZE_cancelBuilding = true;
    call dayz_EjectPlayer;
};
 

 

 
создаем файл in scripts\esc.sqf и в него вставляем этот ког:

 

// F507DMT
for "_x" from 3 to 1 step -1 do {
(findDisplay 106) closeDisplay 1;
uiSleep 1;


if (isNil "EscBlock") then {
systemchat "<Anti-dupe>: Gear is locked for 5 seconds.";
EscBlock = true;
};
};
EscBlock = nil;
 

 

 
 
в фильтрах от батлай в publicvariable.txt, в конец второй линии добавляем новый фильтр:

 

!="AD_AntiDupePlayer"
 

 

 

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

Как бэ на форуме давно есть уже.

http://s-platoon.ru/index.php?/topic/3226-anti-duping-anti-theft-from-locked-vehicles-antidiup-i-antivorovstvo-by-f507dmt/

Share this post


Link to post
Share on other sites
  • 0

Да, :) я писал что есть но просто искать не хотелось, парень попросил да накидал по быстрому ему.

Share this post


Link to post
Share on other sites
  • 0

Парни, мне нужно использовать два разных скрипта в onPauseScript = "", как возможно это сделать?

Share this post


Link to post
Share on other sites
  • 0

Объединить в один не пробовали?

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

 

Их я обязательно буду тестить и выложу в конечном счете то что хоть как то отдаленно напоминает на защиту от дюпа.

 

вся проблема всегда заключается в том что игрок может опустить себе ФПС и успеть совершить действия выхода в лобби.

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

  • Similar Content

    • By Serdce
      Данный скрипт, меняет процесс ремонта вашей техники, делая её более логичней, как было в А2.
      Для замены колеса, на нужно собственно само колесо, и тд. и тп. 
      Подробный список чего и для чего вы найдёте в файлах.
       
      Итак, преступим!
      Я не автор, я всего лишь перевожу.
      Первоисточник - https://github.com/aussie-battler/Exilemod-Super-Advanced-Repair-System-SARS
      По ссылке выше скачиваем архив, распаковываем в удобное место.
      Распаковываем ваше миссию "Exile.ваша карта"
      Из архива копируем папку "Custom" в папку вашей миссии "Exile.ваша карта"
      Открываем ваш description.ext  в нем мы ищем showHUD[] = 
      и полностью меняем на это - 
      Далее открываем ваш - initPLayerLocal.sqf
      В этом файле, сразу после строки - if (!hasInterface || isServer) exitWith {};
      Мы добавляем 
      //Bones Super Advanced Repair System (SARS)
      Bones_fnc_salvageAndRepairMenu = compileFinal preprocessFileLineNumbers "Custom\advancedRepair\Bones_fnc_salvageAndRepairMenu.sqf"; 
      Далее открываем ваш - config.cpp
      В нем мы ищем - class Car
      Внутри этого класса мы ищем
       
      И меняем на 
      Так же далее чуть ниже - class Air
      В нем мы также меняем это
      На это 
       
      Далее для если у вас есть Infistar!
      Распаковываем ваш инфистар и открываем его конфиг.
      В нём ищем     KCM = "true"; /* Just close ALL CommandingMenus */
      И меняем значение на false
      Чуть ниже в строке allowedCommandingMenus
      Мы добавляем  "#USER:ASL_Show_Repair_Options_Menu_Array"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • By fedotovyasha
      Хочу немного изменить сообщения перед отправкой клиенту
    • By fedotovyasha
      Пишу свой лаунчер на c#. Скачал клиент в котором был loader.exe. С ним работает норм, но я хочу без него запускать игру. Как это сделать? (Пиратка)
    • By Miduznya
      Собственно как, как отключить battleye на сервере античит

      параметр BattlEye=0; не работает я так понял 
    • By DrTauren
      На нашем сайте предусмотрена возможность рекламирования вашего игрового сервера/сайта/програмного обеспечения при помощи баннеров и ссылок.
       
      Баннеры под первым сообщением темы ↓
       
      Баннер на главной странице (над чатом) ↓
       
      Ссылки над первым сообщением темы ↓
       
      Ссылка на главной странице (над чатом) ↓
       
       

      Заявку вы можете заполнить в этой же теме, либо написать мне в ЛС.
      Любые сообщения не по теме запрещены.
  • Our picks

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