Jump to content

DML - Mission Creation Toolbox [no Lua required]


Recommended Posts

Posted (edited)
1 hour ago, DD_Friar said:

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.

Thank you @DD_Friar for taking the time to report the issue in such detail, I appreciate that. This had me stumped for a while until I clued in to the fact that "JTAC" is indeed a valid typeString for an infantry soldier, one that I did not find in what I use as DB for all things DCS units: objectDB

After some experimenting, head-scratching and examining missions, I discovered that there is indeed an infantry type that has a typeString of "JTAC", and it should be deployable by helicopters. Huh. Thank you for that! This should make heloTroops even more versatile.

1 hour ago, DD_Friar said:

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.

That is because HeloTroops checks all members of a group against a whitelist of allowed types before it allows anyone from the group to step in. Else people could try and allow a Sherman Tank inside the passenger cabin. Since HeloTroops doesn't know "JTAC" it tells the entire group to wait outside and get stuffed.

Now, it seems that you tried to force heloTroops to do your bidding with the edited code, and I'm surprised that it didn't eat your troops in retribution 🙂 - the code that you changed was not the part that recognizes JTACs, it merely controls the defaulting if there was no unit type. I strongly recommend to revert to the old code.

There's an attribute in heloTroop's config zone called "legalTroops" that defines this whitelist. Try and add "JTAC" there, and it should allow them on board. This doesn't mean that heloTroops nor theSpawners will allow you to control the JTAC features (since I just discovered this, I did not code for that), HOWEVER, other DCS features may allow you to control the JTACs, try the relevant communication menus, maybe you get luck (if you do get luck, please let me know so can claim that this is a cool new feature 🙂, not a bug).

 


Edited by cfrag
Link to comment
Share on other sites

30 minutes ago, cfrag said:

the code that you changed was not the part that recognizes JTACs, it merely controls the defaulting if there was no unit type. I strongly recommend to revert to the old code.

@cfrag -evidence indeed that a little knowledge is a dangerous thing. I will take the JTAC out and look to add it to the config legalTroops and see how that goes.

Whilst I have you, do you have any comment on my issue of the spawners not waiting for a flag input before activating? It would be good to be able to use this feature as I could then use the orders command and also the "laze" option. 

I wanted to have my SpecOps units spawn in rather than a late activation but could not stop them from generating until required?

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

2 minutes ago, DD_Friar said:

do you have any comment on my issue of the spawners not waiting for a flag input before activating?

By default, spawners spawn after their cooldown runs out. To have spawners only spawn on command, use the "paused = yes" attribute

image.png

Link to comment
Share on other sites

@cfrag, Sorry sir but I must be missing something.

I just added the below test to my mission. I drive into the zone marked by the ammo boxes, this should trigger the spawn.

But nothing spawns?

spawn5.JPG

spawn4.JPG

spawn2.JPG

spawn3.JPG

spawn1.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

8 minutes ago, DD_Friar said:

But nothing spawns?

That is to be expected since you put the spawner's paused flag to true (which is correct if you only want the spawner to spawn on command, which is - I believe - what you were asking for). If you want to spawn units when the mission starts up, add a raiseFlag module, and have it once raise flag 'goTest' at mission start. That will spawn once when the mission starts up, and the spawner (since paused) remains under control of the 'spawn?' input.

14 minutes ago, DD_Friar said:

this should trigger the spawn.

I don't see the trigger, so I can't comment on that.

Link to comment
Share on other sites

I knew I should have included that!

basically when the humvee drives into the check zone it bangs the goTest flag.

I will double check the logic and have another look.

To recap the required scenario should have gone

mission starts, no spawn

car drives into zone

triggers flag to spawner

troops spawn

 

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 - nope, sorry. I have just re-checked and getting the same result, no spawn.

 

spawn7.JPG

spawn6.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

Adding JTAC into the "legalTroops" of the heli config works. I changed one of the members to the JTAC and was able to pick them up as standard.

Just to check, in my legalTroops I now have the complete list plus the JTAC, could I have just listed JTAC in the config?

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

45 minutes ago, DD_Friar said:

I have just re-checked and getting the same result, no spawn.

And to be on the safe side: You have loaded the unitZone module, right? Sounds silly, I know, but I've made this silly oversight more than one.

If you can't resolve this, maybe I can take a look at the mission. This should be quite straightforward.

 

27 minutes ago, DD_Friar said:

could I have just listed JTAC in the config?

Sure, if you only want to be able to pick up JTACs and nothing else. The list is not additive to the existing, it must contain every type that you intend to pick up. Usually, you can get by with the three to four your mission has. Since DML attempts to default for any possibility, that list is much longer.

Link to comment
Share on other sites

1 hour ago, cfrag said:

