Fragen und Antworten zu Auslösern/Triggern

Habt ihr Fragen zum Galaxy Editor, oder möchtet ihr eure Karte vorstellen? Alles was mit dem Thema Editor und Modding zu tun hat, gehört hier rein.

Moderatoren: Exekutor[NHF], Deathwing, GarfieldKlon, G A F, SaVi

Shibas
Zergling
Beiträge: 14
Registriert: 16.09.2010, 23:19

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Shibas »

jo hier

http://www.filesonic.com/file/1459982814/map.rar

Die Unit die den Upgrade Skill hat ist "Weapon Slot" und die unit die erstellt werden soll ist "laser turret".
SaVi
Moderator des Zwielichts
Moderator des Zwielichts
Beiträge: 616
Registriert: 21.05.2008, 16:53
Liga 1vs1: Diamant
Liga 2vs2: Platin
Mainrace: Protoss

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von SaVi »

hach das ist ganz einfach :D

Bei deinem Event von dem Auslöser, der auf die Fähigkeit reagiert hast du auf Englisch:

Unit - (Triggering unit) uses Laser Turret at Generic1 - Any stage (Ignore shared abilities)

Das Problem dabei ist das "Generic1 - Any ! Denn bei jedem Abschnitt

Anfang, Warteschlange, Abgebrochen, usw.. also bei jedem Event wird der Auslöser gestartet. Beim Upgraden werden anscheinend 9 Events durchgeführt. Du musst ganz einfach das "Gneric1 - any" zu Generic1 - Complete" ändern. Sozusagen wenn es beendet ist.

Mfg SaVi

Ps: Schöne Strukur deiner Auslöser :)
Bild
Shibas
Zergling
Beiträge: 14
Registriert: 16.09.2010, 23:19

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Shibas »

Danke jetzt gehts^^
Benutzeravatar
Klaumenpfuchen
Space-Marine
Beiträge: 39
Registriert: 05.05.2011, 08:04
Liga 1vs1: Keine
Liga 2vs2: Keine
Mainrace: Random

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Klaumenpfuchen »

so nach langer langer zeit komme ich nun endlich dazu hier weiter zu machen xD


Klaumenpfuchen hat geschrieben:
(periodic event)
pick all units in whole map area
if picked unit type of picked unit gleich barracks
then order picked unit to ausbilden marine
else if picked unit type of picked unit gleich barracks2
then....

(einheit wurde ausgebildet)
change owner of triggering unit(oder trained unit?!) to TEAM1 (computerspieler)
order triggering unit(oder trained unit) to angreifen/bewegen nach Ziel_TEAM1


Im Deutschen Editor würde es ungefähr so aussehen:

Ereignis: (Periodischer Effekt) Alle 1 Sekunde
Aktion: (Einheiten auswählen) Alle Einheiten in Region "Gesamte Karte" auswählen
(Wenn, Dann, Sonst) Wenn Ausgewählte Einheit == Kaserne
Dann (Befehl erteilen) Ausgewählte einheit Fähigkeitenbefehl "Space-Marine ausbilden" erteilen. Bestehende Befehle ersetzen.
(Wenn, Dann, Sonst) Wenn Ausgewählte Einheit == Kaserne2
Dann (Befehl erteilen) Ausgewählte einheit Fähigkeitenbefehl "Marodeur ausbilden"
...

Den zweiten Teil muss man ein wenig umstellen denn soweit ich weiß gibt es keinen "Einheit wurde Ausgebildet" Befehl.

Ereignis: (Periodischer Effekt) Alle 1 Sekunde
Aktion: (Einheiten auswählen) Alle Einheiten unter kontrolle von Spielergruppe 1 in Region "Gesamte Karte" auswählen
(Befehl erteilen) Ausgewählte einheit Fähigkeitenbefehl "Angreifen" visiert Punkt "Ziel_TEAM_1" an erteilen. Bestehende Befehle ersetzen.
(Einheiten auswählen) Alle Einheiten unter kontrolle von Spielergruppe 2 in Region "Gesamte Karte" auswählen
(Befehl erteilen) Ausgewählte einheit Fähigkeitenbefehl "Angreifen" visiert Punkt "Ziel_TEAM_2" an erteilen. Bestehende Befehle ersetzen.


