Members | Sign In
All Forums > Mission Scripting

Artemis Mission Editor (old topic, up to ver.

posted Apr 19, 2012 15:41:59 by Hissatsu

This is a complete Mission Editor environment for Artemis!
It provides GUI interface for editing the mission, adding and editing objects and conditions on a graphical space map, editing commands and conditions as statements presented in plain english, and more...

This program will allow you to:

- Create and edit missions in a Windows Forms interface
- Edit your commands and conditions in a graphial user interface with dropdown input suggestion, context help and lots of keyboard hotkeys for fast operation
- See and operate mission conditions and statements as plain english text, meaning you dont have to study the help files to know what commands or conditions are available to you or what the exact command or condition you encountered in mission file will actually do in game, you just chose commands or conditions from the list, and see everything in plain english, like "Create enemy at point (x, y, z) bearing 35 degrees with name..."
- Structurize your mission's events into folders, making it MUCH easier to navigate bigger missions
- Convert deprecated statements (like "direct") into their new versions (direct => add_ai point_throttle/target_throttle)
- Edit "create object" statements in events and start blocks using a graphical space map, which termendously helps positioning objects around
- Edit coordinates / spheres / rectangles on space map too (used in statements like direct, add_ai, if_inside/outside_sphere/box, destroy_near,...)
- See the logic flow and event dependency (which event triggers which event or requires which event to be triggered, etc.)
- Quickly find errors in your mission, like missing attributes that will crash the game, etc.
- Use all the quality-of-life features you expect to have. Copy/paste (you can even copy/paste to/from a text editor), undo/redo, autosave into a separate file so you dont lose unsaved work in the case of unexpected shutdown, smart find/replace, etc.
- Tweak it to your liking by modifying an extensive settings list.

You can find instructions, tutorial videos, latest version download links on the artemis wiki:


I am currently taking a break from Artemis, so I dont think I will develop this program further anytime soon. I will still make sure to visit this thread at regular basis and fix all bugs found, or update the editor to work with new Artemis versions, so please keep the feedback coming!

ATTENTION: If anyone would like to take over this project, to develop the editor further, I would gladly share the source codes (VS2010 C# project) and explain the inner workings of the code I wrote.

The new topic for this editor is here as it is now updated by RussJudge
[Last edited Jan 31, 2013 07:47:42]
page   first prev 1 2 3 4 5 6 next last
171 replies
DwayneShaffer said Apr 27, 2012 03:13:51
Not sure if its just my copy. But the map tool is not included with this version. (Or is just me) Can't find it.
Dwayne Shaffer C.O.
Vidar GSR 3701
C.D.F. 7th Fleet
Hissatsu said Apr 27, 2012 08:11:05
You dont have a stand alone map tool anymore, since it makes no sense.
It was just a tool to put objects on the map and then copy the code that creates them.

Now, with a mission editor, you dont need to copy stuff around by hand. You just open your mission, and edit/add objects using the space map directly to the event or start block you want. Then you save your mission.

In order to add or edit objects, just select the event you want to add the objects to (or edit objects in), then click somewhere in the event's tree (the right tree view) and press F2. Or right click the right tree view and chose from the context menu (Add/Edit objects on space map...)

You can see that on the second tutorial video.
[Last edited Apr 27, 2012 08:25:15]
DwayneShaffer said Apr 27, 2012 16:54:55
Sorry my fault did see the new instruction thanks. By the way this is awesome.
Dwayne Shaffer C.O.
Vidar GSR 3701
C.D.F. 7th Fleet
gecko1501 said Apr 27, 2012 17:09:20
I LOVE THIS! Sorry for the minor caps spam, But thank you so so much for being a coding genius that is concerned with those of us that are terrible at this deal. I will be attempting to make missions immediately now! This is so easy to use and get a general grasp of how to do this. I've been picking apart Mike's mission in the editor to understand how to use it better. I am completely excited. Thanks again. =D
Hissatsu said Apr 27, 2012 18:44:01
Oh, dont flatter me, i'm a code monkey, or even a code idiot, I just have spare time and dedication to do it, that's why you see this program actually happens to work :)

Honestly, I am making terrible mistakes (lol, until two days ago deleting statements didnt work at all... how'd i miss that?) but I hope that with your and other missionmaker's support I'll find and fix all mistakes, and introduce all important functionality, so that this program becomes a really useful and powerful mission making tool.
[Last edited Apr 28, 2012 09:30:52]
Hissatsu said Apr 27, 2012 20:02:42
New version

* Fixed DING! sound when using keyboard shortcuts to open / save mission
* Added "Find Next", "Find Previous"
* Added Replace capabilities (Replace Next / Replace All)
* Found via "Find All" or replaced via "Replace All" items are highlighted in their respective tree views
* Fixed some small bugs

PS: Mike please tell me if Find / Replace functionality, as it is now, is enough / easy to use.
[Last edited Apr 28, 2012 05:04:51]
Hissatsu said Apr 28, 2012 19:48:25
New version (Critical bug fix)

* Added replace previous
* Added ability to find next/previous when in main form ([F3] / [Shift]+[F3])
* Added ability to edit if_in/out_sphere/box conditions on the space map
* Partially added the dependency graph
(right now you have the ability to see precursors of the node) [F4]

* Fixed absence of Ctrl+F/H hotkeys in search results form
* Fixed minor bug in find next/previous functonality
* Fixed exception when trying to add statement into non-event/start node
* Fixed bug when filling a station name
* Fixed critical bug when parsing mission ("=" in comparators was wrongly converted to "EQUAL" instead of correct "EQUALS")


Please get this new version as a very nasty bug is fixed in it (basically if you opened a mission that had "=" used in it as a comparator, it has been replaced with "EQUAL" which is wrong and wont be correctly parsed by Artemis)

In this version first part of the dependency graph is introduced.

This will allow you to see which nodes are preceeding to the selected node, and which are succeeding, based on variables and timers. Right now only preceding nodes are shown.

This was in my plan all along, and Mike asked for that specifically, and now its here.

* I'm not sure i chose english words correctly here (words used in main menu, form title, form help dialog and form itself to describe the new feature)
* I'm not sure the way i made it work is comfortable or easy to use

I tried to make it simple to navigate, and make it easy to glance and get the whole picture. Thats why you see a list of tags when you look at the preceeding/succeeding node list. They go like this:

[STR+EN-][02/04/04][03][060s][100%] Event888

[STR+EN-] means that the Event888 is STRongly linked to our event (at least one condition in our event is only fulfilled by Event888's statements), and is ENough for our event to happpen, not counting (minus stands for this) space map state (all the conditions from our event except those that are dependant on space map object properties are fulfilled by Event888).

[02/04/04] means that:
- 02: 2 statements are strongly linked, or in other words, 2 of all the conditions of our node are only fulfilled by the Event888's statements.
- 04: 4 conditions of our event are fulfilled by Event888's statements
- 04: our event has 4 total conditions, not counting space map relying conditions

[03] means that our event has 3 space map reliant conditions in addition to the 4 variable/timer conditions

[060s] means that our event will occur 60 seconds after Event888

[100%] means that our event will occur with 100% chance after Event888 (this can be lower than 100% if set_variable to random value is used)

I know it might look wierd and complex at first, but i really dont see how to easilly output all the information that should be provided to the user. It really feels that all this information is important in one way or another, and must be presented in a text string. Maybe you can suggest some other way?

Also, highlighting from dependency form overwrites highlighting from Find All/Replace All. Is this a problem, should those two be kept on at the same time?

Or maybe even more information is required for the ease of use? Well, generally, give me feedback please so i could tune it. Meanwhile i plan to introduce the list of succeeding statements as well (soon).
[Last edited Apr 28, 2012 20:08:00]
Hissatsu said Apr 29, 2012 11:42:55
New version

* Added ability to see both precursors and successors of the node
* Added display of the statements that are involved in the precursor - successor link
* Added ability to highlight all errors in the mission (located in Tools menu)

* Fixed lack of hotkeys ([F4] in dependency form, [Enter] key)
* Fixed some minor bugs with random integer variables and percent display

PS: Also, made a video about the latest added functionality.
[Last edited Apr 29, 2012 12:18:52]
Hissatsu said May 01, 2012 14:56:56
I started making my first serious mission and that helped me alot fine tuning the functionality and tracking the bugs.
I'm going to make an update soon with a hell lot of bug fixes and small tuning towards ease of use.
[Last edited May 01, 2012 15:03:40]
Mike_Substelny said May 01, 2012 18:31:40
I look forward to the update and to your mission.

Be sure to use the new Artemis 1.65 while writing your script. The enemies are a lot more powerful, which changes the balance of most mission scripts.
"Damn the torpedoes! Four bells, Captain Drayton!"

(Likely actual words of Admiral David Farragut, USN, at the battle of Mobile Bay. Four bells was the signal for the engine room to make full steam ahead).
Hissatsu said May 01, 2012 21:32:37
Yeah, who will miss an awesome 1.65 release? I'm already toying with it and hope that we'll have some fun this weekend :) So far it looks very promising. Loving the whales too!

And as for my mission, I am yet to script my first battle so its not a problem. Actually I want to make this more of a quest than a combat mission, something like ST:BC experience. And actually I'm not even sure this will ever work out to be a good mission, but trying to make a mission sure shows me what my editor lacks, and allowed me to find hell lot of bugs already.
Hissatsu said May 01, 2012 21:36:59
New version

* Added support for all new 1.65 stuff (except whale's pod numbers, i'll add them soon)
* Changed default hotkey to add nebulas, it is now P, hotkey 9 is now used for Whales
* Changed default player color to the default player color on science map (purple)
* Added ability to paste whole mission xml file into the editor (in other words, copypasting whole mission now works)
* Added ability to expand/shrink all nodes in the node tree viev [Ctrl]+[E] / [Ctrl]+[R]
* Added ability to change value by +- 0.1 to 1000 [+]/[Num+] and [-]/[Num-] with [Alt], [Shift], [Ctrl], [Ctrl+Shift] modifiers (this allows for fast editing of statements like set_variable without having to select the correct label)

* Fixed bug with undo/redo (mission file name was forgotten on undo/redo)
* Fixed bug with pasting start node contents (Yes and No were mismatched)
* Fixed bug for drop down suggestion lists of variable/object names not showing for some statements (like set_variable, add_ai)
* Fixed bug when loading xml - undo/redo or load from file - folders nested inside folders were not assigned parents correctly
* Fixed bug when moving node from inside folder to the root (parent id wasnt cleared properly)
* Fixed bug with body text (body text that had both line breaks and ^'s, which was mostly the case when reading mission files made by hand, was doubling the amount of line breaks after an edit)
* Fixed bug with node name - it was possible to make an invalid commentary (containing -- or - as last character)
* Fixed bug with commentary inside statements - same problem as above (now -- are replaced with --, if - is at the end space is appended)
* Fixed bug when inserting multiple statements into an event/start node (their order was sometimes reversed)
* Fixed bug with boolean values (like block shots flag) throwing exception when displaying dropdown menu
* Fixed bug with renaming nodes (events/start/folder/...) - when canceling edit or making no change, the value was lost (you might have noticed nodes having blank names out of sudden).
* Fixed bug with incorrectly considering coordinates to be integer (while they were float all along)
[Last edited May 01, 2012 21:54:31]
Hissatsu said May 03, 2012 20:30:02
New version

* Added support for whale podnumbers (on space map and in main form)
* Direct statements are now converted to point/target throttle
* More statements are now marked to have unknown property/systemtype/etc
* Added [Delete], [Ctrl]+[Up]/[Down] hotkeys to the space map' objects list
* Added captions with number of objects to objects list on space map
* Added context menu to objects lists on space map
* Added undo/redo functionality on space map
* Added mission property form:
* * Added ability to edit mission's outer commentaries (before and after <mission_data> node)
* * Background for space map can now be chosen (any other event can be used instead of start node)
* Added scrolling when dragging nodes in treeview (you can scroll up and down by dragging node to the top or to the bottom of the treeview)
* State of folders (expanded/collapsed) is now persistent on save/load and undo/redo
* Added editors for paths - you can use open file dialog to open wav, ogg, dxs, png files where appropriate, and path is adjusted to relative automatically
* Folders are now copied along with their contents (this allows to copypaste more than one node at once from within the editor, which is useful if you need to duplicate a big part of your mission)

* Fixed small problem with default property name showing as unknown property name
* Fixed bug when trying to move folder inside itself (previously it was possible by some wierd manipulations to do it, and managing to do that would hang the program)
Mike_Substelny said May 04, 2012 16:03:51
Great feature list! I can't wait to try it.
"Damn the torpedoes! Four bells, Captain Drayton!"

(Likely actual words of Admiral David Farragut, USN, at the battle of Mobile Bay. Four bells was the signal for the engine room to make full steam ahead).
Hissatsu said May 04, 2012 18:13:13
New version

* Added ability to cut/copy/paste on Space Map
* Added ability to convert nodes (like, convert commentary to folder, etc)
* Added ability to select multiple nodes (using Shift key + click or arrows) - you can cut them, copy them, delete them, convert them (you can only drag and drop single nodes though)
* Added setting that makes delete operation on state node clear its contents (or you can set it to false so nothing happens when you try to delete start node, since start node cannot be deleted)
* Added hull id editor to exrpession editor (you can now choose hullid from list and see what ship is behind a hull id in main form as you could before on space map)
* Added racekeys/hullkeys editors to expression editor (you can now check those from list as in the space map)
* Added "about" form
* Added autosave functionality (you can set the amount of stored autosave entries, and the interval of the autosave timer)
* Added ability to undo/redo more than one action at once (use "Undo list" and "Redo list" and there you can select how many entries you want to undo/redo)

* Fixed bug when adding node into folder (this created two undo entries, one for "expand folder" and one for "add node")
* Fixed bug with space map undo/redo (it removed background objects)
[Last edited May 04, 2012 20:51:15]
Login below to reply: