Jump to content

MOOSE Diskussionsthread


Steph-JJ

Recommended Posts

--Spawn Targets
SpawnObject=SPAWN:New("R-63B Class A Range")
SpawnObject:Spawn()
SpawnObject=SPAWN:New("R-63B Class A Range #001")
SpawnObject:Spawn()
SpawnObject=SPAWN:New("R-64C Class A Range")
SpawnObject:Spawn()

--R-63B Class A Range
MeineRange=RANGE:New("R-63B Class A Range")
MeineRange:AddStrafePit({"Einheit #009"})
MeineRange:AddStrafePit({"Einheit #007"})
MeineRange:AddStrafePit({"Einheit #004"})
MeineRange:AddStrafePit({"Einheit #005"})
MeineRange:AddStrafePit({"Einheit #006"})
MeineRange:AddStrafePit({"Einheit #008"})
[color="Red"]MeineRange:AddStrafePit()[/color]
MeineRange:AddBombingTargets({"Einheit #013"})
MeineRange:AddBombingTargets({"Einheit #012"})
MeineRange:AddBombingTargets({"Einheit #014"})
[color="red"]MeineRange:AddBombingTargets()[/color]
MeineRange:Start()

Die roten Zeilen sind unnötig oder verursachen sogar einen Fehler im Skript.

 

Außerdem spawnst Du anscheinend die Targets. Spawning ändert die Namen der Gruppen und Einheiten (wird ein #001 oder so angehängt). Insofern nicht so ganz einfach zu sagen, was genau schief läuft in deinem Skript, da man nicht sieht, was "Einheit #001" etc genau ist.

 

Für's Erste, nimm lieber mal Targets ohne sie vorher zu spawnen. Ein Schritt nach dem anderen ;)

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

Vorher mal auf dem Observer/Beobachter-Slot gewechselt? Da gibt/gab es mal einen DCS-Bug

Oh ja, mein kleiner Liebling :sad_2: Den Bug gibt es seit DCS 1.5, hat aber bei ED niedrige Priorität, weil es total unwichtig ist, zu wissen wann ein Player im MP eine Einheit betritt :doh:

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

--Spawn Targets
SpawnObject=SPAWN:New("R-63B Class A Range")
SpawnObject:Spawn()
SpawnObject=SPAWN:New("R-63B Class A Range #001")
SpawnObject:Spawn()
SpawnObject=SPAWN:New("R-64C Class A Range")
SpawnObject:Spawn()

--R-63B Class A Range
MeineRange=RANGE:New("R-63B Class A Range")
MeineRange:AddStrafePit({"Einheit #009"})
MeineRange:AddStrafePit({"Einheit #007"})
MeineRange:AddStrafePit({"Einheit #004"})
MeineRange:AddStrafePit({"Einheit #005"})
MeineRange:AddStrafePit({"Einheit #006"})
MeineRange:AddStrafePit({"Einheit #008"})
[color=Red]MeineRange:AddStrafePit()[/color]
MeineRange:AddBombingTargets({"Einheit #013"})
MeineRange:AddBombingTargets({"Einheit #012"})
MeineRange:AddBombingTargets({"Einheit #014"})
[color=red]MeineRange:AddBombingTargets()[/color]
MeineRange:Start()

Die roten Zeilen sind unnötig oder verursachen sogar einen Fehler im Skript.

 

Außerdem spawnst Du anscheinend die Targets. Spawning ändert die Namen der Gruppen und Einheiten (wird ein #001 oder so angehängt). Insofern nicht so ganz einfach zu sagen, was genau schief läuft in deinem Skript, da man nicht sieht, was "Einheit #001" etc genau ist.

 

Für's Erste, nimm lieber mal Targets ohne sie vorher zu spawnen. Ein Schritt nach dem anderen ;)

 

 

Am Spawnen scheint es beim ersten Versuch nicht gelegen zu haben.

Ich habe eine Gruppe und die heißt Range xxx. In der Einheit sind 14 verschiedene Objekte mit unerschiedlichen Namen, Einheit#001 bis Einheit#014. Das sind zum Teil Bombing Targets und auch StrafePits.

Das könnte der Fehler sein. ;)

 

 

Im Radio werden mir die Einstellmöglichkeiten für die Range angezeigt, nicht aber die Range selber.

"You want me to fly in the back of a tiny little jet with a crazy fighter pilot who thinks he´s invincible,

home in on a SAM site in North Vietnam and shoot it before it shoots me?

You´ve gotta be shittin´me!"

 

Captain Jack Donovan

Link to comment
Share on other sites

Update.

 

 

Die Range wird jetzt im Radiomenü angezeigt.

Ich habe die {} gelöscht und dann hat es funktioniert.

"You want me to fly in the back of a tiny little jet with a crazy fighter pilot who thinks he´s invincible,

home in on a SAM site in North Vietnam and shoot it before it shoots me?

You´ve gotta be shittin´me!"

 

Captain Jack Donovan

Link to comment
Share on other sites

Scripting

 

Hi Community!

Bin seit längerer Zeit "stiller" Leser und Nutzer dieses Forums, daher erstmal DANKE an alle die uns hier mit Infos füttern!

Ich schließe mich diesem Thread an, weil meine Probleme hier rein passen.

Zu meinem Problem(en): :helpsmilie:

 

Versuche mich seit kurzer Zeit mit scripting (MOOSE) - echt cool, aber übersteigt schön langsam meine Fähigkeiten.

Nach ersten kleinen Erfolgen und einigen Rückschlägen komme ich einfach nicht über die nächste Hürde hinweg und hoffe daher auf eure Hilfe - vielen Dank schon mal vorweg!

 

 

Mein Vorhaben für eine ständig erweiterbare Basiskarte:

2 Grenzen (rote u blaue Koalition)

2 EWR Netzwerke (detto)

1 Geschwader rot, mit CAP u GCI, stationiert in Krymsk

1 Geschwader blau, mit CAP u GCI, stationiert in Senaki-Kolkhi

 

 

Hab versucht dies analog von Moose A2A Dispatching zu scripten.

Anmerkung: Mit der roten Koalition hats sehr gut gefunzt, aber als ich die blaue Koalition reinpacken wollte geht iwie nix mehr so wie es soll. Sogar die roten Einheiten haben sich selbst angegriffen!? :doh:Meine Frage - WAS MACHE ICH HIER FALSCH!? :joystick:

Im Anhang mein jämmerliches Ergebnis - wobei vorerst nur ein EWR Network (für rot) definiert wurde.

TEST.lua

Link to comment
Share on other sites

Meine Frage - WAS MACHE ICH HIER FALSCH!? :joystick:

Wahrscheinlich gar nichts ;)

 