bis jz habe ich hierbei ein großes problem... und zwar einheiten in gesamte karte auswählen das einzige was ich mit dem wörtchen region gefunden habe war "einheiten an region angefügt" trotzdem getestet und wie ichs mir gedacht hab klappts nicht

daher... wo isn der schmarn? xD (danke)
Schade, dass es - im Gegensatz zu Warcraft 3 - so wenige mapper gibt.. ob das wohl an dem extrem komplizierten Objekt-Editor liegt? (hoffe Blizzard liest das-.-)
Benutzeravatar
Klaumenpfuchen
Space-Marine
Beiträge: 39
Registriert: 05.05.2011, 08:04
Liga 1vs1: Keine
Liga 2vs2: Keine
Mainrace: Random

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Klaumenpfuchen »

wow diese vielen antworten .. nicht alle auf einmal! -.-


so mal nebenbei noch eine andere sache...

wie funktioniert das genau mit der veröffentlichung und vor allem kann ich und wenn wie die map protecten
(hab da schonmal gegooglet aber die reden alle um den heißen brei und disktutieren über irgendwelche sachen die blizzard mal integrieren sollte)

[eine DRINGENDE sache!!!
ich habe folgenden auslöser: (ich lasse das was funkitoniert weg und kürze es)

aller 10 secs werden units (so ca 20stück) für 2spieler die feindlich zu einander sind erschaffen
(jz zu den problemen)
Einheiten-Auswahl - (Beliebig-Einheiten (Gesamte Karte) im Besitz von Spieler 1, auf die Ausgeschlossen: Geschoss, Tot, Ausgeblendet zutrifft, mit höchstens Beliebiger Betrag) für Spieler 1 Auswählen

wenn mich nicht alles täuscht sagt der trigger:
wähle alle einheiten auf der gesamten karte von spieler 1 für spieler 1 aus

Einheit - (Ausgewählte Einheit) Befehl ( Angreifen visiert ZIEL1 an) erteilen (Bestehende Befehle ersetzen)

das widerrum sollte diesen einheiten den angreifen befehl erteilen (also dass sie aggro zum punkt laufen)

nun klingt doch alles plausibel und funktionsfähig oder???
also.. ich hab diesen trigger extra auf spieler 1 gelegt um selber zu testen wo das problem liegt und es ist folgendes

1. er wählt nur EINE einheit aus (wieso??? wenn ich doch gesamte karte und beliebige anzahl habe)
2. er schickt sie nirgendwohin (ich selber kann es schon... und mit bewegen anstatt angreifen hab ichs auch getestet da stehn sie sich auch die beine in den bauch-.-)
Schade, dass es - im Gegensatz zu Warcraft 3 - so wenige mapper gibt.. ob das wohl an dem extrem komplizierten Objekt-Editor liegt? (hoffe Blizzard liest das-.-)
SaVi
Moderator des Zwielichts
Moderator des Zwielichts
Beiträge: 616
Registriert: 21.05.2008, 16:53
Liga 1vs1: Diamant
Liga 2vs2: Platin
Mainrace: Protoss

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von SaVi »

Benutz nicht Einheitenauswahl sondern nimm "Einheiten-Gruppe" und dort den Befehl:
Pick each Unit in Unit Group

Unit Group - Pick each unit in (Any units in (Entire map) owned by player 1 matching Excluded: Missile, Dead, Hidden, with at most Any Amount) and do (Actions)
Actions

Code: Alles auswählen

Pick Each Unit In Unit Group
    Unit Group: Units In Region Matching Condition
        Unit Type: Any
        Region: Entire Map
        Player: 1
        Unit Filter: Excluded: Missile, Dead, Hidden
        Count: Any Amount
Unit - Order (Picked unit) to ( Attack targeting Target Point) (Replace Existing Orders)

Wenn du das so machst, müsste es funktionieren. Kann dir nicht erklären warum es mit der Einheitenauswahl nicht funktionieren soll.

Zu deinem vorigen Post:
Den zweiten Teil muss man ein wenig umstellen denn soweit ich weiß gibt es keinen "Einheit wurde Ausgebildet" Befehl.
Wenn du es als Ereignis meinst hier:
Unit - Any Unit training progress is Completed
bis jz habe ich hierbei ein großes problem... und zwar einheiten in gesamte karte auswählen das einzige was ich mit dem wörtchen region gefunden habe war "einheiten an region angefügt" trotzdem getestet und wie ichs mir gedacht hab klappts nicht
Wie oben das hier benutzen:
Pick each Unit in Unit Group

Code: Alles auswählen

Pick Each Unit In Unit Group
    Unit Group: Units In Region Matching Condition
        Unit Type: Any
        Region: Entire Map
        Player: 1
        Unit Filter: Excluded: Missile, Dead, Hidden
        Count: Any Amount
Tut mir Leid, erst jetzt zu antworten, scheinbar habe ich mal auf den Thread geklickt und somit die Markierung weg genommen.
Falls ich was vergessen habe oder dir was unklar ist, einfach nachfragen!

Mfg SaVi
Bild
Benutzeravatar
Klaumenpfuchen
Space-Marine
Beiträge: 39
Registriert: 05.05.2011, 08:04
Liga 1vs1: Keine
Liga 2vs2: Keine
Mainrace: Random

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Klaumenpfuchen »

hehe danke für die antwort^^ habs so ähnlich auch gelöst (nach vielem vielem rumprobierenens) ich schreib hier mal meine lösung


der spaß besteht aus 2triggern:

Ereignisse
Timer - Alle 3.0 Sekunden von Spielzeit
Lokale Variablen
UnitGroup = (Leere Einheitengruppe) <Einheitengruppe>
Bedingungen
Aktionen
------- South1 --------
Variable - UnitGroup = (Beliebig-Einheiten South1 im Besitz von Spieler 1, auf die Ausgeschlossen: Geschoss, Tot, Ausgeblendet zutrifft, mit höchstens Beliebiger Betrag) festlegen
Einheitengruppe - Jede Einheit in (Einheiten in UnitGroup innerhalb von South1 mit höchstens Beliebiger Betrag) auswählen und (Aktionen) befehlen
Aktionen
Einheit - (Ausgewählte Einheit) Befehl ( Angreifen visiert ZielvonSouth1 an) erteilen (Bestehende Befehle ersetzen)

(ZielvonSouth1 ist ein punkt der im gebiet NorthGesamt liegt)
(hier gibt es auch noch aktionen für die gebiete south2 south3 usw)

diese regionenunterteilung hat eigentlich nur den sinn dass die units halbwegs gerade nach oben laufen wenn jemand einen anderen vorschlag hat bin ich dafür offen^^
////////////////////

Ereignisse
Timer - Alle 3.0 Sekunden von Spielzeit
Lokale Variablen
UnitGroup2 = (Leere Einheitengruppe) <Einheitengruppe>
Bedingungen
Aktionen
------- North --------
Variable - UnitGroup2 = (Beliebig-Einheiten NorthGesamt im Besitz von Spieler 1, auf die Ausgeschlossen: Geschoss, Tot, Ausgeblendet zutrifft, mit höchstens Beliebiger Betrag) festlegen
Einheitengruppe - Jede Einheit in (Einheiten in UnitGroup2 innerhalb von NorthGesamt mit höchstens Beliebiger Betrag) auswählen und (Aktionen) befehlen
Aktionen
Einheit - (Ausgewählte Einheit) Befehl ( Angreifen visiert Ziel1 an) erteilen (Bestehende Befehle ersetzen)


allerdings hab ich da auch ein kleines prob dass die bei dem ersten wegpunkt immer rumdancen und nicht weiterlaufen aber das ist nicht so wichtig da ich sie ansonsten direkt zum zweiten schicke
(vlt liegts daran dass sie zu einem punkt geschickt werden und ich einen trigger für unit enters point schreiben muss ?! ach kein plan >.<)
Schade, dass es - im Gegensatz zu Warcraft 3 - so wenige mapper gibt.. ob das wohl an dem extrem komplizierten Objekt-Editor liegt? (hoffe Blizzard liest das-.-)
SaVi
Moderator des Zwielichts
Moderator des Zwielichts
Beiträge: 616
Registriert: 21.05.2008, 16:53
Liga 1vs1: Diamant
Liga 2vs2: Platin
Mainrace: Protoss

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von SaVi »

So wie du es gemacht hast, hab ich es am Anfang auch immer gemacht. Ist aber umständlich, da du zum einen eine Locale Variable erstellen musst, die Einheiten zu dieser hinzufügen und später wieder entfernen musst.

Es gibt eine Aktion die auf Englisch gleich "Pick unit in Unitgroup (and do Actions)" heißt. (Wähle Einheit in Einheitengruppe aus") Dort kannst du bei dem Feld "Unitgroup" draufklicken und das hier auswählen: "Units in Region matching Condition", somit nimmst du die Einheitengruppen-funktion ohne Einheitengruppe.
Frag mich nicht warum Blizzard das so komisch gemacht hat, ist einfach so! xD

Diese Funktion hat dann sein eigenes Aktionsfeld, in dem du dann Aktionen für die Einheiten nehmen kannst. Z.B. Issue Order (picked unit) to attack...

Würde dir empfehlen es dir gleich auf diese Art anzugewöhnen, da es einfach viel leichter und Zeilensparender ist.

Mfg SaVi
Bild
Benutzeravatar
Klaumenpfuchen
Space-Marine
Beiträge: 39
Registriert: 05.05.2011, 08:04
Liga 1vs1: Keine
Liga 2vs2: Keine
Mainrace: Random

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Klaumenpfuchen »

ja gut das ist eine zeile :D

da ich noch neu bin mit dem editor reichts mir wenns funktioniert^^

p.s. das mit dem wegpunkte-bug hat sich erledigt hatte noch einen testtrigger drin der den ganzen satz manipuliert hat (funktioniert also wunderbar)
Schade, dass es - im Gegensatz zu Warcraft 3 - so wenige mapper gibt.. ob das wohl an dem extrem komplizierten Objekt-Editor liegt? (hoffe Blizzard liest das-.-)
Benutzeravatar
TomDe
Ultralisk
Beiträge: 1521
Registriert: 22.03.2009, 00:31

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von TomDe »

Hi.

Ich würde gerne das umtransformieren der Warp Gates zu Gateway solange unmöglich machen, wie noch der Cooldown nach dem Warp In läuft. Man soll das also nicht zurücktransformieren können, solange ein Cooldown von dem Bau einer Einheit noch läuft.

Wie mach ich das am besten?

Danke im voraus.
SaVi
Moderator des Zwielichts
Moderator des Zwielichts
Beiträge: 616
Registriert: 21.05.2008, 16:53
Liga 1vs1: Diamant
Liga 2vs2: Platin
Mainrace: Protoss

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von SaVi »

Hey TomDe,

ich schaue mal rein und werde dir dann Bescheid geben.

Edit: //Lösung

Du musst bei der Train-Ability unter Info+ bei jeder Einheit die Location auf "Unit" stellen.
Dann gehst du zu der Fähigkeit die das Warpgate zurückmorpht und stellt dort den Cooldown unter "use" ein und ebenfalls die Location auf "Unit".

Danach überprüft du ob das Feld "Cooldown - Link" bei beiden auf WarpGateTrain steht und wenn das der Fall ist, dürfte es bereits funktionieren.

Gib Bescheid falls es doch nicht klappt!

Mfg SaVi
Bild
Benutzeravatar
TomDe
Ultralisk
Beiträge: 1521
Registriert: 22.03.2009, 00:31

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von TomDe »

Das Problem ist, dass der Cooldown, je nachdem welche Einheit reingewaprt wird, unterschiedlich ist. Das heißt, mal kann man das Warpgate für 48 Sekunden nicht in ein Gateway transformieren, mal für 37 Sekunden nicht und mal für 65 Sekunden nicht.

Habs aber trotzdem mal ausprobiert und es funktioniert leider nicht.

Unter den Einheiten selber funktioniert es ja. Wenn ein Zealot reingewarpt wird, dann geht halt 28 Sekunden lang kein weiterer Warp In. Wenn ein Sentry reingewarpt wird, dann geht 32 Sekunden kein weiter WarpIn. Wenn ein HT reingewarpt wird, dann geht 45 Sekunden lang kein weiterer WarpIn.

Aber transformieren geht leider immer.
SaVi
Moderator des Zwielichts
Moderator des Zwielichts
Beiträge: 616
Registriert: 21.05.2008, 16:53
Liga 1vs1: Diamant
Liga 2vs2: Platin
Mainrace: Protoss

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von SaVi »

Ich habe es noch einmal gestartet.

--> Zur Warpgate Train-Ability gehen und dort die Location von den Einheiten auf "Unit" setzen

--> Zur Morph-Fähigkeit gehen und dort bei "Time-Use" 20 einstellen

--> Testen und egal welche Einheit man nun baut, es übernimmt den Cooldown der Einheit. Er hat keine 20 sekunden cooldown sondern beim Berserker z.B. 28.

Hat 30 Sekunden gedauert^^

Mfg SaVi
Bild
Benutzeravatar
TomDe
Ultralisk
Beiträge: 1521
Registriert: 22.03.2009, 00:31

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von TomDe »

Hm. Welche Location? Es gibt dort Info - Charge - Location und Info - Cooldown - Location. Ich probier mal beides aus.


So, ich hab es genau so gemacht und ich weiß nicht warum es bei mir nicht funktioniert.

Ich habe bei der Ability (Warp Gate - Train (Warp Gate)) unter Ability: Info - Cooldown - Location, da wo Einheiten stehen auch Unit eingetragen. In den leeren Feldern steht weiterhin Ability.

Dann hab ich bei Gateway - Morph Building (Gateway -> Warp Gate) unter Cost: Cost - Cooldown Location, Unit eingetragen. Hab dort auch unter Cost: Cost - cooldown - Time Use 20 Sekunden eingestellt.

Dann hab ich überprüft, ob bei beiden unter Cooldown - Link, WarpGate Train steht, was der Fall ist.

Und bei mir geht es nicht. Also muss ich irgendwo an der falschen Variable was verstellt haben. Durch meine genaue Angabe, müsstest du mein Vorgehen überprüfen können.

MfG Tom

Edit: Alles klar. Ich hab die ganze Zeit die falsche Fähigkeit verändert. ^^
Oh man. ^^


Danke. Jetzt gehts auch! ^^
Nutzlos
Sonde
Beiträge: 4
Registriert: 14.06.2013, 23:27
Liga 1vs1: Keine
Liga 2vs2: Keine

Re: Fragen und Antworten zu Auslösern/Triggern

Beitrag von Nutzlos »

Hallo,

ich habe mir Quests erstellt, die funktionieren soweit auch. Ich will aber das man nicht die gleichen Quest 2mal zur gleichen Zeit annehmen kann.

Ich weiß aber nicht was ich dazu einbauen muss^^

MFG
Antworten