Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Everything posted by behemeth

  1. Hi all, I'm trying to make a mission consisting of multiple submissions. Sometimes, when one submission goal is achieved I want to do a cutscene to do some story telling (very simple, only text). I saw the use of cutText for Intros and tried this. It simply fades the screen black and gives some text on the black screen. However, the engine around me continues to simulate. Which leads to the possibility of being shot (and even if not getting directly shot at, it's a stupid feeling when you hear gunshots by AI but are blacked out from the scene. Is there a typical way how to deal with it? Like freezing the simulation or a different approach to display text in a nice way for some storytelling (I tried systemChat, but somehow this doesn't seem very prominent...) Thanks!
  2. Hi all, I'm trying to remove a specific weapon (known by classname) from the cargo. The issue currently is that this seems only to be possible by clearing the complete weapon cargo and adding everything back but the weapon I want to remove. This however leads to issues as all attachements are lost. I found on the wiki the command "removeWeaponCargo", which possible could be used to delete only the weapon in question: https://community.bistudio.com/wiki/removeWeaponCargo. This uses weaponID and creatorID as arguments. Does anyone know what those are, and where I can find them for the given weapon I want to delete?
  3. If someone else is looking for a convenient solution CBA offers removeWeaponCargo. It basically seems to do what I wrote as a possibility: removing the targeted weapon and strapping all other weapons of the attachments and storing them separately in the container. It's not perfect, but at least the attachments aren't lost: https://cbateam.github.io/CBA_A3/docs/files/common/fnc_removeWeaponCargo-sqf.html
  4. Thanks a lot for the heads-up. If that command is not working, I guess the only chance to remove an item from the cargo without deleting attachments of the other weapons, when adding them back after the clearWeaponCargo, is using weaponsItemsCargo. After clearing the cargo one could add the weapons and the stripped of attachements as known by weaponsItemsCargo back to the container. If anyone can think of a better solution please let me know.
  5. I don't know... I'm still looking for information about what the arguments weaponID and creatorID could be... but I found nothing on those via google... that's why opened this thread...
  6. Hi @HazJ, thanks for the input, but I don't see the point... Sadly cargo doesn't behave like an array. I can ask for the container cargo with getWeaponCargo and of course I could use find and deleteAt on the returned array... This doesn't change the original cargo though. Up until now the only possibility is to clearWeaponCargo and add everything of the "cleansed" (via find, deleteAt) array. This is what I'm currently doing. This however looses all attachements on the weapons in the cargo...
  7. Hey all, I'm, trying to find out the Ammo count of CfgMagazine objects in a vehicle/container. I know, I can retrieve the magazine from a container by using getMagazineCargo. However, this only returns the type of magazine and the total count of magazines... Nothing about the actual ammo in the magazines. I found that there now is a setMagazineAmmoCargo command which allows adding magazine with custom ammo count, which is great. Yet, I couldn't find a similar command, like the same as get, to solve my problem of knowing how much ammo is in the magazine in a container. I also tried a workaround with _unit action ["TakeMagazine", _container, _magazineString] to get the magazine and do a count outside the container... However, this only plays the "Take" animation but does nothing else. According to (old) posts, this action is broken. Sadly, the there exist posts reaching back to the Arma 2 days with the given questions and no answers could solve the problem. Maybe you've got some updates for me. Thanks!
  8. @HazJ thanks, but no... I already knew those. They don't give the ammo count. See the posts above for the right ones (which are hard to google... at least I didn't find them before @gokitty1199 hint. Here the relevant ones: Adding magazines with specific ammo count to container: https://community.bistudio.com/wiki/addMagazineAmmoCargo Getting the magazines with respective ammo count in a container https://community.bistudio.com/wiki/magazinesAmmoCargo
  9. Thanks so much @gokitty1199, while it's not the exact command I needed (this seems to only give the vehicle's armament ammo), the command helped me to find magazinesAmmoCargo, which does exactly what I need! Also big thanks for providing the extremely helpful example code!
  10. I found that it was not possible to have different groups in one vehicle. Use Case: You want to have a driver and a task force in a vehicle. The vehicle goes to a drop off point and the task force exits and both, vehicle and task force, continue their own specific waypoints. I changed the fn_main.sqf to allow for such: https://pastebin.com/XAV7qFkP I also provide an example mission of this use case: https://drive.google.com/open?id=1vp4wkuh64RN1PVGd27pDH28Ypkq9vvbc The changes for the additional groups within the vehicle are a little more invasive than the changes up to now. I did debug with 2 lives and it did work nicely. However, Jebus offers a lot of options, which I do not use yet and hence didn't test. So there's no guarantee the code changes will work for every possible scenario.
  11. Please try: fn_saveWaypoints.sqf: https://pastebin.com/PsQHy18h fn_applyWaypoints.sqf: https://pastebin.com/nTHdp7J7 I only tried it with Lives=1, but from what I understand it should also work with respawns. If it doesn't, please share the mission and I'll be happy to debug it.
  12. behemeth


    Thanks for the info, sounds good! Just been wondering... actually I didn't notice that they were gone in all the hours I've been playing already :)
  13. behemeth


    I don't see any powerlines on Altis when Ravage is loaded. Is that desired behavior? If not, is anyone experiencing the same?
  14. Didn't work with CBA_ModuleAttack etc. with the new pastebin it does work (even works with activation triggers added to the CBA Module) https://pastebin.com/qyRAJtev
  15. Updated to also allow additional stuff (bags, tools, camonets etc.): https://pastebin.com/B0He3jwZ Edit: just to clarify, with the changes you don't need the INIT parameter. You can basically just edit the vehicle in the editor (e.g. via "edit vehicle appearance") and in its basic init field. The stuff will be stored by the fn_main.sqf and pushed into the new spawned vehicle.
  16. @dreadpirate Hey dreadpirate. Thx for this great script! Really helps in creating dynamic missions. There were a few drawbacks for vehicle placement (backpacks in cargo didn't work, fuel/health/hitpoints were not saved) I changed the fn_main.sqf to allow for this. It works for my case, however I do not use all your functionality and hence am not sure if the changes affect anything else for the worse. Here is the pastebin, if you'd like to check and possibly update your version accordingly: https://pastebin.com/mppdV8TL Edit: @redarmy New pastebin also including the Object Textures and Object Materials (not sure if this was meant when you requested skins): https://pastebin.com/nEZP7b30 Didn't test it in multiplayer. In singleplayer it worked for my small test - however, beware: not extensively tested at all...
  17. behemeth


    Hey CptStampede, if you just want it to have the texture without the damage, try: this setObjectMaterialGlobal [0, "\A3\soft_F\Quadbike_01\Data\quadbike_01_base_destruct.rvmat"]; the file you need to select depends on the type of vehicle of course. The example is for the quad. If you need the texture file for the other vehicles you have to un-pbo ravage and look for fn_vehInit.sqf in: @Ravage\addons\ravage\functions\main\ Edit: Just found a way where you don't need to check the ravage source: 1) right click on vehicle and select "find in config viewer" 2) double-click on the highlighted vehicle name in the list on the left side of the screen (probably need to scroll a bit) 3) now on the left side you should see more categories opened for the vehicle. one of which is "Damage". One click on damage to see the texture name on the right window.
  18. behemeth


    haleks, thanks a lot for the guidance! Placing the "LocationCamp" gamelogic works like a charm! I didn't completely get the part for the bandits, though. If I understand it right, I want the condition to be false when the player is in range of any of the "safe zones". So putting "!(player distance location1 < 1000) && !(player distance location2 < 1000)" in the condition field of the Ravage_ai module should be the right way, is that correct? Edit: Tried it out and seems to be correct. Thanks! So there's only one thing to remark regarding the radiation safe zone -> currently you have to place more than one LocationCamp to make an area really radiation free (due to the logic used to place the radiation zones w.r.t. the LocationCamp it's possible to have a radiation zone bordering directly with the game logic). So if anyone also is interested in using this approach, placing 3 LocationCamps around the POI guarantees a radiation free area within the triangle area (as long as the sides of the triangle are less than approx. 700m)
  19. behemeth


    Hey CptStampede, thanks for the hint. Sadly, it doesn't help in my case. This is only making the player invulnerable if I understand it correctly. This doesn't help with the radiation. Also, I want to have manually placed hostile AI in the zone. For missions... so making the player invulnerable is no option anyways. I checked the ravage source code and the flag "exclude radiations" of the safe zone is in deed used in the functions... however, I don't really understand what it does and it doesn't seem to have the desired effect... I'm one step further now. The safe zone is supposed to generate a vehicle called "LocationCamp_F". In the radiation zone placement the radiation zone is not placed if a "LocationCamp_F" would be within the radius of the radiation zone. In createSafeZone.sqf, where _pos is the center of the SafeZone if (_radSafe) then { _camp = createVehicle ["LocationCamp_F", _pos, [], 0, "NONE"]; }; In radMap.sqf, which creates the radiation zones, where a random check is done and a check whether the SafeZone is within the radius of the radiation zone. If there was a safe zone in the radius the radiation zone would not be placed if ((random 100) < 20 && {(position _x nearObjects ["LocationCamp_F",700]) isEqualTo []}) then { _pos = [position _x, 300, 600, 1, 0, 350, 0] call BIS_fnc_findSafePos; radMap pushBack [_pos, 700]; }; I encounter 2 problems: 1) Possibly a bug: When checking in the mission there is no "LocationCamp_F" where the Safe Zone is placed, therefore the check in radMap.sqf won't find anything and place the radZone. 2) A logic problem: When I place the safe zone, I want to have the extend of the zone (safe zone radius) to be free of radiation. However when using the check in the radiation placement, I'd only ensure that there is no overlap between the center of the safezone and the radiation zone. The region between the safe zone center and the radiation zone center is still possible to be part of the radiation zone
  20. behemeth


    Hey all and thank you, Haleks, for this great mod! I'm currently trying to build a SP mission with Ravage and try to exclude radiation zones for some regions of importance. I tried the "Safe Zone" with all kinds of different settings. It doesn't seem to work though - it doesn't stop radiation nor does it stop bandits from entering the zone. Is there anything special I'm missing or is there any other possibility to make a radiation free zone?
  21. Ah. I didn't get this limitation then. Since the first conversation (after activating the action) always showed up and used my profile name as player name - so I thought I'm fine :). Maybe you can clarify that by name you mean the variable name of the unit. On the other hand it seems to have been clear for everyone but me - I'm still pretty newbish when it comes to scripting missions :), sorry about that.
  22. Thanks for this great release IndeedPete! I just want to add one remark: The unit (player) initiating the conversation by action (sentence + response) needs to have a variable name defined (which I did forget as I can always use player to access the unit). If you do not name the unit it has a very strange variable name like "Alpha 1-1:1 ...". As the script relies on saving unit names as strings and call compile them back such an invalid variable name leads to issues.
  23. behemeth

    Arma3 - AGGRESSORS

    Hey Ohally, thanks for your work! I just have on question: When using the SVD for distances above 400m there is quite a bit of horizontal spread of the bullets. I have to admit that I'm not very familiar with real rifle behaviour but the spread seems a bit high for a marksman rifle. Is it intended?
  24. I'm currently trying to port my mission to COOP on a dedicated server. While doing this I encounter that the scripts I wrote for SP oder COOP on a non-dedicated server are not working for the dedicated server. One example: I'm trying to do a HALO insertion and use an addAction to the airplane my group is in with the following script attached: if(!isDedicated) then { player action [ "eject", vehicle player]; sleep 0.1; player setdir 0; [player] exec "ca\air2\halo\data\Scripts\HALO_getout.sqs"; player setvelocity [120*0.8,0,0]; } The "sleep 0.1" is mandatory otherwise I fall without a parachute. The setdir and setvelocity have no influence for the dedicated server (which is kinda annoying). When scripting for a non-dedicated server the single line [player, 1950] exec "ca\air2\halo\data\Scripts \HALO_init.sqs"; suffices instead of ejecting and HALO_getout. While this is strange enough, until now I was not able to convert the following script to a format that is working for a dedicated server Version 1: [code] waitUntil {getPosATL player select 2 < 25}; if(isServer) then { _scatterHeight = -20; { if(!(isPlayer _x)) then { // stupid AI drifts off several kms if not done _x addEventHandler ["HandleDamage", {false}]; unassignvehicle _x; _x setpos [ (getMarkerPos "mrkrInsertion" select 0) + (random 40) - 20, (getMarkerPos "mrkrInsertion" select 1) + (random 40) - 20, 100 - _scatterHeight]; _x flyinheight (100 - _scatterPos); _x setvelocity [(random 6)-3,(random 6)-3,0]; [_x, (100 - _scatterHeight)] exec "ca\air2\halo\data\Scripts\HALO_init.sqs"; _scatterHeight = _scatterHeight + 10; } } forEach units playerGroup; } Version 2: if(isServer) then { _scatterHeight = -20; { if(!(isPlayer _x)) then { // stupid AI drifts off several kms if not done _x addEventHandler ["HandleDamage", {false}]; unassignVehicle _x; sleep 1; _xChute = createVehicle ["Parachute_US_EP1", [(getMarkerPos "mrkrInsertion" select 0) + (random 40) - 20, (getMarkerPos "mrkrInsertion" select 1) + (random 40) - 20, 50 - _scatterHeight], [], 0, "FLY"]; _xChute setPos [(getPos _xChute select 0), (getPos _xChute select 1), 50 - _scatterHeight]; _xChute setDir (random 360); _x setPos [(getPos _xChute select 0), (getPos _xChute select 1), 50 - _scatterHeight]; _x moveInDriver _xChute; _scatterHeight = _scatterHeight + 10; } } forEach units playerGroup; } The goal of that script is to drop the AIs of the group near the landing place. Both works well for non-dedicated. For dedicated the chutes drop empty (in Version 2) and the AIs are falling of the airplane wherever the current location of that is. I'd really appreciate some help in converting the second part to a dedicated server compatible format. I'd also love to get some insight why the scripts for the dedicated server have to differ - is there a point of view making this reasonable?
  25. OK guys... the first mystery is "solved". It seems that the dedicated server is a rather slow-paced guy. _requestingUnit = _this select 1; _requestingUnit action [ "eject", vehicle _requestingUnit]; sleep 0.1; _requestingUnit spawn bis_fnc_halo; sleep 0.1; _requestingUnit setvelocity [0,120*0.8,0]; _requestingUnit setdir 0; With those sleeps all works as it should. The question why this sleep is needed is open though - and the question whether the script will now work an any dedicated server or if it may happen that some other dedi is slower than mine and would need a longer sleep. Summing up it's not a very convenient solution. But better than none. Sadly that's not what I'm trying to do - this script will just eject the AIs, but I want to use setPos on them in order to avoid broad scattering of the group. I will try to add sleeps randomly for the second problem now and see if I reach a constellation for which it works... :depressed: