Jump to content

Recommended Posts

Posted (edited)

Mission file (attached).

 

FYI, I have all modules installed and most up-to-date 1.2.3 patch and I am testing in Multiplayer.

 

Part 1

 

Kobuleti set in ME as Blue Coalition and Senaki-Kolkhi set as Neutral.

 

I have RED forces stationed on Senaki and in the F10 map the Country never changes... always says Neutral.

 

Additionally, if you check the triggers I have a switch condition setup to test if airfield is Red coalition and it never fires even after 10 min.

 

Plus, Kobuleti, which has Blue all over it is listed as Neutral.

 

Tearing out my hair, please help.

 

 

Part 2

 

What's the best way to test if a bunch of groups in an area are damaged but not dead?

 

Thanks.

 

[EDIT]

Looks like if units are stationed at Neutral aerodromes on mission start then they do not capture, indicating you must either set aerodrome coalition in ME OR have unit(s) of same coalition arrive at airport after mission start.

 

This ought to be fixed. The logic should be... If aerodrome Neutral and units present within range, test aerodrome coalition assignment against the coalition of units and then capture aerodrome accordingly. Shouldn't require unit arrival to trigger that logic.

[/EDIT]

 

[EDIT]

Okay... it seems that in the F10 view when you click on an aerodrome, it actually shows you the info for another, different aerodrome. At least that's what it's doing in the second attached file, _base_capture_testv3.miz". What is going on?

 

Wonder if it is possibly due to me having DCS World Client AND DCS World Multiplayer Client BOTH running during testing??? Sometimes I see the F10 view work properly for aerodrome info, but mostly it doesn't work. Could it be due to trackIR interference or something??? Just grasping at straws. I think it's just plain bugged.

[/EDIT]

_01_under_attack.miz

_base_capture_testv3.miz

Edited by arteedecco

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted

The base capture event does not occur if base ownership is established at the start of the mission. Therefor your two continuous triggers will simply not work. For some reason or another the messages depending on flag 1 or 2 being true do not appear unless I added an extra condition "time more 1" to them. Which is kind of strange.

 

I was unable to replicate any issue with the F10 map data failing to change to the appropriate coalition for an airbase or for providing information from another airbase.

 

What's the best way to test if a bunch of groups in an area are damaged but not dead?

Depends on what you need to do with the data. If you simply need to figure out if the group might have suffered some losses and they are in a zone simply use a combination of "part of group in zone" and "group alive less than" conditions.

 

If you need specific data, the scripting engine is the best bet as you can derive the exact percentage of how much of the group is alive and how much damage the alive units have taken.

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

Posted
The base capture event does not occur if base ownership is established at the start of the mission. Therefor your two continuous triggers will simply not work.

So, the bases just remain "Neutral"? I don't see that they correctly flip to the appropriate faction at start on the F10 map... do you?

 

For some reason or another the messages depending on flag 1 or 2 being true do not appear unless I added an extra condition "time more 1" to them. Which is kind of strange.

Seems similar to the MIST documentation that says to set a no event trigger at the beginning to load MIST... for whatever reason. << there are too many "for whatever reason" and gotchas with the scripting and ME. I spend most of my time troubleshooting things instead of creating missions. I believe the "price of entry" for new (heck even intermediate) players to create rich, dynamic, multiplayer content is still way to high. I have been playing since 2010 pretty consistently and the ME is still very difficult to use to do more than just add a bunch of units driving or flying to go blast. The trigger, unit, group, management is pretty rough.

 

I was unable to replicate any issue with the F10 map data failing to change to the appropriate coalition for an airbase or for providing information from another airbase.

Ha! Typical... take your car to the mechanic and... the "rattle" can't be reproduced. I wonder if you can repro if you a.) start DCS World, open ME, open miz, b.) open DCS World MP client, start new server, c.) load the mission in the MP client and let it run for a minute or two, disconnect, but leave new server page open in MP client, d.) Switch to DCS World ME window and make an edit to the mission... move units around, add units, change airbase coalition from Red to Neutral (net zero difference, but saving in between iterations), and save mission, e.) load mission in DCS World MP client and run mission... in F10 map click on airport icons to see "faction" / coalition and note whether or not it's showing correct airport name for what you clicked.

 

