M.I.S.T. - Skriptschnipsel

Alles rund um die Funktionen des ME

Moderator: JaBoG32 Stab

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 13. Mai 2013, 21:13

Stand: 3/1/14

Die Aktuelleste Version von Mist ist 3.2:
http://forums.eagle.ru/showpost.php?p=1 ... tcount=324


Es folgen die Links zu interessanten Skripts aus dem ED Forum :

Integrated Air Defense Script
Wie der Name sagt...
http://forums.eagle.ru/showthread.php?t=118175

Detection Script:
Simuliert menschliches Verhalten bei AI AntiAir
http://forums.eagle.ru/showthread.php?t=117424
http://forums.eagle.ru/showthread.php?t=116726


Suppression Fire Script:
Simuliert das AI unter Beschuss versucht auszuweichen, anstatt ohne Beeinflussung weiter zu schiessen
http://forums.eagle.ru/showthread.php?t=107635

Training Range Script
Basierend auf 476th Bombing Range Object Mod und meinem BDU-Bomb Indicator Script, ein Skript, welches Feedback zur Angriffpräzision gibt.
http://forums.eagle.ru/showthread.php?t=116794

AFAC Skript
Ermöglicht mit WP Raketen Ziele zu markieren und diese von AI Fliegern mit 9Line angreifen zu lassen
http://forums.eagle.ru/showthread.php?p ... ost1926208

BDU Bomb Indicator Skript
Gibt die Genauigkeit von BDU Abwürfen wieder
http://forums.eagle.ru/showthread.php?t=109174

ASW Skript
Simuliert Hubschrauber im ASW Einsatz
http://forums.eagle.ru/showthread.php?t=116429

Complete transport script
Komplexeres Skript zur Logistik und Infantrie Einsatz mit Hubschraubern
http://forums.eagle.ru/showthread.php?t=108523

DCS Artillery Enhancement Script
Gibt Artillerie in Kombination mit Spottern ein intelligenteres Verhalten
http://forums.eagle.ru/showthread.php?t=107609

Random Airtraffic
Generiet zufälligen Verkehr in der Luft
http://forums.eagle.ru/showthread.php?t=108476

Dynamic Medevac Script
Hiermit können ausgestiegene Piloten gerettet werden
http://forums.eagle.ru/showthread.php?t=107303

GCI Skript
GCI genutzt in einer Mission, weiß nicht ob auch in andere Missionen übertragbar
http://forums.eagle.ru/showpost.php?p=1845129

Dismount Skript:
Einheiten steigen aus APCs wenn dies halten und steigen wieder ein, wenn dieser losfährt
http://forums.eagle.ru/showpost.php?p=1 ... ostcount=1
Zuletzt geändert von JaBoG32_SNAFU am 13. Mai 2013, 21:13, insgesamt 5-mal geändert.

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 13. Mai 2013, 21:14

Das hier setzt eine Flagge #27 auf true, wenn ein (1) Map-Opjekt in einer Zone "LZ_Tango" Zerstört wurde:

Code: Alles auswählen

mist.flagFunc.mapobjs_dead_zones{ zones = {'LZ_Tango}, flag = 27, req_num = 1 }

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 14. Mai 2013, 20:46

Eine andere Methode ohne sich um die IDs kümmern zu müssen eine Infantrie in zufälliger Position in einer Zone "test" dynamisch zu erstellen: (benötigt Mist2.0 und sctv1)

Code: Alles auswählen

local pos = trigger.misc.getZone('test')
local ranpos = {}
 
ranpos.x = pos.point.x + math.random(pos.radius * -1, pos.radius)
ranpos.z = pos.point.z + math.random(pos.radius * -1, pos.radius)
 
local data = {
 
units = {
[1] = {
["x"] = ranpos.x,
["y"] = ranpos.z,
["type"] = "Soldier AK",
["heading"] = 0,
}, -- end of unit 1
 
[2] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[3] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[4] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[5] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[6] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[7] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[8] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier AK",
["heading"] = 0,
},
 
[9] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier RPG",
["heading"] = 0,
},
 
[10] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "Soldier RPG",
["heading"] = 0,
},
 
[11] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "SA-18 Igla-S comm",
["heading"] = 0,
},
 
[12] = {
["x"] = ranpos.x + math.random(5,100),
["y"] = ranpos.z + math.random(5,100),
["type"] = "SA-18 Igla manpad",
["heading"] = 0,
}, -- end of unit 2
 
}, --end of units
} -- end of group table
 
sct.dynAdd ("RUSSIA", "vehicle", data)

Benutzeravatar
JaBoG32_Herby
Senior Member
Beiträge: 1742
Registriert: 4. Dez 2009, 11:32

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_Herby » 15. Mai 2013, 08:37

