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

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

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

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

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

Изменение характеристик техники

Всем привет , как поменять харктеристику техники в моде?

Меня заинтересовало изменение скорости и добавление звуков (pull up , rotor low и т.д.)от вертолета CH53 всем вертолетам

Собственно где хранятся харктеристики я нашел , но как их изменить без редактирования мода незнаю

 

Вот файл который мониторит состояние вертолета CH53, как его можно подключить в миссии для всех вертолетов?

_vehicle = _this select 0;
_maxspeed = 300;
_initheight = 2;
_wait = 0.5;

//Initiate Warning Flags
	_CritHydraulics = false;
	_CritEngine = false;
	_WarnCollision = false;
	_WarnDamage = false;
	_WarnEngine = false;
	_WarnFuelPres = false;
	_WarnFuel = false;
	_WarnSink = false;
	_CautRamp = false;
	_CautFuel = false;

//Initiate Variables
	_fuel = 0;
	_fuelLow = 0.5;
	_fuelCrit = 0.1;
	_resultfuel = 0;

_EHMissile = _vehicle addEventHandler ["IncomingMissile", {_vehicle vehicleRadio "dws_critical_incomingmissile";}];
//_EHEngine = _vehicle addEventHandler ["Engine", {if (!(_this select 1)) then {_vehicle vehicleRadio "dws_warning_engineout";};}];
//_EHGear = _vehicle addEventHandler ["Gear", {if (_this select 1) then {sleep 2;_vehicle vehicleRadio "dws_info_geardown";} else {sleep 2;_vehicle vehicleRadio "dws_info_gearup";};}];

while {(player in (crew _vehicle)) && (alive _vehicle)} do {
//while {(alive _vehicle)} do {
	_driver = driver _vehicle;
	_speed = speed _vehicle;
	_alt = (getPosASL _vehicle) select 2;
	_Ralt = (getPos _vehicle) select 2;
	_fuel = fuel _vehicle;
	sleep _wait;
	_resultfuel = _fuel - (fuel _vehicle);
	_resultalt = _alt - ((getPosASL _vehicle) select 2);
	_resultRalt = _Ralt - ((getPos _vehicle) select 2);
	
	_hydraulicsFailT = _vehicle getVariable "HydraulicsFailure";
	_engineFailT = _vehicle getVariable "EngineFailure";
	_rotorFailT = _vehicle getVariable "RotorFailure";
	_avionicsFailT = _vehicle getVariable "AvionicsFailure";
	
	//hintsilent format ["aaa %1",(fuel _vehicle )];
	
	// WARNING // LOOP // Aircraft is rapidly approaching nearby terrain
	if((_resultRalt > (6 * _wait)) && !(_WarnSink) && (_Ralt < 30) && !(_WarnCollision)) then {
		_vehicle vehicleRadio "dws_critical_pullup";
		sleep (1.4 - _wait);
	};
	
	// CRITICAL // LOOP // Hydraulics Failure
	if((_hydraulicsFailT) && !(_CritHydraulics)) then {
		_vehicle vehicleRadio "dws_critical_hydraulicsfailure";
		sleep (4 - _wait);
	};
	
	// CRITICAL // LOOP // Engine Failure
	if((_engineFailT) && !(_CritEngine)) then {
		_vehicle vehicleRadio "dws_critical_enginefailure";
		sleep (4 - _wait);
	};
	
	// WARNING // SINGLE // Damage Critical	
	if((damage _vehicle > 0.9) && !(_WarnDamage)) then {
		_vehicle vehicleRadio "dws_warning_damagecritical";
		sleep (4 - _wait);
	};
	
	// WARNING // LOOP // Loosing Fuel
	if((_resultfuel > (0.015 * _wait)) && !(_WarnFuelPres)) then {
		_vehicle vehicleRadio "dws_warning_fuelpressure";
		sleep 5;
	};
	
	// WARNING // LOOP // Aircraft is sinking too quickly
	if((((_resultalt > (2 * _wait)) && (!isEngineOn _vehicle))||((_resultalt > (15 * _wait)) && (isEngineOn _vehicle))) && !(_WarnSink)) then {
		_vehicle vehicleRadio "dws_warning_sinkrate";
		sleep 5;
	};
	
	// WARNING // SINGLE // Fuel Critical
	if(( fuel _vehicle < _fuelCrit) && !(_WarnFuel)) then {
		_vehicle vehicleRadio "dws_warning_fuelcritical";
		_WarnFuel = true;
		_CautFuel = true;
		sleep 5;
	};
	
	// CAUTION // LOOP // Aircraft is going too fast
	if((_speed > _maxspeed) && !(_WarnSink)) then {
		_vehicle vehicleRadio "dws_caution_overspeed";
		sleep 5;
	};
	
	// CAUTION // SINGLE // Ramp Open
	if((_vehicle animationPhase "ramp_bottom" > 0) && !(_CautRamp) && (_Ralt > 50)) then {
		_vehicle vehicleRadio "dws_caution_rampopen";
		_CautRamp = true;
		sleep 5;
	};
	
	// CAUTION // SINGLE // Fuel Low
	if(( fuel _vehicle < _fuelLow) && !(_CautFuel)) then {
		_vehicle vehicleRadio "dws_caution_fuelow";
		_CautFuel = true;
		sleep 5;
	};
	
	// ************ RESET VARIABLES *************
	
	if((_alt < 50) && (_CautRamp)) then {
		_CautRamp = false;
	};
	
	if((fuel _vehicle > _fuelCrit) && (_WarnFuel)) then {
		_WarnFuel = false;
	};
	
	if((fuel _vehicle > _fuelLow) && (_CautFuel)) then {
		_WarnFuel = false;
	};
	
};

_vehicle removeAllEventHandlers "IncomingMissile";
_vehicle removeAllEventHandlers "Engine";
_vehicle removeAllEventHandlers "Gear";
Изменено пользователем Alex60 (история изменений)

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


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

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

  • 0

закиньте в миссию и подключите его там (подсказка - compiles.sqf)

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


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



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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: 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"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • Автор: Loker
      При покупке/продаже техники валюту за технику снимает/начисляет, но сама техника не появляется. 
      В логе возникает следующая ошибка: 
      15:04:28 "Server_PublishVehicle2 error: CLIENT AUTH KEY INCORRECT OR UNRECOGNIZED. PV ARRAY: [[323,[4037.27,11673.5,0.00289917]],"Ural_TK_CIV_EP1",false,"ItemKeyRed1798",B 1-1-B:1 (Player) REMOTE,""]" Как я понял новая проверка в версии мода 1.0.6.2 не может считать какой-то ключ пользователя. Может кто сталкивался с такой ошибкой. Буду рад любому совету. Заранее спасибо.
    • Автор: Akie
      Проблема вот в чем, просто выкидывает из техники через короткое время после залезания в нее и не важно на ходу или нет, на каком месте в ней ты сидишь, просто пофигу, выкидывает и всё, в логах и на сервере, и на клиенте чисто подскажите куда копать пожалуйста
    • Автор: 123new
      Такого плана вопрос по моддингу на 1.0.
      В моде есть, например, класс:
      class ExpansionGlobalChat с кучей функций
      создаю свой мод, в котором указываю
      modded class ExpansionGlobalChat { override void GlobalChat(CallType type, ref ParamsReadContext ctx, ref PlayerIdentity sender, ref Object target) { super.GlobalChat(type, ctx, sender, target); Param2< string, string > data; if ( !ctx.Read( data ) ) return; if( type == CallType.Server ) { string name = sender.GetName(); string steamid = sender.GetPlainId(); string bisid = sender.GetId(); string idtable = sender.GetPlayerId().ToString(); string log_date_time = ExpansionGetDateTime(); string format = "[" + log_date_time + "] " + "[Chat]" + " " + name + "(steamid=" + steamid + ", bisid=" + bisid + ") " + data.param2; Print(format); } } } и пакую, запускаю сервер. Пишет как на скрине.

      Если modded убираю - пишет что класс уже используется. Что я не так делаю? Как делать правильно? не допираю.
    • Автор: DrTauren
      Собственно, из названия понятно, что в этом гайде мы научимся отключать уровень стамины игрока, отключать усталость

      Инструкция:
      1) Находим файл dta/scripts.pbo и распаковываем его при помощи PBO Manager и копируем только что распакованную папку scripts в корневую папку сервера
      2) Открываем файл scripts/3_Game/constants.c и изменяем этот код под себя:
      const int STAMINA_DRAIN_STANDING_SPRINT_PER_SEC = 5; //в единицах (сколько единиц выносливости отбавляется при ускорении) const int STAMINA_DRAIN_CROUCHED_SPRINT_PER_SEC = 1; //в единицах (сколько единиц выносливости отбавляется при ускорении на корточках) const int STAMINA_DRAIN_PRONE_SPRINT_PER_SEC = 3; //в единицах (сколько единиц выносливости отбавляется при ускорении лёжа) const float STAMINA_DRAIN_HOLD_BREATH = 0.2; //в единицах (сколько единиц выносливости отбавляется при задержке дыхания) const int STAMINA_DRAIN_JUMP = 20; //в единицах (сколько единиц выносливости отбавляется при прыжке) const int STAMINA_DRAIN_MELEE_LIGHT = 5; //в единицах (сколько единиц выносливости отбавляется при лёгком ударе в ближнем бою) const float STAMINA_DRAIN_MELEE_HEAVY = 20; //в единицах (сколько единиц выносливости отбавляется при сильном ударе в ближнем бою) const int STAMINA_DRAIN_MELEE_EVADE = 8; //в единицах (сколько единиц выносливости отбавляется при уклонении) Таким образом мы можем отключить усталость игрока, стамина всегда будет максимальная. Для этого нужно всего лишь установить все параметры на значение 0
       
  • Наш выбор

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

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

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