Jump to content

Donnovan

Member
  • Posts

    840
  • Joined

  • Last visited

  • Days Won

    12

Reputation Activity

  1. Like
    Donnovan reacted to Defent in Arma 3 - Tiny Functions Set   
    Donnovan, you can easily speed up your script by not using arbitrary calculations to calculate something like for exmple 
    _rMin = 10^8; The answer will always be 100000000 in this case. Also there is a command to check the power of (x), to make it more neat. 
    https://community.bistudio.com/wiki/exp
     
    You've also wound up the calculations a lot. I don't see why you'd complicate it this much. 
    _error = abs (_dist - _goal); Why are you checking the absolute value here? It only checks how far your sum is from 0. Negative 6 is 6 away from zero, but so is also positive 6. This becomes very unreliable when using distances etc imo since it's often relied on a set pos. -5040 is very different from +5040. I know that distance is always positive but it may mess up a bit.
     
    I'm not trying to be a dick here but this could cause some performance issues, is all im trying to say.
     
    https://community.bistudio.com/wiki/Math_Commands
  2. Like
    Donnovan reacted to KiloSwiss in #SEM - Simple Epoch Missions v0.8.1 + 0.8.3 test   
    @Havoc302
    Use the function BIS_fnc_taskDefend.

    @crackerjack0903
    Yes it is possible, but needs some scripting knowledge to accomplish.
    Try to do it by Yourself.

    @Donnovan
    What Gen0cide postet (read the readme next time) and I saw Your function, but currently see no use for it.

    Greez KiloSwiss
  3. Like
    Donnovan reacted to Gen0cide in #SEM - Simple Epoch Missions v0.8.1 + 0.8.3 test   
    Convoys are in his 8.3 test version located on the main page in his spoiler.
  4. Like
    Donnovan reacted to KiloSwiss in #SEM - Simple Epoch Missions v0.8.1 + 0.8.3 test   
    SEM - Simple Epoch Missions by KiloSwiss


    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

    What is SEM?
    - A simple AI mission script, nothing fancy, just some static random mission with AI and some loot.

    Wow great Idea!
    - No, this was buildt upon the original work from drsubo, which was shared in this thread


    How does it work?
    - Magic

    How do I install it?
    - There is a readme.txt file inside the download, read it carefully and do the installation step-by-step!

    What is currently included/what are the features?
    - Static AI missions (only one mission at the time).
    - Every mission has a box with loot (more AI equals better loot).
    - Missions will eventually time out if no player is nearby.

    What will be implemented in the next versions?
    - More missions (AI take over towns, vehicles, convoys, etc.).
    - New outposts, maybe a maze would be funny, who knows.
    - HC support (only if enough admins ask for that).
    - Suggest your idea in this thread, I'm open for new ideas!

    Where can I download it?
    - The newest Version is always available on GitHub: https://github.com/KiloSwiss/Simple-Epoch-Missions

    I have a question can I write You a PM?
    - NO! I give support only here in this thread. Any PM with questions/asking for support will be ignored, NO EXCEPTIONS!
    Also check the previous/old thread to see if Your question has been answered before:


    Do You want something for this?
    - No, this script is free to use, edit and share for anyone out there (SEM is published under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License).

    Altough, if You like to donate me something for my work, any kind of donation is well appreciated.
    Here are some PayPal donation Links: $ £ €
    Choose Your currency and the amount You would like to donate
    Many thanks in advance to everyone who donates!

    For those having issues adding exceptions to their BE filters:
    See here which lines inside the scripts.txt needs to be changed: LINK (scripts.txt)
    And read this thread to understand more about BE filters and adding exceptions:



    Have fun
    Greez KiloSwiss
     
     
    Edit:
    This Addon / Script has an update to stay compatible to EpochMod.
    All credits for the core will stay on @KiloSwiss
    The updated version can be found here:
    https://github.com/Ignatz-HeMan/SEM
     
  5. Like
    Donnovan reacted to second_coming in Arma 3 - Tiny Functions Set   
    It's to be used in other scripts to determine the concentration of players on the map (eg. if you wanted to find a spot on the map where the most number of players were close to for example)
  6. Like
    Donnovan got a reaction from TNT in [RELEASE] Recover Skin From Dead Players or AI   
    Hello MattL!

    Your code is incredible simple and effective!

    I just did my bit of work to make it more simple: Just add that at the end of init.sqf and voyla! We have Take Clothes!
     

    [] spawn { private ["_playerBody","_skin","_skinOk","_result"]; waitUntil {r_player_dead}; _playerBody = player; _skin = typeOf _playerBody; _skin = "Skin_" + _skin; _skinOk = isClass (configFile >> "CfgMagazines" >> _skin); if (_skinOk) then { _result = [_playerBody, _skin] call BIS_fnc_invAdd; if (!_result) then { (unitBackpack _playerBody) addMagazineCargoGlobal [_skin, 1]; }; }; };The line waitUntil {r_player_dead} check for player death, but since this is a boolean check (true/false) it has little to no performance impact!
  7. Like
    Donnovan got a reaction from Bricktop in Joelma's Time Control   
    If you like my work, please consider a donation:

    $USD

    $EURO

    *** UPDATED THE FILE TIME_CONTROL.SQF IN 2014-10-09 13:00 ***
    *** TIME_CONTROL.SQF WAS CHANGED, THE CHANGED PARTE HAVE ***
    *** THE COMMENT "//LAST CHANGE WAS IN THIS SPAWN" ***

    JOELMA'S TIME CONTROL SYSTEMA

    Default configuration: A day of 2 hours.
    - 60 minutes completely day time (08:00 - 16:00)
    - 36 minutes of sunrise and sunfall (04:00 - 08:00, 16:00 - 20:00)
    - 24 minutes of night (00:00 - 04:00, 20:00 - 24:00)

    CLIENT SIDE: TIME_CONTROL.SQF
    In your mission folder, create the folder custom if it does not exist.
    Create inside the custom folder a txt file called time_control.sqf.
    Put inside time_control.sqf the content bellow:


    donn_sleep = 0.2; donn_multi = 2; drn_fnc_DynamicWeather_SetWeatherLocal = {}; 0 setOvercast 0; 0 setFog 0.05; if (!isDedicated) then { "cad_pvar_server_date" addPublicVariableEventHandler {(_this select 1) call donn_setdate;}; donn_setdate = { private ["_dateSer","_dateCli","_date_diff"]; donn_speed = _this select 1; 0 setOvercast 0; _dateSer = dateToNumber (_this select 0); _dateCli = dateToNumber date; _date_diff = (_dateSer-_dateCli)*12*31*24; if (abs _date_diff > 5/60) then {setDate (_this select 0);}; }; }; [] spawn { //LAST CHANGE WAS IN THIS SPAWN private ["_tm","_tmLen"]; _tm = diag_tickTime; waitUntil {!isNil "donn_speed"}; while {true} do { sleep donn_sleep; _tmLen = diag_TickTime - _tm; _tm = _tm + _tmLen; skipTime ((_tmLen*(donn_speed*donn_multi-1))/3600); }; }; if (!isDedicated) then { [] spawn { for "_x" from 1 to 10 do { "infiSTAR_SetDate" addPublicVariableEventHandler {}; "PVDZE_plr_SetDate" addPublicVariableEventHandler {}; cad_pvar_send_owner = player; publicVariableServer "cad_pvar_send_owner"; sleep 0.5; }; }; }; CLIENT SIDE: INIT.SQF
    Step 1
    On your mission folder, open the file init.sqf.

    Inside it change this:


    //Start Dynamic Weather execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf"; To this:
    //Start Dynamic Weather //execVM "\z\addons\dayz_code\external\DynamicWeatherEffects.sqf"; Step 2At the end of your init.sqf file, add this line:


    call compile preprocessFileLineNumbers "custom\time_control.sqf"; SERVER SIDE: SERVER_FUNCTIONS.SQF
    Now we need to modify files inside dayz_server.pbo.

    At the end of the file init\server_functions.sqf add this code:



    initialSend = false; donn_server_timeSync = server_timeSync; server_timeSync = {if (!initialSend) then {[] call donn_server_timeSync;}; initialSend = true;}; [] spawn { waitUntil {initialSend}; while {true} do { _dayTime = dayTime; //========================TIME FUNCTION============================ if (_dayTime >= 8 && _dayTime <= 16) then {donn_speed = 4.000;}; if (_dayTime > 4 && _dayTime < 8) then {donn_speed = 6.666;}; if (_dayTime > 16 && _dayTime < 20) then {donn_speed = 6.666;}; if (_dayTime <= 4 || _dayTime >= 20) then {donn_speed = 10.000;}; //================================================================= cad_pvar_server_date = [date, donn_speed]; publicVariable "cad_pvar_server_date"; sleep 30; }; }; "cad_pvar_send_owner" addPublicVariableEventHandler { cad_pvar_server_date = [date, donn_speed]; owner (_this select 1) publicVariableClient "cad_pvar_server_date"; }; BATTLEYE FILTER:
    On the BattlEye filter publicvariable.txt search for the line that start with 5 "" and add at the end of it an empty space and than !"cad_pvar_s".
     
    My line is like that after the adition:


    EXTRA:
    To have a 3 hours day, change the line "donn_multi = 2;" in time_control.sqf:


    donn_multi = 1; -> 4 hours day donn_multi = 4/3; -> 3 hours day donn_multi = 2; -> 2 hours day
  8. Like
    Donnovan reacted to TNT in [release] No Land X Air, Air X Air Crash!   
    thank you Donnovan i really needed this one  :)  will be adding it to my server soon.
     
    i changed donn_GHL_helis to ↓ and it works well just incase any one wants to make all air vehicles have this anti ram . you can also use 'Helicopter' for just helicopters
     
    donn_GHL_helis = [
        'Air'
    ];
  9. Like
    Donnovan got a reaction from TNT in [release] No Land X Air, Air X Air Crash!   
    Main post updated with the script!
  10. Like
    Donnovan got a reaction from -Dutchy- in [release] No Land X Air, Air X Air Crash!   
    If you like my work, please consider a donation.

    $USD

    $EURO

    ABOUT
     
    Heli god mode works great againt weapons, but its leaked because a car, another heli, or even a bike, just need to touch it to make great damage. This script protect locked helis from contact damage from another vehicles, making god mode complete.
     
    INSTALLATION

    Put the script bellow in a file and name it nohelicrash.sqf. Put this file at the root of your mission folder, or mission PBO, and exec it on init.sqf with the command: if (hasInterface) then {[] execVM "nohelicrash.sqf";};
     
    THE SCRIPT:

    //Nohcrash donn_NHC_horn_alert = false; donn_GHL_helis = [ 'CH53_DZE', 'MH6J_DZ', 'AH6X_DZ', 'UH1H_DZE', 'Mi17_DZE', 'Mi17_Civilian_DZ', 'UH60M_EP1_DZE', 'MV22_DZ', 'CH_47F_EP1_DZE', 'AN2_DZ' ]; donn_vehCenter = { _vehicle = _this; _vehCenter = getPosATL _vehicle; _vehCenter }; donn_GHL_maxSpeed = 35; [] spawn { _fpsNow = diag_fps; while {true} do { _fpsNow = round ((_fpsNow * 2 + diag_fps)/3); if (_fpsNow > 60) then {donn_GHL_maxSpeed = 70;}; if (_fpsNow <= 60) then {donn_GHL_maxSpeed = 60;}; if (_fpsNow <= 40) then {donn_GHL_maxSpeed = 50;}; if (_fpsNow <= 30) then {donn_GHL_maxSpeed = 40;}; if (_fpsNow <= 20) then {donn_GHL_maxSpeed = 35;}; uiSleep 2; }; }; donn_GHL_ejectKamiTry = { private ['_car','_ejecterPos','_nearAir','_nearAirAll','_canbuild','_carCrewCount']; _car = _this; if (speed _car > 2) then { _canbuild = canbuild; _nearAirAll = nearestObjects [_car, donn_GHL_helis, 120]; _nearAir = []; { if (_canbuild) then { if (alive _x && Locked _x && !(isEngineOn _x)) then { _nearAir = _nearAir + [_x];}; } else { if (alive _x && !(isEngineOn _x)) then {_nearAir = _nearAir + [_x];}; }; } forEach _nearAirAll; { [_car, _x] spawn { private ['_minDistance']; _car = _this select 0; _heli = _this select 1; _sizeCar = sizeOf (typeOf _car); _sizeHeli = sizeOf (typeOf _heli); _minDistance = (_sizeHeli/2 + _sizeCar/2) * 1.1; _isAir = _car isKindOF "Air"; if (_isAir) then { while {((getPosATL _car) select 2) > 1 && alive _car && (isNull (driver _car))} do { if ((_car distance _heli) < _minDistance) then { _carNowPos = getPosATL _car; _car setPosATL [_carNowPos select 0, _carNowPos select 1, (_carNowPos select 2) + 25]; }; sleep 0.001; }; } else { while {(speed _car) > 1 && alive _car && (isNull (driver _car))} do { if ((_car distance _heli) < _minDistance && ((getPosASL _car) select 2) >= (((getPosASL _heli) select 2)-1)) then { _car engineOn false; _car setVelocity [0,0,0]; }; sleep 0.001; }; }; }; } forEach _nearAir; }; }; donn_GHL_nearestFound = false; [] spawn { while {true} do { donn_GHL_playerVeh = vehicle player; if (donn_GHL_playerVeh != player) then { if (driver donn_GHL_playerVeh == player) then { while {driver donn_GHL_playerVeh == player} do { _nearAir = nearestObjects [donn_GHL_playerVeh, donn_GHL_helis, 50]; _nearestFound = false; if (canbuild) then { { if (alive _x && Locked _x && !(isEngineOn _x)) then { if (((getPosASL donn_GHL_playerVeh) select 2) >= (((getPosASL _x) select 2)-1)) then { donn_GHL_nearest = _x; _nearestFound = true; }; }; if (_nearestFound) exitWith {}; } forEach _nearAir; } else { { if (alive _x && !(isEngineOn _x)) then { if (((getPosASL donn_GHL_playerVeh) select 2) >= (((getPosASL _x) select 2)-1)) then { donn_GHL_nearest = _x; _nearestFound = true; }; }; if (_nearestFound) exitWith {}; } forEach _nearAir; }; donn_GHL_nearestFound = _nearestFound; sleep 0.001; }; donn_GHL_playerVeh call donn_GHL_ejectKamiTry; donn_GHL_nearestFound = false; }; }; sleep 0.5; }; }; [] spawn { while {true} do { waitUntil {donn_GHL_nearestFound}; _player = donn_GHL_playerVeh; _nearest = donn_GHL_nearest; _sizePlayer = sizeOf (typeOf _player); _sizeNearest = sizeOf (typeOf _nearest); _isAir = _player isKindOf "Air"; _minDistDirect = (_sizePlayer/2 + _sizeNearest/2) * 1.1; _airPlayerDist = _player distance _nearest; _firstSafe = true; if (_airPlayerDist < _minDistDirect) then {_firstSafe = false;}; _playerPosSafe = getPosATL _player; while {_nearest == donn_GHL_nearest && donn_GHL_nearestFound} do { if (_airPlayerDist < _minDistDirect) then { if (_isAir && _firstSafe) then { _playerNowPos = getPosATL _player; _speedPlayer = speed _player; _hTp = 30; if (_speedPlayer <= 80) then {_hTp = 25;}; if (_speedPlayer <= 65) then {_hTp = 20;}; if (_speedPlayer <= 55) then {_hTp = 15;}; if (_speedPlayer <= 45) then {_hTp = 10;}; if (_speedPlayer <= 35) then {_hTp = 5;}; if (_speedPlayer <= 25) then {_hTp = 3;}; if (_speedPlayer <= 15) then {_hTp = 1;}; _player setPosATL [_playerNowPos select 0, _playerNowPos select 1, (_playerNowPos select 2) + _hTp]; } else { _speedPlayer = speed _player; _retarder = (donn_GHL_maxSpeed/(_speedPlayer + 1)) min 1; _velP = velocity _player; _player setVelocity [(_velP select 0) * _retarder, (_velP select 1) * _retarder, (_velP select 2) * _retarder]; _nearestPosNow = getPosATL _nearest; _newPosMoveTo = [ ((_nearestPosNow select 0) + ((_playerPosSafe select 0) - (_nearestPosNow select 0)) * 1.05), ((_nearestPosNow select 1) + ((_playerPosSafe select 1) - (_nearestPosNow select 1)) * 1.05), 0.1 ]; _player setPosATL _newPosMoveTo; _playerPosSafe = _newPosMoveTo; }; if (!donn_NHC_horn_alert) then { donn_NHC_horn_alert = true; [] spawn { systemChat 'No no no! (-)_(-)'; sleep 3; donn_NHC_horn_alert = false; }; }; } else { _firstSafe = true; _playerPosSafe = getPosATL _player; }; sleep 0.001; _airPlayerDist = _player distance _nearest; }; }; };
  11. Like
    Donnovan got a reaction from Linux in Dramatic Suicide Script   
    I like to say thankyou to Grafzahl for the Suicide Script.
     
    I made is happens faster, and more dramatic.
     
    Aditional info:
     
    - Player scream sound is in-world and can be heard by other players and zombies.
    - The gun shot sound, for the player, is the normal gun *ploc* and a personal dramatic gun shot that is not heard in-world. The others just listem the abitual gun *ploc*.
     
    https://www.youtube.com/watch?v=PkoWgPlTDWg
  12. Like
    Donnovan got a reaction from TNT in [release] No Land X Air, Air X Air Crash!   
    We found some major problems when the person have low FPS like 15 or 20, and problems if the person disconnects during the Kamikaze process.
     
    I'm trying to fix that.
  13. Like
    Donnovan got a reaction from TNT in [release] No Land X Air, Air X Air Crash!   
    If you like my work, please consider a donation.

    $USD

    $EURO

    ABOUT
     
    Heli god mode works great againt weapons, but its leaked because a car, another heli, or even a bike, just need to touch it to make great damage. This script protect locked helis from contact damage from another vehicles, making god mode complete.
     
    INSTALLATION

    Put the script bellow in a file and name it nohelicrash.sqf. Put this file at the root of your mission folder, or mission PBO, and exec it on init.sqf with the command: if (hasInterface) then {[] execVM "nohelicrash.sqf";};
     
    THE SCRIPT:

    //Nohcrash donn_NHC_horn_alert = false; donn_GHL_helis = [ 'CH53_DZE', 'MH6J_DZ', 'AH6X_DZ', 'UH1H_DZE', 'Mi17_DZE', 'Mi17_Civilian_DZ', 'UH60M_EP1_DZE', 'MV22_DZ', 'CH_47F_EP1_DZE', 'AN2_DZ' ]; donn_vehCenter = { _vehicle = _this; _vehCenter = getPosATL _vehicle; _vehCenter }; donn_GHL_maxSpeed = 35; [] spawn { _fpsNow = diag_fps; while {true} do { _fpsNow = round ((_fpsNow * 2 + diag_fps)/3); if (_fpsNow > 60) then {donn_GHL_maxSpeed = 70;}; if (_fpsNow <= 60) then {donn_GHL_maxSpeed = 60;}; if (_fpsNow <= 40) then {donn_GHL_maxSpeed = 50;}; if (_fpsNow <= 30) then {donn_GHL_maxSpeed = 40;}; if (_fpsNow <= 20) then {donn_GHL_maxSpeed = 35;}; uiSleep 2; }; }; donn_GHL_ejectKamiTry = { private ['_car','_ejecterPos','_nearAir','_nearAirAll','_canbuild','_carCrewCount']; _car = _this; if (speed _car > 2) then { _canbuild = canbuild; _nearAirAll = nearestObjects [_car, donn_GHL_helis, 120]; _nearAir = []; { if (_canbuild) then { if (alive _x && Locked _x && !(isEngineOn _x)) then { _nearAir = _nearAir + [_x];}; } else { if (alive _x && !(isEngineOn _x)) then {_nearAir = _nearAir + [_x];}; }; } forEach _nearAirAll; { [_car, _x] spawn { private ['_minDistance']; _car = _this select 0; _heli = _this select 1; _sizeCar = sizeOf (typeOf _car); _sizeHeli = sizeOf (typeOf _heli); _minDistance = (_sizeHeli/2 + _sizeCar/2) * 1.1; _isAir = _car isKindOF "Air"; if (_isAir) then { while {((getPosATL _car) select 2) > 1 && alive _car && (isNull (driver _car))} do { if ((_car distance _heli) < _minDistance) then { _carNowPos = getPosATL _car; _car setPosATL [_carNowPos select 0, _carNowPos select 1, (_carNowPos select 2) + 25]; }; sleep 0.001; }; } else { while {(speed _car) > 1 && alive _car && (isNull (driver _car))} do { if ((_car distance _heli) < _minDistance && ((getPosASL _car) select 2) >= (((getPosASL _heli) select 2)-1)) then { _car engineOn false; _car setVelocity [0,0,0]; }; sleep 0.001; }; }; }; } forEach _nearAir; }; }; donn_GHL_nearestFound = false; [] spawn { while {true} do { donn_GHL_playerVeh = vehicle player; if (donn_GHL_playerVeh != player) then { if (driver donn_GHL_playerVeh == player) then { while {driver donn_GHL_playerVeh == player} do { _nearAir = nearestObjects [donn_GHL_playerVeh, donn_GHL_helis, 50]; _nearestFound = false; if (canbuild) then { { if (alive _x && Locked _x && !(isEngineOn _x)) then { if (((getPosASL donn_GHL_playerVeh) select 2) >= (((getPosASL _x) select 2)-1)) then { donn_GHL_nearest = _x; _nearestFound = true; }; }; if (_nearestFound) exitWith {}; } forEach _nearAir; } else { { if (alive _x && !(isEngineOn _x)) then { if (((getPosASL donn_GHL_playerVeh) select 2) >= (((getPosASL _x) select 2)-1)) then { donn_GHL_nearest = _x; _nearestFound = true; }; }; if (_nearestFound) exitWith {}; } forEach _nearAir; }; donn_GHL_nearestFound = _nearestFound; sleep 0.001; }; donn_GHL_playerVeh call donn_GHL_ejectKamiTry; donn_GHL_nearestFound = false; }; }; sleep 0.5; }; }; [] spawn { while {true} do { waitUntil {donn_GHL_nearestFound}; _player = donn_GHL_playerVeh; _nearest = donn_GHL_nearest; _sizePlayer = sizeOf (typeOf _player); _sizeNearest = sizeOf (typeOf _nearest); _isAir = _player isKindOf "Air"; _minDistDirect = (_sizePlayer/2 + _sizeNearest/2) * 1.1; _airPlayerDist = _player distance _nearest; _firstSafe = true; if (_airPlayerDist < _minDistDirect) then {_firstSafe = false;}; _playerPosSafe = getPosATL _player; while {_nearest == donn_GHL_nearest && donn_GHL_nearestFound} do { if (_airPlayerDist < _minDistDirect) then { if (_isAir && _firstSafe) then { _playerNowPos = getPosATL _player; _speedPlayer = speed _player; _hTp = 30; if (_speedPlayer <= 80) then {_hTp = 25;}; if (_speedPlayer <= 65) then {_hTp = 20;}; if (_speedPlayer <= 55) then {_hTp = 15;}; if (_speedPlayer <= 45) then {_hTp = 10;}; if (_speedPlayer <= 35) then {_hTp = 5;}; if (_speedPlayer <= 25) then {_hTp = 3;}; if (_speedPlayer <= 15) then {_hTp = 1;}; _player setPosATL [_playerNowPos select 0, _playerNowPos select 1, (_playerNowPos select 2) + _hTp]; } else { _speedPlayer = speed _player; _retarder = (donn_GHL_maxSpeed/(_speedPlayer + 1)) min 1; _velP = velocity _player; _player setVelocity [(_velP select 0) * _retarder, (_velP select 1) * _retarder, (_velP select 2) * _retarder]; _nearestPosNow = getPosATL _nearest; _newPosMoveTo = [ ((_nearestPosNow select 0) + ((_playerPosSafe select 0) - (_nearestPosNow select 0)) * 1.05), ((_nearestPosNow select 1) + ((_playerPosSafe select 1) - (_nearestPosNow select 1)) * 1.05), 0.1 ]; _player setPosATL _newPosMoveTo; _playerPosSafe = _newPosMoveTo; }; if (!donn_NHC_horn_alert) then { donn_NHC_horn_alert = true; [] spawn { systemChat 'No no no! (-)_(-)'; sleep 3; donn_NHC_horn_alert = false; }; }; } else { _firstSafe = true; _playerPosSafe = getPosATL _player; }; sleep 0.001; _airPlayerDist = _player distance _nearest; }; }; };
  14. Like
    Donnovan reacted to Ree in [release] No Land X Air, Air X Air Crash!   
    Any update on this Donnovan?
  15. Like
    Donnovan reacted to david in Working Dayz Epoch Headless Client for Zed Spawn and FSM   
    It seems the HC disconnects and reconnects every few minutes with no explanation in the rpt logs.

    After a quick google search I discovered that others were having this issue as well. Does anyone here have any insights on this behavior?
  16. Like
    Donnovan reacted to scender in Headless Client kicked to lobby repeatedly 1.0.4.1   
    Hello there!
     
    I am having some issues ever since upgrading the server to 1.0.4.1
     
    We run a headless client to offload the AI on our server, and after updating it seems to be getting kicked to lobby repeatedly. This only happens for our HeadlessClient, or any dedicated client we have connect to the server. I should add that the following lines are the only indication of these disconnects, there is no BE kick or connection loss.
     
    12:19:01 "DISCONNECT: HeadlessClient (XXXXXXXX) Object: HeadlessClient, _characterID: 0 at loc [13612.1,3064.58,0.00120544]" 12:19:01 "ERROR: Cannot Sync Character HeadlessClient as no characterID" It appears that the HC is not fully loading into the server, so gets kicked to lobby. The problem with this is every time the HC reconnects after being kicked, the AI spawns are ran again and it degrades server performance immensely as the HC offloads ownership to the server.   I have applied a CA folder fix posted on the git, as well as removed the folder. Doing both of those allowed regular players to connect and load in fine, just not our HC. The HC can be seen in game when he loads in to spawn the AI, he just doesn't stick around...   Still trying many things like vanilla server install with HC as the only addition, I will report my findings if any.   Any help or guidance would be much appreciated, as I have exhausted much resources trying to fix this. Thank you!
  17. Like
    Donnovan reacted to scender in Headless Client kicked to lobby repeatedly 1.0.4.1   
    Fixed the problem! Thanks to this for the hint: https://github.com/vbawol/DayZ-Epoch/commit/f482bf2677fd7a2516a67343a732e7239331c1aa
     
    I guess I found the fix too late, and now 1.0.4.2 is out ^^  Thanks anyways folks
  18. Like
    Donnovan reacted to Raoul in [Release] Conrads Refugee Camp   
    beautifull
  19. Like
    Donnovan reacted to MattL in [RELEASE] Recover Skin From Dead Players or AI   
    You make it sound like that's not a huge difference. 
  20. Like
    Donnovan reacted to MattL in [RELEASE] Recover Skin From Dead Players or AI   
    see 
     
    Of course, that only happens if you add it to the ai_death.sqf and make necessary changes where needed. the original script applies the skin to the inventory of the player on death.
  21. Like
    Donnovan reacted to NGHD in [RELEASE] Recover Skin From Dead Players or AI   
    What he means is that say if you kill an ai the clothing they're wearing will be put onto ther body so when you go loot there gear ill be in the gear of the body
  22. Like
    Donnovan reacted to MattL in [RELEASE] Recover Skin From Dead Players or AI   
    As the topic suggests this allows a player to recover the skin from the dead body. On death, it activates the script which then checks for the players model and adds the clothing parcel associated with it to the inventory, assuming the player has space. If he doesn't, it will then add the item to the players backpack. 
     
    There is an install read me in the .zip file, if anyone has any questions feel free to ask and I will do my best to help you. 
     
    download here 
     
    If you like the script, please consider donating below.
  23. Like
    Donnovan reacted to Mikeeeyy in How to set object texture back to default   
    It can't be done.
  24. Like
    Donnovan reacted to Mikeeeyy in How to set object texture back to default   
    If I do this:
    _vehicle setObjectTexture [0, "#(rgb,8,8,3)color(1,0,0,1)"]; It makes the vehicle red, but how would I go about getting it back to it's default texture? If that's even possible.
  25. Like
    Donnovan reacted to Zupa in How to set object texture back to default   
    Camo1?
     
    That seems to be the hiddenselection in the following example.
    class Lada2: Lada_base { scope = 2; hiddenSelections[] = {"Camo1"}; displayname = "UAZ (Red)"; accuracy = 1000; hiddenSelectionsTextures[] = {"\ca\wheeled2\Lada\Data\Lada_red_CO.paa"}; rarityUrban = 0.4; class Upgrades { ItemORP[] = {"Lada2_DZE1",{},{{"ItemORP",1},{"PartEngine",2}}}; }; }; Maybe try my method, to take hiddenSelectionsTextures instead of hiddenSelections
     
    Also based on bohemia documentation: which seems abit weird imo cus it 
     
     
    BUt looking in the config then for example:
    class Lada1_TK_CIV_EP1: Lada_base { expansion = 1; scope = 2; side = 3; faction = "BIS_TK_CIV"; hiddenSelections[] = {"Camo1","Camo2"}; hiddenSelectionsTextures[] = {"\CA\wheeled_E\Lada\Data\Lada_ECIV1_CO.paa","\Ca\wheeled_E\Lada\Data\Lada_glass_ECIV1_CA.paa"}; displayname = "Lada"; accuracy = 1000; rarityUrban = 0.4; crew = ""; typicalCargo[] = {}; class Upgrades { ItemORP[] = {"Lada1_TK_CIV_EP1_DZE1",{},{{"ItemORP",1},{"PartEngine",2}}}; }; }; There are the samme ammount as hiddenSelection and HiddenSelectionTEXTURES.  So thats why i think their documentation is kinda weird on that part. Since the texture PAA's are in the other array
     
    EDIT Extra,
     
    Does the documentation maybe means that the call has to be like this:
    _vehicle setObjectTexture ["Camo1", "\CA\wheeled_E\Lada\Data\Lada_ECIV1_CO.paa"]; Which seems highly unlikely, since it needs to be a number. So i think Camo1 is just like something to fill up the array so the arrays of hiddensel and hiddenselTexture have the same lengthed
     
    The documentation link btw:
     
    https://community.bistudio.com/wiki/setObjectTexture
×
×
  • Create New...