Jump to content

Recommended Posts

Posted

Version 2.2.4 - Feature Update - 20240523


I'm still knee-deep into polishing and maintaining "Expansion", and so far, it has been an exhilarating ride: so many suggestions, so little time.

One of the most significant changes has made its way to DML, and I'm proud and happy to share it with you: 

"Slotty"

This unassuming, and completely self-configuring module does something that I was convinced a few weeks ago was impossible: slot-blocking for single-player. @Ciribob's incredibly useful SSB (simple slot block) has been around and loved since ca. 2017, and it allows this nifty slot blocking feature - but only in multiplayer if SSB is installed on the server. Taking (another) clue from @Dzsekeb I knew that it was "kinda-sorta" possible, but my own implementations were unstable. Until two weeks ago, I had a break-through and was able to implement a reliable slot-blocking mechanism that supports the SSB protocol, but does not require SSB. This means that simply by adding Slotty to a mission that uses SSB, you can make it work in single player and on servers that do not have SSB installed. And all that in less than 80 lines of code. Slotty has no other DML dependencies (yet), so you can add it to any mission that ordinarily requires SSB/multiplayer for slot blocking, and it should now work in single-player as well. 

Other than that, I've added many refinements and mystery modules, and also improved some of DML's older modules (most by request). The entire Spawner-groundTroops-heloTroops complex has gotten a (nearly invisible) once-over to accomplish two things:

  • inserted troops remain at the owned zone that they captured (using the new 'captureAndHold' attribute 
  • spawned troops can now use a standard DCS formation while enroute  

All this and more in this episode of DML bi-weekly!

Changes in Detail 
    Documentation
        Main
            - Slotty reference 
            - SpawnZones updates for 'moveFormation' and 'captureAndHold'
            - Demo Documentation for 'non SSB & SP slot blocking'
            
        Quick-Ref 
            - Slotty 
            - SpawnZones 
            
    Demos 
        - new non SSB & SP slot blocking
        - helo Trooper update 
    
Modules 
    - bombRange 1.1.3 
        - Added distance in meters/feet to percentage 
    
    - commander 2.0.0 
        - dmlZones, OOP
        - support for "moveFormation"
        - hardening of code against DCS bugs 
        
    - FARPZones 2.1.1
        - loading FARP from file respawns defenders 
        
    - groundTroops 2.2.0 
        - support for captureAndHold 
        - support for moveFormation 
        
    - heloTroops 3.0.3
        - support for captureAndHold 
        - support for moveFormation 
        
    - launchPlatform Experimental 
        - do cool stuff 
    
    - noGap 1.0.1
        - correctly handles clients starting from runway 
        
    - slotty 1.1.0 
        - initial version, too cool to start at .0

    - spawnZones 2.0.2 
        - support for moveFormation attribute 
        
    - ssbClient 4.0.1 
        - ssbAutoenable option 
        - reworked slot check logic 
    
    - theDebugger 2.1.1
        - removed small bug when not verbose 
        
    - unitPersistence 2.0.1
        - reduced verbosity 
        
Enjoy,

-ch

  • Like 1
Posted

@cfrag

I have just added the new ownedZones script to my mission and tried the title again and got the same error?

Should I not be using this feature yet? (even undocumented)

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. 

Posted
9 minutes ago, DD_Friar said:

Should I not be using this feature yet? (even undocumented)

Please use at your own risk. Undocumented to me means unsupported 🙂 

 

Posted

@cfrag - ok.

Does slotty only work at airfields / farps?

I just tried putting a blue helicopter (on ground not at a FARP or anything) inside an red enemy owned zone and I was able to pick it and got shot at as soon as I spawned in.

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. 

Posted
37 minutes ago, DD_Friar said:

Does slotty only work at airfields / farps?

Slotty works like SSB: if a flag with the same name as the aircraft's group is set to a certain value, then it won't let you slot in. That's the "SSB Protocol". Slotty doesn't do more, and it leaves it up to the mission to decide if and how flags are set. 

There are modules that can automagically set a group's "SSB value", and one such modules is ssbClient. That sets the flags for groups depending on the airfield's/FARP's owner.

In other words, there are always two components: one component to do the slot blocking. In the demo written for slotty, that's slotty. And there is a module that sets the flag values that Slotty/SSB use to determine whether to block or not. In Slotty's demo, that is ssbClient. ssbClient's current implementation only looks as FARPS and airfields.

Posted

Salute @cfrag

Just a quick heads up, I have just updated my local version of the script for groundtroops to remove a message that I thought were probably debug messages.

at line 929 I commented out the "Enter createGT group..." message (see below)

Regards

Friar

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. 

Posted
1 hour ago, DD_Friar said:

at line 929 I commented out the "Enter createGT group..." message

yupp, another pesky debugging message that goldfishbrain me forgot to disable. Thanks!

 

  • Like 1
Posted

Wonder if someone might be able to help me with a cloning issue.  What I am trying to do is randomly generate a flight of enemy fighters from a general area on the map.  This area has 6 different possible clone zones, each with it's own unique enemy configuration but I only want to spawn from one zone at any given time. Process I am using is as follows:

  1. I use a single pulser to "kick start" the cloning process. Set up with a delay timer so doesn't start immediately a mission start.
  2. randomizer which has 6 discrete zones from which it can choose.
  3. a timer which will only fire the clone flag after a certain time has passed.
  4. 6 clone zones each have a clone (empty!) and preWipe flags.
  5. A LZ zone to signal when a unit from this randomizer has landed which fires a flag to start another spawn cycle.

The issue is when units land.  Although I have preWipe on each individual cloner, it will only wipe that group from it's own zone, assuming it is called again.  So if another cloner is called another spawn cycle will occur without a preWipe. So you could have a situation where if say wingmen land separately or when two groups survive and land you will get spawns for each landing occurrence.  Thus it becomes a positive feedback loop if these units are not being shot down. The issue is a big problem on a server where units will start building up.  

So what I am trying to do is preserve the process I have now but if possible, wipe all units from that randomizer. I am not sure that it is possible with this approach so I am open to alternative approaches. Attached are the zone flags.   

random_spawner.png

Posted (edited)
17 hours ago, Thunder Chicken22 said:

So what I am trying to do is preserve the process I have now but if possible, wipe all units from that randomizer

Maybe you can try to wire the flag that signals the randomizer to start a new cycle (rndPoll?) to ALL cloner's "wipe?" input. That will force all cloners to clear their last clone.

Oh, and on a purely personal basis, I recommend 'speaking' flag names, i.e. "startRnd" instead of "20". But that's just silly me 🙂  

Edited by cfrag
Posted

Hi! I added your Willie Pete script to a Pretense mission ( as I like it more this way of using the artillery), it was working okay till it started throwing this error continuously no matter the times I was clicking the OK button. Just before it happened, I think someone from my squad was trying it with the incorrect rockets and then he got killed by an enemy ground unit. Don´t know exactly what could be happening here. You have the log in link down here. 

Thanks in advance for your help!

 

 

https://drive.google.com/file/d/1SHu5CO1080Amoz809P4n1ISWnuHBT-o9/view?usp=drive_linknull

image.png

Posted
8 hours ago, mimamema said:

Don´t know exactly what could be happening here.

The bug is easy to fix (a typo in the error handler) - the source not. Are you perhaps using multi-ship player groups? Since the script uses group-individual (because DCS does not support ship-individual) communications, using multi-ship player groups is asking for trouble. I recommend using single-player groups.

 

 

williePete.lua

Posted
12 hours ago, cfrag said:

The bug is easy to fix (a typo in the error handler) - the source not. Are you perhaps using multi-ship player groups? Since the script uses group-individual (because DCS does not support ship-individual) communications, using multi-ship player groups is asking for trouble. I recommend using single-player groups.

 

 

williePete.lua 26.26 kB · 0 downloads

Hi!, thank you for the fix. No, as it´s a Pretense modification made by me and all the spawns for clients are individual groups as the mission requires, but I will do a re-check when I have more time cause maybe I screwed up anywhere. 

 

Posted

Hello @cfrag,
I have been using DML to script my mission for some time now and I really enjoy using it. It's a marvelous tool !
Lately I wanted to create a mission in Syria where the goal was to destroy as many oilrigs as possible. I wanted to assign a certain score per oilrig destroyed using the player score module.
Unfortunately after some tests, it seems that the player score module doesn't work as described in the manual with scenary objects.
I created a playerScoreTable and input the name "oilrig" with a score of 5 points, but no matter what it never registered a kill and assigned points.
I am aware there is other ways to register the points using the ODD module and the "blueScore" attribute but givent there is 100+ oilrigs on the map, I don't particualrly want to edit each one individualy.

Could you please provide me with some guidance on what I might be doing wrong or if the module doesn't support the scenary objects anymore ?
Thanks in advance and cheers from Switzerland 🙂

Posted
Just now, Chess96 said:

I wanted to assign a certain score per oilrig destroyed using the player score module.

That should not be that difficult - are they map objects? If so, there may be other issues to look at, but I *think* that PlayerScore should be able to handle that. 

I'll have a look - or if you don't mind, let me have a look at your mission or an example of how you are currently going about it.

Posted

Sure ! 
Here is the .miz file. This is just a test I quickly trew together.
What I do is I load DML with the DCScommons, CFXzones, playerScore and playerScoreUI modules
I create a zone over the oilrig with the "assign as" option 
I then copy the name of the scenary object into the ScoreTable and give them a score

If I understand the module correctly that should now mean that if I destroy an asset that has the name "oilrig" anywhere on the map, I should get the point associated with this asset

Am I missing something ?

Screen_240529_202332.jpg

Screen_240529_202308.jpg

Screen_240529_202323.jpg

Test score.miz

Posted

Good afternoon cfrag

Thanks for DML again its a great tool for mission editing. If got a little problem with a wiper, I post this to see if you can help me out.

If got a training area for a Siria academy, with random SAM spawns, and if got a wiper via a radio menu to clean all the area of SAMS. The problem is the wiper only wipes certain SAMS and also in some areas it deletes them, and some not. This is quite strange. The mision has the  476 vFG - Air Weapons Range Objects mod.

I get this message for the debugging information.

Let me know if you need more info or if you can open the mission.

Im going also to try the DML bombing range but would like to know if there is also the option of a gun range or if its planned for the future?

Thanks a lot for all the help.

Screen_240529_200357.jpg

Academia-Final-Siria.miz

Posted
1 hour ago, Sinclair_76 said:

I am getting this guardianangel pop up when a enemy SAM fires a missile.

Ouch! Some changes to DCS it would seem that makes long-standing assumptions obsolete. I'll, probably need a day to fix that.

1 hour ago, Chess96 said:

If I understand the module correctly that should now mean that if I destroy an asset that has the name "oilrig" anywhere on the map, I should get the point associated with this asset

That sounds correct. Thank you for the miz, I'll try and get to the bottom of this.

 

1 hour ago, negrete said:

I get this message for the debugging information.

? - sorry I don't see an error message in your post

  • Thanks 1
Posted (edited)
8 hours ago, negrete said:

Hi cfrag sry the message is on the image I posted.

Thank you for providing the .miz, that helped a lot. The messages in white (on the right hand side) are diagnostics messages from the 'wiper' module, which are there by your request. To turn them off, please remove the 'verbose = yes" attribute from the wiperConfig zone.

[Edit: if you are looking for explanation for weird behavior and intentionally turned on verbosity, I need a lot more information on what you are trying to achieve, what -- and why -- you deem what you receive is incorrect, and how I can reproduce the issue. Yeah, some more work, but I'm sure we can get to the bottom of this quickly 🙂 ]

Edited by cfrag
  • Thanks 1
Posted

Hi again cfrag thanks for all the help. Ill try to explain the best I can all the proces. Yes the verbose I know I just put it on the mission to see what was the error or what was happening.

The main problem is some SAMS get deleted and others dont.

So my training mission you can spawn SAMS in an area randomly, each time you spawn the previous gets deleted and choses a random new site:

Screen_240530_081003.jpg

Screen_240530_081020.jpg

Screen_240530_081028.jpg

Screen_240530_081041.jpg

And after that I have a general wiper via menu that wipes all SAMS to reset the area, the problem im having is sometimes depending on spawn position or tipes of SAMS they dont get deleted, have a similar setup in another mission and its working ok.

 

I thought in using 2 flags on the same spawn areas to wipe them in there own areas instead of a big area but havet been able to configure it.

 

Screen_240530_081111.jpg

Screen_240530_081147.jpg

Thats the setup in the mission and acts very strange. Sorry for the hassel and thanks for the help.

Posted

@negrete - have you looked at using cloner rather than spawn?

In case you don't know about this module (apologies if you do), you can create one or more templates of units (both static/objects and live units if you wish). These templates are then removed from the map at start up. I use the feature for my SAM sites on my squads maps. I have a total of 30 (15 SA8 and 15 SA"somethings") dotted all over the map.. I have a randomiizer that picks a total of 8 from the list at the start. This works by each cloner have having a unique flag for it to be triggered which is picked by the randomizer. The thing I like about this is if I want to change the template I only have one group to tweak, the clones then all use that template.

Hope that helps?

Regards

Friar

  • Thanks 1

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. 

Posted
49 minutes ago, negrete said:

Thats the setup in the mission and acts very strange. Sorry for the hassel and thanks for the help.

OK, this is tricky one, and it took me a while to figure out what *might* be the issue. DML has tremendous zone processing abilities. Unfortunately, DCS does not, and that is the trap you (and I) have fallen into with Wiper. Wiper can, but DCS can't, process areas defined as quad zones. I believe that your issues go way if you change the wipe zone from quad to circle, and make it cover all SAM sites. Can I bother you to try this first?

 

  • Thanks 1
Posted

Thanks a lot cfrag working like a charm now!!!!!!!!!

DD_Friar ill also play with this idea it may be interesting for some missions I have planned.

Posted
10 minutes ago, negrete said:

Thanks a lot cfrag working like a charm now!!!!!!!!!

Great, thank you for the feedback - I'll update the manual with a warning to this.

10 minutes ago, negrete said:

DD_Friar ill also play with this idea

Indeed, @DD_Friar is getting quite advanced with his DML skills, and threatens to eclipse mine. That's why I have to keep writing new modules where I can still best him 🙂 (thanks for taking the time to chip in, DD_Friar!)

 

  • Like 1
  • Recently Browsing   0 members

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