Jump to content

riouken

Member
  • Content Count

    570
  • Joined

  • Last visited

  • Medals

Everything posted by riouken

  1. riouken

    Arma 3 hands on @ Gamescom 2012!

    You should learn the difference between anti-materiel and anti-personnel. No joke you say that 50cal anti-materiel round in the engine block takes out a heli, maybe because that is exactly what it is supposed to do. They have specific Anti-Air versions of the DSHK - http://en.wikipedia.org/wiki/File:MITRALOZ_12.7_mm_KA.jpg Just like a stinger, those weapons are DESIGNED to shoot down aircraft. Are you saying that they should not be able to? ---------- Post added at 10:20 AM ---------- Previous post was at 10:08 AM ---------- While I will agree that the AI are far from perfect. What game has better AI simulation on this level? I think BI is doing exactly what they should do, then need to polish the game and give us the tools to really push the envelope with the game. ie.. the already mentioned tools to alter the reload animations and the new config viewer. Hopefully they have other tools made for us as well.
  2. riouken

    Arma 3 hands on @ Gamescom 2012!

    Yep 2-3 shots and those choppers go down :j:
  3. Its because the server and every client run the init.sqf. Put this at the top of your script and it will only be eun by the server. If (isServer) exitWith {}; Or even better you can limit it in the init.sqf If (isServer) then { _nul = [] execVM "myscript.sqf"; }; ---------- Post added at 02:54 PM ---------- Previous post was at 02:48 PM ---------- Your also going to have to split your code up. For multiplayer scripting you need to try and create all groups of ai on the server and only work with them on the server, all of the the other scripting like tasks and local markers need to be run localy for each client. You should probaly read this before you go any further and then come back and ask any questions you have on how to implement the ideas on that page. http://community.bistudio.com/wiki/Multiplayer_scripting
  4. Yes, you would need a seperate pVEH for each command, ...you could could condence them some but I would advise against it. PVEH works the same way a "fired" EH works, every time the weapon fires the code in the EH is exe. With pVEH when you update the var and braudcast it with PV the EH will fire and run your code. The great thing about it is like in the fired EH the engine passes information to the EH, we can pass info to our pVEH as well. That's the big upside to the CBA system, it can pass a whole array of data to the EH and it only uses one internal cba var. I'm at work, so I can't write you an example, but if some else hasent by the time I get home I will.
  5. Like PvPscene said, you should not be doing remote code execution. Also if you use the mod CBA or if you would like to consider using it, their event system is even more efficient than the standard BI pV + pVEH system. https://dev-heaven.net/projects/cca/wiki/Custom_Events_System
  6. riouken

    closeDialog

    Yea, I'm typing on my phone and I reversed them. ---------- Post added at 02:09 PM ---------- Previous post was at 02:07 PM ---------- I realized my mistake and was editing it when you replied.
  7. riouken

    closeDialog

    This closes the current active or focused dialog, if you want to close a spacific one then you can include its IDC in place of the 0. Dialog 0; ---------- Post added at 01:54 PM ---------- Previous post was at 01:48 PM ---------- The IDD is the way to refrence the entire dialog, you use a IDC to refrence a spacific control of said dialog, if you needed to update a list box you would use its IDC. IDD's are not normaly needed as you normaly don't need to acceses the whole control after its created, so most people use : IDD = -1; But if you did need to acceses it later, fo instance to assign an eventhandler to the dialog or to save a variable to its namespace then you would need to give it a unique IDD, and then use that later in your scrip.
  8. riouken

    An-2 Bomber/Crop duster?

    They do have a few upgraded versions:
  9. Yes you need the functions module down in your mission, or if you use the mod CBA it starts the funtions module for you, so you don't have to worry about it. When you place it down in your mission, when your mission loads it starts its own init that precompiles and loads all of those functions into memory.
  10. Lol yea, I worked on this exact same problem, your right in some of my tests I was parsing over 8000 items in the config. With ace and co,acre etc... I have a working example where I just parse the config of the of the server and add it to a box, I have been working on it to try and get the speed and net work performance to acceptable levels. I want to try and limit it further and get it to run a little smoother. But by just running it on the server and using the addweapongloable commands it solves the issues about other players having diff addons. As long as the mission is set up with the right addon requirements
  11. Case: 1 , has nothing to do with random. It is part of the syntax for a switch statement. That is one of the control structures in .sqf as well as other programing lang. http://community.bistudio.com/wiki/Control_Structures Here is the random command: http://community.bistudio.com/wiki/random To be honest, your going to need to scrap everything except your arrays of weps. I'm on my phone right now so I can't give examples but, you need to rewrite it to select a random index in your main wep array then use that same index to select yor mags for your primary, you can then generate a random count for said mags. The repeat the process for your sec. And tir. Items ---------- Post added at 12:36 PM ---------- Previous post was at 12:30 PM ---------- Lol your right Kylania it does bring a tear to his eye. I also think this would be better suited as a server function that returned a list of gear that you could just add to the player. If you ran it on the server you could just pull from its config and that would take care of the invis weapon issue.
  12. Replace it with this: if (isServer) then { _newComp = [(getPos this), (getDir this), ""CityBase04""] call (compile (preprocessFileLineNumbers ""ca\modules\dyno\data\scripts\objectMapper.sqf"") );}; ---------- Post added at 06:47 AM ---------- Previous post was at 06:45 AM ---------- The reason it is spawning one for each client, is becasue every client when they load the mission.sqm runs the init in that game logic. So what we need to do is limit it to run on the server only. The clients will still evaluate the init. but only the server will run the code.
  13. riouken

    BM-21 GRAD question

    The SOM module only has these types of fire missions" If you want more or different fire missions you will have to script it. Here is a stand alone Grad arty script, with an example mission. (not using the SOM). http://forums.bistudio.com/showthread.php?136668-BM21-grad&p=2182767&viewfull=1#post2182767
  14. You can put the code where you need to. Probably the best way would be to put it in a .sqf and then run that when you need to check this. It all depends on what your trying to do. As for two people you just have to run it twice. [color=#3E3E3E]_test1 = [MyTrigger, getPos MyUnit] call BIS_fnc_inTrigger; [/color]_test2 = [color=#3E3E3E][MyTrigger, getPos MyUnit2] call BIS_fnc_inTrigger;[/color] ---------- Post added at 08:50 AM ---------- Previous post was at 08:35 AM ---------- After rereading your first post, Im not even sure if you need any of this, if you just want to know(or do something) when one or both of the pilots are more than 300m from the point you can just do this. while {true} do { center_pos = getMarkerPos "center"; plr1_pos = getPosAsl powpilot1; plr2_pos = getPosAsl powpilot2; exitloop = false; if ((plr1_pos distance center_pos) > 300) then { hint "powpilot1 is more than 300m from center"; exitloop = true; }; if ((plr2_pos distance center_pos) > 300) then { hint "powpilot2 is more than 300m from center"; exitloop = true; }; if (exitloop) exitWith {}; sleep 1; };
  15. riouken

    safezones

    Post the contents of the readme here(just put it in a spoiler) and maybe we can help a bit more. But this is an addon, and this is not something that is in the core game. With out the code your trying or the readme, we can not help much.
  16. _test = [_name_of_trigger , _pos_of_obj_to_test] call BIS_fnc_inTrigger; if (_test) then { // Yes the object was in the trigger area. So you can do stuff here. } else { // The object was [u]not[/u] in the trigger area. So you can do other stuff here. };
  17. There is no command to count all markers. But you can just use a variable instead: in the init.sqf set this: total_markers = 0; now in our marker creation script: Marker_index = total_markers; _marker_name = format["Marker_%1",Marker_index]; _marker = createMarker [_marker_name, _markerpos]; /// Set all your other marker properties here... total_markers = total_markers + 1; Now each time you run it it will update the marker_index and provide each marker a new name.
  18. You need three things to make it work. 1. You need to put the functions module down in your mission or you need to be running the mod CBA. 2. You need to create a center for the side you wish to spawn. If you do not have any other units of that type preplaced on the map then put down one unit of the same side and set its probability of presence to 0%. Or you can progmaticly create the center. 3. If your running this from a trigger, then you need to change "_pos1" to "pos1" and declare it before you run the above code. Or hard code the position in the code above.
  19. This should help you with the time script as well. I dont remember where I got this from but it was a real old time script, I edited it slightly for my needs. Should work for you as well. while {true} do { _seconds = time; _hours = floor(_seconds / 3600); _seconds = _seconds - (_hours * 3600); _tensOfMinutes = floor(_seconds / 600); _seconds = _seconds - (_tensOfMinutes * 600); _minutes = floor(_seconds / 60); _seconds = _seconds - (_minutes * 60); _tensOfSeconds = floor(_seconds / 10); _wholeSeconds = floor(_seconds - (_tensOfSeconds * 10)); _elapsed =""; _elapsed = format ["%1:%2%3:%4%5", _hours, _tensOfMinutes, _minutes,_tensOfSeconds, _wholeSeconds]; ctrlSetText [1072, _elapsed]; sleep 1; };
  20. This spawns a group and a vehicle and has the units board the vehicle. group3 = [_pos1, east, ["TK_INS_Soldier_TL_EP1","TK_INS_Soldier_EP1","TK_INS_Soldier_AR_EP1"]] call BIS_fnc_spawnGroup; group3veh = [[_pos1 select 0, (_pos1 select 1) - 5,.5], east, ["BTR40_MG_TK_INS_EP1"]] call BIS_fnc_spawnGroup; _nObject = nearestObject [_pos1, "BTR40_MG_TK_INS_EP1"]; { _x action ["getInCargo", _nObject]} forEach (units group3); Just change the _pos1 , groups and veh for your tastes.
  21. Yep, thanks muzzleflash, I always get them mixed up , by which one is depreciated.
  22. Raise a cba remote local event: https://dev-heaven.net/docs/cba/files/events/fnc_remoteLocalEvent-sqf.html
  23. Not an offical tool, but close enough. Also it does not do all the work for you, you will still need to know how to put it all together. http://community.bistudio.com/wiki/User_Interface_Editor_(Arma_2)
  24. Im sure a mod will come by and tell you to post these types of questions in the ACE thread. But... Here is what your looking for: ace_sys_wounds_no_rpunish = true;
  25. I know neo, But what I am saying is you can achieve the same effect by running setVariable commands locally using either cba events or MP framework. If he can not use publicVariableServer due to beta issues or it not working correctly, then it can be done other ways. Like I said.
×