You have loaded the unitZone module, right? Sounds silly, I know, but I've made this silly oversight more than one.

Yes, unitZone was loaded. The mission I tested it in has pretty much most of the modules! 🙂

I will have to create a test mission with just the above logic to send you. I did it as part of my full server mission but did not safe it.

 

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 Question about "ownedZone" module

I had a scenario last night on my new server map where we had two groups of blue deployed troops making their way towards a red owned zone. Whilst they were on route a human player in an armed Huey who had previously dropped off his troops attacked the zone, killing all red units inside the zone.

When the two groups of blue troops arrived at the zone they both stopped short of entering the now empty zone. The zone remained red.

Is this expected activity for this scenario?

Is there any specific configuration that gets round this?

Regards

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

@cfrag Missing Information from user Guide - JTACgui requirements

Salute Sir,

I have just added the JTACGUI module to my mission and had the mission crash on loading.

After looking through the guides and finding no solution I had a look at the script I noticed that it has a dependency of having cfxplayers also loaded. I added this module and all is now good. This will make for yet another cool feature being included in my mission. Helicopter picks up JTAC unit, flies him out and drops him over looking an enemy position / road. 

Perhaps the next time you are looking at the guide you could just perhaps add a note to the initial reference to the module that is requires the above module to be installed as well and higher in the sequence of modules to enable others who may not be able to look at the code getting the answer.

Addition to "Wish List / Nice to have" for this module

When the JTAC is deployed from the helicopter the units seem to take up a  static "guard" position either side of the helicopter (in my test I have a JTAC unit and 1 soldier M4).

Would it be possible at all to perhaps have them side by side either in front of the helicopter or positioned to one side. This way players would know how to approach the LZ to drop them off.

Another cool feature would be have them act like a spawned unit with "Orders" to "guard" where, once deployed they will set off to the location of the nearest enemy. Instead of going on to attack as soldiers with orders to "guard" would, as they have orders to "laze" they could perhaps stop at the "range" parameter (or range - x% to put them a little closer rather than right on the range limit). This would enable the helicopter to deploy them outside of the lazing range near the target and they would then make their way to get within range and stop moving to start lazing the next target. This would also mean that the helicopter pilot would have to think about where he drops them and to think about terrain and the requirement for them to have line of sight to the enemy.

I know I have said it many times but thank you for all your hard work on this utility. It really has made a difference to my mission building.

 

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

23 hours ago, DD_Friar said:

When the two groups of blue troops arrived at the zone they both stopped short of entering the now empty zone. The zone remained red.

Is this expected activity for this scenario?

That would entirely depend on the routes that you assigned those troops. If they have orders to attack owned zones (from the spawner), they should move into the zone (but the zone must have sufficient size, say 100m across, 50m radius)

 

Link to comment
Share on other sites

19 minutes ago, DD_Friar said:

I have just added the JTACGUI module to my mission

uh. That's an old module that I'm so unhappy about that I never documented it. Yes, it needs cfxplayers to run

20 minutes ago, DD_Friar said:

and had the mission crash on loading.

When by 'crash' you mean 'put up an error dialog', then yes.

22 minutes ago, DD_Friar said:

Perhaps the next time you are looking at the guide you could just perhaps add a note to the initial reference to the module that is requires the above module to be installed as well

That is standard for all supported DML modules. They will tell you when they need another module in order to run. I abandoned JTAC GUI to the wolves before I added that.

24 minutes ago, DD_Friar said:

When the JTAC is deployed from the helicopter the units seem to take up a  static "guard" position either side of the helicopter (in my test I have a JTAC unit and 1 soldier M4).

Units deploy in a circular formation around the helicopter when using heloTroops, and then assume following their orders if you spawned them with a spawner. heloTroops does not know nor care what kind of units it deploys, it merely deploys the unit types that it picked up

35 minutes ago, DD_Friar said:

Another cool feature would be have them act like a spawned unit with "Orders" to "guard" where, once deployed they will set off to the location of the nearest enemy. Instead of going on to attack as soldiers with orders to "guard" would, as they have orders to "laze" they could perhaps stop at the "range" parameter (or range - x% to put them a little closer rather than right on the range limit). This would enable the helicopter to deploy them outside of the lazing range near the target and they would then make their way to get within range and stop moving to start lazing the next target. This would also mean that the helicopter pilot would have to think about where he drops them and to think about terrain and the requirement for them to have line of sight to the enemy.

That's currently not possible with DCS AI. If you give the units 'lase' units, you don't need JTAC type units at all - all lasing is handled by DML, and the units don't move. At this point, it's the best that we can do until the unit order API is opened up.

 

  • Thanks 1
Link to comment
Share on other sites

@cfrag - oh ok, that for the update on the module.

I should I not use it then? Should I go with the DCS in built feature instead? From my limited test of your module it seemed to work ok.

In my test I set a detection range and 3 units moving towards my JTAC. when they got within range the JTAC messaged to say that it had a target and was lazing.

I have not tried the aircraft side of it to make sure the lazing is ok yet though.

3 hours ago, cfrag said:

they should move into the zone (but the zone must have sufficient size, say 100m across, 50m radius)

It may be that my zone was not big enough in that case. The troops were approaching from the north and the south

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

1 hour ago, DD_Friar said:

I should I not use it then?

Since you already figured it out, there's no reason for you not to 🙂 - it's currently not fully supported from me. But it's a very simple module and should not create issues.

1 hour ago, DD_Friar said:

In my test I set a detection range and 3 units moving towards my JTAC. when they got within range the JTAC messaged to say that it had a target and was lazing.

Yes, that's how the 'lase' orders work, and the range attribute from the spawner is crucial (remember, I didn't know those JTAC units even existed until you showed them to me -- so this works with any troops that have the lase orders, you don't need the JTAC type).

1 hour ago, DD_Friar said:

I have not tried the aircraft side of it to make sure the lazing is ok yet though.

Remember that the lasing ability is not something that the jtac gui module gives you access to, but it's something that is provided by the groundTroops module that manages units that have 'lase' orders.

  • Thanks 1
Link to comment
Share on other sites

Hi cfrag

I have completed a quite complex mission in dml.  It's all working great! Recently, I rented a fox 3 managed server and I load the mission on this server but some of the scripts don't fire.  I don't have any way of debugging why.  Tue fox 3 servers are a bit weird in that they only give you Web access to the mission folder.  They create a junction between dcs.openbetaserver/scripts and mission/scripts.  When I created my mission.  I used do script files to link to all of the dml modules in dcs.openbetaserver/scripts.  When I look in my miz file all the scripts are there.  Do you have any idea why this could not be working? It's as of there is some dependency that dml is looking for that it can't find.

Thanks.

Link to comment
Share on other sites

9 hours ago, Chad Vader said:

some of the scripts don't fire.

That is interesting. I too use Fox3 to host my missions and have not come across any issues. Can you tell which scripts don't fire and how you know that they don't fire? That may sound silly at first, but in a served missions things may appear different from a self-hosted one.

9 hours ago, Chad Vader said:

I don't have any way of debugging why.

I think we can quickly get to the bottom of this f we start with the symptoms, and rationale why you expect something to happen versus what actually happens and then close in on the actual issue

9 hours ago, Chad Vader said:

I used do script files to link to all of the dml modules in dcs.openbetaserver/scripts. 

You may have introduced some dependencies of your own. It's one of the reasons that I don't like DoScriptFile and prefer DOSCRIPT (other than that you get a garbled file/script name when an error occurs). If you replace all scriptfiles by doscript, does the mission work as expected? If so, you have a dependency that perhaps the kind people at Fox3 can help you with. That would be outside of DML.

9 hours ago, Chad Vader said:

It's as of there is some dependency that dml is looking for that it can't find.

DML does not expect any file to be anywhere, and makes no assumptions as to where files are when it runs. It is self-contained, any dependencies to files would come from using doscriptfile invocations that you have made.

Link to comment
Share on other sites

Hi 🙂

The first symptom I have noticed is that none of the cloners spawn units.

The second related symptom is that the owned zones dont detect when units pass into them and spawn relevant units through the cloner.

The third symptom is that I have other scripts like EWRS that dont fire at all either and ctld doesnt even work.

I can replace do script file with do script, but thats a lot of work as ive included lots of your scripts 😛

Link to comment
Share on other sites

Just now, Chad Vader said:

The third symptom is that I have other scripts like EWRS that dont fire at all either and ctld doesnt even work.

This would indicate that something else, much bigger, is amiss. It would seem that none of your imported scripts work from what you are saying. With some luck it's the way that you import them.

Link to comment
Share on other sites

Hi, me again.

Sorry to reach out for support again but im experiencing a weird issue.

About 20-30 mins into the mission, I start to experience a network desync.  The entire mission suffers from it and all player experience the same thing.

Planes start darting about, flying backwards etc.

Have you experienced this before?  Its exclusive to this mission so im wondering if something in DML is causing it to occur.

Thanks

Link to comment
Share on other sites

Posted (edited)
20 minutes ago, Chad Vader said:

Planes start darting about, flying backwards etc.

This is usually a sign that your server is running out of memory (too many units, etc.). It seems a common issue with large missions like Pretense. If it happens on your Fox3 server, perhaps ask Luck if he can give you some server diagnostics, I seem to recall that they have installed a memory watchdog on most servers.


Edited by cfrag
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...