Depends on what you need to do with the data. If you simply need to figure out if the group might have suffered some losses and they are in a zone simply use a combination of "part of group in zone" and "group alive less than" conditions.

 

If you need specific data, the scripting engine is the best bet as you can derive the exact percentage of how much of the group is alive and how much damage the alive units have taken.

Yeah... I was trying to avoid the added level of complexity as then I have to debug scripts, but I probably will have to.

 

Thanks as always for the great feedback.

 

Why why why, can't they update the ME manual sufficiently to properly document in-ME scripting, the scripting engine, gotcha's like you mentioned about airbase capture, how long it takes to capture an airbase (how many seconds???)... every time I want to build a new mission I have to get out my Capt. Crunch Decoder Ring and reinvent the wheel.

 

Heck... even VRS is coming out with an SDK for their new SuperBug TacPack and they have a 600 page wiki!

 

Here is how to make effective documentation:

http://api.jquery.com/

 

Thanks for listening...

 

I love this game and have all these grand ideas for missions and I just can't bring them to life! I admire those of you who know your way around well enough to do it *relatively* quickly.

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted

This is a useful caveat for me, as I've been considering an airport capture scenario. Are there any steps I should take at the very beginning in the ME to ensure that the capture mechanic will work?

Posted

@Bahger,

 

It seems to work fine in the following context:

 

a.) If you have coalition units on an airfield on mission start, set that airfield coalition in the ME (it *should* be done automatically, but it's good to double-check)

 

b.) If you look at the ME you will see black circles around the airfields. I believe this is the airfield capture "area". So, according to the DCS World Manual for the ME, capture will occur (immediately) if a coalition vehicle arrives within that area (about 2000m, but I wouldn't trust that since everything seems... up for grabs). The capture rules have been updated so now... any faction vehicle can capture (even non-armored vehicles and aircraft). However, if two factions show up at an airfield ... and one is unarmed and the other is armed... the armed one wins. That makes sense logically too, which is a nice turn of events!

 

So yeah, it seems to work fine so long as you follow those two items a.) and b.). The one oddity I've been noticing is that in the F10 view... I click on an airport and it gives me the details for a different airport. I think this is a bug, but Grimes was not able to repro yet.

 

FYI, I run in windowed, not fullscreen and when testing I use one window with DCS World running ME where I make changes to the mission and another, separate window for the DCS multiplayer client to test the missions... there may be some weird interplay going on when saving and playing the mission in MP that is causing this odd issue, but please report it if you notice it as well.

 

Cheers

 

Cheers!

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted

Thanks Arteedecco, this is very helpful. I'm always grateful to anyone who can spare me hours and hours of trial-and-error in our very favorite mission editor!*

 

* I'm not being snarky, actually. The ArmA editor is just as quirky, if not more.

Posted

Yeah, totally agree. It's a love-hate sometimes, but more love than not, or else I wouldn't do it!

 

Which other game offers all this!?

 

I agree with you about the ArmA editor. I tried it back with ArmA 2. It does somethings better IMO. You can load troops into vehicles and into specific spots. You can tell troops to fast rope out of choppers and other really neat stuff. The AI "behaves" a lot better in some respects, but... the scripting is also nightmarish... probably quite comparable actually.

 

Thanks to Grimes and Speed for MIST and for helping out on the Wiki, but we have a long way to go before things are truly usable for all of us.

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted

Having a programmer's brain is a tremendous advantage with both editors. Lua is obviously the engine under the hood of the DCS product and ArmA is more script-dependent than DCS (although in the ArmA 3 Alpha editor there are many indications that they are trying to make the UI more intuitive and the programming less script-driven.)

 

As Grimes and Speed know, I am a half-wit when it comes to scripting. However, I have found that a good grasp of of the relevant tactics and equipment, plus the ability to use the DCS Editor's non-scripting UI extensively, can produce missions as good, and even as randomized, as those created with scripting. In all my missions, however, I have needed to use simple scripting to do things that seem impossible in the UI.

Posted
However, I have found that a good grasp of of the relevant tactics and equipment, plus the ability to use the DCS Editor's non-scripting UI extensively, can produce missions as good, and even as randomized, as those created with scripting.

 

Well, looks like I need to keep in touch more and keep dropping in questions on this forum to get help from you on how to do different things.

 

