MBot Veteran

Join Date: Nov 2004 Posts: 3,503

Dynamic Campaign Engine F/A-18C Dynamic Campaign: Battle Group Delta



F-14A Dynamic Campaign: Battle Group Delta



F-14B Dynamic Campaign: EastMed Fleet Defense







***** old DCE version *****







Screaming Eagle









Desert Tiger 76









Desert Fishbed 76









Wild Weasel





***** original post *****



With this thread I would like to present the project I am currently working on: A modular dynamic campaign system for DCS which I am simply calling Dynamic Campaign Engine.



Some might be aware of my



The Guardians campaign had several annoying limitations and workarounds due to the approach of generating mission content within running DCS missions. Shortly after release of Guardians it became clear to me that a more advanced DC system must be an independent program outside of DCS that can write complete .miz mission files from scratch. DCE is such a program. It is written in LUA and runs outside of DCS. It is still using the LUA interpreter supplied by DCS, but this is simply a convenience (why should I bother to set up my own LUA interpreter if there is one in the DCS installation ready for use). This approach remedies most of the limitations of the Guardians-system:



-Time and weather of the next mission no longer need to be adjusted manually.

-Briefings are now displayed as ordinary briefings instead of text output.

-Missions can be quit directly without any F10 actions required.

-Complete text debriefings are shown after the mission has been quit.

-Players can be assigned mission specific waypoints and loadouts.

-Because of above, players can play any mission type available to their aircraft (air-air, air-ground).





DCE running a campaign will work as follows:

1. Somewhere you have your campaign folder. Within is your next mission. For example it is called 'Test Campaign Mission 1.miz'. You simply play it in DCS as any other regular single mission.

2. After you are done playing, you end it with Esc.

3. A Notepad file will open automatically, showing a detailed debriefing:





(concept demo only, not an actual debriefing)



4. A command box will open asking you to accept the mission results. Accepting will proceed the campaign, not accepting will be as if you didn't play the last mission.

5. If you accepted, the mission 'Test Campaign Mission 1.miz' will be gone and 'Test Campaign Mission 2.miz' is now ready for you. This happens automatically while you are within DCS.

6. The next mission will have time advanced by a certain amount (as defined by the campaign designer), updated weather, updated order of battles depending on the kills and losses of the last mission and new task for all available aircraft (friend and foe).



The cornerstone of DCE is the automatically generated Air Tasking Order. The ATO will assign available aircraft to available targets in a sensible way taking into account a multitude of factors. I will go into more depth of the ATO in a subsequent post.



It is important to note that DCE is not a specific campaign but a framework to run campaigns on. This means that a campaign designer still has to invest some time into setting up a campaign, such as developing the overall scenario, defining all ground targets, setting up all air defenses, defining all involved aviation units, setting up victory conditions, defining special events, writing background texts etc. DCE will then play out what the campaign designer came up with. So whether a campaign will be fun to play will also depend a lot on how it will be set up.



A word on ground war and moving front line. DCE will not have it initially. Some people will instinctively associate a dynamic campaign with an ongoing ground war. I do not think this is the case, as the basis of a DC must be persistent damage and an ATO making aircraft do stuff. Historically several massive air campaigns have been fought without a ground war ongoing (Battle of Britain, Linebacker, 90% of Desert Storm). Therefore I think it is sensible to concentrate on the air war first (which includes air-ground against air defenses and ground targets) before looking at a dynamic ground war. I am not saying this will never happen. The way DCE is set up it should be very easy to insert a ground war module. Writing such a module will be a massive undertaking though, which basically is creating a strategy game from scratch. So I think this time is currently better spent on stuff in the air until this is really solid. DCE will be perfectly suited to run campaigns like F/A-18s doing carrier air strikes in the Strait of Hormuz against Iranian installations ashore.



