Jump to content

DML - Mission Creation Toolbox [no Lua required]


Recommended Posts

1 hour ago, crispy12 said:

I tried using landing zone but it seems to count twice if I bounce the landing. Another option I thought would be to use unitzone and trigger some late activation units. Does anyone have any good ideas?

I think there are multiple ways to approach this. 

  • have the helos bring the troops along (using helotoops) and have the players drop them where they deem correct
  • If you are going the route that a helo that lands triggers a spawner or cloner, and run into the problem that multiple landings result in multiple triggering signals to the spawners, use an output method from the LZ that will not cause multiple spawns, e.g. 'on'. Note that in this case you may want to use individual LZ and spawners for each helo.
  • Like 1
Link to comment
Share on other sites

@cfrag   Don't know if this is feasible, but a little enhancement suggestion:

 

- I have been enjoying the heck out of Willie Pete. Being able to call down the Steel Rain has been a huge force multiplier in our Foothold adventures!!

As you well know, there are issues when WP initializes with GROUPS of aircraft,  and issues when aircraft in groups are trying to perform the FAC role. I've taken to creating dedicated single FAC aircraft to carry out the duty. Still, when WilliePete initializes, it does a ton of work and, when Verbose, sends a TON of messages about trying to initialize Groups.

Wondering if it would be possible to add a Configuration parameter for the NAME of an aircraft Group or Unit, so, for example, WP would only initialize aircraft in a group (or an individual unit named *FAC.   For the UNIT designation, for example, you could have a group, "Harrier CAS"  and, let's say Harrier CAS -3 had a unit name of Harrier CAS-FAC. That way, WP would initialize only that aircraft to perform the role and ignore the others in the Group.  If it has to be GROUP based, they you would still have to create a separate aircraft in a Group named "HARRIER-FAC" but the overhead during the initialization process would be significantly lower (unless the work of parsing out specific names would be even MORE overhead.

Maybe I haven't though this through, but presenting it for your amusement if nothing else 🙂


Edited by Recluse
Link to comment
Share on other sites

Posted (edited)
14 hours ago, Recluse said:

Wondering if it would be possible to add a Configuration parameter for the NAME of an aircraft Group or Unit, so, for example, WP would only initialize aircraft in a group (or an individual unit named *FAC. 

It would surely possible, but it would be a bad experience all around. The reason for that is that DCS has no API for unit-individual commands, just for entire groups. So all group members have the menu items available, and only that one plane would elicit a response. It would also introduce a source for frustrating and difficult to detect bugs (name-matching from units to what you specified in ME), and some more checking in the WP code (not that difficult). 

So what I would prefer to do is wait until ED get around to introducing unit-specific missionCommands (after all, it only took them some 10 years to do the same for textOut() and soundOut(), even though it currently does not work correctly in multiplayer yet), and then re-code WP (and all the other modules like HeloTroops, csarManager etc) to support single groups without ugly hacks.  


Edited by cfrag
Link to comment
Share on other sites

I am trying to make a mission where helicopters are required to stay below a certain altitude. Each time they go over, I would like a message to all saying who done it. If this can be done with DML, can you point me in the right direction?

Link to comment
Share on other sites

@HungryCoyote - I asked for something similar a while back and @cfrag kindly replied that it would be an absolute ball ache to implement due to all the different types of scenarios that would need to be accounted for.

For this specific task you are best going with the standard triggers, which now having been fixed will work for this.

But I have found for 98% of all my other requirements its "DML all the way baby!"

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

Thanks for the reply. I got it to work using three triggers. 

Trigger 1 Repetitive>Unit lower than 100>Flag 1 off.

Trigger 2 Repetitive>Unit higher than 100>Flag 1 on.

Trigger 3 Switched>Flag 1 is true>Message to all, Aircraft is to high.


Edited by HungryCoyote
Link to comment
Share on other sites

Version 2.2.0 - Update 20240320

Often, it's the small things. Last update, 'all' we added to DML was the ability for persistence to share data. A small thing, but it opens a lot of fun new possibilities.

This update adds another very small change than can greatly multiply the possibilities.

Background: DML uses attributes to control how how modules work. Mission designers decide when they create the mission, what values to use. If they want to introduce an element of random, some attributes support ranges (for examples "5-9" which means "a value from 5 to 9"). 

There is one 'type' of attribute that mission designers to turn something on or off. In Geekspeak, attributes that have only two values to choose from are called 'boolean'. Cloners, for example, have an 'onStart' attribute that controls if a cloner should run a clone cycle on start. Possible values are 'yes' or 'no' (or 'or'/'off','true'/'false', '1'/'0').

Well, no more. As of this release, you can set this value to 'MAYBE'. In that case, DML rolls the dice at mission start, and sets the attribute randomly to either "yes" or "no". This allows you to randomize any attribute that uses a formerly boolean (true/false) attribute. Note that setting this 'maybe' to either 'yes' or 'no' happens once, at mission start, and that value remains set to this value for the entire duration of the mission. It's re-rolled every time that the mission restarts. 

image.png

So why is this such a big deal? Because in an instant, you can now randomize many missions simply by changing the value of a formerly true/false-values attribute to 'maybe' and have your mission randomize its setting every time that the mission starts.

The other big change is that finally, after a lot of stress-testing I am able to add the ability to intelligently drop units into densely populated areas (like cities in Syria or Sinai) with a good likelihood that they are not dropped on top of buildings. This is controlled by the new 'inBuiltup' attribute that you can use to control the minimum free space that a unit must have around it. 

image.png

Changes is Detail


Manual 

    Main
        - boolean "maybe"
        - changes to cloner 
    
Demos
    - (none)

Modules
    - cfxZones 4.3.0 
        support for "maybe"
        
    - cloneZone 2.1.0
        - despawn option 
        - inBuiltup attribute 
        
    - csarManager 3.2.5
        - useRanks option 
        
    - groupTracker 2.0.1
        - better verbosity 
        
    - PlayerScore 3.1.0
        - shared data 
        
    - rndFlags 2.0.1 
        - better verbosity 
        
    - sequencer 2.0.0 
        - dmlZones 
        
    - stopGaps standalone 1.1.1
        - filter "start from runway"
    
    - stopGap 1.1.1
        - filter "start from runway"

    - valet 1.1.0
        - hysteresis now time-based 

 

Enjoy,

ch

  • Like 1
Link to comment
Share on other sites

As usual, first is to apreciate all your work. Really Big Time Thanks!

Now, the challenge: Is there a way to Spawn weapons? Like spawn cruise missiles, or guided bombs, going to a specific area, or even a specific target...

Keep it up, mate. DML is pure art!.

Link to comment
Share on other sites

9 hours ago, Poker03 said:

Is there a way to Spawn weapons?

There currently is no way in DCS scripting to spawn weapons, just their launch platforms (e.g. ships for cruise missiles).

That being said, your question reminds me of the old adage that "a guy walking into a store to buy a drill does not really want a drill: he wants holes in his walls". So, why do you want cruise missiles to spawn? Unless you want to engage those weapons themselves, if you need explosions in some locations at a specific point in time, DML has the tools for you:: groundExplosion (which can also do airbursts).

 

Link to comment
Share on other sites

hace 15 horas, cfrag dijo:

There currently is no way in DCS scripting to spawn weapons, just their launch platforms (e.g. ships for cruise missiles).

That being said, your question reminds me of the old adage that "a guy walking into a store to buy a drill does not really want a drill: he wants holes in his walls". So, why do you want cruise missiles to spawn? Unless you want to engage those weapons themselves, if you need explosions in some locations at a specific point in time, DML has the tools for you:: groundExplosion (which can also do airbursts).

 

I love the way you think. In this case, I´m afraid I´m looking for literally it... (I discover you where looking for something similar when you were loking for paratroopers IIRC). this request is the first step seeking to create things like the Rapid Dragon for cargo planes. Instead of Spawning vehicles when the crates reach the ground, I want to spawn Cruise Missiles, periodically while it falls... and possibly distribute them on different targets... But before anything else, we need the wapons spawn.

Rapid Dragon is an example.. there are tons of other applications. 

So far I was aware that it was not possible... but I´ve seen so much magic coming out of DML so far.

In any case, Big Time Thanks, and keep it up!

Link to comment
Share on other sites

@cfrag - Apologies if this is old news but I have just been exploring DML a bit more and have just downloaded the files onto another computer so I can have a read-up before getting to my gaming PC.

The download files say they are version 2.2 "Version 2.2.0 – 2024-03-20" but page 1 download is still labelled 2.1. Job 126b on the list I know.

many thanks for the continued updates.

I am looking to start building troops dropped off in random places by helicopters and getting them then to move to the nearest target to attack/capture.

Previously I have used placed zones but this can cause game play issues making sure players land in said zones to make sure the troops appear in the right place.

I know see that using groundtroops with commands is the correct way forward.

Salute.

DD_Friar

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

There appears to be no Quick Reference Guide in 2.2, the full guide is duplicated?

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

4 minutes ago, DD_Friar said:

here appears to be no Quick Reference Guide in 2.2, the full guide is duplicated?

Huh. Looks like I screwed that one. Will fix asap, thank you!

-ch

 

  • Like 1
Link to comment
Share on other sites

@cfrag or anyone else that knows 🙂

Just looking for a quick heads up - I am working with the spawner zone for the first time. I am trying to get the spawn to take place only when I want it (via a radio command)

I have put the flag name in but they spawn as soon as the mission starts.

If I use the paused option nothing happens at all, even after triggering the spawn from the radio.

Without the paused, the units spawn as soon as the mission starts.

I am working on a scenario where at an airport a helicopter calls up the troops if he wants to do a transport mission (they spawn), the player then loads them into the helicopter.

Your advice will be much appreciated. I attached a picture of my spawner zone for reference

null

image.png

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

Edit I think I have sorted it now - it was "requestable" that was missing.

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

@cfrag Ref HeloTroops - Tactical Issue Using Module

Sir, now that I am starting to get my head around how this works, I think I may have exposed a tactical issue with the way it works.

In your guide you state;

"When groups are spawned, they assemble into a formation. You can tell the spawners what formation the group should assume. This is purely for the group’s initial arrangement, should the group move, they will break that formation."

In my test mission I had a group of 12 US soldiers (11 x M4 and 1 x M249) picked up, deployed and watched as they marched off to attack a nearby "Owned Zone".

The zone had 6 insurgents with AK47's.  The zone was out in the open so they had no extra protection.

My brave US soldiers formed a nice single file line and closed in on the enemy.

They were all killed.

The problem being that due to them being in a line only the front man was firing. so basically 6 v 1. As the leader was cut down the next man took his place, only for he too to be killed without firing.

Is there no way to have a formation allocated to the moving troops (as DCS does against the waypoint) so that they could be spread out a bit and each have room to fire?

Also

I am still struggling having them spawn via flag / trigger. Using "Requestable" works ok but the units spawn right away without it even though i am trying to use a flag.

Cheers

DD_Friar

 

 

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

@DD_Friar I built a quick test some time ago and it seems to work fine. The troops don't spawn until I request them from one of the aircraft. I think the problem might be with your spawnUnits? flag which might be getting triggered prematurely. I don't think it is needed when the Requestable option is there.

 

image.png

Link to comment
Share on other sites

@Recluse - thanks for the reply. I now have requesting a group to spawn via the default Airlift F10 menu working correctly.

What I am having an issue with is NOT getting a group to spawn unless a flag is triggered. They are spawning at mission start 😞

(I am using 2.2 by the way)

My scenario is that I have 3 possible locations that Spec Ops team requires extraction from. I have a menu option that says generate my mission. This flag is passed to a rndFlag module that picks 1 of the 3 locations. Each location has its own flag. In this example its specops-1.

The spawner should then place the 3 troops in the location, waiting for me to navigate to them and pick them up. I used to do it with the cloner and trigger zones but helotroops is neater, if I can stop them spawning at mission start.

null

image.png

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

@DD_Friar  In mine, they aren't spawning at mission start. That's why I thought that your spawnUnits? flag might be getting triggered somehow at mission start through some other event. I get what you are doing with the random flag, but if they are REQUESTABLE at each location, you shouldn't even need a flag.

OOPS Never mind! DIfferent scenario... still worth checking if there is any initialization of the flags at mission start.

Try taking OUT the flag and see if they are still spawning at mission start.

 

I think you were on the right track before with a pause? But maybe you need an Activate as well before the spawn? flag will work?


 

Quote

 

ME Integration (forced spawns, activation and pause) Spawners can be instructed to spawn immediately, at which point they ignore all of the rules programmed into them by attributes, and create a fresh ‘batch’ of troops immediately. SpawnZones can be told to watch an ME flag, and every time that flag changes, the Spawner spawns new units without checking max spawns, updating spawn count, or respecting a cooldown, not even ownership. In order to use an ME flag to trigger a spawn, all you need to do is add an attribute to the spawner:


Name
Value
Description
f?
spawn?
spawnUnits?
Number
Watches the flag <Number> (as accessed by DCS) for a change. Each time the flag’s value changes, a new group is spawned
Use only one synonym per zone
activate?
Number
Watches the flag <Number>. Each time the flag’s value changes, the spawner’s ‘paused’ setting is forced to ‘false’. Used to ‘activate’ a paused spawner
125
Name
Value
Description
pause?
Number
Watches the flag <Number>. Each time the flag’s value changes, the spawner’s ‘paused’ setting is forced to ‘true. Used to ‘pause’ a spawner

 

 


Edited by Recluse
Link to comment
Share on other sites

I have sorted (well, a work-around) the spawn flag issue but going "old school" and using the standard feature of delayed activation for the units (and not generating them via spawn).

The scenario works just as I wanted it now.

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

@cfrag

BUG (?) REPORT

MODULE: HELOTROOPS

MODULE VERSION: 3.0.2

OVERALL VERSION: 2.2

BRIEF DESCRIPTION OF ISSUE: Use of "JTAC" infantry unit breaks ability to pick up troops.

DETAILS OF ISSUE: I have found an "undocumented feature" where by if I include the "JTAC" infantry unit the ability to pick up the troops is not recognized. The steps I took to found this issue as shown in the attached pictures.

Step 1 shows a group of 3 soldiers (M4's with M249) having been spawned in. Selecting the Airborne troops feature shows the until available to be picked-up.

Step 2 I replaced the third member of the team with the JTAC unit and repeated the mission. The 3 soldiers are spawned but going into the Airborne Troops menu shows that no units are available to be picked up.

I have also tried adding the JTAC into the list of units in the module script (perhaps the in game name is something else?)

Pictures below.

 

JTAC spawn1.JPG

JTAC spawn2.JPG

JTAC SCRIPT.JPG

Visit the Dangerdogz at www.dangerdogz.com. We are a group based on having fun (no command structure, no expectations of attendance, no formal skills required, that is not to say we can not get serious for special events, of which we have many). We play DCS and IL2 GBS. We have two groups one based in North America / Canada and one UK / Europe. Come check us out. 

Link to comment
Share on other sites

I could be VERY WRONG, but I don't think there is a specific JTAC unit in DCS that is recognizable. It has to be infantry with a "lase" order. So not sure you can include a "JTAC" in a spawner with other units who arent supposed to lase.

So, I think the non-requestable comes from having an entry in the list that is not in the legalTroops variable (and in fact doesn't exist in DCS)

As an aside, I have found that if I spell a unit wrong, like "SoliderM249" instead of "SoldierM249" it seems to generate a LEOPARD by default.


Edited by Recluse
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...