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

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

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

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

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

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

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

 

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


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

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

  • 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)

Изменено пользователем Sash96rus (история изменений)

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


Ссылка на сообщение
Поделиться на других сайтах
MagicByte MagicByte MagicByte
  • 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, скорее всего в него добавлю просто но может есть способ сделать отдельно? Люблю когда все по отдельности не намешано и по полочкам, у меня пунктик на такие вещи)))

Изменено пользователем JustBullet (история изменений)

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


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

Какой Вы используете скрипт, и как он защищает

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


Ссылка на сообщение
Поделиться на других сайтах
  • 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"
 

 

 

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

Изменено пользователем JustBullet (история изменений)

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


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

пс. Кстати я попобую прямо сейчас проверить тот скрипт который вы дали, скомбинирую их только.

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


Ссылка на сообщение
Поделиться на других сайтах
  • 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/

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


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

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

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


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

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

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


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

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

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

 

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

 

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: 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"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • Автор: fedotovyasha
      Хочу немного изменить сообщения перед отправкой клиенту
    • Автор: fedotovyasha
      Пишу свой лаунчер на c#. Скачал клиент в котором был loader.exe. С ним работает норм, но я хочу без него запускать игру. Как это сделать? (Пиратка)
    • Автор: Miduznya
      Собственно как, как отключить battleye на сервере античит

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

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

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

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

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

Поддержка