Jump to content

Search the Community

Showing results for tags 'scripting'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


    • Vigor
    • DAYZ
    • ARMA 3
    • ARMA 2
    • YLANDS
    • ARGO
  • Die Hard OFP Lovers' Club's Topics
  • ArmA Toolmakers's Releases
  • ArmA Toolmakers's General
  • Japan in Arma's Topics
  • Arma 3 Photography Club's Discussions
  • The Order Of the Wolfs- Unit's Topics
  • 4th Infantry Brigade's Recruitment
  • 11th Marine Expeditionary Unit OFFICIAL | 11th MEU(SOC)'s 11th MEU(SOC) Recruitment Status - OPEN
  • Legion latina semper fi's New Server Legion latina next wick
  • Legion latina semper fi's https://www.facebook.com/groups/legionlatinasemperfidelis/
  • Legion latina semper fi's Server VPN LEGION LATINA SEMPER FI
  • Team Nederland's Welkom bij ons club
  • Team Nederland's Facebook
  • [H.S.O.] Hellenic Special Operations's Infos
  • BI Forum Ravage Club's Forum Topics
  • Exilemod (Unofficial)'s General Discussion
  • Exilemod (Unofficial)'s Scripts
  • Exilemod (Unofficial)'s Addons
  • Exilemod (Unofficial)'s Problems & Bugs
  • Exilemod (Unofficial)'s Exilemod Tweaks
  • Exilemod (Unofficial)'s Promotion
  • Exilemod (Unofficial)'s Maps - Mission Files
  • TKO's Weferlingen
  • TKO's Virolahti
  • TKO's Livonia
  • TKO's Rules
  • TKO's Changelog
  • TKO's Help
  • TKO's What we Need
  • TKO's Australia
  • MSOF A3 Wasteland's Server Game Play Features
  • MSOF A3 Wasteland's Problems & Bugs
  • MSOF A3 Wasteland's Maps in Rotation
  • SOS GAMING's Server
  • SOS GAMING's News on Server
  • SOS GAMING's Regeln / Rules
  • SOS GAMING's Ghost-Town-Team
  • SOS GAMING's Steuerung / Keys
  • SOS GAMING's Div. Infos
  • SOS GAMING's Small Talk
  • SOS GAMING's TS³ Viewer
  • NAMC's Topics
  • NTC's New Members
  • NTC's Enlisted Members
  • The STATE's Topics
  • HavenEmpire Gaming community's HavenEmpire Gaming community
  • Polska_Rodzina's Polska_Rodzina-ARGO
  • Carrier command tips and tricks's Tips and tricks
  • Carrier command tips and tricks's Talk about carrier command

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



Website URL


Jabber (xmpp)








Steam url id







PlayStation PSN