I'll create a different thread for my mission idea and any advice on how to accomplish the outlined goals would be greatly appreciated.

 

[i'll leave this thread to be about capturing airports]

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted
So, the bases just remain "Neutral"? I don't see that they correctly flip to the appropriate faction at start on the F10 map... do you?

 

I wonder if you can repro if you ...

 

Followed directions exactly, was unable to reproduce. The only condition I didn't test is to see if a connecting client displays the correct coalition ownership.

 

 

Seems similar to the MIST documentation that says to set a no event trigger at the beginning to load MIST... for whatever reason. << there are too many "for whatever reason" and gotchas with the scripting and ME.

Trigger events are there to filter down how often a trigger condition is checked. Simple as that. Setting this option is not required and generally it is only really desirable if you have hundreds of triggers. I never really found a use for the events as I'd much prefer the trigger to be checked at a regular and known rate, which is simply not provided with events.

 

Pro-tip: any event trigger is checked when the event occurs. Bring up the in game de-brief screen (keybind: ') to see if the event occurred, if it doesn't then the event based trigger will never happen!

 

 

Why why why, can't they update the ME manual sufficiently to properly document in-ME scripting, the scripting engine, gotcha's like you mentioned about airbase capture, how long it takes to capture an airbase (how many seconds???)

 

The DCS User Manual found in the docs folder of DCS World is mostly updated, but there are a few things missing from it. The same goes for the scripting engine wiki page. However both of these resources simply list what is available and generally don't get into the "how to use" aspects of it. I've added a few pages to the Mission Editor wiki (found in sig), but I simply don't have the time to make more pages to get into greater detail on various subjects.

 

Airbase ownership is simply defined by ground forces within the circle of the base. The simulator has two methods to establish base ownsership at mission start. 1. Place ground forces within that circle to give ownership. 2. Using editor click on the airbase to get to the resource management window and assign ownership. The editor also automatically assigns the correct coalition to an airbase if you set an aircraft take off from the airbase. Airbase ownership in mission depends on friendly forces existing within the capture area and enemy forces being outside of it.

 

Yeah... I was trying to avoid the added level of complexity as then I have to debug scripts, but I probably will have to.

I still maintain that most missions probably don't need the scripting engine to do stuff. However I have been working extensively with it as of late so I tend to figure out solutions to mission editor questions within the context of the scripting engine more than I do the editors triggers. Sometimes its actually something really easy to do, other times not so much. Besides it wouldn't hurt to get more people to start using it.

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

Posted
Followed directions exactly, was unable to reproduce. The only condition I didn't test is to see if a connecting client displays the correct coalition ownership.

Okay, I'll see if I can repro, but thanks for looking at it again.

 

 

Trigger events are there to filter down how often a trigger condition is checked. Simple as that. Setting this option is not required and generally it is only really desirable if you have hundreds of triggers. I never really found a use for the events as I'd much prefer the trigger to be checked at a regular and known rate, which is simply not provided with events.

So, how do you handle a heartbeat? I find I always want something checked at regular intervals but don't know how to do this outside of MIST?

 

Pro-tip: any event trigger is checked when the event occurs. Bring up the in game de-brief screen (keybind: ') to see if the event occurred, if it doesn't then the event based trigger will never happen!

I don't get this... can you provide a screenshot showing the event in the de-brief window? Is this true for MP as well?

 

 

The DCS User Manual found in the docs folder of DCS World is mostly updated, but there are a few things missing from it. The same goes for the scripting engine wiki page. However both of these resources simply list what is available and generally don't get into the "how to use" aspects of it. I've added a few pages to the Mission Editor wiki (found in sig), but I simply don't have the time to make more pages to get into greater detail on various subjects.

Completely understand and please don't take my comments to mean I don't appreciate your efforts, because I really do! However, I wish ED would support this with their budget and put more into polishing it and ensuring its correctness. I feel strongly that putting more effort into this area will mean more users, better games, more fun.

 

Airbase ownership is simply defined by ground forces within the circle of the base. The simulator has two methods to establish base ownsership at mission start. 1. Place ground forces within that circle to give ownership. 2. Using editor click on the airbase to get to the resource management window and assign ownership. The editor also automatically assigns the correct coalition to an airbase if you set an aircraft take off from the airbase. Airbase ownership in mission depends on friendly forces existing within the capture area and enemy forces being outside of it.

Yeah, issue I'm noting is that IF you do 1., but then 2. and set coalition back to Neutral... so all airports are neutral at mission start... then even though there are coalition units at the airbase, they won't cap it. You have to move in a separate group. That still seems like a bug to me.

 

You could argue that you should just set the coalition to whatever faction of the vehicles you placed at that airfield at game start, but that's turning a "bug" into a "feature" IMO. Game should see units at a Neutral airbase and run the cap algorithm... it doesn't today.

 

I still maintain that most missions probably don't need the scripting engine to do stuff.

Yeah... maybe I'm doing it wrong. I think it goes back to learning how to check triggers at regular intervals via ME UI... (above).

 

For example, my example of determining if units have been damaged but not destroyed in a certain area (bunch of different groups)... can that be done via ME UI outside of scripting?

 

However I have been working extensively with it as of late so I tend to figure out solutions to mission editor questions within the context of the scripting engine more than I do the editors triggers. Sometimes its actually something really easy to do, other times not so much. Besides it wouldn't hurt to get more people to start using it.

I definitely like it, but would find it very helpful if you shared your debugging method steps. How do you see if your code is working properly? What log files do you reference... do you output to the display somehow? A set of steps would really boost my willingness to dive more in to scripting.

 

Thanks Grimes!

"Snipe"

--------------------------------------------------------------------------------

OS => Win7 64-bit Ultimate | MOBO => ASUS M2N-SLI Deluxe | RAM => 8GB | VIDEO CARD => XFX ATI 4850 | CONTROLLER => Saitek X52 | DISPLAY => ASUS 25.5" 1600x1280 | HDD => 150GB WD Raptor (10K RPM)

Posted

So, how do you handle a heartbeat? I find I always want something checked at regular intervals but don't know how to do this outside of MIST?

All triggers without events are checked once a second. See this: http://en.wiki.eagle.ru/wiki/Mission_Editor:_Trigger_Basics

 

The easiest way to make something check at a defined rate is simply a trigger that looks like this:

Switch Conditition>Time Less than 2 OR Time Since Flag 1 is INTERVAL>Flag 1 increase 1 AND action

 

I don't get this... can you provide a screenshot showing the event in the de-brief window? Is this true for MP as well?

 

SP only, see attached screenshot. Its basically the SP debrief screen updated in real time.

 

 

 

Yeah, issue I'm noting is that IF you do 1., but then 2. and set coalition back to Neutral... so all airports are neutral at mission start... then even though there are coalition units at the airbase, they won't cap it. You have to move in a separate group. That still seems like a bug to me.

All airbases are neutral anyways. It is simply that the base capture event doesn't occur at mission start.

 

For example, my example of determining if units have been damaged but not destroyed in a certain area (bunch of different groups)... can that be done via ME UI outside of scripting?

A bunch of triggers with Unit Damaged And Unit In Zone triggers. But this is one of those things that the scripting engine is good at.

 

I definitely like it, but would find it very helpful if you shared your debugging method steps. How do you see if your code is working properly? What log files do you reference... do you output to the display somehow? A set of steps would really boost my willingness to dive more in to scripting.

These are functions built into the sim.

function env.info(string message, bool showMessageBox = false)

function env.warning(string message, bool showMessageBox = false)

function env.error(string message, bool showMessageBox = false)

print('message') also works.

If I'm not getting the desired results I put print statements at pretty much every line in the script to watch what its doing. All of these functions will add a line to your dcs.log found in savedgames/dcs/logs folder. Also if you have a scripting error (the box pops up), it will write the error in full to the dcs.log.

 

I also use Mist heavily for debugging. Specially the mist.utilis.tableshow() or the write data function.

Screen_130409_151909.thumb.jpg.44f48fb524aec43d0cc0296093c04c2e.jpg

The right man in the wrong place makes all the difference in the world.

Current Projects:  Grayflag ServerScripting Wiki

Useful Links: Mission Scripting Tools MIST-(GitHub) MIST-(Thread)

 SLMOD, Wiki wishlist, Mission Editing Wiki!, Mission Building Forum

  • Recently Browsing   0 members

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