second_coming

Donator
  • Content count

    1530
  • Donations

    5.00 EUR 
  • Joined

  • Last visited

  • Days Won

    18

Everything posted by second_coming

  1. UPDATE EDIT: Seeing as Occupation hasn't been updated in a long while, I've compiled a few of the fixes found in this thread and added a few modifications of my own to bring it up to date. The fixes are: Fixed OccupyVehicles spawning out of control Fixed OccupySea spawning out of control Tidied up the config Corrected a few typos Corrected a few variable names The modifications are: Static Heli Crashes postions Heli Crash guards Survivor and Bandit vehicles are now separate Added Random Spawn AI Custom Loadout Enable/disable naming the Random AI targeted player Enable/disable Loot Crate and Heli Crash guards Fixed Loot Crates and Heli Crashes spawning on the edge of Chernarus map Ignore AI count for Static spawns Ignore nearby players for Static spawns Version number updated to reflect changes Download link: Exile Occupation v71 Please note, I take no credit as the author of this addon, I have simply added fixes found within this thread, along with my own modifications. - @kuplion Original Post WTF is this? A roaming AI spawner and monitor to be used in conjunction with DMS and will not work without it: It has been expanded since initial release to include several sections: AI spawning in towns and villages across the map (can be turned on/off in the config.sqf) The ability to have survivor AI and bandit AI in towns and villages who will fight each other (survivor AI are friendly to players) AI spawning around military buildings (can be turned on/off in the config.sqf) Roaming land vehicles (can be turned on/off in the config.sqf) Roaming air vehicles (can be turned on/off in the config.sqf) Random spawning loot crates with AI guards (can be turned on/off in the config.sqf) Dayz style helicrashes (can be turned on/off in the config.sqf) A public bus service (or helicopter) which travels between trader zones and will stop to pickup players If you use a helicopter and experience problems with the heli crashing into objects at your traders you can place helipads and it will use those as the landing areas. FastNights, the ability to speed up ingame time during dark times to reduce the amount of night per server cycle. Traders, the ability to have dynamic spawning traders (with or without safezones) Process monitoring to help with optimising your server setup The ability to have custom log files (if you use infiSTAR) Random spawning AI that hunt players added in V58 (work in progress) AI spawns in randomly selected villages, towns and cities to a maximum amount set in the config (found in config.sqf). The maximum amount also counts the amount of AI spawned from other DMS controlled AI and will also not spawn if the server FPS falls below a limit set in config.sqf https://github.com/secondcoming/a3_exile_occupation/blob/development/source/a3_exile_occupation/config.sqf To specify which land vehicles and air vehicles you want to use edit the 2 arrays: VehicleClassToUse = ["Exile_Car_LandRover_Green","Exile_Car_UAZ_Open_Green","Exile_Car_Offroad_Armed_Guerilla01"]; HeliClassToUse = ["Exile_Chopper_Huey_Armed_Green","Exile_Chopper_Hellcat_Green","Exile_Chopper_Mohawk_FIA"]; To allow players to capture AI vehicles you need to be running the latest version of DMS: https://github.com/Defent/DMS_Exile/tree/master If you want to stop AI vehicles exploding once the AI have been killed, in the config.sqf in DMS look for: DMS_AI_destroyVehicleChance = 0; Set it to that and players can capture them How AI scaling works: For every player on the server over 10 players it reduces the maximum amount of AI allowed so that as more players connect fewer roaming AI are spawned to stop the server grinding to a halt. That way on quieter servers you get more AI and on busy servers you get less. How the spawning works: The script will detect where your spawn points and trader zones are based on map markers and where player bases are and won't spawn AI within 500m of any of them. The monitor runs every 5 minutes as part of the Exile threading system and will not spawn additional AI in a location if they already exist. KNOWN ISSUES: PLEASE ENSURE IF YOU DOWNLOAD FROM GITHUB THAT THE FOLDER YOU MAKE INTO A PBO IS CALLED 'a3_exile_occupation' ANY OTHER NAME AND IT WILL NOT WORK. Where to get Occupation from: Source: https://github.com/secondcoming/a3_exile_occupation/tree/development/source/a3_exile_occupation If you use the github source to create the pbo, ensure that the folder name is a3_exile_occupation (not a3_exile_occupation-development) Pre packaged pbo: https://github.com/secondcoming/a3_exile_occupation/tree/development/pre-packaged%20pbo To install place the pbo into the @ExileServer/addons folder I'M HAVING PROBLEMS !!11!!!! If you are having issues with parts of Occupation not working try the following: Use the latest version of DMS Use the latest version of Occupation Try both using the default settings (ie. don't change the config to rule out any typos you may be introducing) If that works then you have typos in your config files (for DMS or Occupation). If that doesn't work then post a full server RPT to pastebin and put the link here.
  2. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    that's down to not re-pboing the file correctly after editing the config. Re-download the original and try it again.
  3. second_coming

    day/night cycle

    if(isServer) then { fnc_MultiplierCheck = " if (daytime > 18 || daytime < 6) then { _timeMultiplier = 10; } else { _timeMultiplier = 0; }; if(timeMultiplier != _timeMultiplier) then { setTimeMultiplier _timeMultiplier; }; "; fnc_MultiplierChecker = compile fnc_MultiplierCheck; [60, fnc_MultiplierChecker, [], true] call ExileServer_system_thread_addTask; }; I've not tested the above, but it should work if you put it in your init.sqf and doesn't add unnecessary threads to the server. It should run every 60 seconds.
  4. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    don't use the code I posted above as it also affects the spawn position of the crates and helicrashes. I have an update to put up but my internet is off at home at the moment as the phone line outside my house snapped on friday. In the mean time you could try this test version if you want to (this is a test version so not on github yet): https://www.dropbox.com/s/usiukgzujd8z9l0/a3_exile_occupation.pbo?dl=0 This version is based on Kuplions updated version with an additional process that checks to make sure the roaming AI only spawn in range of players and despawn when out of range, this should ensure that the roaming AI are concentrated around players. I have also included some changes required to make the AI compatible with VCOMAI.
  5. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    I've been testing the change and it's not really suitable as it makes the helicrashes and loot crates only spawn near players. I'm testing a further change at the moment which only makes the other modules spawn near players.
  6. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    You can try this if you want to see if it works: add a variable to config.sqf: SC_maxDistanceToPlayer = 1250; // Maximum distance in metres to the nearest player and change fnc_isSafePos.sqf in a3_exile_occupation\scripts\functions to: private _position = _this select 0; private _validspot = true; // is position in range of a player? if([_position, SC_maxDistanceToPlayer] call ExileClient_util_world_isAlivePlayerInRange) then { _validspot = true; } else { _validspot = false; }; // Check if position is near a blacklisted area { private _blacklistPos = _x select 0; private _blacklistRadius = _x select 1; private _blacklistMap = _x select 2; if(isNil "_blacklistPos" OR isNil "_blacklistRadius" OR isNil "_blacklistMap") exitWith { _logDetail = format["[OCCUPATION]:: Invalid blacklist position supplied check SC_blackListedAreas in your config.sqf"]; [_logDetail] call SC_fnc_log; }; if (worldName == _blacklistMap) then { _distance = _position distance2D _blacklistPos; if(_distance < _blacklistRadius) then { _validspot = false; diag_log format["[OCCUPATION]:: %1 is %2m from blacklisted position %3 (blacklisted)",_position,_distance,_blacklistPos]; }; }; }forEach SC_blackListedAreas; if(_validspot) then { // is position too close to a player? if([_position, SC_minDistanceToPlayer] call ExileClient_util_world_isAlivePlayerInRange) exitwith { _validspot = false; }; //Check if near player territory private _nearBase = (nearestObjects [_position,["Exile_Construction_Flag_Static"],SC_minDistanceToTerritory]) select 0; if (!isNil "_nearBase") then { _validspot = false; }; // is position in range of a territory? if([_position, SC_minDistanceToTerritory] call ExileClient_util_world_isTerritoryInRange) exitwith { _validspot = false; }; // is position in range of a trader zone? if([_position, SC_minDistanceToTraders] call ExileClient_util_world_isTraderZoneInRange) exitwith { _validspot = false; }; // is position in range of a spawn zone? if([_position, SC_minDistanceToSpawnZones] call ExileClient_util_world_isSpawnZoneInRange) exitwith { _validspot = false; }; // is position in range of a map marker? { _markerPos = getMarkerPos _x; if ((_markerPos distance2D _position) < 350) exitWith { _validspot = false; }; } forEach allMapMarkers; }; _validspot Pastebin code in case the forum buggers it up: https://pastebin.com/raw/MuhZ34Yy
  7. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    Actually having looked at the code, it could be relatively simple to do most of the change (only spawn in range of a player). Long term it would probably also need a monitor adding to despawn AI when no players are within a decent range (it would have to be probably 1500m as you can snipe that far). I'm testing it on my own server at the moment, if it works out I'll push the change to github.
  8. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    It is something that could be done, but it would involve a major change as you would have to monitor whether the AI were still in range of players and despawn them when no players are in range. Otherwise when players are travelling round the map in vehicles, AI would be spawning and despawning all the time. I'm not actively developing Occupation at the moment (I have only just reinstalled Arma in the last month after being away for over 2 years), if I start up again I'll look at adding it as an option. If not anyone else is free to make the changes and push them to github.
  9. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    It's not down to the spawn distance, you need to adjust the SC_maxAIcount in config.sqf in Occupation to increase the total amount. You'll need to see how your server handles an increased amount, but if you have a high population server then I wouldn't push it too far as it will make the server laggy.
  10. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    200 AI would be spread over the whole system, and DMS. To have more of the AI spawning in towns you would need to reduce the number spawning elsewhere in the system.
  11. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    if you have the survivors set to spawn then there is a small chance they will, they don't spawn everywhere though
  12. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    It's your config.sqf file where the error is not the trader1.sqf Check for typos, if you can't find it revert back to the default config.sqf and start again
  13. second_coming

    [Guide] Custom Vehicle Spawn (Air/Ground/Water)

    I think it is probably from copying code directly from these forums, just noticed the same in another thread. People need to use something like pastebin instead of pasting code on here.
  14. second_coming

    Crash Loot

    there appears to be some weird ascii encoding in the white space around the class name in the last section if you cut and paste it for anyone trying it. (around the 'class Loot: ExileAbstractAction' bit)
  15. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    You are asking the script to find a building within 5m of the point you are selecting. Increase it to at least 50-100m to have a chance of it picking a safe position to spawn. As for the other bits not working, you might have a typo elsewhere, or have hit the AI limit.
  16. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    Looking at your config file I think you're running an older version. Update to the latest version and give it another shot: https://github.com/kuplion/a3_exile_occupation
  17. second_coming

    Roaming Trader Script

    I've done that now I don't check here too often
  18. second_coming

    ExilePHPStats

    I have knocked together a basic admin tool for in game admins to use to help them deal with in game problems like catching dupers etc. https://github.com/secondcoming/ExilePHPStats To display your server, edit the file 'config.php' in the 'includes' folder <?php // array of servers ('hostname or ip address|database name|database username|database password|server name|server port') $ServerList = array('127.0.0.1|exile_altis|dbuser|dbpass|altis','127.0.0.1|exile_chernarus|dbuser|dbpass|chernarus|3306'); ?>
  19. second_coming

    Custom Functions Question

    Hi Chris, quick question regarding the use of CUSTOM_FUNCTIONS.hpp Are commands run from the custom functions executed on the server or on the client? I'm trying to add an option to spawn in a group of AI using DMS at a location and then make them head towards to position of the admin who spawned them: class custom1 { type = 2; // targets selected player (_this) name = "Spawn AI near Admin"; code = "_pos = getpos _this;_spawnPos = [_pos,250,350,50,0,0.5,0] call BIS_fnc_findSafePos;_group = [[_spawnPos select 0, _spawnPos select 1,0],6,'difficult','random','bandit'] call DMS_fnc_SpawnAIGroup;[_group, _pos] call bis_fnc_taskDefend;_group setBehaviour 'STEALTH';_group setCombatMode 'YELLOW';systemChat format['Spawn AI -> selected player: %1',name _this];"; }; The menu option shows up fine in the infiSTAR admin menu and executes (I get the systemchat message) but nothing spawns. So I was wondering is this command run client side? (which would explain why the AI is not spawning)
  20. second_coming

    Any good?

    I never mentioned memory usage. You can say it only uses 2 cores until you are blue in the face. Launch a server on a well specced server with a decent number of players connected (over 20) and every time you reduce the number of cores available to armaserver.exe the fps and cps will drop.
  21. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    Occupation uses the random difficulty setting from DMS, you need to change the difficulty setting in DMS config to alter it: https://github.com/Defent/DMS_Exile/blob/master/%40ExileServer/addons/a3_dms/config.sqf#L437
  22. second_coming

    [Release] Exile Occupation (Roaming AI) & More - updated 2019-01-23

    Something you are changing it is causing it to break, I suggest you go back to the vanilla settings and change things one at a time until you find what's breaking it.