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


Forums

  • BOHEMIA INTERACTIVE
    • BOHEMIA INTERACTIVE - NEWS
    • BOHEMIA INTERACTIVE - JOBS
    • BOHEMIA INTERACTIVE - GENERAL
  • FEATURED GAMES
    • Vigor
    • DAYZ
    • ARMA 3
    • ARMA 2
    • YLANDS
  • MOBILE GAMES
    • ARMA MOBILE OPS
    • MINIDAYZ
    • ARMA TACTICS
    • ARMA 2 FIRING RANGE
  • BI MILITARY GAMES FORUMS
  • BOHEMIA INCUBATOR
    • PROJECT LUCIE
  • OTHER BOHEMIA GAMES
    • ARGO
    • TAKE ON MARS
    • TAKE ON HELICOPTERS
    • CARRIER COMMAND: GAEA MISSION
    • ARMA: ARMED ASSAULT / COMBAT OPERATIONS
    • ARMA: COLD WAR ASSAULT / OPERATION FLASHPOINT
    • IRON FRONT: LIBERATION 1944
    • BACK CATALOGUE
  • OFFTOPIC
    • OFFTOPIC
  • ArmA Toolmakers's Releases
  • ArmA Toolmakers's General
  • Die Hard OFP Lovers' Club's Topics
  • 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

XBOX Live


PlayStation PSN


Origin


PlayFire


SoundCloud


Pinterest


Reddit


Twitch.Tv


Ustream.Tv


Duxter


Instagram


Location


Interests


Interests


Occupation

