Jump to content

Atlas1205

Member
  • Content Count

    53
  • Joined

  • Last visited

  • Medals

Everything posted by Atlas1205

  1. NOTE: to reset the progress when hosting the mission locally, select "yes" as "wipe the game's save" parameter. then start then game. once you see the map/briefing interface, exit the mission and start it again. now the progress is reset. Version: BETA 0.135 Overview This sandbox mission is greatly inspired by Far Cry series. You take the role of a man who fled this homecountry, Tanoa, with his mother, at a very young age due to the boiling civil war between the royalists and the nationalists. His father died when general Solomon - as known as 'the Vulture', usurped the power from the royale, and with the help of eastern super powers, almost killed off all nationalists. Twenty years later, with the experience of several years serving in the U.S. Army and a dying wish from mother, the protagonist returns to his birthplace, to seek vengence against the man who mercilessly killed his father. Features -A fun sandbox & single-mission campaign and several side quests.(WIP, 3 infinite random side quests and 7 main quests, plus 1 intro quest avaliable thus far) -A shop system for players to buy and sell weapons, buy clothing and buy vehicles at will. -Gun shop supports vanilla, RHS and SMA weapons; NIArms weapons are added but pricing is still WIP. All weapons' prices are subject to changes. -20 safe houses across the map avaliable for purchase. You can save player's gear, location and money in the bed at safe houses; a stash crate is also avaliable at each safe house to store equipments for later use. As long as you have saved, you can just start a new game to resume your progress. DON'T HAVE TO USE ARMA 3's BUGGY SAVING MECHANISM AT ALL. -11 radio towers for players to hijack and reveal hidden POIs on the map. (Most POIs are still WIP) -Random friendly/enemy patrol teams/vehicles. The southern areas are controlled by the Royal Army(enemies) and the rebel(friendlies), and the north is controlled by CSAT. -Ambient traffic and civilians - Tanoa is teeming with life. -Recruitable civilians - hire them to fight by your side. Hired civilians randomly pick a gun from the weapon list -Lootable enemy corpses for cash. Different factions yield different amounts of cash. -Property system - still WIP. Requirements APEX DLC. CBA A3. Supported Mods (all optional, but highly recommended) RHS USAF (weapons purchasable) RHS AFRF (weapons purchasable) RHS GREF (affects what kind of enemies you fight in the early game; adding more immersion) RHS SAF (Not yet used, but may use it in the future) http://steamcommunity.com/workshop/filedetails/?id=843770737 Special Military Arms (weapons purchasable) http://steamcommunity.com/sharedfiles/filedetails/?id=699630614&searchtext=SMA NIArms series (added, not yet detailedly priced) http://steamcommunity.com/workshop/filedetails/?id=665702172 Changelog v0.135 Removed (unwanted) MCC dependency Known issues -Some delay when spawning enemies. TODOs: -Finish the story quests. -Finish the property system. -Add more side quests. Credit Enigma's simple tasks/civilians/traffic scripts. gpgpgpgp1234's coding helps. HoverGuy's simple shop system. IndeedPete's conversation system. Zenophon's framework. Download https://drive.google.com/open?id=0BwxW21OcfZ_LWWYxdHVPUzhnS0E Workshop (reuploaded) http://steamcommunity.com/sharedfiles/filedetails/?id=906561138 Oh thank you Bohemia, for your stupid design to have me got my old mod page accidentally deleted by simply double-tapping enter. THANK YOU SO MUCH YOU MORONS.
  2. Please allow adding multiple mods and missions at the same time! Cool tool, but it's a pain to add them one by one.
  3. just an example, i have 5 game logics: obj_1, obj_2, obj_3, obj_4, obj_5 and i have an array named OBJ_ARY = []; now how do i quickly add all varnames starting with obj to this array? if it's not many, it can be done manually. but when there are dozens of objects to add, it's really tedious to type them all. Any method i can perform a "search & add" operation?
  4. Never mind, my code was working after all. i made a mistake by writing {entities "logics"}, which should be "logic". patrol_logics = []; outpost_logics = []; tower_logics = []; _alllogs = entities "Logic"; { if ((str _x) find "patrollog_" == 0) then { patrol_logics pushBackUnique _x; } } forEach _alllogs; { if ((str _x) find "outpostlog_" == 0) then { outpost_logics pushBackUnique _x; } } forEach _alllogs; { if ((str _x) find "towerlog_" == 0) then { tower_logics pushBackUnique _x; } } forEach _alllogs; patrol_logics;// = [patrollog_1,patrollog_2,patrollog_3,patrollog_4,patrollog_5,patrollog_6]; outpost_logics;// = [outpostlog_1,outpostlog_2,outpostlog_3,outpostlog_4]; tower_logics;// = [towerlog_1];
  5. So I managed to get it to work with pre-defined "missions" as destinations. _destinations = SAFEHOUSE_LOCATION_ARRAY; _parentDisplay = [] call bis_fnc_displayMission; _mapCenter = (getpos player); _ORBAT = []; _markers = []; _images = []; _overcast = overcast; _isNight = !((dayTime > 6) && (dayTime < 20)); _scale = 1; _simul = true; [ findDisplay 46, _mapCenter, _destinations, _ORBAT, _markers, _images, _overcast, _isNight, _scale, _simul ] call Bis_fnc_strategicMapOpen; and the SAFEHOUSE_LOCATION_ARRAY is such: SAFEHOUSE_LOCATION_ARRAY = [ [getpos sh_1,player setpos (_this select 0),"Safehouse 1","","","",1,[]], [getpos sh_2,player setpos (_this select 0),"Safehouse 2","","","",1,[]] ]; SAFEHOUSE_LOCATION_ARRAY; publicVariable "SAFEHOUSE_LOCATION_ARRAY"; The two spots work correctly as i could Addaction to any object and open up the strategic map for fast travel to these two locations. However, if i want to add another location by using Pushbackunique, after the game has started, something ugly happens: SAFEHOUSE_LOCATION_ARRAY pushBackUnique [ [getpos sh_3,player setpos (_this select 0),"Safehouse 3","","","",1,[]] ]; SAFEHOUSE_LOCATION_ARRAY; publicVariable "SAFEHOUSE_LOCATION_ARRAY"; As you can see, the 3rd location refuses to show up and a script error pops up. So I looked at the line 444 part of that script: _map drawIcon [ _texture, [1,1,1,_alpha], _pos, _size, _size, _dir, if (BIS_fnc_strategicMapOpen_showIconText) then {" " + _title} else {""}, 2, 0.08, "PuristaBold" ]; } foreach BIS_fnc_strategicMapOpen_missions; The _texture has something to do with ORBAT, maybe. the color, alpha and pos should already haven been defined in the first script. I have no idea why it doesn't work. Can anyone help me please?
  6. Freelancers - Tanoa at War It has been on steam workshop for like 10 days.
  7. hey, just wanna say thank you here. I've been using your framework in my Freelancers mission, and it works perfectly. Thanks to your framework, my scenario became so popular :P
  8. I wonder how I can clear/reset all players' garage on a server?
  9. Hey, i didn't look at my thread so i did not notice you. what's the deal with this mission?
  10. i found that you did something wrong. the type of boats is actually "ship", thats the reason i couldnt store a boat. I later added submarine type to it as well.
  11. updated with further RHS support.
  12. Glad to hear. I'm uploading a fixed version that had main quest 5's code mended a bit.
  13. @froggyluv can you turn on -showscripterror and take a few screenshots for me please?
  14. have you seen that cinematic cutscene? which is the camera moves and circles around the tower. on my end this problem you said can never be reproduced so i'm not sure what's wrong...
  15. couldn't climb down???? anyway if you restart the mission, the tower should be hijacked already. you just have to wait like 10 seconds before you restart to make sure the mission progress is autosaved
  16. i'm having trouble storing boats....
  17. when using this script, it gets so laggy, cinematic camera rotation lags like playing a power point and tasks can't even be triggered to end as intended. what could be causing the problem? framerate is fine tho. please help! in init.sqf: allraidpat = [raiderpatrol_1,raiderpatrol_2,raiderpatrol_3,raiderpatrol_4,raiderpatrol_5,raiderpatrol_6,raiderpatrol_7,raiderpatrol_8,raiderpatrol_9,raiderpatrol_10,raiderpatrol_11,raiderpatrol_13,raiderpatrol_14,raiderpatrol_15,raiderpatrol_16,raiderpatrol_17,raiderpatrol_18,raiderpatrol_19,raiderpatrol_20,raiderpatrol_21,raiderpatrol_22,raiderpatrol_23,raiderpatrol_24,raiderpatrol_25,raiderpatrol_26,raiderpatrol_27,raiderpatrol_28,raiderpatrol_29]; allraidveh = [raiderveh_1,raiderveh_2,raiderveh_3,raiderveh_4,raiderveh_5,raiderveh_6,raiderveh_7,raiderveh_8,raiderveh_9,raiderveh_10,raiderveh_11,raiderveh_12,raiderveh_13,raiderveh_14,raiderveh_15]; allcsatpat = [csatpatrol_0,csatpatrol_2,csatpatrol_3,csatpatrol_4,csatpatrol_5,csatpatrol_6,csatpatrol_7,csatpatrol_8,csatpatrol_9,csatpatrol_10,csatpatrol_11,csatpatrol_12,csatpatrol_13,csatpatrol_14,csatpatrol_15,csatpatrol_16,csatpatrol_17,csatpatrol_18,csatpatrol_19,csatpatrol_20]; allcsatveh = [csatveh_1,csatveh_2,csatveh_3,csatveh_4,csatveh_5,csatveh_6,csatveh_7,csatveh_8,csatveh_9,csatveh_10,csatveh_11,csatveh_12,csatveh_13]; Spawner_allLogics = allraidpat+allraidveh+allcsatveh+allcsatpat; if(isServer)then { Spawner_waitForDelete = []; Spawner_fnc_addToWaitForDeleteArray = { Spawner_waitForDelete pushBackUnique _this; }; Spawner_fnc_removeFromWaitForDeleteArray = { Spawner_waitForDelete = Spawner_waitForDelete - [_this]; }; Spawner_fnc_spawnPatrol = { private _patrolteam = _this getVariable ["Atlas_spawner_spawnedGroup",grpNull]; if ( isNull _patrolteam ) then { private _patrolpos = ASLToAGL (getPosASL _this); //royals if (MOD_hasRHSGREF) then { if (_this in allraidpat) then { _chance = floor random [0,5,10]; if (_chance >5) then {_patrolteam = [_patrolpos, resistance , (configfile >> "CfgGroups" >> "Indep" >> "rhsgref_faction_chdkz_g" >> "rhsgref_group_chdkz_ins_gurgents_infantry" >> "rhsgref_group_chdkz_infantry_patrol")] call BIS_fnc_spawnGroup;}} else { _veh = objnull; _patrolteam = [_patrolpos, resistance , (configfile >> "CfgGroups" >> "Indep" >> "rhsgref_faction_chdkz_g" >> "rhsgref_group_chdkz_ins_gurgents_infantry" >> "rhsgref_group_chdkz_ins_gurgents_squad")] call BIS_fnc_spawnGroup;}; } else { if (_this in allraidpat) then { _chance = floor random [0,5,10]; if (_chance >5) then {_patrolteam = [_patrolpos, resistance , (configfile >> "CfgGroups" >> "Indep" >> "IND_C_F" >> "Infantry" >> "ParaShockTeam")] call BIS_fnc_spawnGroup; } else {_veh = objnull; _patrolteam = [_patrolpos, resistance , (configfile >> "CfgGroups" >> "Indep" >> "IND_C_F" >> "Infantry" >> "ParaCombatGroup")] call BIS_fnc_spawnGroup; } }; }; if (_this in allraidveh && MOD_hasRHSGREF) then { _patrolteam = createGroup resistance; _veh = "rhsgref_ins_g_uaz_dshkm_chdkz" createvehicle _patrolpos;_crewd = _patrolteam createUnit ["rhsgref_ins_g_rifleman",_patrolpos,[],2,"NONE"]; _crewg = _patrolteam createUnit ['rhsgref_ins_g_rifleman_aksu',_patrolpos,[],2,"NONE"];_crewg moveInGunner _veh; _crewd moveInDriver _veh;{deleteVehicle _x}foreach ((units _patrolteam) - ([_crewd]+[_crewg])); }; if (_this in allraidveh && !(MOD_hasRHSGREF)) then { _patrolteam = createGroup resistance; _veh = "I_G_Offroad_01_armed_F" createvehicle _patrolpos;_crewd = _patrolteam createUnit ["I_C_Soldier_para_1_F",_patrolpos,[],2,"NONE"]; _crewg = _patrolteam createUnit ["I_C_Soldier_para_3_F",_patrolpos,[],2,"NONE"]; _crewg moveInGunner _veh; _crewd moveInDriver _veh;{deleteVehicle _x}foreach ((units _patrolteam) - ([_crewd]+[_crewg])); //csat if (_this in allcsatpat) then { _chance = floor random [0,5,10]; if (_chance >5) then {_veh = objnull;_patrolteam = [_patrolpos, east , (configfile >> "CfgGroups" >> "East" >> "OPF_T_F" >> "Infantry" >> "O_T_InfSquad")] call BIS_fnc_spawnGroup;} else {_veh = objnull;_patrolteam = [_patrolpos, east , (configfile >> "CfgGroups" >> "East" >> "OPF_T_F" >> "Infantry" >> "O_T_InfTeam")] call BIS_fnc_spawnGroup;} }; if (_this in allcsatveh) then { _patrolteam = createGroup east; _class = ["O_T_LSV_02_armed_F","O_T_MRAP_02_hmg_ghex_F"]call bis_fnc_selectrandom; _veh = _class createvehicle _patrolpos;_crewd = _patrolteam createUnit ["O_T_Soldier_GL_F",_patrolpos,[],2,"NONE"]; _crewg = _patrolteam createUnit ["O_T_Engineer_F",_patrolpos,[],2,"NONE"]; _crewg moveInGunner _veh; _crewd moveInDriver _veh;{deleteVehicle _x}foreach ((units _patrolteam) - ([_crewd]+[_crewg])); }; if (vehicle (leader(_patrolteam)) != (leader(_patrolteam))) then { [_patrolteam, _patrolpos, 600, 4, "MOVE", "SAFE", "YELLOW", "LIMITED", "FILE", "", [1,2,3]] call CBA_fnc_taskPatrol; } else { [_patrolteam, _patrolpos, 250, 4, "MOVE", "SAFE", "YELLOW", "LIMITED", "FILE", "", [3,6,9]] call CBA_fnc_taskPatrol; }; _this setVariable ["Atlas_spawner_spawnedGroup",_patrolteam,true]; _this call Spawner_fnc_addToWaitForDeleteArray; }; }; 0 spawn { while {true} do { allPlayersUIDs = []; { allPlayersUIDs pushBackUnique (getPlayerUID _x); } forEach allPlayers; sleep 60; { private _patrolteam = _x getVariable ["Atlas_spawner_spawnedGroup",grpNull]; if ( isNull _patrolteam ) then { _x setVariable ["Atlas_spawner_nearPlayersUID",nil,true]; _x call Spawner_fnc_removeFromWaitForDeleteArray; } else { private _nearPlayers = _x getVariable ["Atlas_spawner_nearPlayersUID",[]]; if( ({_x in allPlayersUIDs} count _nearPlayers) == 0 )then { { deleteVehicle _x; } forEach units _patrolteam; deleteGroup _patrolteam; _x setVariable ["Atlas_spawner_spawnedGroup",grpNull,true]; _x call Spawner_fnc_removeFromWaitForDeleteArray; }; }; } forEach Spawner_waitForDelete; }; }; }; if(hasInterface)then { ATLAS_SPAWN_DISTANCE_ONFOOT = 1000; ATLAS_SPAWN_DISTANCE_ONFOOT_SQR = ATLAS_SPAWN_DISTANCE_ONFOOT * ATLAS_SPAWN_DISTANCE_ONFOOT; ATLAS_DESPAWN_DISTANCE_ONFOOT = 2000; ATLAS_DESPAWN_DISTANCE_ONFOOT_SQR = ATLAS_DESPAWN_DISTANCE_ONFOOT * ATLAS_DESPAWN_DISTANCE_ONFOOT; ATLAS_SPAWN_DISTANCE_ONVEHICLE = 1500; ATLAS_SPAWN_DISTANCE_ONVEHICLE_SQR = ATLAS_SPAWN_DISTANCE_ONVEHICLE * ATLAS_SPAWN_DISTANCE_ONVEHICLE; ATLAS_DESPAWN_DISTANCE_ONVEHICLE = 2000; ATLAS_DESPAWN_DISTANCE_ONVEHICLE_SQR = ATLAS_DESPAWN_DISTANCE_ONVEHICLE * ATLAS_DESPAWN_DISTANCE_ONVEHICLE; ATLAS_SPAWN_DISTANCE_ONAIR = 0; ATLAS_SPAWN_DISTANCE_ONAIR_SQR = ATLAS_SPAWN_DISTANCE_ONAIR * ATLAS_SPAWN_DISTANCE_ONAIR; ATLAS_DESPAWN_DISTANCE_ONAIR = 500; ATLAS_DESPAWN_DISTANCE_ONAIR_SQR = ATLAS_DESPAWN_DISTANCE_ONAIR * ATLAS_DESPAWN_DISTANCE_ONAIR; Spawner_Logics_activated_by_me = []; 0 spawn { while {true} do { sleep 30; private _veh = vehicle player; private _pos = ASLToAGL (getposASL _veh); private _distSpawnSqr = ATLAS_SPAWN_DISTANCE_ONFOOT_SQR; private _dstrDespawnSqr = ATLAS_DESPAWN_DISTANCE_ONFOOT_SQR; if(_veh != player)then { switch true do { case ( _veh isKindOf "LandVehicle" ): { _distSpawnSqr = ATLAS_SPAWN_DISTANCE_ONVEHICLE_SQR ; _dstrDespawnSqr = ATLAS_DESPAWN_DISTANCE_ONVEHICLE_SQR; }; case ( _veh isKindOf "Ship" ): { _distSpawnSqr = ATLAS_SPAWN_DISTANCE_ONVEHICLE_SQR ; _dstrDespawnSqr = ATLAS_DESPAWN_DISTANCE_ONVEHICLE_SQR; }; case ( _veh isKindOf "Air" ): { _distSpawnSqr = ATLAS_SPAWN_DISTANCE_ONAIR_SQR ; _dstrDespawnSqr = ATLAS_DESPAWN_DISTANCE_ONAIR_SQR; }; }; }; _dstrDespawnSqr = (_distSpawnSqr + 500) max _dstrDespawnSqr; private _Spawner_Logics_activated_by_me = Spawner_Logics_activated_by_me; { private _patrolteam = _x getVariable ["Atlas_spawner_spawnedGroup",grpNull]; if ( (!isNull _patrolteam ) && { (leader _patrolteam) distanceSqr _pos > _dstrDespawnSqr }) then { private _nearPlayers = _x getVariable ["Atlas_spawner_nearPlayersUID",[]]; private _nearPlayersNew = _nearPlayers - [getPlayerUID player]; if( (count _nearPlayersNew) != (count _nearPlayers) )then { _x setVariable ["Atlas_spawner_nearPlayersUID",_nearPlayersNew,true]; Spawner_Logics_activated_by_me = Spawner_Logics_activated_by_me - [_x]; }; }; } forEach _Spawner_Logics_activated_by_me; { private _patrolteam = _x getVariable ["Atlas_spawner_spawnedGroup",grpNull]; private _patrolpos = ASLToAGL (getPosASL _x); if ( _patrolpos vectorDistanceSqr _pos < _distSpawnSqr ) then { private _nearPlayers = _x getVariable ["Atlas_spawner_nearPlayersUID",[]]; private _nearPlayersNew = _nearPlayers; private _result = _nearPlayersNew pushBackUnique (getPlayerUID player); if(_result > -1)then { _x setVariable ["Atlas_spawner_nearPlayersUID",_nearPlayersNew,true]; }; Spawner_Logics_activated_by_me pushBackUnique _x; if ( isNull _patrolteam ) then { _x remoteExecCall ["Spawner_fnc_spawnPatrol",2,false]; }; }; } forEach Spawner_allLogics; }; }; };
  18. still didnt do too much good... i think an alternative to this is to set up a few arrays, use isClass to check players' addons, and select the right one as weapon randomization array. that way, it's a hell less of work for the server and/or clients.
  19. never mind. turns out the script lag is caused by weapon randomization. I will see about preprocessing.
  20. I also have a script that randomizes units' weapons, could it be causing the problem? //init.sqf for "_i" from 0 to (count (configFile >> "CfgWeapons") - 1) do { _entry = (configFile >> "CfgWeapons") select _i; if (isClass _entry) then { _entry = configName _entry; _cursor = getText (configfile >> "CfgWeapons" >> _entry >> "cursor"); _model = getText (configfile >> "CfgWeapons" >> _entry >> "model"); _scope = getNumber (configfile >> "CfgWeapons" >> _entry >> "scope"); if( (_scope > 0) && { ! ( (toLower _model) in ["","\a3\weapons_f\empty","a3\weapons_f\empty","\a3\weapons_f\empty.p3d","a3\weapons_f\empty.p3d"]) } ) then { switch _cursor do { case "arifle": { if(count getArray (configFile>> "CfgWeapons" >> _entry >> "muzzles") > 1)then { a_GLRIFLES = a_GLRIFLES + [format ["%1", _entry]]; } else { a_RIFLES = a_RIFLES + [format ["%1", _entry]]; }; }; case "srifle": { a_SNIPERFIFLES = a_SNIPERFIFLES + [format ["%1", _entry]]; }; case "mg": { a_MGS = a_MGS + [format ["%1", _entry]]; }; case "smg": { a_SMGS = a_SMGS + [format ["%1", _entry]]; }; case "hgun": { a_HGUNS = a_HGUNS + [format ["%1", _entry]]; }; case "rocket": { a_ROCKETLAUNCHERS = a_ROCKETLAUNCHERS + [format ["%1", _entry]]; }; case "missile": { a_MISSLELAUNCHERS = a_MISSLELAUNCHERS + [format ["%1", _entry]]; }; }; }; }; }; a_SECONDARY = a_ROCKETLAUNCHERS + a_MISSLELAUNCHERS; a_PRIMARY = a_RIFLES + a_GLRIFLES + a_SNIPERFIFLES + a_MGS + a_SMGS; I cannot just define it in description.ext otherwise the game gets stuck on infinite loading screen, so i had to use it in a trigger's onACT field: //copy from mission.sqf, from the trigger's onACT onActivation="[""CAManBase"",""Initpost"",{if (!(isplayer (_this select 0))&& ((side (_this select 0)) != civilian) && !((_this select 0) in units group civilianjob)) then {(_this select 0) remoteExecCall ['atlas_fnc_randomguns', 0, false];(_this select 0)selectWeapon (primaryWeapon (_this select 0))};},true,[],true] call CBA_fnc_addclasseventhandler;"; //that called function executes this script on target: //guns.sqf if !(local _this) exitWith{}; _gun = primaryWeapon _this; _selected = _gun == currentWeapon _this; _cursor = getText (configfile >> "CfgWeapons" >> _gun >> "cursor"); _muzzles = getArray (configFile>> "CfgWeapons" >> _gun >> "muzzles"); { if(toLower _x != "this")then { _muzzles pushBack _x; _mags = getArray (configFile>> "CfgWeapons" >> _gun >> _x >> "magazines"); {_this removeMagazines _x} count _mags; }; } forEach _muzzles; _mags = getArray (configFile>> "CfgWeapons" >> _gun >> "magazines"); {_this removeMagazines _x} count _mags; _this removeWeapon _gun; switch _cursor do { case "arifle": { if(count _muzzles > 1)then { _gun = ( a_GLRIFLES call BIS_fnc_selectRandom ); _muzzles =[]; { if(toLower _x != "this")then { _muzzles pushBack _x; }; } forEach getArray (configFile>> "CfgWeapons" >> _gun >> "muzzles"); { _mags = getArray (configFile>> "CfgWeapons" >> _gun >> _x >> "magazines"); _mag = _x; _count = 0; { _count = 4 - _forEachIndex; if(_count > 0)then { _this addMagazines [_mag, _count]; }; } forEach _mags; } forEach _muzzles; } else { _gun = ( a_RIFLES call BIS_fnc_selectRandom ); }; }; case "srifle": { _gun = ( a_SNIPERFIFLES call BIS_fnc_selectRandom ); }; case "mg": { _gun = ( a_MGS call BIS_fnc_selectRandom ); }; case "smg": { _gun = ( a_SMGS call BIS_fnc_selectRandom ); }; default { _gun = ( a_PRIMARY call BIS_fnc_selectRandom ); }; }; _this addMagazines [getArray (configFile>> "CfgWeapons" >> _gun >> "magazines") select 0, 9]; _this addWeapon _gun; if(_selected)then { _this selectWeapon _gun; };
  21. I've been using BIS task since, but writing its params is boring...
  22. for example, when im trying to reset my mission on a server, which has player status saved into the server's profilenamespace as variables, and they are all in a format a 'rum_(player UID)". what kind of code can i use to set all variables starting with "rum_" to nil? call me silly, but i've tried this, and the result was disastrous... private _gameanduid = format ["rum_%1",_i]; for "_i" from 0 to 99999999999999999 do {profilenamespace setVariable [_gameanduid,nil]};
  23. is there a workaround? i see there's an example on community wiki, but not sure how to do it. currently making a mission that stores player status to server's profilenamespace, so I myself come up with a workround, that is storing all player data to one variable, and setting it to nil would be all i need to do to reset the progress.
×