SOFTWARE
In order to create missions, it is advised that you use software that will ease the process for you. The Artemis Mission Editor is a stand-alone mission editing environment for Artemis, developed by players, that provides advanced functionality. The Artemis Mission Wizard is a quick way to create simple missions without being a programmer, but it only supports Artemis 2.3 and earlier. Or, if you prefer to edit missions manually as XML files, use a notepad program that supports xml syntax highlighting and checking, like XmlPad or Notepad++.
DOCUMENTATION
The mission-file-docs.txt in the Artemis installation folder contains some notes, but it contains some errors whereas this wiki contains corrections.
GENERAL NOTES
The mission script system is designed to let anyone create, share, and play game missions for Artemis.
In the Artemis install folder, there's a subfolder called 'dat'. Inside that is another folder called 'Missions'. Inside the Missions folder, each mission needs to have its own unique folder. Each mission folder name must start with 'MISS_'. Inside a mission folder must be 1 XML file. It must share the same exact name as the folder it's inside, except for the .xml suffix. This file will contain all the commands that make the mission happen. There may be other files in the same folder. As a general rule, any sound, video, or image files that the mission uses must be in the same folder as the XML file that references it.
To run a scripted mission, choose “Start Server” when the Artemis game starts up. At that point, the game will look inside the Missions subfolder and make a list of every folder that starts with "MISS_". On the Server control screen you can select one of those missions. If you do, you can still set the game difficulty. The difficulty setting won't control the amount and type of enemies (the mission will do that), but it will still control the enemy beam damage and the efficiency of the Artemis' systems.
When you've chosen your mission (and other settings), click the "Start Game" button. As the game is initialized, the Artemis app will attempt to open the chosen folder and read the XML file inside. It will read the entire XML script into memory, and keep it in memory for the entire game.
The XML script should contain a single <start> block. At the start of the mission, the commands in the start block will be immediately followed.
The XML script should also contain <event> blocks. These blocks should contain both command and condition blocks. For each event block, all of its condition blocks are checked. If they are all TRUE, then all of the event's command blocks are immediately followed.
So, when you make a mission XML file, use one start block to create all the initial conditions of the mission. Then use event blocks to trigger parts of the story when they are supposed to occur.
For a more detailed description, see the Introduction to Mission Scripting.
SCRIPTING TUTORIALS (For Artemis v. 1.702):
Characters - Artemis Mission Scripting 101 - by Michael Sweeney
Events – Artemis Mission Scripting 101 - by Michael Sweeney
Timing - Artemis Mission Scripting 101 - by Michael Sweeney
Artemis Scripting Quick Start for Programmers PDF - by T. L. Ford
CODE SNIPPETS
The community has created some code snippets which can be added to your missions to provide new functionality or flavour to the mission.
COMMAND REFERENCE
Variables and Expressions
Object Properties
Brain Stacks (AI)
Default Brain Stacks (AI)
Default Ship Brain Stack (AI) PDF
XML Node | Added in Version | Description | Doc note |
---|
*_arme |
Ignored by Artemis |
Mission Editor Use Only |
|
event |
≤ 2.1 |
XML that executes on timer/triggered events |
|
mission_data |
≤ 2.1 |
Overall XML wrapper |
|
mission_description |
2.7 |
Body is a description displayed on the server setup screen |
|
start |
≤ 2.1 |
XML that immediately executes |
|
OBJECT TYPES:
Objects
Stations
Ships
Enemies
Elites
Neutrals
Players
MISCELLANEOUS:
folder_arme, name_arme, id_arme, parent_id_arme - These are generated and used by the Artemis Mission Editor to organize the XML blocks into named folders and are ignored by the Artemis engine and are not part of the mission-file-docs.txt.
DEBUGGING:
When Artemis is running, on the Server, press [F7] multiple times to cycle through debug information.
1. Latest commands executed by the script (v.2.0)
2. Status of all scripted timers (v.2.0)
3. Status of all scripted variables (v.2.0)
4. Information about the latest scripted keypresses from consoles (v.2.0)
5. Brain stack for the Science console's selected NPC ship, with its current mission (v.2.1)
8. Brain stack for the Science console's selected monster, with its current mission (v.2.2)
7. Return to normal main screen
Comments (0)
You don't have permission to comment on this page.