Jump to content

mons00n

Member
  • Content Count

    154
  • Joined

  • Last visited

  • Medals

Everything posted by mons00n

  1. I'm trying to implement a simple script which moves the "respawn_west" marker along with the player's squad. If the leader dies then I want to the maker to follow the next guy in the squad, until everyone is dead, then reset the marker back to the insertion point. The marker follows units as I would expect, but I cannot get it to reset position once I die (on a dedicated). Any ideas? Thanks! if !(isServer) exitWith{}; _xoffset = -10; _yoffset = 10; _checkStatus = { _unit = _this select 0; _return = False; if(alive _unit) then{ _return = True; }; _return }; while{true} do{ //gather all playable units _allUnits = []; if(isMultiplayer) then{ _allUnits = playableUnits; } else{ _allUnits = switchableUnits; }; //cycle through units, check if they are alive & not unco { _gtg = [_x] call _checkStatus; while{ _gtg } do{ "respawn_west" setMarkerPos [(getPos _x select 0) + _xoffset, (getPos _x select 1) + _yoffset]; sleep 0.5; _gtg = [_x] call _checkStatus; }; }forEach _allUnits; //all units are dead, reset respawn pos _nUnco = 0; { _gtg = [_x] call _checkStatus; if(!_gtg) then{ _nUnco = _nUnco + 1; }; }forEach _allUnits; if( _nUnco == (count _allUnits) ) then{ "respawn_west" setMarkerPos [(getMarkerPos "insertionpoint" select 0) + _xoffset, (getMarkerPos "insertionpoint" select 1) + _yoffset]; }; sleep 1; };
  2. err maybe, I'm not 100% familiar with how the grouping system works by default. Are you suggesting just have the marker follow the leader of the group and screw the alive check? I mainly did it the above way so I could add in additional checks such as captive (from our revive script) and such.
  3. But my script is only running server side for a single unit, so it will only be updating the position as frequently as I ask (right now 0.5s). The idea is to follow the squad lead, if the squad lead goes down follow the next guy, etc until everyone is dead. At that point I want to reset respawn_west back to the insertion zone, but for whatever reason that is not happening.
  4. mons00n

    Middle East Conflict mod

    I think that's just an issue with the PW6 database not being up to date and not the mod itself.
  5. mons00n

    Middle East Conflict mod

    Hey Drongo69, Just got the update and am still having issues with using your units on dedicated servers. I just made a simple mission with one Nato blufor + ME Irregular Opfor Rifleman and am now getting: I have tried this on both a windows & linux dedicated environment. The only mods I have loaded are: @asdg_jr @cup @mec @rds @rds_staticw_cag @rds_tank all of which are up to date via PW6. I know @cup is working because I can use cup units and weaponry, but as soon as I put down an MEC unit I end up with above error or something similar. I can play locally, or even host locally, but any dedicated environment I've tried gives the above. Here's the small test mission I am using. Thanks for all of your hard work!
  6. Hey massi, I'm having some issues with mods (particularly MEC) requiring "@mas_weapons_ak". I looked through their config files and the only requirement is @mas_weapons, is this an error on their end, or are their dependencies outdated? If it's the latter could you make this file available as a band-aid until the mod creators can update their mods? Or would a simple copy, paste, and rename work? Thanks! edit: I think this is an issue with this mod on linux dedicated servers, see my post here referring to an issue when using USSOCOM DEVGRU.
  7. mons00n

    Middle East Conflict mod

    I'm having some issues with this mod on dedicated servers. Many of the factions apparently have a dependency for "mas_weapons"ak", but it doesn't look like that naming convention is present in the recent version of Massi's weapons mod. Any time I place down a Syrian infantry for example, the server will not load the mission citing: There is also a very annoying script error related to the Irregular factions: I assume it's related to the randomization of clothing. Everything spawns fine, but that error pops up constantly.
  8. In other news I attempted to auto-detect the headless client and have had very little luck =/ I created a custom function and set postInit=1 via: class HeadlessClient { tag = "HeadlessClient"; class HeadlessClient_functions { file = "HC"; class headlessCheck { postInit = 1; }; }; }; and the file "HC\fn_headlessCheck.sqf" looks like so: if (!hasInterface && !isServer) then{ HeadlessClientPresent = True; publicVariable "HeadlessClientPresent"; }; now inside of init.sqf I have: waitUntil{!(isNil "BIS_fnc_init")}; if(!(isNil "HeadlessClientPresent")) then{ if(!hasInterface && !isServer) then{ [] spawn _spawnUnits; }; } else{ if(isServer) then{ [] spawn _spawnUnits; }; }; However, the units always spawn on the server which results in double spawning (1xServer + 1xHC). When you are dropped into the game HeadlessClientPresent is indeed set to True, but when init.sqf is executed it has yet to be defined on all clients/servers except for the HC. According to the wiki's article on initialization order all functions with postInit=1 should be executed before BIS_fnc_init is defined - this may indeed be happening, but why is publicVariable not broadcasting HeadlessClientPresent until after init.sqf is executed? Or, is this a case of the HC loading the mission after the other clients?
  9. I think I found a bug in the linux dedicated server and how it handles Headless Clients with the "kickDuplicate" config parameter. Create a simple mission with 1 playable blufor unit, and one headless client (virtual entity). Now set kickDuplicate = 1; in your server's config file. Join the mission, launch the HC and join. When you attempt to start the mission you will be booted back to the server select screen (I'm launching the HC from the same installation as I'm joining from). If you take the exact same configuration file and try it on a Windows dedicated server, this does not happen. As a temporary workaround, setting kickDuplicate = 0; seems to do the trick. edit: it seems to only work the first time, after launching the mission a second time (or a different HC mission) it boots me back to the server select screen. A server restart allows me to give it another go. edit2: it also only seems to work if I already have the mission file downloaded. If downloading the mission it boots me to the server menu immediately after the download completes. edit3: I get the same behavior on a Windows dedicated with kickDuplicate=1;, not sure exactly what is going on here as there is no related error messages.
  10. mons00n

    [SP / MP] TVT16 Cachino Royale

    UPDATED! beta 2 improvements Added ammo crates outside of the portable in each FOB DAC zones are now split up so that they no longer all come running when attacked Added an option to enable hostile AI reinforcements when each cache is blown
  11. mons00n

    Norwegian Units

    it's a case sensitive issue. for anyone else having this problem download the Arma2 linux server and compile tolower.c; use that executable to make all of the names lowercase!
  12. mons00n

    Norwegian Units

    has anyone had luck getting this to work on a linux dedicated server? I had to rename the addons folder "AddOns"-->"addons", and once that happens I end up with path issues: Cannot open file '/home/bb/A3DS/arma3/@norwegian_units\addons\nor_randomisation' this problem does not seem to be present in windows since the file system is not case sensitive. Thanks!
  13. the vanilla charges don't have an owner either unfortunatelly, which is why I had to simply record the nearest player at the time of placement. good to hear! you can disable the score menu if you'd like via commenting out the following in RCPinit.sqf: if(!isDedicated) then{ waitUntil {!(isNull player)}; _null = [] execVM "RCP\RCPaddactions.sqf"; }; let me know if I can be of further assistance!
  14. Charges are tricky because they don't really tell who detonated them. You'll have to change the classname in three places actually: 1) in RCPfuncs.sqf where I add the EventHandler, this allows the cache to actually be destroyed: if(_this select 4 == "SatchelCharge_Remote_Ammo") then{ if(_this select 2 > 1) then{ [[_this select 0],"killcache"] call BIS_fnc_MP; }; _return = _this select 4; if you're having trouble identifying the name of your charge, you can add a line before the above if statement to experiment in single player: player sidechat format["%1",_this select 4]; and upon detonation it should spam some things at you. 2) Next is the trigger condition for each cache in RCPfuncs.sqf : _trig setTriggerStatements["what = getpos thistrigger nearobjects [""SatchelCharge_Remote_Ammo"",10]; count what > 0;", format["_null = [%1,thislist] execVM ""RCP\nearestplayer.sqf"";",_unit], ""]; 3) Lastly, to properly account for scoring you will need to modify nearestplayer.sqf. This script is executed when the above mentioned trigger is activated and records the nearest player to the cache at the time of planting. The local function you'll need to modify is: _getNearestSatchel = { _satchel = getPos _object nearObjects ["SatchelCharge_Remote_Ammo",10]; (_satchel select 0) }; Let me know how it goes!
  15. Do you just want the team to destroy all caches in order to win? If so all you need to do is modify the REQUIREDCACHES variable in RCP\RCPinit.sqf to look like so: REQUIREDCACHES = NCACHES; If you want to just have it as an objective and not actually end the mission comment out line 73 of RCP\RCPinit.sqf I believe (_null = [] execVM "RCP\victorycondition.sqf"). To get rid of the "Show Score" menu, comment out line 77-80 of RCP\RCPinit.sqf. To get rid of the hint when a cache is blown comment out lines 38-39 in RCP\RCPfuncs.sqf. Let me know if that's what you are looking for!
  16. You are correct, but the empty array is for the simplest execution. In the beginning of RCP\RCPinit.sqf I detail how to pass customizations parameters: // USAGE: // Place a marker called "RCP" on your target town. // add the following line to your mission's init.sqf: // _null = [] execVM "RCP\RCPinit.sqf"; // // OPTIONAL parameters: // NCACHES - number of caches to place // CACHECONCENTRATION - how closely spaced are these caches? // MARKER_R - how large should the cache markers be? // RANGE - how far from the center of town to search for buildings? // // EXAMPLE call with optional parameters: // _null = [5,50,25] execVM "RCP\RCPinit.sqf"; // // You do not need to pass all optional parameters, but you must pass them in order. // For example, if you want to change the marker size via MARKER_R, you must also // pass NCACHES & CACHECONCENTRATION as in the above example. // // The default values can also be edited below. which are read in via: _npassed = count _this; if(_npassed > 0) then{NCACHES = _this select 0;}; if(_npassed > 1) then{_CACHECONCENTRATION = _this select 1;}; if(_npassed > 2) then{_MARKER_R = _this select 2;}; if(_npassed > 3) then{_RANGE = _this select 3;}; I agree, but since it is used elsewhere in the module I left it as a global var. If you take a quick peek at my sample mission Cachino Royale I have options for all of the RCP parameters =) Thanks for keeping me on point!
  17. Thanks for the quick replies Iceman & KK, I think I tracked the issue down to an additional waitUntil{} in the init.sqf that was waiting for a variable from the server.
  18. I'm trying to add an action to the player on a dedicated server and can't figure it out. player addAction["TEST",{hint "TESTING";}]; I first tried placing this in the unit's init line...no luck Then tried placing it in the mission's init.sqf after a waitUntil{!isNil player};...no luck Finally I stuck it in initPlayerLocal.sqf...no luck. Am I missing something simple here? Any of these methods works fine in single player (not surprisingly), but when I do this on a dedicated server it shows no sign of even trying. If I open up the debug console and execute the command locally or execVM a script containing that command it works fine, so why isn't it executing via any of the above methods? Thanks!
  19. Hi everyone, I'm working on a mission where I'd like people to respawn with what they had when they died. However, my current script only works occasionally and I can't fully figure out why. My suspicion is that upon death the player sometimes drops his primary weapon, so when the code executes there is no primary weapon to save, therefore the player respawns with no primary weapon. Anyone encountered this before? And is there any way to get around this without invoking the use of damage handlers? Thanks! In my initPlayerLocal.sqf I have the following: _player = _this select 0; waitUntil {!isNull player}; _player addMPEventHandler ["MPKilled",{Null = _this execVM "scripts\respawn.sqf";}]; _player addMPEventHandler ["MPRespawn",{hideBody (_this select 1);}]; and scripts\respawn.sqf looks like this: PUNIFORM = uniform player; PVEST = vest player; PPACK = backpack player; PHEAD = headgear player; MAGS = magazines player; WEAPS = weapons player; PWITEMS = primaryWeaponItems player; SWITEMS = secondaryWeaponItems player; HGITEMS = handgunItems player; PITEMS = items player; APITEMS = assignedItems player; PGOGGLES = goggles player; waitUntil {!alive player}; waitUntil { alive player}; removeAllAssignedItems player; removeAllItems player; removeAllWeapons player; removeVest player; removeUniform player; removeHeadgear player; removeBackpack player; if(PUNIFORM != "") then{player addUniform PUNIFORM;}; if(PVEST != "") then{player addVest PVEST;}; if(PPACK != "") then{player addBackpack PPACK;}; if(PHEAD != "") then{player addHeadgear PHEAD;}; if(PGOGGLES != "") then{player addGoggles PGOGGLES;}; {player addMagazine _x}forEach MAGS; {player addWeapon _x}forEach WEAPS; {player addPrimaryWeaponItem _x}forEach PWITEMS; {player addSecondaryWeaponItem _x}forEach SWITEMS; {player addHandgunItem _x}forEach HGITEMS; {player addItem _x}forEach PITEMS; {player addItem _x; player assignItem _x;}forEach APITEMS;
  20. great point! thanks for the tip. I opted to use the solution below though to remove any chance of failure. After countless suicides on my dedicated server I think I finally have a working script! Thanks so much for the inspiration, here's what I have: in initPlayerLocal.sqf: _null = [] execVM "scripts\respawn_loop.sqf"; _player addMPEventHandler ["MPRespawn",{hideBody (_this select 1);}]; and respawn_loop.sqf: if(isDedicated) exitWith{}; while{true} do{ while{alive player} do{ if ((count (weapons player)) > 0) then{ WEAPS = weapons player; PWITEMS = primaryWeaponItems player; SWITEMS = secondaryWeaponItems player; HGITEMS = handgunItems player; }; sleep 1; }; PUNIFORM = uniform player; PVEST = vest player; PPACK = backpack player; PHEAD = headgear player; MAGS = magazines player; PITEMS = items player; APITEMS = assignedItems player; PGOGGLES = goggles player; waitUntil {!alive player}; waitUntil { alive player}; removeAllAssignedItems player; removeAllItems player; removeAllWeapons player; removeVest player; removeUniform player; removeHeadgear player; removeBackpack player; if(PUNIFORM != "") then{player addUniform PUNIFORM;}; if(PVEST != "") then{player addVest PVEST;}; if(PPACK != "") then{player addBackpack PPACK;}; if(PHEAD != "") then{player addHeadgear PHEAD;}; if(PGOGGLES != "") then{player addGoggles PGOGGLES;}; {player addMagazine _x}forEach MAGS; {player addWeapon _x}forEach WEAPS; {player addPrimaryWeaponItem _x}forEach PWITEMS; {player addSecondaryWeaponItem _x}forEach SWITEMS; {player addHandgunItem _x}forEach HGITEMS; {player addItem _x}forEach PITEMS; {player addItem _x; player assignItem _x;}forEach APITEMS; sleep 1; }; The only problem now is that on each death the player loses 1 mag for each of his weapons. This isn't too big of a deal for guns, but it can be very annoying when dealing with RPGs (the player loses a rocket every death). Is there a way to add a magazine based on the weapon? Otherwise I'd have to build some ridiculous table to weapons and magazines...
  21. Hi everyone, I'm having an issue with my initial spawn. I want my squad to start in an assault boat just off the coast, so at first I put everything in the unit inits: s1 moveindriver myboat; s2 moveincargo myboat; s3 moveincargo myboat; which works fine, until I enable respawn via respawnTemplate. Once I add the following to my description.ext, it all goes to hell and the units all start at the respawn_west marker: respawn = 3; respawndelay = 10; respawndialog = 0; respawnOnStart = 0; respawnTemplates[] = {"MenuPosition"}; I took everything out of the unit's inits and added this to InitPlayerLocal.sqf to see if that would help: _player = _this select 0; _jip = _this select 1; if(!_jip) then{ if (_player == s1) then{_player moveindriver myboat;} else{_player moveincargo myboat;}; }; And I get the same result. Any ideas on what might be causing this or how to get around it? I really like the respawn dialog and would like to keep it, but I also need my squad to start out in the boat. Thanks!
  22. Hrm, the issue seems to be related to when they put Zeus in. See these two threads: http://feedback.arma3.com/view.php?id=18359 http://feedback.arma3.com/view.php?id=14585 it appears as though respawnOnStart=0 is indeed doing it's job, but it still relocates the individual to the respawn_west marker.
  23. Hey Ollem, Love the mod thanks for keeping it up to date. I just enabled LOS (tpwcas_los_enable = 1) in my mission and am getting the following error FYI:http://i.imgur.com/l1nDUzx.png (340 kB)
  24. my god...this script is a lifesaver! I've been struggling with a helicopter extraction via the editor for weeks now
  25. Hi everyone! As a mission maker I've always found Grizzle's Visual House Positions module extremely useful. Unfortunately, it doesn't quite work in A3. I spent some time fixing the module to be fully compatible & functional with A3 today and would like to share it with everyone. Hope you all find it as useful as I do! And remember to remove the module from your mission before saving it for use - otherwise it will be added to the mission.sqf and others will not be able to join without it. link: removed NOTE: As of today (9/16/13) this module crashes on Altis due to a bug in nearestBuilding - it seems to be fixed in the latest dev version so it should be fully functional for both maps after the next update to the main branch. (works fine on Stratis). gzl_vhp_A3 in use:
×