Found 251 results

  1. I am new to mission creation and a scripting approach and my progress at learning has been good but looking to streamline what I am sure is a sub optimal process for loading new scripts and then testing those on live server. I am working on an A3Wastelands mission, now becoming increasingly customised it has grown from 6MB to sitting at about 10MB. I will explain my current workflow and welcome suggestions about changes to that to improve cycle time from new script developed to tested on server. Workflow Generate/modify new script - using Visual Studio Code - managing a local git repository to stage and commit all changes. I like the editor and combined with the git process is great to understand what you have changed, setting up for good rollback processes when it all goes skew. Some changes like syntax requires one set of brackets, edited in seconds. Clone from git folder on local computer to new local location, but without the git entries folder - they add to much to a folder size for next step. (5 seconds give or take) Generate local .pbo using .pbo manager to zip up the "gitless clone" copy of the mission. Compiling quick (10 seconds give or take) Using Filezilla connect to my.gameservers (that is the host provider I am using). Get new .pbo into correct mpmissions location on server, ensure configs line up and restart server. (with variable ADSL internet speed can be 1-5 minutes to upload). Restart server. (usually about 30-60 seconds to initialize server for login access from Arma launcher). Reconnect to server with local ARMA launcher and start game. (usually 2-5 minutes to upload new mission files, establish client session) Run server for period. Previous provider had a streaming log viewer functionality, new one doesnt, so using periodic log file (RPT) download, to then open log using GamutLogViewerProfessional. The line parsing, filtering in the log viewer is great, and fast, its just the continual download and lack of live streaming that has become annoying. Fast but repetitive. Most testing involves cycling sub missions quickly, fast timings for new missions spawning and quick expiry, god mode to poke the missions for responses required, and attempting to use diag_log to set log messages for error/logic/expected response flaws. (time consuming and rpt file entry problems currently) Based on responses observed in game or in logs, change code and return to step 1. Opportunities Things I know I dont know about, but had no luck finding answers yet - reference articles/sites would be fantastic. I think I might need to get RCON skills - but again a little unclear if that helps me more as an administrator vs a code tester. The admin stuff isnt a big deal at present. Live log streaming - seen evidence but dont have a solution in place for that at Gamerservers yet. .pbo generation - previous host had an inbuilt capability to compile the .pbo on the server reducing the upload traffic and time considerably, is the best way to look at installing a .pbo generator on the server myself for this? Is that a big deal to implement? git publish - seems more like publishing back to a public repository, wonder of i should be pushing to a local folder ie the one that wont have the .git folder, or could i git push to the server folder just the changes. No luck finding git answers to this myself yet. I do not use the debug console within the editor or the server when running - i think i am missing something about the debug console concept it appears lined up to force only very simple issues. Again lacking reference sources to learn more on that. For a complex mission with many scripts, are these something that can be tested in mission editor, or outside editor. I use editor for waypoints, additional buildings, manually generating mission routes that are then codified into sqfs., i dont test the sqfs in there yet, should I. Server memory consumption appears to be an issue as restart intervals increase. Previous server could run for 24 hours and stay under 2GB memory allocation, at 48 hours be under 150% and then by 72 hours crash due to over commit. Rather than double subscription settled for 24 hour restarts. New host does not have this easy monitoring indicator so i think i need an additional piece of software to monitor. suggestions? Anything else that I dont know, that I dont know about, sure there is heaps. Finally, anyone who has had the patience to get his far through this monologue, i appreciate your time so far. Even if you only have a suggestion for 1 item in workflow or a comment on an opportunity I welcome your input. I did 6 months of pascal, fortran, basic programming, but i refuse to say how long ago that was..... So suggest i write up a new C# routine, that feels well beyond where I am at now. Server management is new to me, but sort of getting the idea of the Arma approach to server side, client side management. Thanks
  2. Hello, We used a script to create fire on the map ,but it seems doesn't work anymore ... Somthing change recently ? Everything seems work fine except the visual of the fire ... Sorry for my bad english ... My script : /* feu.sqf Author: Joachim McK41n & Victor for www.prism.ovh and www.borderlife.eu Description: Init of the fire (position and particle) */ private ["_logicCenter","_densite","_size","_particulesize","_logicGroup","_myLogicObject","_position","_fumee","_smoke","_smoke1","_smoke2","_smoke3"]; FIRESYSTEM_status = 1; _position = [ [7248.221,7902.215], [7284.408,8002.937], [7328.91,7988.436], [7330.886,7870.988], [7220.022,7769.310], [7016.862,7665.172], [6973.227,7734.075], [7079.95,7494.45], [7047.032,7052.575], [7033.538,5877.813], [7088.565,5333.449], [6793.419,5509.893], [6268.532,5377.708], [7689.646,4463.886], [8453.264,3650.178], [7962.492,3677.762], [7603.085,3729.685], [7379.489,4132.045], [6763.38,3485.052], [6434.504,3653.694], [6515.486,3946.17], [5371.91,3309.547], [5577.742,3028.360], [6240.154,2519.370], [5507.475,3498.792], [5070.621,4040.475], [5073.118,4953.481], [4194.532,4011.217], [3733.564,4085.337], [3340.427,4630.272], [3484.509,5352.209], [2514.769,3891.06], [2622.133,4152.140], [2808.309,4609.104], [3228.675,6290.59], [2990.029,7042.942], [3193.270,7302.877], [3278.756,8575.616], [3325.257,8877.280], [5384.771,7843.193], [4752.810,8024.902], [5014.568,8969.789], [5111.227,9061.804], [4793.549,9169.119], [4434.848,9534.307], [4748.809,10326.111], [5386.066,10073.317], [5797.076,9771.063], [6262.168,9495.117], [6560.371,9522.497], [6712.688,9179.297], [7170.891,9768.592], [6945.721,8640.133], [6930.321,8154.135], [8023.768,7826.339], [7915.164,7460.462], [6707.968,7466.603], [6267.506,7301.861], [6299.848,4723.550], [8241.715,5395.611], [9876.938,4313.292], [9557.486,4050.109], [9606.530,3783.365], [9287.656,3612.633], [9457.21,3403.740], [9785.166,3722.892], [10740.619,4167.578], [11168.437,4142.943], [11533.472,4178.396], [7932.085,7477.508], [7313.628,7829.134], [7355.167,7882.431], [7259.667,7958.107], [7259.043,7968.471], [7313.542,8019.859], [7200.194,7928.984], [7217.958,7795.975], [7042.558,7696.161], [7075.163,8017.439], [7074.386,7137.277], [7128.321,6094.658], [7149.663,6037.67], [6349.478,5370.261], [7922.908,4036.301], [8215.435,3910.88], [8244.328,3504.572], [8120.783,3154.520], [8368.901,3119.829], [7655.749,3324.765], [5987.549,3440.058], [6204.109,2486.838], [6230.793,2870.822], [6831.929,2719.921], [4258.728,2467.598], [3669.155,3210.409], [4919.764,3914.835], [5527.845,5693.555], [5310.882,5529.224], [5743.388,5225.202], [1786.590,3461.261], [1084.361,666.59], [1394.610,1221.776], [2487.827,2222.515], [2468.267,5170.738], [3295.479,6368.682], [3080.467,6825.77], [4296.550,6817.070], [3571.882,8519.835], [3598.778,8630.583], [5538.113,11259.927], [5562.836,11134.115], [5458.769,11384.115], [5820.159,10540.255], [5893.200,10719.465], [6106.278,10860.886], [6090.351,10752.076], [6201.973,10693.936], [7071.652,12185.961], [7461.036,10714.266], [7095.191,10324.588], [7637.577,10688.432], [7699.432,10393.967], [6067.289,8641.198], [6020.251,8622.433], [6129.021,8523.253], [5896.355,8458.906], [5878.344,8733.198], [6050.003,8799.310], [6100.481,8953.772], [6079.811,8728.780], [7101.258,8968.055], [7113.98,8924.720], [7075.61,8907.017], [7361.047,8718.827] ] call BIS_fnc_selectRandom; _size = [5,10,30,40] call BIS_fnc_selectRandom; _particulesize = [3,5,10,15] call BIS_fnc_selectRandom; _densite = [10,20,30,50,40] call BIS_fnc_selectRandom; _logicCenter = createCenter sideLogic; _logicGroup = createGroup _logicCenter; _myLogicObject = _logicGroup createUnit ["ModuleEffectsFire_F", _position, [], 0, "NONE"]; _myLogicObject setVariable ["ColorRed",0.5,true]; _myLogicObject setVariable ["ColorGreen",0.5,true]; _myLogicObject setVariable ["ColorBlue",0.5,true]; _myLogicObject setVariable ["ParticleLifeTime",1,true]; _myLogicObject setVariable ["ParticleDensity",_densite,true]; _myLogicObject setVariable ["ParticleSize",_particulesize,true]; _myLogicObject setVariable ["ParticleSpeed",1,true]; _myLogicObject setVariable ["EffectSize",_size, true]; _myLogicObject setVariable ["ParticleOrientation",0,true]; _myLogicObject setVariable ["FireDamage",3,true]; _fumee = _logicGroup createUnit ["ModuleEffectsSmoke_F", getpos _mylogicObject, [], 0, "NONE"]; _fumee setVariable ["ParticleDensity",_densite,true]; _fumee setVariable ["ParticleSize",_particulesize,true]; _fumee setVariable ["EffectSize",_size, true]; _marker = createMarker ["feu", position player ]; "feu" setMarkerType "mil_objective"; "feu" setMarkerSize [1, 1]; "feu" setMarkerDir 0.93884; "feu" setMarkerText "Incendie"; "feu" setMarkerColor "ColorRed"; "feu" setMarkerPos getpos _mylogicObject; waitUntil {(getMarkerColor "feu") == "ColorOrange"}; _smoke = "SmokeShell" createVehicle getpos _mylogicobject; sleep 5; deleteVehicle _smoke; _smoke1 = "SmokeShell" createVehicle getpos _mylogicobject; sleep 40; _smoke2 = "SmokeShell" createVehicle getpos _mylogicobject; sleep 40; _smoke3 = "SmokeShell" createVehicle getpos _mylogicobject; sleep 10; {if (typeOf _x == "#particlesource") then {deleteVehicle _x}} forEach (_myLogicObject nearObjects 5); deleteVehicle _myLogicObject; "feu" setMarkerColor "ColorGreen"; sleep 120; FIRESYSTEM_status = 0; deletemarker "feu";
  3. Hi. Anyone know how to make these animated/clickable markers on the map..? Like in arma 2 warfare for example where you select respawn location. I don't know where to start with it Never dealt with it before
  4. I am trying to update a older aircraft and one problem I am having is the ejection system, it is not working - when I eject from the aircraft, the ejection seat appears but hovers above the aircraft and nothing else happens. I have tried adding in this; I am not sure how to get it properly working, any help would be appreciated.
  5. Voronoi diagram using Fortune's algorithm Here's a set of functions developed for my current project to generate Voronoi diagrams in SQF without the need for addons. What does it do? The code generates the edges of the Voronoi diagram from a given set of sites (positions). If you do not yet know what a Voronoi diagram is or what it's uses are check out https://en.wikipedia.org/wiki/Voronoi_diagram. Example: Using the Altis towns as sites How do I use it? Installation: Download the example mission to get the code. Copy the voronoi folder to your mission. In your missions CfgFunctions class include "voronoi\cfgfunctions.ext" like so: class CfgFunctions { #include "voronoi\cfgfunctions.ext" }; Execution: The only included function you will need to call is VOR_fnc_getEdges: private _edges = [_sites, _width, _height] call VOR_fnc_getEdges; VOR_fnc_getEdges takes an array of sites (position2Ds), and width and height in meters for the area to scan. All sites must be inside the rectangle [0,0] and [width, height]. The function returns an array of edges that constitute the Voronoi diagram. Each edge is an array composed of: [ EDGE_START, - Start position EDGE_END, - End position EDGE_LEFT, - Site on the left EDGE_RIGHT, - Site on the right EDGE_NEIGHBOUR, - Internal usage EDGE_LINE_F, - f in the function for the edge's line: y = fx + g EDGE_LINE_G, - g in the function for the edge's line: y = fx + g EDGE_DIRECTION - 2-dimensional direction vector of the ray going from start to end, not normalized. ] Where do I get it? Link (voronoi_example.Altis.zip) Examples Known issues In some cases some edges may not find an intersection and only intersect with the bounding box. I haven't managed to isolate the issue yet but it seems to be a precision error in the intersection check. Suggestions are welcome. It's slow. For 50 sites a call in-mission takes about ~0.5 seconds which is very slow compared to good c++ code. Not entirely sure yet if it's because of my implementation or just SQF having a hard time with the complexity. In my in-mission testing 50 sites took about 0.5 seconds in an unscheduled environment and in scheduled took 1-2.5 seconds. During mission init the code is significantly faster, clocking in 150 sites in about 0.5 seconds. I can put this down partly to the way I handle data but not sure how much quicker I could make it. If anyone has the energy to dissect the code I'd love hear your input. Feedback Constructive feedback is always welcome. I've probably missed cases where the code will break. If you're reporting a bug please if possible also submit the following: The complete set of sites passed. Height and width passed.
  6. G'day guys, There has been a lot of new threads by newcomers that ask the same/similar questions, found in many other threads. If you are new to ArmA or want to get into scripting, welcome to the forums! :) As you know, there is a search box at the top of the page, it can be used to search throughout every thread what you are after. Bear in mind that it may sometimes not provide you with the proper answer. This, however, doesn't mean that another thread should be opened. In fact, there is a huge library of scripts you probably never heard of. Check it out, there is an abundant of examples provided in each script command: https://community.bistudio.com/wiki/Category:Scripting_Commands_Arma_3 It is constantly being updated with new facts, info and scripts by many of our users such as KK. (Killzone Kid) Lastly, here are some basic info and tips on scripting. To create your own scripts, navigate to "My Documents\Arma 3\missions\your_saved_mission". Then, create a text document and rename the extension ".txt" to ".sqf". Once done, open it with Notepad or Notepad++. To run your script in the game, navigate to your mission folder and create a "init.sqf". Open it and put this in: [] execVM "myscript.sqf"; If you want to get a specific unit to do some action (e.g. setDamage or setFuel), give your unit a name but without spaces. Then in a trigger, put this in: myguy setDamage 1; The symbol ";" used after each command, is to separate the command from another. (Think of it as a period symbol)Also, if you are thinking that Steam Workshop is the only place for mods, addons, scripts, etc. Armaholic is the official site for releasing such. You can find it here, they also have a FAQ as well: http://www.armaholic.com If you want to convert a string to code, you can use call compile STRING. This is very handy (and sometimes a smart trick) when passing code around such as lbData. ;) This wraps up the introduction for those new to scripting. If you have any questions, concerns or ideas that may improve this thread, feel free to post here. ^_^ Happy Scripting, ;) Rawner135 ArmA 3 Tutorial Links: Arma 3 Scripting Tutorial For Noobs - forums.bistudio.com [Tutorial] Server Side Scripting - forums.bistudio.com Camera Scripting - www.armaholic.com KK's blog - ArmA Scripting Videos: Modding Tutorials by GameDev Byrne: https://www.youtube.com/playlist?list=PLqRU_EL4pwOHOJ6L2P5XlpfmNoWqulZqf Other Tutorial Links: http://www.kylania.com/ex/ Conversation System Mission Editor ArmA 2 Mission Editor Triggers OFPEC ArmA 2 Scripting Commands ArmA2 COMREF Forums Post - Classnames ArmA2 Library ArmAholic ArmA2 Moves ArmA2 Modules Description.ext Scripting Topics (Check All Links) Startup Parameters Crash Files Tasks ARMA 2 Functions PostProcess Effects
  7. Hello Community, As the title suggested my question is pretty short. Can you publish a custom made campaign (with chapters and stuff) on the Steam workshop? If that's possible I would be really glad to know how to do that. Thx!
  8. So I'm not sure if this has been asked or what but from searching i haven't found it yet. So here is my question is it possible to add the animation/movement controls of a infantry and apply it to a vehicle like for instance; infantry gets into vehicle and said vehicle is basically a super sized infantry. The reason i ask is because i would like to add mechs/mech-type vehicles and i under stand the basics of coding from some other projects i have worked on for fun. I just kinda wonder/hoping that you would be able to apply the Infantry game controller to a vehicle profile so that it can have Armor/components that can be destroyed and repaired.
  9. Next to already revealed an known https://community.bistudio.com/wiki/Category:Arma_3:_New_Scripting_Commands_List There are more script commands now :) + fixed http://feedback.arma3.com/view.php?id=12324 + only discussion related to new or changed Arma 3 Beta/Dev Scripting allowed
  10. Hello guys! I have a mission, the author made a few cities to be captured. I want to add more cities to play longer. Here's an author's code for the cities: class Params { class FrontLine { title = "START"; texts[] = {"Sofia", "Delfinaki", "Ioaninna", "Paros"}; values[] = {3389, 5316, 5871, 9680}; default = 3389; }; }; And now i wonder - where did he get those id's? How can i find such ID for a city?
  11. I've been stuck with a mission I can't finish without your guys help. I know some basic scripting but I don't want to spend days overcomplicating something if there is an easier solution. So here is the simple explanation of a script I'm going for: Let's say there are 10 blocks. Each are called block_1, block_2, etc. Now, after every 60 seconds the script will randomly select one (1) of the blocks and delete it. Then, this script will repeat after another 60 seconds by identifying the remaining nine (9) blocks and then selecting from one of those to delete. This process will continue until only 1 block remains. There is no probability needed, it just needs to remove one block repeatedly in the given time inputted until only one remains. I did find this script posted by Dreadedentity in my searches, but it's based on a probability of each object all at once. Then even if I add a loop to that script there are times where no objects are deleted. Any help would be appreciated. Thanks!
  12. Hey Guys! I'm creating a mission and I want a task to be SUCCEEDED when a pop up target is shot. I've tried many things like trying to get the task to be succeeded when a gun is fired or when the target does down or comes up. Nothing has worked. I would appreciate any help! Thanks!
  13. Hey guys, the title pretty much says it all. I have a pretty heavy amount on mission making under my belt and this is a question I have wondered for quite some time. On many of my missions I have a "recruiter" NPC that has addaction commands to recruit a variety of friendly infantry units to join the player squad. I'd love to have a way to set a "cost" for this function based on the players score (say 10 kills to recruit an AI squadmate). I am aware of the "Set Cost" module for zeus but I dont think that can be used in this way. I know that such things are possible with heavy scripting (thinking about the DUWS mods) , wondering if anyone has any semi straightforward solutions to this...
  14. Hi there people, Is there a way to make a static artillery emplacement such as a mortar have an infinite range across an entire map via a script? I don't like using the virtual combat support modules as I like to hear/see the artillery being fired from a base camp far from the front lines. I've used the ALiVE mod and MCC forward observer artillery interface before however these both still require the artillery gun to be in range. I don't want to have to move Artillery vehicles across the map to get within range ya see. Thanks in advance, - Jack
  15. Hi there people, Is there a way to make a static artillery emplacement such as a mortar have an infinite range across an entire map via a script? I don't like using the virtual combat support modules as I like to hear/see the artillery being fired from a base camp far from the front lines. I've used the ALiVE mod and MCC forward observer artillery interface before however these both still require the artillery gun to be in range. I don't want to have to move Artillery vehicles across the map to get within range ya see. Thanks in advance, - Jack
  16. I have recently encountered some odd behavior in one of my scripts. I thought I had a pretty good grasp of this command but it has stopped behaving in the usual way. consider the following: {_x setUnitPos "UP"}forEach units group squad1; In the past and indeed up until a few minutes ago in my script, this yielded the expected behaviour of each member of squad 1 standing up. Then I got a typerror . Type group, expected object. So then I removed the word group from the command: {_x setUnitPos"UP"}forEach units squad1; And NOW it works again. Does anyone know what is going on with this? Thanks for the help.
  17. Intercept is a C/C++ binding interface to the Arma 3 engine (internally referred to as the Real Virtuality or RV engine). It's goal is to provide easy to use library for addon makers to develop addons in a native language, or to develop language extensions for the Arma 3 engine. In a nutshell, Intercept provides a full C/C++ binding system for calling the base C++ functions which are declared in RVEngine for SQF functions. All SQF functions within the RVEngine are actually native code, which is called by SQF via the function names. Intercept bypasses SQF entirely, allowing native C++ plugins to seamlessly interact with the game engine. In essence, Intercept allows for expansions of the game engine, calling internal functionality of the engine which has been exposed via SQF functions. This was the idea behind the intended Java implementation by Bohemia Interactive in Take On Helicopters and was planned for, but never implemented in Arma 3. Intercept not only completes the intended functionality of what Java was meant to provide but has gone much further, including returning data to SQF and multithreaded addons. Intercept works on a host/client based system, in which the host, Intercept itself, hosts client DLLs that implement the Intercept library. The Intercept host handles access to the RV engine by clients through a layer that provides thread concurrency, memory handling, and event dispatching. Client DLLs are then able to be written in a way that can safely ignore most internal nuances of handling data in the RV engine and work with standard C++ STD/STL data types, and only a few specialized objects specific to the game engine. The Intercept library also provides raw C bindings to the C++ versions of SQF functions, so it is entirely possible to use Intercept as the basis for writing in additional scripting languages to the RV engine, such as Python or Lua. You can find more information on our GitHub project page. Technical Details Intercept works by making direct calls to the SQF functions in the RV engine. These functions are themselves C++ functions which are then exposed to SQF for allowing interaction with the underlying game engine; Intercept completely bypasses SQF and allows C++ plugins to interact with the engine directly. User created threads can even be created and by properly using the provided thread concurrency functionality it is possible to execute game functionality safely and concurrently. Intercept clients are able to invoke through the host these commands by provided wrapper functions that replicate and emulate the SQF command namespace (minus some unneeded functionality, like arrays or control structures). These wrapper functions take standard inputs, such as simple primitives like float or bool, and standard std::string arguments and convert them into the proper SQF command variables, providing a seamless layer to the clients. An example of a very simple client that invokes nular, unary, and binary SQF functions (aka functions that take no arguments, a right side argument only, and both a left and right side argument respectively) is demonstrated below and a more examples can be found here. #include <Windows.h> #include <stdio.h> #include <cstdint> #include <sstream> // the Intercept library, only one include required. #include "intercept.hpp" // required exported function to return API version int __cdecl intercept::api_version() { return 1; } // This function is exported and is called by the host each frame. void __cdecl intercept::on_frame() { // get the player object and store it intercept::types::object player = intercept::sqf::player(); // get the post of the player intercept::types::vector3 pos = intercept::sqf::get_pos(player); // build a string... std::stringstream side_chat_msg; side_chat_msg << "Hello Arma World, here is the player pos: " << pos.x << "," << pos.y << "," << pos.z; // send it to the binary SQF sideChat command intercept::sqf::side_chat(player, side_chat_msg.str()); } // Normal Windows DLL junk... BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: break; case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } Completion Status As of now (3/13/16) Intercept is over 82% language feature complete. You can view the progress of wrapper completion here. Almost all normally used SQF functions are available to the end user, and with the added ability of writing inline SQF code, you can call any function that has not had a wrapper written for it yet (though with a small performance penalty). We will post a release thread when we start releasing builds of the host. Contributions Feel free to contribute as much as you want to this project in terms of time and code. The goal of this project is to be a tool for the community to provide better performing and more complex addons for the Arma 3 platform. If you would like to contribute or want more information please join our Slack channels and get involved! License Intercept is licensed under the MIT license. You can find the full license in the LICENSE file. Prior to commit f9fe4d5 the project was licensed under the GNU/GPL v2 license and continues to be for any commit prior to that.
  18. I have searched both google and the forums for this and see a couple answers to this question that do not make sense to me. I have a couple different firing ranges for my unit that are run via script. They work correctly in both hosted and on the dedi with one small exception. The rangemaster - which is a recording of one of our members played in the script - only executes on the player that activated the firing range, even though the range itself is working for every player on the server. I am 100% sure that it is a locality issue, as the addAction that calls the sqf is located in the init.sqf of the mission. I keep finding answers that have things like this: [Computadora1, ['Disparar a Barco',{<your code here>}] ] remoteExec ["addAction",0,true]; But I do not understand exactly what it all means as most people just provide a script and not an explanation of why it fixes the issues. My question is: how do I execute the addAction in game via remoteExec so that all players can both see the range and hear the rangemaster? Below is a snippet of my range code that involves the recordings - just to ensure that I haven't made a boneheaded error. init.sqf range4.sqf (partial) Thank you all in advance for the help!
  19. Hi fellow scripters, Initially we had hoped to release the major upgrade to our scripting technology with Patch 1.03, but we were not able to get it fully implemented in time. Therefore we're pushing the ability to use Java to the next patch Java is available since beta patch rev. 89707 (documentation) Why is this awesomeâ„¢? Using a widespread, proven and robust language with loads of documentation and tutorials. Using IDEs such as NetBeans and Eclipse for development and debugging. Using Object-Oriented programming architecture and design. Using generally much higher performance script execution. Using many standard Java libraries instead of reinventing the wheel. Note: this will not replace SQF scripting, so the transition should be smooth.
  20. I have run into a fairly frustrating problem involving AI helicopter pilots and squads attempting to board helicopters. The situation is as follows: I have a helicopter with its engine on waiting on the ground. Then, I order my squad members to board that helicopter, but as soon as I do the helicopter takes off, goes to about fifty meters, and then lands again to allow my squad members to enter. This also occurs with editor-based waypoints. As soon as an AI squad activates a 'Get In' waypoint, the AI flying the helicopter shoots up into the air and then lands again. Is there any way to force the AI helicopter to not do this, and stay on the ground instead? I have tried everything from synchronizing load and get-in waypoints (with a condition to wait for the units to get in), using disableAI "ALL", disabling the simulation of the helicopter's pilot, placing an invisible helipad directly under the helicopter, etc., but nothing works. Note that it is necessary for the helicopter's engine to be on to achieve the necessary effect as this takes place during a cutscene. Any suggestions would be greatly appreciated.
  21. I am just curious on how you might actually use the position command to find the position of a location of one of the major towns such as Athira or Sofia, clearly the locations are marked out somewhere because the editor already has a list of locations and 3D markers placed. I simply could not find a way to do this, so I've come to the people of the forums to save me. Just to be clear, I don't want to find the location of the nearest town based on an object or a marker, just if it is possible from the built in game locations Thank you, Pizza Man
  22. I´m having an idea. In Arma (in game) i wanna make a tablet, and with this tablet i could take a picture, view it, and send to another unit that are in possesion of a similar tablet. Problem is, i only have a little coding experience in pyhton, so i'm shooting from the hib in reguards to the execution of this project. I'm thinking this would be possible by making a script that can take a picture in-game, Convert said picture to pbo, Store it in your profile folder, And finally transfer this through the in-game connection to the intended unit(player) with similar tablet and store picture in his local system thereby making it accessable to him. Q: Is it possible to import pbo's while in-game? Q: Is it even possible to transer information like pictures while in-game?? Q: Does this sound plain stupid???
  23. Gentlemen, I am looking for a way to pull one array each for Uniforms, vests, backpacks, headgear and so on from configfile, similar to below example for weapons. I would like to pull all equipment items, and then pick out all uniforms or vests or.... (whatever group of items that I want to make an array for) by filtering it by the "parent" name. (eg, below example "if "rifle" in _parents) Now I tried to find the correct parents in config viewer by placing an uniform in eden editor and then rightclick + show in config viewer, but i think i get the wrong parents there (maybe just the vehicle for the placed uniform / "groundweaponholder"?) Anyway none of the parents work and i wonder where i am going the wrong way. For backpacks for example, I selected a backpack from the cfg vehicle list in the config viewer and found the parent "Bag_Base" (or something like that) and it would return an array of backpacks, however, many of the backpacks would contain items. Is there a way to avoid this? In the end I only want each array to contain empty vests/uniforms/backpacks. I think my problem is that I use the wrong method to search for an example classname in config viewer and therefore it provides me with wrong parents. I would appreciate any help or guidance in that respect;) Thanks VD
  24. Okay, so i'm trying to get drawIcon3D to work the same way as the code below, however this only shows the units drawicon3d if the player's eyes are in view of the unit. I would like for it to be in the view of the players camera (internal or external) rather than the eye position of the player, thanks in advance to anyone willing to help me as it has been annoying me for a long time. if (!(lineIntersects [eyePos vehicle cameraOn, eyePos _unit, vehicle cameraOn, _unit]) && isNull objectParent _unit) then { drawIcon3D['', _colour, _pos, 0, 1.0, 0, _name, 1, 0.0345, "RobotoCondensed", "center", false]; };
  25. Hey, all. Just wrote this event handler script the other day, and I hope to eventually implement it into a multiplayer mission. Now, I want the event handler to assign to all players on the server, so I thought I'd just create a forEach loop with the allPlayers array. The problem is, when I make reference to the _z variable within the loop it seems to mess with the commands and produce all kinds of compiling errors. As a bit of a run down, the event handler activates when the player fires their weapon. If there is a civilian in a vehicle, within 20 meters, who possesses a detonator, as well as an explosive device attached to his car, there will be a 75% chance they will detonate it. In addition, if there is a civilian driver within 50 meters, who merely carries a gun, he will be assigned to an enemy side and made enemy to the player. Now, the obvious issue is, throughout the code, the variable "player" is used, and from what I understand, it is no recommended to use it in multiplayer, hence the "forEach allPlayers" loop. Now, I thought it was merely a matter of substituting the player variable with _z, which represents a player from the allPlayers array. However, like mentioned above, it seems to cause quite a long list of errors. To be clear, the code as depicted below works flawlessly in the editor environment. Here is the code: { // All Players _z = _x; _z addEventHandler["Fired",{ _obTemp = nearestObjects [player, ["Car"], 50]; _manTemp = nearestObjects [player, ["Man"], 50]; { // All vehicles in a 50 meter radius of the player _y = _x; _hasWeap = false; if (! isnull (driver _y)) then { if ("ACE_M26_Clacker" in items driver _y && count (attachedObjects _y) > 0) then { if ((random 100) > 25 && (player distance _y < 20)) then { [(attachedObjects _y select 0), 1] call ace_explosives_fnc_scriptedExplosive; }; }; }; { // The occupants of the aforementioned vehicles _w = _x; { // The weapons of the aforementioned occupants if (_x != "" && side (driver _y) == civilian) then {_hasWeap = true}; [east, "HQ"] sideChat format ["%1", _x != ""]; } forEach weapons _w; } forEach crew _y; if (_hasWeap) then { _agGroup = createGroup (selectRandom [WEST, INDEPENDENT]); crew _y joinSilent _agGroup; { // Members of the new hostile group _x enableAI "ALL"; } forEach units _agGroup; _agGroup leaveVehicle _y; }; } forEach _ObTemp; { // All AI units in a 50 meter radius of the player _y = _x; _hasWeap = false; _unitAr = []; { // The weapons of the aforementioned AI if (side _y == civilian && _x != "") then {_hasWeap = true}; } forEach weapons _y; if (_hasWeap) then { _x enableAI "ALL"; _unitAr = _unitAr + [_y] }; } forEach _manTemp; _agGroup = createGroup (selectRandom [WEST, INDEPENDENT]); _unitAr joinSilent _agGroup; }]; } forEach allPlayers; Fair warning: I know nearly nothing about all of the multiplayer scripting quirks (and am only a beginner at programming in general), and have very little knowledge on what should be executed on solely the server, or what should be executed globally, or what should be executed by the clients, etc.. So, and pointers are more than welcome. at this point, I just need to know if I am barking up the right or wrong tree with how I am doing things.
×