Ich hab den A2A Dispatcher selbst erst ein mal laufen lassen. Insofern kann evtl. jemand anderes besser helfen, aber...

 

Von dem was ich auf dem MOOSE Discord channel so gelesen habe und in den github Issues, gibt oder gab es einige Bugs in der Klasse.

 

Demnächst (in ein paar Tagen hoffentlich schon), kommt eine neue MOOSE Version 2.4.0 raus. Versuch es einfach dann noch mal. Da wurden einige Bugs gefixed :)

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

MeineRange=RANGE:New("Alamo GunRange")

 

 

MeineRange:AddStrafePit(Strafe Pit A, 3000, 300, 000, false, 20,2000)

MeineRange:AddStrafePit(Strafe Pit B, 3000, 300, 050, false, 20,2000)

 

 

MeineRange:Start()

 

 

Kann mir einer sagen was daran eventuell Falsch ist habe mehrere Optionen probiert aber klappt nicht kriege die Range im spiel nicht ans laufen

Link to comment
Share on other sites

MeineRange=RANGE:New("Alamo GunRange")

 

 

MeineRange:AddStrafePit(Strafe Pit A, 3000, 300, 000, false, 20,2000)

MeineRange:AddStrafePit(Strafe Pit B, 3000, 300, 050, false, 20,2000)

 

 

MeineRange:Start()

 

 

Kann mir einer sagen was daran eventuell Falsch ist habe mehrere Optionen probiert aber klappt nicht kriege die Range im spiel nicht ans laufen

 

 

Es fehlen die Anfürungsstriche an Namen der Einheit

 

 

So sieht meine Range aus.

 

