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

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

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

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

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

Как уменьшить дамаг по постройкам.

Можно-ли как-то уменьшить дамаг по постройкам? Т.е. постройкам игроков, базы и т.д., без редактирования мода?
Если да - как можно это всё провернуть!?

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

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


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

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

  • 0

Так же в интернете нашёл способ как изменить сам получаемый урон для построек, как ты и просил. Но лично не тестировал:
 

Цитата

 

В папке с миссией создаем папку Custom, создаем в ней файл cinder_handleDamage.sqf. Вставляем в него следующий код:


private["_unit","_selection","_strH","_total","_damage","_needUpdate"];
_unit = _this select 0;
_selection = _this select 1;
_dammage = _this select 2;
_old_dammage = getdammage _unit;
_delta = abs (_old_dammage - _dammage);
_total = _old_dammage + _delta * 0.1; // 0.1 - множитель на сколько уменьшаем дамаг. 0.1 = в 10 раз
                                      // 0.5 = 2 раза
                                      // и тд.
if (_selection != "") then {
    _strH = "hit_" + _selection;
} else {
    _strH = "totalDmg";
};
if (_total >= 0.98) then {
        _total = 1.0;
};
if (local _unit) then {
    if (_total > 0) then {
        _unit setVariable [_strH, _total, true];
        _unit setHit [_selection, _total];
                if (isServer) then {
            [_unit, "damage"] call server_updateObject;
        } else {
            PVDZE_veh_Update = [_unit,"damage"];
            publicVariableServer "PVDZE_veh_Update";
        };
    };
} else {
    PVDZE_send = [_unit,"VehHandleDam",_this];
    publicVariableServer "PVDZE_send";
};
_total

В вашем кастомном compiles.sqf ищем


vehicle_handleDamage = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\vehicle_handleDamage.sqf";

Добавляем ниже


cinder_handleDamage = compile preprocessFileLineNumbers "custom\cinder_handleDamage.sqf";

Далее в серверном pbo ищем server_monitor.sqf, в нем ищем блок


f ((typeOf _object) in dayz_allowedObjects) then {
    if (DZE_GodModeBase) then {
       _object setVariable["memDir",_dir,true];
       _object addEventHandler ["HandleDamage", {false}];
    } else {
       _object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];
    };
    // Test disabling simulation server side on buildables only.
    _object enableSimulation false;
    // used for inplace upgrades && lock/unlock of safe
    _object setVariable ["OEMPos", _pos, true];
};

Выше


_object addMPEventHandler ["MPKilled",{_this call object_handleServerKilled;}];

Вставляем:


if (typeof _object in ["MetalFloor_DZ", "CinderWall_DZ", "CinderWallDoorLocked_DZ", "CinderWallDoorSmallLocked_DZ"]) then {
     _object removeAllEventHandlers "HandleDamage";
     _object setDamage 0;
     _object addEventHandler ["HandleDamage", {_this call cinder_handleDamage;}];
};

Массив ["MetalFloor_DZ", "CinderWall_DZ", "CinderWallDoorLocked_DZ", "CinderWallDoorSmallLocked_DZ"] отвечает за то к каким объектам будет добавлен новый обработчик событий, у меня это бетонные стены, металлические полы и закрытые двери и гаражные ворота. Если хотите добавляете свои классы сюда.
Пересобираем PBO, запускаем сервер и радуемся.
Что касается новых построек, они будут со старым обработчиком получения дамага, вернее у них не будет его вообще, дамаг обрабатывает движек армы. Если вам нужно обрабатывать новые постройки, то добавляем код (см. выше) в server_publishObject.sqf и server_swapObject.sqf в аналогичные блоки.

 

 

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


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





  • 0

Можно просто отключить получаемый постройками урон, да и всё. Вроде бы команда DZE_GodModeBase = true;  в init.sqf

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0
В 17.02.2018 в 02:45, DrTauren сказал:

Можно просто отключить получаемый постройками урон, да и всё. Вроде бы команда DZE_GodModeBase = true;  в init.sqf

Подскажите пожж, а где данный файл расположен?

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


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

zamorochilo в папке миссии

Там нет такого файла init.sqf, прикрепил скрин.

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

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

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


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

zamorochilo У вас установлен сервер Dayz, а это раздел для DayZ мода....

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


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

zamorochilo У вас установлен сервер Dayz, а это раздел для DayZ мода....

Ой, видимо название темы проглядел. Простите пожж.

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: 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, в противном случае мы будем считать, что вы согласны с этим.