Very nice.

Wir müssen über die neuen Funktionen mal diskutieren.
Bild

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 16. Mai 2013, 08:16

Können wir machen, allerdings bin ich gerade erst dabei, einzusteigen. Mal sehen wie weit ich komme.

Hier poste ich nur die einfachen Sachen, bei denen ich weiß, das und wie sie funktionieren. Da in den MIST und SCT Guides nur wenige brauchbare Beispiele dabei sind, dachte ich liste hier mal ein paar auf.

Hier noch ein kurzer Befehl, mit dem man im ME existierende Gruppen "SnakeDoc" in eine zufällige position in er Zone "LZ Tango" versetzen kann. Die 1 ist eine Boolean die für "Dispers=true" steht und 10 ist der Verteilungsradius in der Gruppe in m. Allerdings kann man anschließend diese Einheiten nicht mehr mit einer ME erstellten Moving Zone, Flare ode Smoke verknüpfen und muß die ebenfalls per Skript erstellen. Dies funktioniert auch nicht mit Client-Einheiten. Diese werden zwar versetzt, die Client fliegt aber aus dem Cockpit.

Code: Alles auswählen

sct.teleportInZone ("SnakeDoc", "LZ Tango", 1, 10)

Benutzeravatar
JaBoG32_Herby
Senior Member
Beiträge: 1742
Registriert: 4. Dez 2009, 11:32

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_Herby » 16. Mai 2013, 08:56

Was verbirgt sich hinter SCT?
Bild

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 16. Mai 2013, 09:12

Das ist eine Skript Ergänzung zu MIST von Grimes erstellt.


MIST: http://forums.eagle.ru/showpost.php?p=1 ... tcount=132
SCT: http://forums.eagle.ru/showthread.php?t=106234

Benötigt MIST2.0, wird aber wohl später in MIST integriert werden.

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 16. Mai 2013, 17:02

Noch eine MIST Funktionion, die eine Flagge auf eine Moving unit setzt, funktioniert scheinbar aber auch nur mit Einheiten, die im ME gesetzt wurden und nicht bei Einheiten die dynamisch mit Skript erzeugt wurden:

Code: Alles auswählen

mist.flagFunc.units_in_moving_zones
{ 
	units = {'[g]Viper 1', '[g]Viper 2', '[g]Viper 3', '[g]Viper 4', 'Viper test' }, --Einheiten bei denen Flagge getriggert wird
	zone_units = {'test1'}, --Einheit auf die Zone gesetzt wird
	flag = 900, --Flagge die auf true gesetzt wird
	radius = 100, --Zonenradius
 } 

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 16. Mai 2013, 17:05

Noch eine MIST Funktionion, die eine Flagge bei Sichtkontakt zwischen 2 Einheiten setzt, funktioniert scheinbar aber auch nur mit Einheiten, die im ME gesetzt wurden und nicht bei Einheiten die dynamisch mit Skript erzeugt wurden:

Code: Alles auswählen

mist.flagFunc.units_LOS
{ 
unitset1 = {'test1'}, --1te Einheit
altoffset1 = 1.8, --Höhenversatzt des Sichtpunktes 1te Einheit
unitset2 = {'Viper 1', 'Viper 2', 'Viper 3', 'Viper 4', 'Viper test'}, --2te Einheiten zu der 1te Sichtkontakt hat
altoffset2 = 3,  -- Höhenversatz 2te Einheit
flag = 901, -- Flagge die auf true gesetzt wird
radius = 500, --Radius ab wann
interval = 3 --Intervall in dem geprüft wird
} 

Benutzeravatar
JaBoG32_SNAFU
Semi-Professional
Beiträge: 2759
Registriert: 4. Mär 2013, 08:50

Re: M.I.S.T. - Skriptschnipsel

Beitrag von JaBoG32_SNAFU » 18. Mai 2013, 16:50

Hier noch eine MIST Funktion, getestet und funktioniert. Diese Funktion läßt eine Gruppe zu einer Punkt gehen, mit definierter zufälliger Abweichung falls gewünscht:

Code: Alles auswählen

--local heli = Unit.getByName('test') --unit to which group shall move,
--local helipos = heli:getPosition().p
--alternative if group shall move to zone
local zone = trigger.misc.getZone('test')	
local zonepos = zone:getPosition().p
							
local getin = 
			{
			group = Group.getByName('pickup'),--group to go
			--point = {y = helipos.y, x = helipos.x, z = helipos.z},
			point = {y = zonepos.y, x = zonepos.x, z = zonepos.z},
			radius = 1, --radius of random points around point
			form = "Diamond",
			speed = 10,
			disableRoads = 1
			}
mist.groupToRandomPoint(getin)

Antworten