Range63B=RANGE:New("R-63B Class A Range")
Range63B:AddStrafePit("Einheit #009")
Range63B:AddStrafePit("Einheit #007")
Range63B:AddStrafePit("Einheit #004")
Range63B:AddStrafePit("Einheit #005")
Range63B:AddStrafePit("Einheit #006")
Range63B:AddStrafePit("Einheit #008")
Range63B:AddBombingTargets("Einheit #013")
Range63B:AddBombingTargets("Einheit #012")
Range63B:AddBombingTargets("Einheit #014")
Range63B:Start()

Das funktioniert zumindest.

Die ERweiterungen kannst du dann Stück für Stück ergänzen und testen

"You want me to fly in the back of a tiny little jet with a crazy fighter pilot who thinks he´s invincible,

home in on a SAM site in North Vietnam and shoot it before it shoots me?

You´ve gotta be shittin´me!"

 

Captain Jack Donovan

Link to comment
Share on other sites

Hi Community!

Hab versucht dies analog von Moose A2A Dispatching zu scripten.

Anmerkung: Mit der roten Koalition hats sehr gut gefunzt, aber als ich die blaue Koalition reinpacken wollte geht iwie nix mehr so wie es soll. Sogar die roten Einheiten haben sich selbst angegriffen!? :doh:Meine Frage - WAS MACHE ICH HIER FALSCH!? :joystick:

Im Anhang mein jämmerliches Ergebnis - wobei vorerst nur ein EWR Network (für rot) definiert wurde.

 

Hallo Aureliuz,

 

ich habe den AI A2A Dispatcher selbst noch nicht benutzt, sondern bisher AI GCI CAP.

 

Trotzdem versuche ich dich mal bei der Fehlersuche zu unterstützen. Du hast im Script ein Dispatcherobjekt erstellt und möchtest beide Koalitionen damit steuern.

 

Nach der Dokumentation geht das so nicht:

1. Which Coalition am I modeling an A2A defense system for? blue or red? One AI_A2A_DISPATCHER object can create a defense system for one coalition, which is blue or red. If you want to create a mutual defense system, for both blue and red, then you need to create two AI_A2A_DISPATCHER objects, each governing their defense system.

 

D.h. du brauchst so etwas

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

mit den entsprechend zugewiesenen Zones und Detection-Sets für jede Koalition. Das muss dann, wie in dem kurzen Beispiel auch alles unterschiedliche Variablennamen haben.

 

Wenn du eine detailiertere Anleitung brauchst melde dich nochmal.

Link to comment
Share on other sites

Wahrscheinlich gar nichts ;)

 

Ich hab den A2A Dispatcher selbst erst ein mal laufen lassen. Insofern kann evtl. jemand anderes besser helfen, aber...

 

Von dem was ich auf dem MOOSE Discord channel so gelesen habe und in den github Issues, gibt oder gab es einige Bugs in der Klasse.

 

Demnächst (in ein paar Tagen hoffentlich schon), kommt eine neue MOOSE Version 2.4.0 raus. Versuch es einfach dann noch mal. Da wurden einige Bugs gefixed :)

 

 

Ok - neue MOOSE Version klingt mal gut, danke für die Info! :thumbup:

Link to comment
Share on other sites

Hallo Aureliuz,

 

ich habe den AI A2A Dispatcher selbst noch nicht benutzt, sondern bisher AI GCI CAP.

 

Trotzdem versuche ich dich mal bei der Fehlersuche zu unterstützen. Du hast im Script ein Dispatcherobjekt erstellt und möchtest beide Koalitionen damit steuern.

 

Nach der Dokumentation geht das so nicht:

1. Which Coalition am I modeling an A2A defense system for? blue or red? One AI_A2A_DISPATCHER object can create a defense system for one coalition, which is blue or red. If you want to create a mutual defense system, for both blue and red, then you need to create two AI_A2A_DISPATCHER objects, each governing their defense system.

 

D.h. du brauchst so etwas

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

mit den entsprechend zugewiesenen Zones und Detection-Sets für jede Koalition. Das muss dann, wie in dem kurzen Beispiel auch alles unterschiedliche Variablennamen haben.

 

Wenn du eine detailiertere Anleitung brauchst melde dich nochmal.

 

 

Danke für die Rückmeldung - das hilft mir schon mal weiter! :smartass:

 

Nur für mein Verständnis..:

Der Befehl A2ADispatcher = AI_A2A_DISPATCHER:New( Detection ) - was macht der überhaupt? Und in welcher Zeile der LUA muss dieser Befehl angeführt sein - gleich zu Beginn der Datei od egal wo?

 

 

Außerdem muss ich also diesen Befehl in

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection ) BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

umwandeln - klingt logisch.

Aber wann füge ich diese Befehlszeilen ein - ganz am Anfang beide Zeilen, oder zuerst RedA2A..... dann sämtliche Befehle für die rote Koalition und dann BlueA2A...... und dann sämtliche Befehle für die blaue Koalition?

 

 

Oder aber muss ich diesee beiden Befehle vor jeder Blockeingabe für die jeweilige Koalition (EWR Network, Border Definition etc.) erneut eingeben, damit das Lua-Dings weiß, dass ich gerade zB die Border für die blaue Koalition definiere? :joystick:

 

 

 

Versteh das Lua-System noch nicht so ganz, sry..:cry:

Link to comment
Share on other sites

Danke für die Rückmeldung - das hilft mir schon mal weiter! :smartass:

 

Nur für mein Verständnis..:

Der Befehl A2ADispatcher = AI_A2A_DISPATCHER:New( Detection ) - was macht der überhaupt? Und in welcher Zeile der LUA muss dieser Befehl angeführt sein - gleich zu Beginn der Datei od egal wo?

 

 

Außerdem muss ich also diesen Befehl in

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection ) BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

umwandeln - klingt logisch.

Aber wann füge ich diese Befehlszeilen ein - ganz am Anfang beide Zeilen, oder zuerst RedA2A..... dann sämtliche Befehle für die rote Koalition und dann BlueA2A...... und dann sämtliche Befehle für die blaue Koalition?

 

 

Oder aber muss ich diesee beiden Befehle vor jeder Blockeingabe für die jeweilige Koalition (EWR Network, Border Definition etc.) erneut eingeben, damit das Lua-Dings weiß, dass ich gerade zB die Border für die blaue Koalition definiere? :joystick:

 

 

 

Versteh das Lua-System noch nicht so ganz, sry..:cry:

 

Das Lua System ist, wie die meisten Scriptsprachen. Das jetzt alles direkt zu erklären, wäre etwas aufwändig. Also versuche ich das nötigste jetzt in möglichst einfacher Weise zu erklären und bei weiteren Rückfragen, einfach nochmal melden, dann werd ich das weiter ausführen :thumbup:

 

Lua arbeitet im Prinzip zeilenweise von oben nach unten. D.h.wenn

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )

in Script auftaucht, muss

RedDetection = DETECTION_AREAS:New( RedDetectionSetGroup, 30000 ) 

bereits vorgekommen sein, da RedA2ADispatcher das zweite ja braucht.

 

Bei den Funktionen, von denen MOOSE ja einige nutzt ist das so, dass alles was die Funktion braucht, bereits definiert sein muss, wenn diese aufgerufen wird. Die Funktion selbst muss aber wiederum schon vorher im Code definiert sein (deshalb läd man die MOOSE.lua vor dem Missionsscript). So weit bist du wahrscheinlich noch nicht, dass es einen Unterschied für dich macht. Also einfach daran denken, dass das was die eine Zeile braucht, in einer vorherigen Zeile stehen muss.

 

Du muss zwei Dispatcher-Objekte erstellen, also aus dem einen Befehl in einer Zeile

A2ADispatcher = AI_A2A_DISPATCHER:New( Detection )

werden zwei Befehle in zwei Zeilen

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection ) 
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

 

Die Reihenfolge wann du diese erstellst, ist egal, so lange die Objekte BlueDetection und RedDetection jeweils vor dem entsprechenden Dispatcher erstellt werden.

Du kannst es nach Objektklasse sortieren, also erst die Detectionsets für Rot und Blau, dann die Detectionareas und dann die Dispatcher usw. oder es nach Rot und Blau sortieren. Also erst Detectionsets, Detection, Dispatcher usw. für Rot und dann alles für Blau.

So wie du besser klar kommst. Im Zweifel nochmal eine Lua-Datei als Beispiel posten, daran kann man dann ggf. entlang kommentieren, wie etwas anders gemacht werden könnte.

 

