Page 1 of 3 123 LastLast
Results 1 to 10 of 24

Thread: ArmADev Eclipse Plugin

  1. #1
    Master Gunnery Sergeant Alwarren's Avatar
    Join Date
    Aug 25 2009
    Location
    Germany
    Posts
    1,116

    ArmADev Eclipse Plugin

    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.


    In order to get ArmADev, you need to do the following:

    1. Install the latest Eclipse (at least 4.1) if you don't have it. Eclipse can be downloaded for free from http://www.eclipse.org/.
    2. Start Eclipse, and go to Help->Install New Software.
    3. Click the 'Add' button
    4. Enter a name in the Name field, for example “ArmADev updates”
    5. In the URL field, enter "http://armadev.friedenhq.org/"
    6. Click OK
    7. The list should refresh and an ArmADev feature should appear under the “ArmADev" category. Check the Checkbox.
    8. Click OK.

    Eclipse might need to install additional plugins on which ArmADev depends. Also, it will complain that ArmADev is unsigned. Once it has installed, Eclipse will need to restart. To verify that the installation worked, go to Help->About Eclipse. There should be a new button “FHQ ARMADEV”.
    There is a bit of preliminary online help available under Help->Help Content->ArmAScript Development. It's not much, but should get you started.

    Features that I have planned for the future:

    1. 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
    2. Specialized, forms-based editors for briefing.html, description.ext, and similar files.
    3. Localization support. An editor for stringtable.xml, and automatic insertion of string keys where appropriate (for example, as popup in the SQF editor)
    4. 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).
    5. 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:

    1. A GMF-based FSM editor. Edit FSM's directly in Eclipse.
    2. “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.
    3. SQF syntax analysis and parsing to prevent script errors.
    4. “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.

    Finally: I know there is another IDE based on Netbeans out there. I decided to go ahead with this one though out of a few reasons. For one thing, I was already working on it and I don't like to quit a project. Secondly, I like Eclipse better than Netbeans (a purely personal matter of taste).

    Anyway, as I said, feedback is very welcome
    Last edited by Alwarren; Feb 3 2013 at 20:51. Reason: Updated installation instructions

  2. #2
    Interesting! You'll want to post this here though.

  3. #3
    Master Gunnery Sergeant Alwarren's Avatar
    Join Date
    Aug 25 2009
    Location
    Germany
    Posts
    1,116
    Author of the Thread
    Quote Originally Posted by kylania View Post
    Interesting! You'll want to post this here though.
    Hm, good point. Never seen this forum before. Maybe a moderator would be so kind to move the thread? Thanks
    Last edited by Foxhound; Aug 24 2011 at 20:50. Reason: Topic moved

  4. #4

    Thumbs up

    Good idea, thanks for sharing. Installation went fine, no problems.
    When I selected Windows->Preferences->ArmAScript->ArmA II Settings, I've got error "The current displayed page contains invalid values.". That page is empty, the others are fine, but there is where I should have set the Default Player profile.
    If you need more info, let me know.

  5. #5
    Master Gunnery Sergeant Alwarren's Avatar
    Join Date
    Aug 25 2009
    Location
    Germany
    Posts
    1,116
    Author of the Thread
    Quote Originally Posted by alef View Post
    Good idea, thanks for sharing. Installation went fine, no problems.
    When I selected Windows->Preferences->ArmAScript->ArmA II Settings, I've got error "The current displayed page contains invalid values.". That page is empty, the others are fine, but there is where I should have set the Default Player profile.
    If you need more info, let me know.
    Try to give the correct paths for the ARMA 2 and Arrowhead installation, that should cure it.

    I should try to read the registry for these values.

  6. #6
    Quote Originally Posted by Alwarren View Post
    Try to give the correct paths for the ARMA 2 and Arrowhead installation, that should cure it.
    That's what I wanted to do in that page, but the settings page is empty, the form has no fields, probably because of the error message. I'll send you a screenshot somehow.

    Quote Originally Posted by Alwarren View Post
    I should try to read the registry for these values.
    Try this set under HKEY_LOCAL_MACHINE\SOFTWARE:
    Code:
    Bohemia Interactive Studio\ArmA 2/MAIN
    Bohemia Interactive Studio\ArmA 2/InstallPath
    Bohemia Interactive\ArmA 2/InstallPath
    Wow6432Node\Bohemia Interactive Studio\ArmA 2/MAIN
    Bohemia Interactive Studio\ArmA 2 OA/MAIN
    Bohemia Interactive Studio\ArmA 2 OA/InstallPath
    Bohemia Interactive\ArmA 2 OA/InstallPath
    Wow6432Node\Bohemia Interactive Studio\ArmA 2 OA/MAIN
    Or check 6th updater by Sickboy, he probably check Valve's Steam registry too.

  7. #7
    Master Gunnery Sergeant Alwarren's Avatar
    Join Date
    Aug 25 2009
    Location
    Germany
    Posts
    1,116
    Author of the Thread
    Update is now available:

    ARMADev-0.1.0
    Changes:

    1. Removed ARMA 2 and Arrowhead paths from preferences, they're not used right now anyway.
    2. Corrected syntax highlighting, now strings work correctly.
    3. A few minor fixes.

    Available via Update on Eclipse, or as outlined in the first post

  8. #8
    Unfortunately I cannot get this to work, everything installed fine however when I select "Create a new mission project" nothing happens after pressing next but if I double click it I get "An error has occurred. See error log for more details.
    java.lang.NullPointerException"

    On importing a mission project I get the dialog to select a mission directory and set project name, but after pressing "finish" nothing happens and the dialog remains open.

    I also get the error message ""The current displayed page contains invalid values."" in Preferences -> ArmA 2 settings.

    It is a shame as I would really like to use this

  9. #9
    Master Gunnery Sergeant Alwarren's Avatar
    Join Date
    Aug 25 2009
    Location
    Germany
    Posts
    1,116
    Author of the Thread
    Quote Originally Posted by UnforgivenRPP View Post
    Unfortunately I cannot get this to work, everything installed fine however when I select "Create a new mission project" nothing happens after pressing next but if I double click it I get "An error has occurred. See error log for more details.
    java.lang.NullPointerException"

    On importing a mission project I get the dialog to select a mission directory and set project name, but after pressing "finish" nothing happens and the dialog remains open.

    I also get the error message ""The current displayed page contains invalid values."" in Preferences -> ArmA 2 settings.

    It is a shame as I would really like to use this
    Hm, are yiou using Eclipse 3.7.1? Note you need the updated version. It might also be needing JRE 1.7, although I think it should work with 1.6.

    If you have those, and still get the error, please send me the error log so I can trace it back. Thanks

  10. #10
    Using Java 1.7 seems to have fixed the issue, was using 1.6 before.

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •