Author: Alwarren
Author Website:

Requirements: Eclipse 3.7 “Indigo”

Version: 0.0.12

Short description: ArmADev is a plug-in that extends the Eclipse IDE in such a way that you can develop ARMA 2 and ARMA 2 Operation Arrowhead projects with it.

Date: 2011-09-03 20:24

Comments: (4)


ARMADev for Eclipse


This is the first test release of the FHQ ArmADev plug-in for Eclipse. ArmADev is a plug-in that extends the Eclipse IDE in such a way that you can develop ARMA 2 and ARMA 2 Operation Arrowhead projects with it. It mostly centres around the SQF editor and project management.

ArmADev is still under development, and in a very early stage (currently 0.0.12), but I have tested it for a while now and it seems to be usable. Still a bit rough around the edges though. Therefore I decided to release it in order to collect bug reports and feedback.

ArmADev is released under the Creative Commons Attribution Unported License.

The following features are implemented and work:
  • Custom editing perspective.
  • Integrated SQF editor. The SQF editor is automatically opened for ARMA script function (SQF) files, and supports the usual features one would expect from such an editor:
    • Syntax Highlighting. Keywords are coloured by their type and the combination of local and global arguments they accept. Strings, comments, and other elements are also coloured.
    • Automatic formatting and auto-indent. Braces are automatically indented, and brackets can be automatically matched. Comments can be formatted automatically.
    • Content Assist. Hovering the mouse pointer over a keyword will pop up an explanation of the keyword including parameters and description. A custom view is available that displays this information permanently as a side-bar.
    • Auto-completion. Hitting CTRL+SPACE will use what you entered and propose completions. Currently only works for keywords and functions, I want to add support for local and global variables later.
    • Folding. Since there are no real high-level constructs in SQF, folding is done via special comment markers (“//+” to start a fold, “//-” to end it) and can be nested at any depth.
    • Template support. CTRL+SPACE will also propose template expansions if their name matches with the prefix in the editor.
  • Integrated Project Management. There are two New Project Wizards available currently:
    • “New mission from existing source” will create a new project based on your choice of a directory. Checks whether a mission.sgm file is present.
    • “New mission from scratch” will create a new mission project and folder, and can pre-generate some files (like description.ext, briefing.html, loadscreen and overview picture, etc).
  • Two custom “Views” (In Eclipse, a view is a window that is not an editor, i.e. something that displays information).
    • “COMREF” view displays the comref entry of the current selection. Double-click on “addAction” in the editor, and it will show an explanation of the addAction command.
    • “RPT View” displays the last n kilobytes of the RPT file. If you had script errors during your mission, you can scroll back here to see them.

Installation / Usage:
You must have Eclipse Indigo (3.7) installed. You should also have ARMA 2 or ARMA 2:Operation Arrowhead, although it is not strictly required

To install this feature, do this:
Start Eclipse
Go to Help->Install New Software
Click the 'Add' button
Enter a name in the Name field
In the URL field, enter ""
Click OK
The list should refresh and an ArmADev feature should appear under the "ArmADev" category. Check the Checkbox.
Eclipse may ask you to install additional plug-ins to satisfy dependencies.

Future plans:
Features that I have planned for the future:
  • A campaign project type. This would bundle a couple of mission projects into a campaign, with the ability to test missions separately and then “build” the campaign out of it, with sharing of data such as function module extension, identities, sounds/music, basically anything that goes into description.ext
  • Specialized, forms-based editors for briefing.html, description.ext, and similar files.
  • Localization support. An editor for stringtable.xml, and automatic insertion of string keys where appropriate (for example, as popup in the SQF editor)
  • Loadout editor and config/Class reference. I'd like to be able to edit a loadout for a solider or cargo and then insert it at appropriate places, with constraints (i.e. a soldier loadout only has 12 magazine slots, etc).
  • More wizards. I'd like to automate a few of the more tedious things like writing a briefing and managing tasks, but also things like wizards for specific files or creating scripts from an SQF template.
A bit further into the future:
  • A GMF-based FSM editor. Edit FSM's directly in Eclipse.
  • “Managed” mission building. The project manager keeps control of certain files (like init.sqf) and can automate some things. A bit like the mission wizard within the game, but with more flexibility and freedom, for scripting newbies.
  • SQF syntax analysis and parsing to prevent script errors.
  • “Library Plug-ins”. A lot of good pre-made scripting solutions (like SHK Taskmaster, UPSMON, etc) exist that can be used in a mission. They invariably boil down to copying files into the project and hooking into init.sqf. This could be automated in the form of a “library plug-in”.

I am looking for bug reports and feedback on this right now. Personally, I only edit missions, but I'd like this to be useful for addon makers also, so I'd also like to hear from Addon makers what kind of functionality they'd like to see.

Forum topic:
- BI forums

- Eclipse 3.7 “Indigo”

Enable javascript to be able to download from Armaholic please!

Tags: No tags