Was vor dem Gleichzeichen steht, kannst du dir, im Rahmen der Möglichkeiten der Luavariablennamen, selbst ausdenken.

Beispielsweise könnten einige Zeilen Code dann auch so aussehen:

Apfelkompott= DETECTION_AREAS:New( DetectionSetGroup, 30000 )
Mettwurst = AI_A2A_DISPATCHER:New( Apfelkompott )
AbsurdistanBorder = ZONE_POLYGON:New( "Absurdistan Border", GROUP:FindByName( "CCCP Border" ) )
Mettwurst:SetBorderZone( AbsurdistanBorder )

 

Einfach weiterversuchen, ggf. etwas für Lua nachgooglen, weiter fragen, dann wird das schon.

Wenn man ein Projekt, wie eine eigene Mission vor Augen hat, dann hat man auch ein Ziel. Wenn man unterwegs nicht den Mut und die Gedult verliert, kommt nach einiger Zeit auch das heraus, was man sich gewünscht hat.

Link to comment
Share on other sites

Einfach weiterversuchen, ggf. etwas für Lua nachgooglen, weiter fragen, dann wird das schon.

Wenn man ein Projekt, wie eine eigene Mission vor Augen hat, dann hat man auch ein Ziel. Wenn man unterwegs nicht den Mut und die Gedult verliert, kommt nach einiger Zeit auch das heraus, was man sich gewünscht hat.

 

Danke dir! Also ich dachte ich bin ja schon soooo weit, als die ersten roten Staffeln abgehoben sind.. aber jz weiß ich wieder wo ich bin.. gaaanz kurz nach dem Anfang!

 

 

Projekt vor den ROT UNTERLAUFENEN AUGEN - richtig! Aufgegeben wird höchstens ein Brief! Aber glaub mir, probiert hab ich schon sehr viel - die Stundenanzahl will ich hier gar nicht anführen, sonst wird's gach peinlich!

 

 

Werde deine Ausführungen demnächst versuchen in die Tat umzusetzen - gleich schon mal Dank für die darauffolgenden Fragen!

Link to comment
Share on other sites

Neue Moose release version 2.4.0 https://github.com/FlightControl-Master/MOOSE/releases/tag/2.4.0

 

Und falls jemand an logistischen Operationen interessiert ist :)

 

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

Werd ich mir sicher ansehen.:thumbup:

"You want me to fly in the back of a tiny little jet with a crazy fighter pilot who thinks he´s invincible,

home in on a SAM site in North Vietnam and shoot it before it shoots me?

You´ve gotta be shittin´me!"

 

Captain Jack Donovan

Link to comment
Share on other sites

Ähm..bevor ich The Dan u andere wieder mit meinen gwöhlichen Lua Problemchen nerve mal ne Frage:

Hab gerade ne alte Miz mit der neuen Moos.lua getestet u es hat sich folgende Problematik ergeben:

Beim Dispatching-Spawnen zweier CAP Patrouillen (Cold, Airbase) blockieren sich die einzelnen Flugzeuge gegenseitig beim Herausrollen aus den Bunkern..dann steht die ganze Partie u keiner hebt ab - schlecht für ne CAP Miz.. :doh:

Mit der alten Moose.lua sind sie von "normalen" Parkflächen gespawnt u ordnungsgemäß losgerollt u gestartet.. :huh:

Entweder ein Moose Problemchen oder geht halt einfach nit auf der Krymsk Base.. hattet ihr auch schon mal so ein Problem?

 

Weitere Frage dazu - kann man beim Dispatchen die genauen Stellplätze vorgeben?

Link to comment
Share on other sites

Einfach weiterversuchen, ggf. etwas für Lua nachgooglen, weiter fragen, dann wird das schon.

Wenn man ein Projekt, wie eine eigene Mission vor

Neue Versuche fehlgeschlagen :helpsmilie:

 

 

 

RedDetection = DETECTION_AREAS:New( RedDetectionSetGroup, 30000 )
BlueDetection = DETECTION_AREAS:New( BlueDetectionSetGroup, 30000 )

RedDetectionSetGroup = SET_GROUP:New()
RedDetectionSetGroup:FilterPrefixes( { "RUS AWACS", "RUS EWR" } )
RedDetectionSetGroup:FilterStart()

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