So where is DCE currently at? I laid some groundwork last January and started working on it in earnest in October. So I am now about 2 months into development. The basic framework is set up and the ATO is already very solid. But there is still a lot of work ahead. I will use this thread to post some development updates as I go along. ***** old DCE version ********** original post *****With this thread I would like to present the project I am currently working on: A modular dynamic campaign system for DCS which I am simply calling Dynamic Campaign Engine.Some might be aware of my Guardians of the Caucasus dynamic campaign for the MiG-21 which I have released about a year ago. This campaign was very specifically tailored to the MiG-21 and purposely limited in scope in order to keep it manageable. With DCE I would now like to step up to the next level and provide a framework that can inherently manage a large variety of aircraft tasks and aircraft eras. I expect DCE to be able to run campaigns from modern times back to Korea (and possibly even WWII, though because of personal lack of interest I am not spending any extra time on that).The Guardians campaign had several annoying limitations and workarounds due to the approach of generating mission content within running DCS missions. Shortly after release of Guardians it became clear to me that a more advanced DC system must be an independent program outside of DCS that can write complete .miz mission files from scratch. DCE is such a program. It is written in LUA and runs outside of DCS. It is still using the LUA interpreter supplied by DCS, but this is simply a convenience (why should I bother to set up my own LUA interpreter if there is one in the DCS installation ready for use). This approach remedies most of the limitations of the Guardians-system:-Time and weather of the next mission no longer need to be adjusted manually.-Briefings are now displayed as ordinary briefings instead of text output.-Missions can be quit directly without any F10 actions required.-Complete text debriefings are shown after the mission has been quit.-Players can be assigned mission specific waypoints and loadouts.-Because of above, players can play any mission type available to their aircraft (air-air, air-ground).DCE running a campaign will work as follows:1. Somewhere you have your campaign folder. Within is your next mission. For example it is called 'Test Campaign Mission 1.miz'. You simply play it in DCS as any other regular single mission.2. After you are done playing, you end it with Esc.3. A Notepad file will open automatically, showing a detailed debriefing:(concept demo only, not an actual debriefing)4. A command box will open asking you to accept the mission results. Accepting will proceed the campaign, not accepting will be as if you didn't play the last mission.5. If you accepted, the mission 'Test Campaign Mission 1.miz' will be gone and 'Test Campaign Mission 2.miz' is now ready for you. This happens automatically while you are within DCS.6. The next mission will have time advanced by a certain amount (as defined by the campaign designer), updated weather, updated order of battles depending on the kills and losses of the last mission and new task for all available aircraft (friend and foe).The cornerstone of DCE is the automatically generated Air Tasking Order. The ATO will assign available aircraft to available targets in a sensible way taking into account a multitude of factors. I will go into more depth of the ATO in a subsequent post.It is important to note that DCE is not a specific campaign but a framework to run campaigns on. This means that a campaign designer still has to invest some time into setting up a campaign, such as developing the overall scenario, defining all ground targets, setting up all air defenses, defining all involved aviation units, setting up victory conditions, defining special events, writing background texts etc. DCE will then play out what the campaign designer came up with. So whether a campaign will be fun to play will also depend a lot on how it will be set up.A word on ground war and moving front line. DCE will not have it initially. Some people will instinctively associate a dynamic campaign with an ongoing ground war. I do not think this is the case, as the basis of a DC must be persistent damage and an ATO making aircraft do stuff. Historically several massive air campaigns have been fought without a ground war ongoing (Battle of Britain, Linebacker, 90% of Desert Storm). Therefore I think it is sensible to concentrate on the air war first (which includes air-ground against air defenses and ground targets) before looking at a dynamic ground war. I am not saying this will never happen. The way DCE is set up it should be very easy to insert a ground war module. Writing such a module will be a massive undertaking though, which basically is creating a strategy game from scratch. So I think this time is currently better spent on stuff in the air until this is really solid. DCE will be perfectly suited to run campaigns like F/A-18s doing carrier air strikes in the Strait of Hormuz against Iranian installations ashore.So where is DCE currently at? I laid some groundwork last January and started working on it in earnest in October. So I am now about 2 months into development. The basic framework is set up and the ATO is already very solid. But there is still a lot of work ahead. I will use this thread to post some development updates as I go along. Attached Thumbnails Last edited by MBot; 01-12-2020 at 09:08 AM .