Found 383 results

  1. Hey, sorry, I'm pretty new to designing missions, so I'm not great at scripting. I'd like to make it so that, on a multiplayer server, with 5-20 players, it randomly picks one or two. The idea would be that it would flash a message on their screen, and theirs only, so that no one who is NOT picked would know about it. Does anyone know what code I should fuck with to do this? I already know how to make it output messages via Hints, I just need to know how to make it randomly pick that one or two players to do it to, without anyone else (including the host, if possible) knowing who was picked.
  2. Is there a way to edit Bohemia Interactives default game modes? For example, I wanted to make a Multiplayer Advance and Secure scenario and the already implemented game mode "Warlords" covers a lot of the needed mechanics. The problem is there's a lot of extra mechanics and UI that I don't really need in the scenario and the modules don't give me enough control. I have tried using light mods like MCC but I wanna keep the mission as light as possible even if it means more work on my end. If any one can just give me A TLDR, point me in the right direction, or even tell me if whether or not what I want to do is possible that would save me a lot of time. Thanks.
  3. Hello! So a bit of backstory, so you know the scroll wheel arsenal that has a restricted option where only "x" amount of items can be in the crate, cargo, etc. until it is used up, similar to how Antistasi has it in their mod? My question is that is there a way I could apply the restricted arsenal concept to an ACE Interaction arsenal or is that impossible? Thanks!
  4. So I'm creating a multiplayer PVP game mode on an Oil Rig I built. The issue is that I'm using two scripts created from two different people and I need to combine them to do what I want. There is a bomb that must be defused and laptops that you must download data from in order to retrieve the defusal code from ONE of the laptops. I have four laptops. The players must download data off of all the laptops in order to find the single defusal code on one of the laptops. The main issue is that when a player clicks the ## Download Data ## addAction, it begins the "downloadData.sqf" process, which is fine, but the bomb defusal script also has an addAction to obtain the defusal code on the same laptops, which leads to one of the laptops randomly chosen to have TWO actions, the ## Download Data ## action and the bomb defusal code action. I want the player to first have to ## Download Data ## before recieving the defusal code, instead of having the ## Download Data ## do nothing and the defusal code just being a second addAction. First Script is the Download Data script. As follows: "downloadData.sqf" *// T8L_var_fileSize = 25687; // Filesize ... smaller files will take shorter time to download! // These create the text for the pop up download bar after the player clicks the addAction ## Download Data ##. T8L_var_TLine01 = "Download aborted"; // download aborted T8L_var_TLine02 = "Download in progress"; // download already in progress by someone else T8L_var_TLine03 = "Download started"; // download started T8L_var_TLine04 = "Download finished"; // download finished T8L_var_TLine05 = "## Download Data ##"; // line for the addaction T8L_var_TLine06 = "Connecting ..."; T8L_var_TLine07 = "Connected:"; T8L_var_DialogAbort = false; T8L_var_DialogSucce = false; //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// T8L_fnc_abortActionLaptop = { if ( T8L_var_DialogSucce ) then { T8L_var_DialogAbort = false; T8L_var_DialogSucce = false; } else { cutText [ T8L_var_TLine01, "PLAIN" ]; T8L_var_DialogAbort = true; T8L_var_DialogSucce = false; }; }; T8L_fnc_addActionLaptop = //This adds the ## Download Data ## action and text to all the laptops { { if !( _x getVariable [ "T8L_pvar_dataDownloaded", false ] ) then { _x addAction [ T8L_var_TLine05, { call T8L_fnc_ActionLaptop; [] execVM "downloadANIM.sqf"; }, [], 10, false, false]; }; } forEach _this; }; T8L_fnc_removeActionLaptop = // This removes the action from the laptops after they have been used sequentially by the player { _laptop = _this select 0; _id = _this select 1; _laptop removeAction _id; }; T8L_fnc_ActionLaptop = // This creates the actual data download process using a pop out download UI so that the player can visually see the download occur in real time { private [ "_laptop", "_caller", "_id"]; _laptop = _this select 0; _caller = _this select 1; _id = _this select 2; if ( _laptop getVariable [ "T8L_pvar_inUse", false ] ) exitWith { cutText [ T8L_var_TLine02, "PLAIN" ]; }; if ( _laptop getVariable [ "T8L_pvar_dataDownloaded", false ] ) exitWith { cutText [ T8L_var_TLine04, "PLAIN" ]; }; cutText [ T8L_var_TLine03, "PLAIN" ]; _laptop setVariable [ "T8L_pvar_inUse", true, true ]; [ _laptop, _id ] spawn { private [ "_laptop", "_id", "_newFile", "_dlRate", "_percent" ]; _laptop = _this select 0; _id = _this select 1; _newFile = 0; T8L_var_DialogAbort = false; T8L_var_DialogSucce = false; createDialog "T8L_DataDownloadDialog"; sleep 0.5; ctrlSetText [ 8001, T8L_var_TLine06 ]; sleep 0.5; ctrlSetText [ 8001, T8L_var_TLine07 ]; ctrlSetText [ 8003, format [ "%1 kb", T8L_var_FileSize ] ]; ctrlSetText [ 8004, format [ "%1 kb", _newFile ] ]; while { !T8L_var_DialogAbort } do { _dlRate = 200 + random 80; _newFile = _newFile + _dlRate; if ( _newFile > T8L_var_FileSize ) then { _dlRate = 0; _newFile = T8L_var_FileSize; ctrlSetText [ 8001, T8L_var_TLine04 ]; cutText [ T8L_var_TLine04, "PLAIN" ]; T8L_var_DialogAbort = true; T8L_var_DialogSucce = true; _laptop setVariable [ "T8L_pvar_dataDownloaded", true, true ]; [ [ _laptop, _id ], "T8L_fnc_removeActionLaptop", true, true ] spawn BIS_fnc_MP; [] execVM "codeAction.sqf"; // Here is where I'm having issues. Both these execVM codes I have added as an attempt to combine the bomb defusal script with the Data Download script in an attempt to make the Data Download script "spit out" the defusal codes. [] execVM "codeRemove.sqf"; // I added a "codeRemove" script because the problem is that every time the player downloads, it executes the addAction in the bomb defusal script, leading to multiple copies of the defusal codes. }; // percentage part by cuel! ctrlSetText [ 8002, format [ "%1 kb/t", _dlRate ] ]; _percent = ( _newFile / T8L_var_FileSize ); _percent = toArray str _percent; { _percent set [_x,-1] } forEach [ 0, 1 ]; _percent = _percent - [-1]; _percent resize 2; _percent = toString _percent; ctrlSetText [ 8004, format [ "%1 kb (%2%3)", _newFile, (if ( T8L_var_DialogAbort ) then { 100 } else { _percent }), "%" ]]; // This creates a percentage increase in the Data Download script to simulate files being downloaded over time. sleep 0.25; }; T8L_var_DialogAbort = false; _laptop setVariable [ "T8L_pvar_inUse", false, true ]; }; }; T8L_var_INITDONE = true; The second script is the Bomb Defusal script (many parts to this script) which creates a bomb timer and defusal UI that allows you to cut wires and press buttons on a keypad. The Bomb defusal script generates a randomized code and wire color to defuse the bomb, and this random defusal code is then put on a random laptop. One of the four random laptops I have in my mission: BOMB DEFUSAL SCRIPT: "codeInput.sqf* //" CODEINPUT = []; CODE = [(round(random 9)), (round(random 9)), (round(random 9)), (round(random 9)), (round(random 9)), (round(random 9))]; //6 digit code can be more or less WIRE = ["BLUE", "WHITE", "YELLOW", "GREEN"] call bis_fnc_selectRandom; // This creates the randomized defusal code. DEFUSED = false; // The defused = false and armed = false is to prevent the bomb from immediately going into one of the two states as this is tied to the endMission tasks. ARMED = false; codeHolder = [laptop1,laptop2,laptop3,laptop4] call BIS_fnc_selectRandom; // This creates an array that randomizes the selection of which laptop will receive the defuse code. codeHolder addAction [("<t color='#E61616'>" + ("The Code") + "</t>"),"DEFUSE\searchAction.sqf","side (group player) == west",1,true,true,"","(_target distance _this) < 3"]; // This creates the addAction command that allows the player to see the code. When they click it it executes the "searchAction.sqf": "searchAction.sqf" *// _host = _this select 0; _caller = _this select 1; _id = _this select 2; _host removeAction _id; _caller playMove "AmovPercMstpSrasWrflDnon_AinvPercMstpSrasWrflDnon_Putdown"; // This just makes the player do an animation when they pick up the code from the laptop. cutText [format ["Code: %1\n Wire: %2", CODE, WIRE], "PLAIN DOWN"]; // I'm guessing this communicates with the functions .hpp scripts and somehow generates the code. "caseBomb.sqf" *// caseBomb addAction [("<t color='#E61616'>" + ("Defuse the Bomb") + "</t>"),"defuseAction.sqf","",1,true,true,"","(_target distance _this)< 5, side (group player) == west"]; // This creates the addAction command on the Bomb Case which brings up the keypad to defuse the bomb. The bomb detonates if the player inputs the wrong code or the timer runs out. So the main issue I'm having is that I want there to be an addAction after the Download finishes. but the problem is that when I try to put the addAction where the download finishes, it spawns a new action every time the player downloads even if its on the wrong laptop that doesn't have the code. It's because the defusal code addAction is firing every time the download finishes but I only want it to fire once. Anybody got any ideas for adding like a limit or something to the addAction, so that the defusal code can only go out once?
  5. Hello! I have problems with drawing icons (default solder icons for all units) in onDraw event handler. Some of the icons are rendered, some are not. Some rendered icons can disappear after moving or zooming map. My dialog: Map onDrawMap script: Seems like I'm make some stupid mistake, but I can't figure out what exactly. 🤔 In-game dialog after creation: After map moving upper: Top-left squad with broken rendering P.S. Scripts and dialog code is shortened for ease of understanding
  6. Hi I have a problem fixing the code, so I ask for help like this. In Arsenal, I modified the code so that only engineers can bring explosives, but the error continues to be printed if am i wrong language was used. any ideas? [] spawn { waitUntil{ if (("B_engineer_F") = false) exitwith { [format ["<t size = '.6' color='#ff3030'>%1은(는) 사용할 수 없습니다.</t>", getText (configFile >> "CfgMagazines" >> _x >> "displayName")], 0, 1, 1] spawn BIS_fnc_dynamicText; player removeMagazines _x; } forEach ([[], magazines player arrayIntersect removemagazinexiplosives] select ARSENAL); }; false }; korean mean : %1can't use this error list : if ("B_engineer_F" = false) then [format ["<t size = '.6' c> 22:00:12 Error position: <= false) then [format ["<t size = '.6' c> 22:00:12 Error ) is missing 22:00:12 File C:\Users\1234\Documents\Arma 3 - Other Profiles\Taru\mpmissions\RSF_DEVELOP3.Altis\initPlayerLocal.sqf..., line 422 (english translated, sry)
  7. MGI ADVANCED MODULES Hi all, Here is an addon for mission makers. If you need to easily spawn some factions, some civilian life or just add randomized weapons loot in houses... If you want an advanced AI heal & revive, for SP or MP mission, able to heal players or bros.. ... or respawning AIs, in waves or at once.. If you want a transport support on any vehicle... A vehicle respawn system with crew, waypoints, loadouts, addActions, arsenal.... Friendly kill sanction... AI cannons able to fire HE shells on infantry... Some generators able to switch on/off a district... or adapt silencers to combat behavior... or perhaps a simple tool for reading all map object classes/display names/p3d model names... Other tools like tire puncture on barbed wires? ... And of course, MP compatible, favorite mods compatible... Here you are. https://steamcommunity.com/sharedfiles/filedetails/?id=1682280809 Adapt silencers to stealth/combat situation No video SP/MP compatible - all mods Advanced patrols (spawning factions on locations/areas, patrolling then split for defending/attacking) See video SP/MP compatible - all mods Advanced transport See video SP/MP compatible - all mods AI can respawn No video SP/MP compatible - all mods Civilian life See video SP/MP compatible - some known mods Drop vehicle instead of crate See video SP/MP compatible - all mods Enhanced Turrets No video SP/MP compatible - all mods (so far. feedback welcome) Flip overturned vehicle No video SP/MP compatible _ all mods HALO jump No video SP/MP compatible - all mods Heal & revive see video SP/MP compatible - check for mods... Modded units are not a problem. But some mods like ACE have their own scripts and could be incompatible. Furthermore, I scripted for some conditions about the presence of FirstAidKit and MediKit. This module is complex enough. I didn't grab into mods for exotic classes of items (and I will not). Of course, you can choose to skip these conditions. Kill punishment See video SP/MP compatible -all mods Loot weapons & items in houses See video SP/MP compatible - some mods (CUP UNSUNG IFA3 RHS R3F) Marker to Task See video SP/MP compatible - all mods Respawn vehicles No video (see an old one about script to have an idea) SP/MP compatible - all mods Important note: This module uses EH handleDamage. This EH doesn't work if you apply something like: testedVehicle setDamage 1 from console. The script needs some hits on parts (updating vehicle data before destruction). So, crew and waypoints will be respawned after a current kill/disabled vehicle in game. SP simple respawn No video Single Player only Switch ambient lights See video SP/MP compatible - all mods so far... Tire puncture No video SP/MP compatible - some mods Touch of class! See video SP/MP compatible - all mods Wear what you want No video SP / MP compatible - all mods (not all. Some weird mods don't have true uniforms but some skinned units... Nothing to do with that) One man tank No video SP/MP compatible - all mods with Tanks or APCs Prisoners See video SP/MP compatible (not fully tested in MP) - all mods so far Have fun! Pierre MGI 06 sept 2020 See also new modules. On line in a couple of days.
  8. Hello! I have been working on a mission for a while now, where the players have to take a big town. To do so there are multiple goals and my plan was to provide the players with little rewards for completing certain tasks. One of the rewards was supposed to be a new artillery provider (helicopter or artillery) but i cannot make it work. The mission always starts out with the player group already having access to all the support. Is there any way of setting up a trigger or something that will cause new support units to become available? Thanks in advance!
  9. I am attempting to animate a deck crew man with the "Acts_JetsMarshallingStraight_loop" animation. I am using the BIS_fnc_ambientAnim function. I place the following in the unit init field [deckhand, "Acts_JetsMarshallingStraight_loop","ASIS"] call BIS_fnc_ambientAnim; No issues with getting him to do the animations at mission start. However I would like to have the unit conduct the animation only when a helicopter is inbound and the distance from deck crew to helo1 is <50 meters. I also would want the deck crew to terminate the animation once the helo has landed (isTouchingGround). Here is what I currently have placed in a trigger "On Activation" field: [deckhand, "Acts_JetsMarshallingStraight_loop","ASIS"] call BIS_fnc_ambientAnim; waituntil {{isTouchingGround helo1}; this call BIS_fnc_ambientAnim__terminate}; The same trigger's "Condition" field has this: deckhand distance helo1 < 50; Unfortunately I am receiving an error when the trigger is activated and the deckhand does nothing. I am quite sure that I have designed the script wrong, but I can not seem to find my error. Thank You
  10. (On Dedicated Server Setup) Hello, I'm working on a script that spawns in specific AI units in specific locations upon activation of a trigger. This is for performance purposes but also because I want to be able to disable the AI in certain situations. In order to set the unit in exactly the position I want them to be in, I'd like to use the Eden editor. Next I have a few options on how I can spawn them in. I'm not sure how each will tax the server resources and I'd like to use the option that is the most efficient to avoid latency and hardware slog. 1) I've thought about creating each unit individually via script and pass xyz coordinates for placement. I imagine this will be slow, taxing, and may not even be possible from what I've read about the z variable in position. 2) I can place an object like a "can" where I want them to spawn, turn the can invisible and then replace the cans with my units when the trigger is tripped. 3) I can place my units in a group name, set the units for simulation false and hidden in the init and run a script that activates and shows them upon trigger. I'm leaning towards option 3, but what is the resource cost of having a hidden deactivated AI preloaded in place? Should I expect it to be similar to having them entirely loaded and activated? Should I instead use one of the first options? I'm open to other suggestions as well, but would like to get a feel for how taxing a hidden object and a shown object are on the server. I'd also like to know where I can learn more about activating objects visibility, collision, ect so I'd you have a link of be very grateful.
  11. First, some info for context: 1) I'm a scripting Noob and this is being made because of the noob perspective I hope to out grow but wish to utilize. 2) This forum is filled with incredibly talented and knowledgable people. Keep in mind many people reading these have no education at all in the subject and dont understand your explanations due to a lack of vocabulary. Now that that's out of the way! I've been browsing topics here for awhile and there are many introduction and tutorial threads available. However, as many of you may remember with your first time learning, a lot of vital information falls through the cracks that later become insurmountable obstacles filled with frustration. So I thought I'd provide the mind melting eureka information I got that solved many of my problems and hope you guys will to. Comment information, hints, and links to things most noobs miss or need to know before attempting a script of any kind. Heres mine: - Theres a huge difference between how mission editing and scripting needs to be organized and utilized between SinglePlayer amd MultiPlayer. Read this if you want to know more about multiplayer scripting (https://community.bistudio.com/wiki/Multiplayer_Scripting) read this entire page start to finish and navigate hyperlinks to anything that's sus this will explain why you'll see 3 different explanations for the same problem and none of them are working for you because you dont know what a description.ext file is. - Arma3 has undergone updates to its scripting ( or it appears so) some functions you'll see being recommended to you from a youtube video from 2014 may not apply to the version you are using. This applies to the Eden editor and previous editors as well. Usually theres a link to new versions in and explanations to what changed in that functions wiki page. - You have to make your own sqf files. When you launch a mission the game will search for specific files. By naming you file that same title it will load that file in place of. Basically, its asking for butter and a song as you've labeled it butter, its gunna use it like butter. Learn all you sqf file names in the wiki. - If your using Notepad ++ there are plugins. for sqf file type that highlights relevant. variables the way you see everyone else's in videos. - half the battle is speaking the language. So click on every hyperlink presented to you and read it whether it makes sense or not. Sometimes it takes a single page to tie everything together. More experienced people please comment your own below, feel free to criticize anything I've said above, I'm also a noob. I know there is another thread for noobs (I've read it a million times believe me, I just want more posts just like it for the monkey brain level questions I have)
  12. Hello, I tried to search the forum for something like this but can't find anything that really answers my question, this may belong in the mission scripting section but I don't know what I don't know so sorry if it does. I know how to spawn ai units using a trigger script, and even how to set their positions using waypoints and get/set POS, and how to change their alertness and guarding behavior. But Id like to add enemy AI bases that will be subject to additional scripts later on. I want to be able to place my units where I want them through the Eden editor, but set them to only spawn if a trigger and condition is met. For example, lets say we have Airbase 1 and 2. Both have encounters designed within them, but the player must clear airbase 1 before units at airbase 2 can be triggered to spawn. I'm not so worried about the condition variable, it should be simple enough to pass a Bool when airbase 1 is "captured" that airbase 2 reads, I can figure that out as I go. More importantly, I need the ability to place units in a 3 dimensional space and trigger them to spawn in those exact locations. As far as I know the marker system only works in 2D and while you can pass an elevation variable its not what I'd call accurate when dealing with buildings of different size. The ability to simply create an enemy base with AI in the editor, export it as a module or something and then give it a trigger to spawn would be best for server performance and future adaptation. My best guess: Naming AI and groups, setting some kind of object in their place like an ammo magazine, then on trigger activation replacing the appropriate magazine with the appropriate unit class? But I feel like there is a better way to do this. Very new to this, so I'm sorry if I'm missing something super basic and obvious, I've only been learning simple mission scripting up to this point and have a little bit C++, JS, python knowledge.
  13. Hey Mates, I know it's kinda weird Question but, have anyone tested to Open a Scenario by trigger, or playing (Launching) a mission throughout activating a trigger....Please Help Immediately.
  14. InsanityGamer

    Satchels Only

    If i wanted to make a script that requires a satchel to be placed on a radio tower to destroy it, what would be a method i could use? Basically im trying to make it so players cant just shoot it with CAS or Artillery. someone has to physically walk up and place a satchel on the tower to blow it up.
  15. If anyone has played the arma 3 campaign 'resist' you know exactly what im talking about. For the rest ill quickly explain. In arma 3 resist you have a sequence in a mission in which you can choose to go a distance by foot over open ground or move to a certain location and enter an 'underground' sewer. The sewer obviously isnt underground because arma doesnt really allow that kind of stuff, instead it is a prebuilt structure, just like a house, but from the inside it feels like its underground. The way it works is a addaction command which teleports you in and out of the sewer and changes time of day at the same time so it seems like its underground. The sewer is built very well and the immersion is immense. Now to my question: Does anybody have prebuilt and/or expanded sewer from Resist? If not, does anybody have a different prebuilt sewer? And in any case, does anybody know the scripts that could be helpful to add a teleport and fadeout/fadein and time change for the object init? Reason is im trying to build a mission for the unit and id like to do something that hasnt been done a million times before. Maybe even @Kydoimos? I know you started building a whole sewer section and I was wondering if you ever finished it/have the started construction somewhere still. The new Composition feature would be amazing for this. Because yours looked realistic and i cant seem to find the right objects to recreate it.
  16. One day I decided to test my... "teaching skills" (not sure, if I have any though, beware...) and created a scripting tutorial for absolute beginners. There are some good sources in English, but seems hard to find something like that in Polish, hence Polish and English editions. Here it is: Polish: https://skryptysqf.blogspot.com English: https://sqfscripts.blogspot.com It's short, 4 chapters, still I tried to cover important basics of scripting craft (my way of practicing it at least). The main goal is to lower as much, as possible the entry treshold for those, who want to begin the adventure with Arma scripting, but have no clue, how to. Therefore this tutorial tries to provide also informations usually omitted, assumed as known/obvious. From my experience - nothing is obvious at the start, such assumptions, as I recall, was pobably the biggest obstacle for me. It is written from non-programmer perspective, without any programming experience assumed in the audience (I hope). Chapter 1 (PL/EN) explains preliminary topics like the role of the scripts in general, the sources of them, the basic way to use them in the game. Chapter 2 (PL/EN) focuses on the learning metodology, knowledge sources, basic terms and concepts required during the work. Chapter 3 (PL/EN) describes in detail a complete process of writing working SQF script example, from the bare concept description through the algorithm synopsis, collecting required commands, line-by-line walkthrough, syntax pitfalls... to the trial run footage. Chapter 4 (PL/EN) is all about the art of debugging (how I do it).
  17. Hello everyone, Here is a small project that may be helpful to everyone that doesn't always have access to internet/the wiki, or to everyone needing the biki when it is down. With the support of peeps in the #community_wiki Arma 3 Discord channel, I managed to extract wiki data to make a COMREF (Operation Flashpoint flashbacks intensify) This is basically offline documentation for commands and functions in all Arma titles - note that some glitches are still present, but the data is pretty much usable. newest version: 2020-11-23 COMREF (update after 2.00) old versions: - 2020-06-12 COMREF (added messagebox colours and better parsing) - 2020-06-10 COMREF (first version) My little helpers: @Grezvany13, @Dedmen, @x39, @optix, @Heyoxe, @A3_Stickie
  18. In a multiplayer survival mission I have going, I am trying to prevent my re-spawning players from simply walking up to their own bodies and looting their weapons and ammo -but- I don't want to disable looting altogether because I need them to be able to loot the enemy (OPFOR/Indep) during the course of the mission. So I tried this in an antiloot.sqf: and called it via the init.sqf....but it didn't seem to work. I'm not the best with using scripts so if someone knows what I am doing wrong or has an alternative code for preventing friendly looting i'd be delighted with any help I can get. Cheers
  19. Generalfeldmarschall Niessen

    Terminating sqf with !alive Trigger

    Guten Tag, Ok, so i have tried getting this to work since five hours or so but basically I'm trying to set up the following scenario : I got a perfect Loop with the executioner animations for a executioner and animations for someone that is about to be executed. So far so good, the player however has a chance of interrupting the execution by shooting the executioner. After the player does so however, the .sqf with the animations for both still plays out. I tried playing around with a terminate handler to prevent that from happening but to no avail. Any ideas how to stop the animations from happening midway through the script? Cheers.
  20. Good day to you soldiers! I am after a team of people to aid me in programme/scripting, altering, map creation and passing around ideas to create a new game mode for Arma III multiplayer. When playing Arma III multiplayer, you never take into consideration the limits of what factions can provide in real life, so I have came up with an idea for a full scale war between CSAT and NATO fighting over Altis with AAF forces stuck in the middle, though rather than the normal game modes on Arma III, I wish to put together a new game mode concentrating on a more strategic approach with a hierarchy on each side, and a currency system which can increase and decrease depending on your logistics teams collecting resources, and if you were to cause collateral damage. The war if won by logistics, not by brute force. I envisage a server of approx. 150/180 players, (60 each for NATO & CSAT and 30 [maybe 60] for AAF) on the server at one time, (BIG MATCH) and as it will be a tournament it will last over a few - six hour days from 1600 to 2359 GMT with a list of rules and requirements, and to negate the risk of non-committed players entering the tournament the server will be locked and only accessible to vetted (kinda) players. Each team will consist of a hierarchy system having one Officer in Command (OC) and his four Commanding Officers (CO's), each CO will be responsible for a quarter of the forces and split between logistics, ground offence, air offence and defence. These 5 will need to keep in constant communication to place orders with logistics, set up defences around FOBs and place minefields, call in airstrikes, and advance the line. Hierarchy & Team layout Officer in Command Confirms/denies orders and procurement of resources, the naysayer of the faction. Only person to speak to the 'Umpire' Logistics Officer Normally have ~11 people under his command (inc. officer, Sgt, 2xCpls, 7x soldiers) Responsible for placing orders of manpower, vehicles, equipment, base equipment etc Collecting resources from around Altis Defence Officer Normally have ~9 people under his command (inc. officer, Sgt, 2xCpls, 5x soldiers) Responsible for installing base defences and setting up FOBs Places down minefields [must keep track of all mines placed and sent to OC] Ground offence Officer Normally have ~38 people under his command (inc. 2xOfficers, 6xSgt,4Cpls,23xSoldiers, 3xCrew Responsible for pushing and disrupting enemy operations Air Offence Officer Normally have ~4 personnel (Officer and 3xPilots) Resources and research There are two types of resources, energy which can be acquired from the wind and solar farms around Altis, and oil that is found at all the petrol/gas stations, each resource returned to your carrier, base or FOBs will be counted by at the end of the game, these will be 'sold' granting additional money for the next day, as well as the bonus expenses, you will also gain favour from your investors which in turn increases the amount they will offer at the beginning of each day. Research can be found at 3 different labs(each have 5x documents), 4 airfields and 4 disused military bases (each have the possibility of having 1x documents) which once returned to the carrier or base can be used to climb the tech tree to have the option of more advanced kit, weapons and vehicles. These are less prominent then large cargo containers and oil drums, the documents will be hidden somewhere in plain sight in structures (much like DAYZ loot). All resources and research will spawn every hour, unless not already taken from marked locations (meaning they will not accumulate if not collected) Logistics With the money gained from resources and investors, the OC and CO's must come up with an order form consisting of how many personnel, weapons, vehicles, defences, etc in which I have done a little research and found the real life equivalent of in game items and their costs, no where near accurate (and this is where I need opinions from a team of people) but still looks like it would make you think when sending in your F-181 which costs ~£72,000,000 and a pilot which costs ~£10,000,000 (over 82% of the investors money alone) into a risky, SAM infested, area, or would it be better to send two squads and 2 APCs which would be approx. £6,500,000. AGAIN numbers aren't 100% accurate but it makes you think twice from a logistical stand point. Everything is priced from 5.56 rounds, a spec ops member with his sniper, to the M5 Scorcher and each individual missile. It will be difficult to overlook every piece of logistics but there will be people out there (including myself) to play a more logistical role in helping the team win by accumulating money and spending it in the right places, as a team. This is just the tip of the iceberg on what I have done so far, so if there is someone out there who would be willing to help out with the scripting especially but other help is most welcome then please let me know, if you wish to know more on this 'project' then let me know and I can show you many many Excel sheets and PowerPoints. Mike Discord: Ravenclaw#5221
  21. WHAT IS SQX? SQX is a script language that is used to create scripts and missions in Arma 3. SQX is very similar to SQF, but it has support for object oriented scripting. PHILOSOPHY SQX extends the SQF language primarily by adding control structures that allow for object oriented scripting. As such, plain SQF is allowed, but it also introduces support to organize the code into classes and inheritances. SQX also introduces a small toolbox of some optionally available new commands and keywords that may be helpful (such as the "return" statement). The SQX language reference explains all the ways that SQX differs from SQF. One could say that SQX is for SQF what TypeScript is for Javascript. FEATURES OF SQX True object orientation (objects and inheritence, virtuals and overrides) Type handling and customizable types (classes, interfaces, enums) Three different kinds of class members (fields, methods, properties) Three different kinds of accessors (private, protected, public) Support for statics (methods and properties) Syntax close to SQF Some new convenient commands (like "is", "as", "return" etc.) Compiler synchronizes line numbers between SQX and SQF to support runtime error handling SQX class objects can be broadcasted between machines Complete reference documentation (at www.typesqf.com). WHAT CAN YOU DO? You can structure your code in an object oriented way, creating your own types and actions using classes, interfaces and enums. Well, these are just the tools. What you really can achieve is great structured code, easy to read, easy to write and easy to understand. It extends the boundaries of what code is possible to overview and control. WHAT IS OBJECT ORIENTATION? If you are a developer, you already know, and the reference documentation and general SQF resources should be enough. I you are not familiar with it then start with this Wikipedia article: https://en.wikipedia.org/wiki/Object-oriented_programming. HOW TO GET STARTED? Download the TypeSqf Editor from www.typesqf.com. Create a new mission. In Eden Editor in Arma 3, create a new mission and insert at least one playable unit. In TypeSqf, select "Open mission" and select the newly created mission.sqm. Install the CPack TypeSqf.MissionTemplate.Mp.Standard. In TypeSqf, open the CPack Console in the Tools menu. Write "Install TypeSqf.MissionTemplate.Mp.Standard" and press ENTER. The mission template (written in SQX) is now installed into your mission. Compile and build the project and play the default template mission. Compile the mission in TypeSqf by using "Compile project" on the Build menu. Play the simple default mission. MEDIA The following video shows when I use SQX to create and use a Crowd object: HOW DOES IT WORK? A class instance variable (instantiated with the new keyword) is under the hood an SQF variable of type Array. The class instance's fields and properties are saved as array items in an order kept track of by the SQX compiler. Methods compiles into global functions, with the instance variable (the class array) sent in as the first parameter. This is of course all abstracted by the compiler and not visible to the developer. All SQX is written into .sqx files, and all .sqx files are then compiled into .sqx.sqf counterparts enabling them to be read and interpreted by Arma 3. SOME IMPORTANT NOTES A language limitation: Due to limitations in SQF arrays it is not possible to instantiate two classes that reference each other. I.e. a parent class can have children, but these children cannot contain references back to its parent. The solution is simply to avoid these kinds of structures, and if you still do it you will get a runtime error. An editor limitation: The TypeSqf editor does not have complete autocompletion regarding SQX, but it helps with the most common stuff. E.g. it only suggests one level of chained properties and methods, and it suggests variable names by searching the whole file instead of the actual programming scope context. If you are an advanced developer, please remember that the SQX language does handle most of expected code structures, which is more than the editor will suggest. THE TYPESQF EDITOR Note that this forum is for the SQX Language, which is closely related to, but also separated from, the TypeSqf Editor. Please only post questions and comments regarding the SQX Language here. Questions and comments about the TypeSqf editor goes into the TypeSqf forum. VERSION HISTORY Version 1.07 -SQX: Support for multiline strings (thanks Josef!). Version 1.06 -SQX: Fixed: Analyze of multiple class inheritence levels sometimes resulted in faulty error messages. Version 1.05 -Fixed: Analyzer does not forget about file content in files that are being removed. Version 1.03 -SQX: Refactor of SQF/SQX analyzer and compiler (speeded up the build times a lot). -SQX: Now possible to declare typed variables on a single assignement line (private Scalar _number = 0). -SQX: Now possible to declare typed variables using new SQX keyword 'var' (var _number = 0). Version 1.02 -Fixed: Strange behavior regarding negation symbol (e.g. "return -1;"). -Fixed: No warning when sub class tries to override a method that does not exist in base class. Version 1.01 SQX: Added checks for when a sub class is missing call to explicit base constructor. Version 1.0 First version.
  22. BettIR - IR Improvement for ARMA (Alpha Release) Download: https://steamcommunity.com/sharedfiles/filedetails/?id=2260572637 Also, if you liked my work and would like to see more - feel free to support me on my Patreon: https://www.patreon.com/vestarr Arma is a great game, but there's one thing it could never do - IR illumination. There's a lot of great things that only work in IR Spectrum, but ESPECIALLY in ACE mod, if it's dark - you're doomed. In real life, you would normally use IR illuminators for that purpose. They emit a bit of IR light to help you see stuff around you. A lot of known Night Vision Goggles have them built in; you can also find these lights in AN/PEQ-15 boxes and other weapon-mounted light combos. Unfortunately, Arma doesn't natively support such thing. However, with a bit of scripting (and magic) we can make anything work right? The mod currently only involves: - NVG-mounted IR lights (compatible with particular NVGs only) - Weapon-mounted IR lights (e.g. vanilla IR laser pointer is enough to use this functionality) - Compatible with Vanilla NVG's and IR pointers - Compatible with most RHS NVG's and IR pointers - Compatible with most CUP NVG's and IR pointers - Compatible with most USP NVG's - Allows you to use your laser along with the IR illuminator - Multiplayer Compatible! - Configurable keybinds to toggle the both lights (Ctrl + Alt + L and Ctrl + Alt + N by default) - Adjustable viewdistance - Tested with 66 AI actors with their illuminators on with minor FPS impact - Easily Extendible - see "For Developers" section below To be added soon: - Weapon-specific offsets for better approximation of the position of the light source - IR Patches - IR-only textures - Weapon-mounted illuminators - AI using it and reacting to it - Reorganizing the code architecture Known bugs: - Laggy in vehicles, potential fix in the pipeline - Position of the lights is approximated and might not be perfectly lined up to the actual position of the light source; will not fix (unless there's a method to fix it) Credits Ulfgaar - for giving me the idea to do the IR patches, which then spiraled out of control and became much more than that; for exchanging a lot of information about the real life technology and helping me understand it much more Dslyecxi - for feedback and Nightvision-related consultation OneLittleSociopath - for helping me figure out some of the optimalization concerns TheVache & Somedudechen - for helping me test this mod Disclaimer This mod doesn't change the color of the NVG's as the screenshots suggest! I used a wonderful NVG mod by Apricot to take nicer preview screenshots. You can find it here: https://steamcommunity.com/sharedfiles/filedetails/?id=1908374667 Licensing information can be found in the steam workshop link, to be updated soon. Contributions/suggestions welcome!
  23. I have a Minefield use'ing the A3 mine Module, but I have now idea to make a trigger fire when all the mines are deactivated. I know it needs to be something like this... if allMines are Active then don't activate... or something like that. My scripting is still very rough so I am just lost on where to start to get that to where I want it.
  24. Question So, I was wondering if it was possible to potentially make a custom text Heads Up Display that looks kind of like the Antistasi HUD. The Antistasi HUD includes things like Covertness, Balance of money, Following, etc... I was wondering how I would be able to do something like this with minimal effort involved. Possible Solutions I've tried using the titleText in order to display a variable from my "Variables.sqf" file, however; this isn't a good idea because I use the titleText for dialogue between the player and AI characters. <Variables.sqf> balance = 1200; <buildingtutorial.sqf> params ["_object", "_caller", "_actionId", "_args"]; _jeep = _args param [0]; _transporttruck = _args param [1]; ["TASK1", "SUCCEEDED"] call BIS_fnc_taskSetState; titleText[format["<t color='#00FF00'>Commander Petros</t>: Welcome to the new camp, newbie."], "PLAIN DOWN", -1, true, true]; sleep 5; titleText[format["<t color='#00FF00'>Commander Petros</t>: Go over to that workbench over there and build the vehicle depot, then come back to me and I'll purchase some vehicles for it."], "PLAIN DOWN", -1, true, true]; titleFadeOut 7; _object removeAction _actionId; _object addAction ["Buy Vehicles", "buyVehicle.sqf", [_jeep, _transporttruck]]; exit; I haven't actually found anything useful regarding a custom GUI or HUD in ArmA 3 quite yet so this would be really helpful. Thanks in advance for potential solution/help in the comments.
  25. Good afternoon, I am trying to find information regarding the automatic navigation of the config file. So far I have been doing it 'by hand' by specifying the values in a list of Strings, for example: STWG_PossibleEASTGroups=[ [configfile >> "CfgGroups" >> "East" >> "rhs_faction_vdv" >> "rhs_group_rus_vdv_mi24" >> "rhs_group_rus_vdv_mi24_squad_mg_sniper",0], [configfile >> "CfgGroups" >> "East" >> "rhs_faction_vdv" >> "rhs_group_rus_vdv_mi8" >> "rhs_group_rus_vdv_mi8_squad",0], ... "C_Heli_Light_01_civil_F", "C_IDAP_Heli_Transport_02_F", ... ]; These values are taken from the editor and pasted into the list. I am wondering if it were possible to navigate the config file and obtain those values directly from the script. Thanks in advance.