CCCPBorderZone = ZONE_POLYGON:New( "CCCP Border", GROUP:FindByName( "CCCP Border" ) )
RedA2ADispatcher:SetBorderZone( CCCPBorderZone )
NATOBorderZone = ZONE_POLYGON:New( "NATO Border", GROUP:FindByName( "NATO Border" ) )
BlueA2ADispatcher:SetBorderZone( NATOBorderZone )

RedA2ADispatcher:SetEngageRadius( 200000 )
BlueA2ADispatcher:SetEngageRadius( 200000 )

RedA2ADispatcher:SetIntercept( 450 )
BlueA2ADispatcher:SetIntercept( 450 )

RedA2ADispatcher:SetSquadron( "Krymsk", AIRBASE.Caucasus.Krymsk, { "SQ RUS SU-27" }, 20 )
CAPZoneWest = ZONE_POLYGON:New( "CAP Zone West", GROUP:FindByName( "CAP Zone West" ) )
RedA2ADispatcher:SetSquadronCap( "Krymsk", CAPZoneWest, 4000, 8000, 600, 800, 800, 1200 ) 
RedA2ADispatcher:SetSquadronCapInterval( "Krymsk", 2, 10, 30, 1 )
RedA2ADispatcher:SetSquadronGci( "Krymsk", 900, 1200 )
RedA2ADispatcher:SetGciRadius( 150000 ) 
RedA2ADispatcher:SetSquadronTakeoffFromParkingCold( "Krymsk" )
RedA2ADispatcher:SetSquadronLandingAtEngineShutdown( "Krymsk" )
RedA2ADispatcher:SetDefaultOverhead( 1.5 ) 
RedA2ADispatcher:SetSquadronGrouping( "Krymsk", 2 )

BlueA2ADispatcher:SetSquadron( "Senaki", AIRBASE.Caucasus.Senaki_Kolkhi, { "NATO ABSQ F-15C" }, 20 )
CAPZoneNATOWest = ZONE_POLYGON:New( "CAP Zone NATO West", GROUP:FindByName( "CAP Zone NATO West" ) )
BlueA2ADispatcher:SetSquadronCap( "Senaki", CAPZoneNATOWest, 4000, 8000, 600, 800, 800, 1200 ) 
BlueA2ADispatcher:SetSquadronCapInterval( "Senaki", 2, 10, 30, 1 )
BlueA2ADispatcher:SetSquadronGci( "Senaki", 900, 1200 )
BlueA2ADispatcher:SetGciRadius( 150000 ) 
BlueA2ADispatcher:SetSquadronTakeoffFromParkingCold( "Senaki" )
BlueA2ADispatcher:SetSquadronLandingAtEngineShutdown( "Senaki" )
BlueA2ADispatcher:SetDefaultOverhead( 1.5 ) 
BlueA2ADispatcher:SetSquadronGrouping( "Senaki", 2 )

Link to comment
Share on other sites

Ich setze die Border immer über Wegpunkte, dazu eine Einheit z.B: Heli mit passenden Wegpunkten, Late activation und dem Namen "Border":

  BorderZone = ZONE_POLYGON:New( "Border", GROUP:FindByName( "Border" ) )
  OPFOR_A2A_Dispatcher:SetBorderZone( BorderZone )

 

 

Edit: war noch früh... machst Du ja genau so ;)


Edited by f4l0
Link to comment
Share on other sites

Ist es mit Moose möglich Boden- und Lufteinheiten "endlos" zu spawnen?

 

Geplant ist eine Trainingsmission:

 

 

Gruppe A (Panzer) wird über Radiotrigger gespawnt und fährt WPs ab.

Wird Gruppe A komplett zerstört soll sie nach z.B. 120 Sekunden wieder

neu über den Radiotrigger ausgelöst werden können.

 

Im ME muss ich bisher mit Kopien der Gruppe A arbeiten.

 

 

Gruß

Uwe

I7-7700k 4,2 / 32 GB RAM / Geforce 2080 TI / 2x M2 500GB SSD / 1 TB SSD / Pimax 5k / WinWing Stick and Throttle

 

Server: [Wolfpack] Germany 93.186.198.98 Port 10308

 

IG Callsign: Fenris

Link to comment
Share on other sites

Ist es mit Moose möglich Boden- und Lufteinheiten "endlos" zu spawnen?

Probier mal

SpawnPanzer = SPAWN:New("Meine Panzer Gruppe"):InitLimit([b]X[/b], 999):SpawnScheduled(120, 0)

"Meine Panzer Gruppe" ist der Name der Gruppe, die Du im Missionseditor gesetzt hast. LATE ACTIVATION nicht vergessen anzuklicken.

 

Das sollte alle 120 Sekunden eine Gruppe spawnen, wobei immer nur X Einheiten zur zeit am Leben sein dürfen. Setz X also auf die Anzahl der Panzereinheiten in Deiner Gruppe. Sobald alle Panzer der Gruppe zerstört sind, wird automatisch eine neue Gruppe aus X Panzern gespawnt. Sollte mit Lufteinheiten genauso gehen.

 

Du hast aber "nur" ein Reservoir von 999 Panzergruppen. Ich kenn Deine "Killrate" nicht, aber das sollte vermutlich reichen ;) Ansonsten häng noch ne Null ran und entschuldige, dass ich Dich unterschätzt habe.

 

Den Befehl kann man auch über eine Radiomenü aktivieren, aber vielleicht hilft das schon mal weiter...

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

Ich setze die Border immer über Wegpunkte, dazu eine Einheit z.B: Heli mit passenden Wegpunkten, Late activation und dem Namen "Border":

  BorderZone = ZONE_POLYGON:New( "Border", GROUP:FindByName( "Border" ) )
  OPFOR_A2A_Dispatcher:SetBorderZone( BorderZone )

 

 

Edit: war noch früh... machst Du ja genau so ;)

:D und ich hab schon gegrübelt was ich da schon wieder verbockt haben könnte..:joystick: mach das nie wieder! :lol:

Link to comment
Share on other sites

Moin,

Ähm..bevor ich The Dan u andere wieder mit meinen gwöhlichen Lua Problemchen nerve mal ne Frage:

Hab gerade ne alte Miz mit der neuen Moos.lua getestet u es hat sich folgende Problematik ergeben:

Beim Dispatching-Spawnen zweier CAP Patrouillen (Cold, Airbase) blockieren sich die einzelnen Flugzeuge gegenseitig beim Herausrollen aus den Bunkern..dann steht die ganze Partie u keiner hebt ab - schlecht für ne CAP Miz.. :doh:

Mit der alten Moose.lua sind sie von "normalen" Parkflächen gespawnt u ordnungsgemäß losgerollt u gestartet.. :huh:

Entweder ein Moose Problemchen oder geht halt einfach nit auf der Krymsk Base.. hattet ihr auch schon mal so ein Problem?

Weitere Frage dazu - kann man beim Dispatchen die genauen Stellplätze vorgeben?

In der neueren MOOSE Version hat sich die Routine zum Spawnen von Flugzeugen etwas geändert. Insofern kann es gut sein, dass jetzt andere Parkplätze benutzt werden. Die sind aber normalerweise nicht schlechter sondern eher besser. Ausnahmen bestätigen die Regel ;)

 

Wenn sich die Flugzeuge auf dem Weg von ihrer Parkposition zur Startbahn blockieren, dann ist das ein DCS Bug. Denn für das Taxiing Verhalten ist allein die DCS KI Logik zuständig. Da kann man nicht viel machen, ausser einen Screenshot und/oder Track im Bugforum zu posten.

Insgesamt wird das Verhalten der KI in solchen Situationen besser, aber da ist immer noch viel Luft nach oben.

 

Leider ist es bei so einem allgemeinen Code wie dem A2A Dispatcher nicht so einfach Möglich, die Parkplätze selbst auszuwählen aus diversen Gründen.

 

Was mal wieder nur hilft, ist, kreativ um das Problem herumzuarbeiten :)

Du kannst zum Beispiel mal versuchen, auf den problematischen Parkplätzen irgendwas hinzustellen, um sie zu blockieren. Stell einfach mal ein statisches Flugzeug rein, oder eins, was Du auf Unkontrolliert stellst. Dann kann der A2A Dispatcher da nichts spawnen.

A warrior's mission is to foster the success of others.

i9-12900K | MSI RTX 3080Ti Suprim X | 128 GB Ram 3200 MHz DDR-4 | MSI MPG Edge Z690 | Samung EVO 980 Pro SSD | Virpil Stick, Throttle and Collective | MFG Crosswind | HP Reverb G2

RAT - On the Range - Rescue Helo - Recovery Tanker - Warehouse - Airboss

Link to comment
Share on other sites

Neue Versuche fehlgeschlagen :helpsmilie:

 

Ggf. auch die Mission dazu posten. Sonst müsste ich das komplett nachbasteln, um den Fehler zu finden. Es währe auch gut zu sehen, was schief läuft, das sieht man in den meisten Fällen im Log, da kannst du auch selbst rein schauen unter C:\Users\*eigener Username*\Saved Games\DCS\Logs\dcs.log.

Was hier schief läuft, ist zumindest dass doe DETECTION_AREAS als Argument ein Objekt bekommen, welches danach erst erstellt wird, bzw. nicht existiert:

 

RedDetection = DETECTION_AREAS:New( [color="Red"]RedDetectionSetGroup[/color], 30000 )
BlueDetection = DETECTION_AREAS:New( [color="red"]BlueDetectionSetGroup[/color], 30000 )

[color="red"]RedDetectionSetGroup [/color]= SET_GROUP:New()
RedDetectionSetGroup:FilterPrefixes( { "RUS AWACS", "RUS EWR" } )
RedDetectionSetGroup:FilterStart()

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

 

Da müsste die Reihenfolge getauscht werden. Damit Blue keine Detection Group hat, müsste man dann evt.l trotzdem ein leeres GROUP_SET erstellen. Das könnte gehen.

RedDetectionSetGroup = SET_GROUP:New()
RedDetectionSetGroup:FilterPrefixes( { "RUS AWACS", "RUS EWR" } )
RedDetectionSetGroup:FilterStart()

BlueDetectionSetGroup= SET_GROUP:New()

RedDetection = DETECTION_AREAS:New( RedDetectionSetGroup, 30000 )
BlueDetection = DETECTION_AREAS:New( BlueDetectionSetGroup, 30000 )

RedA2ADispatcher = AI_A2A_DISPATCHER:New( RedDetection )
BlueA2ADispatcher = AI_A2A_DISPATCHER:New( BlueDetection )

 

Sonst einfach mal die entsprechende .miz-File hier mitposten.

 

Hier eine Fehlermeldung aus einem meiner Skripte, damit du siehst, wie so etwas aussieht, wenn du selbst schauen möchtest:

2018-10-14 10:35:24.231 INFO    SCRIPTING: MOOSE error in MENU COMMAND function: [string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:8791: Parameter #1 (group id) missed
2018-10-14 10:35:24.231 INFO    SCRIPTING: stack traceback:
[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:3927: in function <[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:3924>
[C]: in function 'outTextForGroup'
[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:8791: in function 'ToGroup'
[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis00002B90"]:515: in function <[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis00002B90"]:509>
(tail call): ?
[C]: in function 'xpcall'
[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:3937: in function <[string "C:\Users\The_Dan\AppData\Local\Temp\DCS\/~mis0000250C"]:3933>

Daran habe ich gesehen, dass eine "group id", die eine MOOSE-Funktion benötigt, von meiner Funktion im Skript in Zeile 515 nicht übergeben wurde. Im Endeffekt war es etwas abstrakter, aber ein einfaches Beispiel habe ich gerade nicht zur Hand.

 

Wenn es der Fehler ist, den ich oben beschrieben habe, müsste da etwas stehen wie "attemp to index global BlueDetectionSetGroup a nil value".


Edited by The_Dan
Link to comment
Share on other sites

Moin eine frage zur Artillerie.

Wenn ich diesen Code verwende

 

 

 

paladin:AssignTargetCoord(GROUP:FindByName("Red Targets 3"):GetCoordinate(), 90, nil, 5, 2)

 

 

dann muss ich ja einen Punkt difinieren reicht es wenn ich zb schreibe N365638W1151437 oder muss ich die richtige schreibweise mit allen zeichen nehmen?

 

 

danke schonmal

Link to comment
Share on other sites

  • Recently Browsing   0 members

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