Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Everything posted by riouken

  1. riouken

    Things you wish NOT to have in the game!

    I think the biggest thing is that you can turn BE off on your server if you want. Lets see how that goes with steam and VAC... I think most people are upset about this because they feel that its taking away options... I like the options and the openness about Arma. Its a bit uncertain on how that's going to play out now.
  2. riouken

    ArmA 3 on Steamworks?

    Well I think steam just adds another layer to modded games. It does not make it easier as can be seen in any Arma help forum. The vast majority of problems people post come back to users with steam installs and trying to get them to run with mods. And thats with just the way we have steam now. I will hold my final judgement untill we get some more answers to questions like these: Is steam work shop going to be optional? Can addons be released outside of the workshop? If you can release out side of SWS is this going to cause the server running these mods to be de-listed or listed in the steam browser as un-official? How is multi-player testing going to be done with mods in development. How are mods like (Acre,jayarma2lib,arma2dotnet...) going to be treated? Will we be able to have private mods? And still play on public servers? What about client side only mods? I would like to know a lot more...
  3. You need to use a ui eventhandler that is assigned to the listbox control. That EH will call a function In that function, take the LB selection, then use that data to update the rest of the controls on your dialog. http://community.bistudio.com/wiki/User_Interface_Event_Handlers http://community.bistudio.com/wiki/Category:Command_Group:_GUI_Control Remember ui EH are destroyed when the dialog closes, use the onLoad event in your dialog to create the EH each time the dialog is opened. Also remember to use: http://community.bistudio.com/wiki/disableSerialization At the top of your function, as you can not update ui components without running that command.
  4. RSLO: Riouken's Selectable Load Outs ver 2.3 First of all let me put out a big Thank you to several people, without them I would not have been able to complete this. Demonized - Thanks for the help with scripts and Ideas from your loadout script. Sickboy - Thanks for help with the config files and the userconfigs. Also Thanks for what you do with CBA,Six,ACE etc.. Robalo - Ideas for improvements to RSLO and helping with errors. My own 15thMEU(SOC) unit - Thanks to everyone for helping me test this and work through the bugs. Updated to version 2.0 I have created a user configurable loadout addon. My plan with project was to provide an eaiser way for users to select there gear, speeding up mission starts as well as take work off of the mission maker while still allowing the mission maker to retain control over what gear players carry. You can set up "sets" of gear and load them up in a mission. Player Features: Updates for ver 2.3: * Can now disable View Distance and Terrain Detail independently. Updates for ver 2.0: *Added GUI *Upped total loadouts to 5 *User can name each loadout in thier config and it will show up in the box ingame. *Can now set view distance and terrain detail with RSLO. *Improved scripts for better performance. Features: *User is able to select their own gear and save it to their userconfig file. *OA Backpack Compatible. *Ace "Ruck" and "Weapon on Back" Compatible. *ASC compatible. *Simple missions to select and save your gear. *Update or change your gear when ever you want. *By default your loadouts are available the first 4 min of a mission. Mission Maker Features: *Simple to implement. ( You only have to put one line in your init of your mission.) *More advanced features if you wish to implement. *White listable arrays ( They work like ammo boxes, you put the gear you will allow into them. Then you can assign players to those groups.) *15 Groups for mission flexibility. *Scripts to add the ability to reload your gear later in the mission. ( can be placed on any object.) *User Actions are local and if you do not have the addon you will not get them. *Can be run on public missions where not everyone has RSLO. *You do not have to run a copy on the server(I included a key if you wish to check for signatures.) *Easy Scripts to implement.( One line code snippets for all features.) Requirements: @CBA ** (CBA is only required to have the loadout selections at mission start or first load in. It can be ran with out it, the mission maker will have to place the Actions onto and object for the players to use though.) To prevent grief-ing and undue headaches for mission makers this addon will not work unless it is "Authorized" in a mission. Short Demo: (I hope to have some better videos soon :) ) _G8wf0gfTzc Installation: For players: Setting up your userconfig (Saving your Loadouts) For Mission Makers: ******* This Addon must be "Authorized" in a mission for the users to be able to do this (See spoiler below for instructions.)********* Download RSLO: New ver 2.3 - http://www.mirrorcreator.com/files/RLW1VKD3/RSLO_Release_2.3.zip_links Ver 2.0 - http://www.multiupload.com/SID1U468TM Armaholic - http://www.armaholic.com/page.php?id=14514 old ver 1.0http://www.multiupload.com/TXN322YAXI (If you mirror this please provide a link back to this thread. Thanks) I hope everyone enjoys, Have fun.
  5. this is not tested but it should be pretty close, I may have made a small error here or there, but you get the picture. Put in your script before you change player: _weparray = weapons player; _mags = magazines player; _backpack = typeOf unitBackpack player; _WeaponsRuckList = getWeaponCargo unitBackpack player; _MagazinesRuckList = getMagazineCargo unitBackpack player; _gearArray = [_weparray,_mags,_backpack,_WeaponsRuckList,_MagazinesRuckList]; player setVariable ["savedGear",_gearArray]; Then put this in the script after you change: _oldGear = player getVariable "savedGear"; _wepons = _oldGear select 0; _mags = _oldGear select 1; _backpack = _oldGear select 2; _wepsbackpack = _oldGear select 3; _magsbackpack = _oldGear select 4; removeAllItems player; removeAllWeapons player; removeBackpack player; {player addMagazine _x;} forEach _mags; {player addWeapon _x;} forEach _wepons; {player addWeapon _x;} forEach _wepons; if (count _backpack > 0) then { player addBackpack (_backpack select 0); if (count _wepsbackpack > 0) then { {(unitBackpack player) addWeaponCargo [_x,1];} forEach _wepsbackpack; }; if (count _magsbackpack > 0) then { {(unitBackpack player) addMagazineCargo [_x,1];} forEach _magsbackpack; }; }; // This will make sure the correct muzzle is selected on your weapon. firstmuz = { private "_ma"; _ma = getArray (configFile >> "CfgWeapons" >> _this >> "muzzles"); if (_ma select 0 != "this") exitWith {_ma select 0}; _this }; _primary = primaryWeapon player; if (_primary != "") then { player selectWeapon (_primary call firstmuz); }; ---------- Post added at 08:50 PM ---------- Previous post was at 08:47 PM ---------- If you use ACE then you will have to change the backpack stuff a little, but if you need help with that just let me know.
  6. Save the old class name to the player namespace, then you can retrieve it dynamically. [color=#0000BB][font=monospace]_classname [/font][/color][color=#007700][font=monospace]= [/font][/color][color=#0000BB][font=monospace]typeOf player[/font][/color][color=#007700][font=monospace]; player setVariable ["myOldClass", [/font][/color][color=#0000BB][font=monospace]_classname];[/font][/color] then later in your script that sets it back: _myoldClass = player getVariable [color=#007700][font=monospace]"myOldClass";[/font][/color]
  7. Try this: class IceBaseLB { type=CT_LISTNBOX; [color=#ff0000] style=LB_TEXTURES;[/color] idc=-1; font = "Bitstream"; sizeEx=0.017; rowHeight=0.02; columns[] = {-0.01,1,0.7}; drawSideArrows = 0; idcLeft = -1; idcRight = -1; colorText[] = {1,1,1,1}; colorScrollbar[] = {1,1,1,1}; colorSelect[] = {0,0,0,1}; colorSelect2[] = {1,0.5,0,1}; colorSelectBackground[] = {0.6,0.6,0.6,1}; colorSelectBackground2[] = {0.2,0.2,0.2,1}; colorBackground[] = {1,1,1,1}; maxHistoryDelay = 1.0; soundSelect[] = {"",0.1,1}; period = 1; autoScrollSpeed = -1; autoScrollDelay = 5; autoScrollRewind = 0; arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)"; arrowFull = "#(argb,8,8,3)color(1,1,1,1)"; shadow = 0; class ScrollBar { color[] = {1,1,1,0.6}; colorActive[] = {1,1,1,1}; colorDisabled[] = {1,1,1,0.3}; thumb = "#(argb,8,8,3)color(1,1,1,1)"; arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)"; arrowFull = "#(argb,8,8,3)color(1,1,1,1)"; border = "#(argb,8,8,3)color(1,1,1,1)"; shadow = 0; }; }; Try the style as either: style = LB_TEXTURES; or style = LB_MULTI;;
  8. veh = [this, 999, 990, 5, TRUE, FALSE, "iedid = [this] execVM 'FOCK_ied\Fock_iedveh.sqf';"] execVM "vehicle.sqf";
  9. Check out the column definition on this page : http://community.bistudio.com/wiki/DialogControls-ListBoxes That area has by default a small padding area because that is where the listbox imag goes... see this command: http://community.bistudio.com/wiki/lbSetPicture You can use the coloumn definition either in your base clase or your child to remove the padding space.
  10. PARAMS is a CBA macro https://dev-heaven.net/docs/cba/files/extended_eventhandlers/script_macros_common-hpp.html#PARAMS_n The other one is a type of macro as well, though I'm not sure from where. Maybe domination. To op, I'm pretty sure you copied that from somewhere, please post the whole code as you have it in your mission, or just search the forum for one of the working examples, this has been answered a lot here.
  11. Your algorithm also has a logic error. It will never select the last item, ie when you have 1 left. It will just skip over that one. private ["_target", "_actionname", "_actionsarray", "_actionid"]; _target = _this select 0; // object or vehicle or player the action will be removed from _actionname = _this select 1; //String. Name of the action, visible when you have the action _actionsarray = player getVariable "ActionsArray"; //checks the array of available actions for that object { if (_actionname in _x) then //finds the action name in the main array { //_x = _actionsarray select 0; // [color=#ff0000][b]This line should be at the end of your function, what happens when _x is 1 and this line runs before your if check below? The way it is now it will never work for the last element.[/b][/color] _x set [2, (_x select 2) - 1]; //remove 1 from the number of actions of this type remaining if (_x select 2 != 0) then //if 0 actions of this type remaining { _actionid = _x select 0; //gets the ID of the action _actionsarray set [_actionid, -1]; _actionsarray = _actionsarray - [-1]; //removes the action from the array _target removeAction _actionid; //removes the action from the target hint str _actionsarray; }; }; } forEach _actionsarray;
  12. Are you pre-compiling this function? If so it might be a Serialization issue, try adding DisableSerialization in the function.
  13. _listgroupsunitsA = units Alpha; _mynamelist = []; { _temp = name _x; _mynamelist set [count _mynamelist,_temp]; } forEach _listgroupsunitsA; hint str _mynamelist; ---------- Post added at 07:12 AM ---------- Previous post was at 07:12 AM ---------- opps... beaten to the punch ^^
  14. What ever group your trying to assign to the high commander. You have to use their group. http://community.bistudio.com/wiki/group
  15. You just add it to their high command list. http://community.bistudio.com/wiki/hcSetGroup _highCommandUnit hcSetGroup [group21]; Here is more information and commands: http://forums.bistudio.com/showthread.php?143537-High-Command-Module-In-MP&p=2263985&viewfull=1#post2263985
  16. No you cant set them, unless you create a new addon that overwrites their ranges. But your wrong on your ranges of the MLRS, see here: http://community.bistudio.com/wiki/Artillery_Module#BIS_ARTY_F_LoadMapRanges
  17. You can also browse it online here: http://browser.six-projects.net/cfg_vehicles Just type in hasGunner in the search. ---------- Post added at 11:14 PM ---------- Previous post was at 11:07 PM ---------- Also you might want to use this : http://community.bistudio.com/wiki/isNumber First to check if it is defined. Then reach in to the config and grab it out.
  18. These commands are used to access parts of the config. You use the correct command depending on what you want to retrieve. Here is the config I used in the example: http://browser.six-projects.net/cfg_weapons/M4A1/config?version=65 // getText // Use this command to get an item that is stored in the config as text. // _text = getText (configFile >> "CfgWeapons" >> "M4A1" >> "displayname"); // getArray // Use this command to get an item that is stored in the config as an array. // _array = getArray (configFile >> "CfgWeapons" >> "M4A1" >> "modes"); // getNumber // Use this command to get an item that is stored in the config as an number or integer. // _number = getNumber (configFile >> "CfgWeapons" >> "M4A1" >> "value"); You use the is commands to check what the return result is, if you do not know what it will return or if it is there. // Use to check if the class is defined. if (isClass(configFile >> "CfgPatches" >> "ace_main")) then { ///... do some stuff is ACE is running(Could check for any addon or config entry. } else { // .... Do something else. }; // Use to check if that is the data type... _ok = isArray (configFile >> "CfgWeapons" >> "M4A1" >> "drysound"); if (_ok) then { hint "We Have sounds when we run the weapon dry.";};
  19. LbSelection and lbSetSelection are for use with multi selection listboxes, like alowing the user to select multipul rows at once. Also useful with multi column listboxes
  20. When I get home, I will post a better explanation with examples
  21. No slider pos is for sliders. You can use this to tell what the user has clicked on: http://community.bistudio.com/wiki/lbCurSel You can also use ui eventhandlers to call functions that grab the selection, Like if a player doubleclicks on a listbox item etc... http://community.bistudio.com/wiki/User_Interface_Event_Handlers
  22. I would help as well, but alas I was surprised that the sign-ons are not shared across the forums and the wiki.
  23. If your server is running mods and you have a mission loaded up that uses said mods, and a player tries to connect without them they will be kicked. But I dont think thats what your asking, I think what your looking for is this: http://community.bistudio.com/wiki/ArmA:_Addon_Signatures in your server config: verifySignatures = 2;
  24. First, what map are you using this code on? The BIS maps and IceBreakers maps all use map locations, but other custom maps are hit and miss, these must be defined in the map.(They can be created on the fly, but its a lot of work if your creating a lot.). Second please post your code so we can see that you are selecting and using the location properly.