Clone wiki

Arma2NET / Home


Arma2NET is a wrapper used for communicating between managed code and SQF code used in the game Arma 2, adding significant functionality to SQF scripting.

Arma2NET gives you the ability to use the .NET Framework from Arma 2. It is designed to be an alternative for those who don't want to use C or C++ with callExtension or Java and the JVM.

There is a wide range of language implementations that target the Common Language Runtime, so you can use C#, Python, VB.NET, F#, Ruby code and more, directly from Arma 2.

A list of languages that you can use can be found here.


  • Call managed functions and manipulate the return value from SQF.
  • Check the status of long-running managed functions from SQF using callbacks.
  • Convert SQF literals (lists, strings, numbers etc) to .NET objects and back.
  • Extend the functionality of Arma2NET by writing plugins written in any language that compiles to .NET bytecode, such as C#, F# or VB.NET.


To use Arma2NET you must be running Arma 2 version 1.62 or later, and .NET Framework 4 Client Profile.

Microsoft Visual C++ 2010 must also be installed.


using Arma2Net.AddInProxy;

namespace MyPlugin
    public class MyPlugin : MethodAddIn
        public string Hello()
            return "Hello world!";
_result = call compile ("Arma2Net.Unmanaged" callExtension "MyPlugin [Hello]");
hint _result;

A Visual Studio solution with this code can be found here.


If you're using the installer, simply click through the prompts, checking that the installation folder is correct. Otherwise copy the @Arma2NET modfolder into your Arma 2 installation directory. Once the installation has completed, you may remove unwanted plugins from the AddIns directory.


Uninstall Arma2NET using Programs and Features in your Control Panel if you used the installer. If you did not use the installer, delete the @Arma2NET modfolder. Optionally delete any Arma2NET log files from your AppData folder.


Arma2NET on Dev-Heaven: