diff --git a/docs/Installation/DCS_Triggers_Empty.JPG b/docs/Installation/DCS_Triggers_Empty.JPG new file mode 100644 index 000000000..2daab421e Binary files /dev/null and b/docs/Installation/DCS_Triggers_Empty.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Mission_Add.JPG b/docs/Installation/DCS_Triggers_Load_Mission_Add.JPG new file mode 100644 index 000000000..68335a57b Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Mission_Add.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Mission_File_Added.JPG b/docs/Installation/DCS_Triggers_Load_Mission_File_Added.JPG new file mode 100644 index 000000000..7faa21e48 Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Mission_File_Added.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Mission_File_Select.JPG b/docs/Installation/DCS_Triggers_Load_Mission_File_Select.JPG new file mode 100644 index 000000000..34febf8c2 Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Mission_File_Select.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Moose_Add.JPG b/docs/Installation/DCS_Triggers_Load_Moose_Add.JPG new file mode 100644 index 000000000..b12c4d94d Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Moose_Add.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Moose_File_Added.JPG b/docs/Installation/DCS_Triggers_Load_Moose_File_Added.JPG new file mode 100644 index 000000000..56ee0e742 Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Moose_File_Added.JPG differ diff --git a/docs/Installation/DCS_Triggers_Load_Moose_Select_File.JPG b/docs/Installation/DCS_Triggers_Load_Moose_Select_File.JPG new file mode 100644 index 000000000..21a8f1f21 Binary files /dev/null and b/docs/Installation/DCS_Triggers_Load_Moose_Select_File.JPG differ diff --git a/docs/Installation/LDT_Add_Folder.JPG b/docs/Installation/LDT_Add_Folder.JPG new file mode 100644 index 000000000..919f4821e Binary files /dev/null and b/docs/Installation/LDT_Add_Folder.JPG differ diff --git a/docs/Installation/LDT_Delete_Src.JPG b/docs/Installation/LDT_Delete_Src.JPG new file mode 100644 index 000000000..8093f335f Binary files /dev/null and b/docs/Installation/LDT_Delete_Src.JPG differ diff --git a/docs/Installation/LDT_Mission_Folder_Name.JPG b/docs/Installation/LDT_Mission_Folder_Name.JPG new file mode 100644 index 000000000..5d7f7d1b4 Binary files /dev/null and b/docs/Installation/LDT_Mission_Folder_Name.JPG differ diff --git a/docs/Installation/LDT_Mission_Lua_File_Name.JPG b/docs/Installation/LDT_Mission_Lua_File_Name.JPG new file mode 100644 index 000000000..a18694315 Binary files /dev/null and b/docs/Installation/LDT_Mission_Lua_File_Name.JPG differ diff --git a/docs/Installation/LDT_New_Lua_File.JPG b/docs/Installation/LDT_New_Lua_File.JPG new file mode 100644 index 000000000..376ca4453 Binary files /dev/null and b/docs/Installation/LDT_New_Lua_File.JPG differ diff --git a/docs/Installation/LDT_New_Project_Projects.JPG b/docs/Installation/LDT_New_Project_Projects.JPG new file mode 100644 index 000000000..6598fc253 Binary files /dev/null and b/docs/Installation/LDT_New_Project_Projects.JPG differ diff --git a/docs/Installation/LDT_Project_My_Missions.JPG b/docs/Installation/LDT_Project_My_Missions.JPG new file mode 100644 index 000000000..72613f549 Binary files /dev/null and b/docs/Installation/LDT_Project_My_Missions.JPG differ diff --git a/docs/Installation/LDT_Select_Moose_Framework.JPG b/docs/Installation/LDT_Select_Moose_Framework.JPG new file mode 100644 index 000000000..8252e05c9 Binary files /dev/null and b/docs/Installation/LDT_Select_Moose_Framework.JPG differ diff --git a/docs/README.md b/docs/README.md index 778e458c9..69c0b2f3c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -47,7 +47,13 @@ Those people who have experience in lua development or are excited to contribute ### Please consult the [Contribution Guide](Contribution_Guide.html) for more information. -# 3) MOOSE Framework +# 3) MOOSE Support Channels + +MOOSE is broadcasted, documented and supported through various social media channels. + +[Click here for the communities guide of the MOOSE framework](Communities.html). + +# 4) MOOSE Framework The following classes are currently embedded within MOOSE framework and can be included within your mission scripts: @@ -73,7 +79,7 @@ You'll need to browse to the right MOOSE Class within the inheritance tree struc ![MOOSE framework](Presentations\MOOSE\Dia2.JPG) -## 3.1) MOOSE Demonstration Missions +## 4.1) MOOSE Demonstration Missions The framework comes with [demonstration missions](https://github.com/FlightControl-Master/MOOSE_MISSIONS), that you can try out and helps you to code. @@ -86,7 +92,7 @@ more complex mission scenarios by combining these MOOSE classes into a complex b These exact test missions are also demonstrated at the demo videos in the YouTube channel. -## 3.2) MOOSE Core Classes +## 4.2) MOOSE Core Classes These classes define the base building blocks of the MOOSE framework. These classes are heavily used within the MOOSE framework. @@ -114,7 +120,7 @@ The POINT_VEC3 class manages the 3D simulation space, while the POINT_VEC2 class * [ZONES](Documentation/Zone.html): A set of zone classes that provide the functionality to validate the presence of GROUPS, UNITS, CLIENTS, STATICS within a certain ZONE. The zones can take various forms and can be movable. -## 3.3) MOOSE Wrapper Classes +## 4.3) MOOSE Wrapper Classes MOOSE Wrapper Classes provide an object oriented hierarchical mechanism to manage the DCS objects within the simulator. Wrapper classes provide another easier mechanism to control Groups, Units, Statics, Airbases and other objects. @@ -146,7 +152,7 @@ The CLIENT class derives from the UNIT class, thus contains the complete UNIT AP The STATIC class derives from the POSITIONABLE class, thus contains also the position API set. -## 3.4) MOOSE Functional Classes +## 4.4) MOOSE Functional Classes MOOSE Functional Classes provide various functions that are useful in mission design. @@ -160,7 +166,7 @@ MOOSE Functional Classes provide various functions that are useful in mission de * [SCORING](Documentation/Scoring.html): Administer the scoring of player achievements, and create a CSV file logging the scoring events for use at team or squadron websites. -## 3.5) MOOSE AI Controlling Classes +## 4.5) MOOSE AI Controlling Classes MOOSE AI Controlling Classes provide mechanisms to control AI over long lasting processes. These AI Controlling Classes are based on FSM (Finite State Machine) Classes, and provided an encapsulated way to make AI behave or execute an activity. @@ -176,7 +182,7 @@ These AI Controlling Classes are based on FSM (Finite State Machine) Classes, an * [AI_CARGO](Documentation/AI_Cargo.html): Make AI behave as cargo. Various CARGO types exist. -## 3.6) MOOSE Human Tasking Classes +## 4.6) MOOSE Human Tasking Classes MOOSE Tasking Classes provide a comprehensive Mission Orchestration System. Through COMMANDCENTERs, multiple logical MISSIONs can be orchestrated for coalitions. @@ -196,7 +202,7 @@ Each TASK has a TASK ACTION flow, which is the flow that a player (hosted by a U * [TASK_CAS](Documentation/Task_A2G.html): Models a CAS Task, where a Player is routed towards an attack zone with enemies nearby, and various ground targets need to be eliminated. -## 3.7) MOOSE Action Classes +## 4.7) MOOSE Action Classes MOOSE Action Classes are task action sub-flows, that can be used and combined, to quickly define a comprehensive end-to-end task action flow. For example, for the SEAD Task, the task action flow combines the actions ASSIGN, ROUTE, ACCOUNT and ASSIST task action sub-flows. diff --git a/docs/Usage_Guide.md b/docs/Usage_Guide.md index e46733433..ec28dc0c3 100644 --- a/docs/Usage_Guide.md +++ b/docs/Usage_Guide.md @@ -120,15 +120,66 @@ Therefore, **the recommendation is that your create for each mission a separate The MOOSE test mission folder structure is a good example how this could be organized. The LDT has been customized and provides a tool to **automatically** maintain your existing .miz files. -1. Select from the Menu: **File** -> **New** -> **Lua Project**. +### 2.4.1.1. Select from the Menu: **File** -> **New** -> **Lua Project**. ![LDT_New_Project](Installation/LDT_New_Project.JPG) -2. A **New Project** dialog box is shown. +### 2.4.1.2. A **New Project** dialog box is shown. ![LDT_Project](Installation/LDT_Project.JPG) -3. Type the Project Name: **My Missions**. +### 2.4.1.3. Type your Project Name: (In my example it is **DCS_Caucasus_Missions**. + + +Note the indicated options in yellow: + + * Note that you can select the option **No execution environment**. + * Deselect the option **Create default project template ready to run**. + +![LDT_Project](Installation/LDT_Project_My_Missions.JPG) + +### 2.4.1.4. Press **Next >** + +### 2.4.1.5. Click the **Projects** tab at the top of the window. + +![LDT_Project](Installation/LDT_New_Project_Projects.JPG) + +### 2.4.1.6. Press the **Add...** button. + +### 2.4.1.7. A new windows will be displayed: **Required Project Selection**. + +This is an important step. This will _link_ your project to the Moose_Framework project and will activate **intellisense**. + +![LDT_Project](Installation/LDT_Select_Moose_Framework.JPG) + +### 2.4.1.8. After the selection, press the **OK** button. + +### 2.4.1.9. Watch your newly created project in the Script Explorer of LDT. + +You can delete the possibly created SRC directory. You won't need it at all. + +![LDT_Project](Installation/LDT_Delete_Src.JPG) + +### 2.4.1.10. Within your newly created Missions Project, right click and select **New -> Folder**. + +As explained above, each of your missions will be stored in a separate folder. Please follow the explanation how to do that. + +![LDT_Project](Installation/LDT_Add_Folder.JPG) + +### 2.4.1.11. Type the **Folder Name**. + +This can be any descriptive text explaining the title of your mission. + +![LDT_Project](Installation/LDT_Mission_Folder_Name.JPG) + +### 2.4.1.12. In your newly created **Mission Folder**, right click and select **New -> Lua File**. + +This will create your **mission script file**, +the file that contains all the lua code using the Moose framework using your mission. + +### 2.4.1.13. Type the **Lua Mission Script Name**. + +![LDT_Project](Installation/LDT_Mission_Lua_File_Name.JPG) ## 2.4.2) Create your first Mission file @@ -146,16 +197,85 @@ you'll have to include this **Moose.lua** file into your missions: Voila, MOOSE is now included in your mission. During the execution of this mission, all MOOSE classes will be loaded, and all MOOSE initializations will be exectuted before any other mission action is executed. +Find below a detailed explanation of the actions to follow: + +### 2.4.2.1. Open the Mission Editor in DCS, select an empty mission, and click the triggers button. + +![LDT_Project](Installation/DCS_Triggers_Empty.JPG) + +### 2.4.2.2. Add a new trigger, that will load the Moose.lua file. + +Check the cyan colored circles: + + * This trigger is loaded at MISSION START. + * It is the first trigger in your mission. + * It contains a DO SCRIPT FILE action. + * No additional conditions! + +![LDT_Project](Installation/DCS_Triggers_Load_Moose_Add.JPG) + +### 2.4.2.3. Select the Moose.lua loader from the **Moose Mission Setup** folder in the Moose_Framework pack. + +Additional notes: + + * If you've setup a folder link into Saved Games/DCS/Missions/Moose Mission Setup, then you can directly select this folder from **My Missions**. + * See point ... + +Press the **OK** button. + +![LDT_Project](Installation/DCS_Triggers_Load_Moose_Select_File.JPG) + +### 2.4.2.4. Check that the Moose.lua file has been correctly added to your Mission. + +![LDT_Project](Installation/DCS_Triggers_Load_Moose_File_Added.JPG) + +### 2.4.2.5. Add a new trigger, that will load your mission .lua file. + +Check the cyan colored circles: + + * This trigger is loaded at MISSION START. + * It is the second trigger in your mission. + * It contains a DO SCRIPT FILE action. + * No additional conditions! + +![LDT_Project](Installation/DCS_Triggers_Load_Mission_Add.JPG) + +### 2.4.2.6. Select the mission .lua file from your **missions** folder you just created or already have. + +Additional notes: + + * If you've setup a folder link into Saved Games/DCS/Missions/Moose Mission Setup, then you can directly select this folder from **My Missions**. + * See point ... + +Press the **OK** button. + +![LDT_Project](Installation/DCS_Triggers_Load_Mission_File_Select.JPG) + +### 2.4.2.7. Check that your mission .lua script file has been correctly added to your mission. + +![LDT_Project](Installation/DCS_Triggers_Load_Mission_File_Added.JPG) + + ## 2.4.3) Maintain your .miz files IMPORTANT NOTE: When a new version of MOOSE is released, you'll have to UPDATE the Moose.lua file in EACH OF YOUR MISSION. This can be a tedious task, and for this purpose, a tool has been developed that will update the Moose.lua files automatically within your missions. -# 3) Support Channels +### 2.4.3.1. Select the **Update SELECTED Mission** from the External Tools in LDT. -MOOSE is broadcasted, documented and supported through various social media channels. +This will activate a script that will automatically re-insert your mission .lua file into your mission. -[Click here for the communities guide of the MOOSE framework](Communities.html). +![LDT_Project](Installation/DCS_Triggers_Load_Mission_File_Added.JPG) + +## 2.4.4) Create folder links into your "My Missions" folder in Saved Games/DCS/Missions. + +This trick will save you a lot of time. You need to install the tool ... to create easily new links. + +Select from the following possible links that can be created to save you time while browing through the different folders to include script files: + +### 2.4.4.1. Create a link to your **Moose Mission Setup** folder ... + +### 2.4.4.2. Create a link to your **missions** folder ... # 4) Demonstration Missions