Zeige Ergebnis 1 bis 5 von 5
  1. #1

    1. Einheit patrouillieren / 2. Zauber wirken

    Hallo, ich möchte diesmal eine offene Map basteln, das heißt sowas ähnlich wie eine rpg. Dazu gehören auch Einheiten, die auf der Karte patrouillieren und umherwandern, ähnlich wie Streife, nur sollen sie nicht irgendwann alle in einem Gebiet laufen sondern möglich, nach zu großer Entfernung von ihrerer ursprünglichen Position wieder zurück laufen.
    Die Einheiten sollen ganz normale neutral feindliche Einheiten sein, gegebenfalls auch Spieler-Einheiten (NPC's)
    Das sie umherwandern schaff ich gerade noch, aber ich habe Probleme mit dem Abfragen, wie weit sie entfernt sind, sodass sie wieder zurücklaufen.
    Lösung wäre hier, wenn ich einfach 2 Gebiete mache für den Weg von A nach B quasi. Für wenige Einheiten kein problem. Nur das zufällige umherirren ist schwierig.
    Man müsste da sicher mit x und y Koordinaten arbeiten aber leider kenne ich mich da nicht aus.
    Dazu noch die Frage, ob es möglich ist, die Laufgeschwindigkeit der Einheiten bei Patrouille zu verringern und wenn sie Schaden erleiden zu erhöhen, sodass sie auf den Feind eben zulaufen/rennen.
    Schwierig wird dann sein, die Geschwindigkeit wieder zu verringern sobald sie zu ihrer Position zurücklaufen, wenn sie zB den Feind aus der Sicht verlieren bzw wenn der Feind tot ist.
    Ich hätte mir das so gedacht, das man der Einheit sobald Schaden erlitten wird, eine Fähigkeit gibt, die die Laufgeschwindigkeit erhöht und dann wieder verliert. Nur die Abfrage erscheint mir schwierig.

    Wie gesagt Patrouille in einfacher Form bekomm ich hin, nur eben das zurücklaufen/gehen bei zu großer Entfernung nicht, einfach, damit nicht zig Einheiten auf einmal an einer Stelle stehen.

    Die 2. Frage zu den Zaubern: Wenn ich einer Einheit einen Zauber gebe, dann casten sie diesen ja manchmal und manchmal eben nicht, was nicht schlimm ist. Möchte ich aber, das die Einheit den zauber auf jeden Fall wirkt, also gezwungen dann kommt da machmal oder meist ein Problem.
    Sobald ich per Trigger die order gebe und die Einheit casten soll, stoppt die Einheit plötzlich in der Bewegung oder fängt seine Animation an und macht dann garnichts. Der Zauber wird nicht gestartet.
    Ich habe das mal beobachtet bei eigenen Einheiten also die ich steuere. Die Einheit hängt quasi mitten drin beim starten der Fähigkeit. Der Button des Zaubers leuchtet ja dann wenn man draufklickt, dieser bleibt so, leuchtet also die ganze Zeit und die Einheit rührt sich nicht mehr.
    Erst wenn die Einheit betäubt wird oder ich ihr den Befehl gebe was zu machen, tut die Einheit wieder ihren normalen Gang. Dieses problem tritt nicht immer auf aber manchmal.
    Ich dachte erst es wäre wenn zuviele Zauber gewirkt werden sollen und dass das mit der Abklingzeit zu tun hat, aber es tritt auch auf, wenn ich der Einheit nur einen zauber gebe.

    unit wird angegriffen
    attacked unit (oder attacking unit) ist Meine Einheit
    Order (Bsp. Kettenblitz) to attacked (oder attacking unit)

    wäre hier mein Trigger als Beispiel, die order ist also eigntl verständlich, aber was hindert die Einheit dann am wirken bzw was stört ihn das er nichts tut? Er wird zwar in der zeit möglichweise öfter angegriffen aber hängt das damit zusammen?
    Wie löse ich das am besten bzw wie befiehlt man einer Einheit am besten einen Zauber zu wirken?

    Ich hoffe ihr versteht mein problem und habt einpaar Tipps. Zu erstens habe ich schon nachgeschaut, aber leider nicht viel gefunden. Ansonsten schau ich nochmal nach.

    Grüße Bete

    .......................................

    Ok das herumlaufen der Einheiten habe ich herausgefunden:


    Ereignisse
    Zeit - Every (Random real number between 6.00 and 12.00) seconds of game time
    Bedingungen
    Aktionen
    Set einheitengruppe = (Random 50 units from (Units owned by Neutral feindlich))
    Einheitengruppe - Pick every unit in einheitengruppe and do (Actions)
    Schleifen - Aktionen
    Einheit - Order (Picked unit) to Angreifen/Bewegen nach (Random point in (Region centered at (Position of (Picked unit)) with size (900.00, 900.00)))
    Custom script: call DestroyGroup (udg_einheitengruppe)

    funktioniert soweit ganz gut.

    .................................

    Nach herumexperiementieren hab ich jetzt auch geschafft, dass die Einheiten ihre Bewegungsgeschwindigkeit erhöhen bzw wieder verringern:

    Aggro Angriff
    Ereignisse
    Bedingungen
    (Owner of (Triggering unit)) Gleich (==) Neutral feindlich
    Aktionen
    Einheit - Order (Triggering unit) to Menschen-Priester - 'Inneres Feuer' (Triggering unit)
    Einheit - Add Ausdauer-Aura to (Triggering unit)


    Aggro Schaden
    Ereignisse
    Bedingungen
    (Owner of (Triggering unit)) Gleich (==) Neutral feindlich
    Aktionen
    Einheit - Order (Triggering unit) to Menschen-Priester - 'Inneres Feuer' (Triggering unit)
    Einheit - Add Ausdauer-Aura to (Triggering unit)


    Ereignis Angriff
    Ereignisse
    Zeit - Elapsed game time is 0.00 seconds
    Bedingungen
    Aktionen
    Einheitengruppe - Pick every unit in (Units in (Playable map area) owned by Neutral feindlich) and do (Actions)
    Schleifen - Aktionen
    Auslöser - Add to Aggro Angriff <gen> the event (Einheit - (Picked unit) Bemerkt ein Ziel in Reichweite)





    Ereignis Schaden
    Ereignisse
    Zeit - Elapsed game time is 0.00 seconds
    Bedingungen
    Aktionen
    Einheitengruppe - Pick every unit in (Units in (Playable map area) owned by Neutral feindlich) and do (Actions)
    Schleifen - Aktionen
    Auslöser - Add to Aggro Schaden <gen> the event (Einheit - (Picked unit) Nimmt Schaden)




    Praevention
    Ereignisse
    Zeit - Every 3.00 seconds of game time
    Bedingungen
    Aktionen
    Set einheitengruppe = (Units owned by Neutral feindlich)
    Einheitengruppe - Pick every unit in einheitengruppe and do (Actions)
    Schleifen - Aktionen
    Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
    'IF'-Bedingungen
    ((Picked unit) has buff Prävention ) Gleich (==) False
    'THEN'-Aktionen
    Einheit - Set life of (Picked unit) to ((Real((Integer((Leben of (Picked unit)))))) + (10.00 x ((Real((Integer((Max. Leben of (Picked unit)))))) / 100.00)))
    Einheit - Remove Ausdauer-Aura from (Picked unit)
    'ELSE'-Aktionen
    Do nothing
    Custom script: call DestroyGroup (udg_einheitengruppe)


    2 Trigger gehören noch dazu, nämlich je wenn eine Einheit auf der Map erscheint/spawnt. Hab ich aber jetzt mal nicht eingefügt, wird sonst zuviel^^
    Ich gebe an, dass die Einheit Inneres Feuer casten soll, was umgeändert "Prävention" genannt wird und frage dann einfach alle 3 Sekunden ab, ob die Einheit diesen Buff hat. Wenn nicht, entnehme ich die Fähigkeit der Einheit sowie die Audauer-Aura, die ich im Nachhinein noch abändere.

    Es ist vermutlich nicht die beste Lösung aber so von alleine ist mir nur das eingefallen. Falls jmd noch eine bessere Idee hat oder meine Trigger etwas kompliziert sind/fehlerhaft dann bitte Bescheid geben

    Bleibt jetzt nurnoch die Frage wegen den Zaubern die manchmal spinnen^^
    Geändert von Bete (18. Mai 2015 um 21:07 Uhr)

  2. #2
    Lass dir mal mal über textnachrichten immer den triggering unit ausgeben ob da evtl. etwas mehrfach ausgelöst wird.
    Ich würde mal ein unitindexer benutzen und dann einfach ein warheitswert mit dem array der Einheit is_casting abfragen wenn nicht lässt du die Einheit casten und setzt einfach auf true und wenn die Einheit aufhört eine Fähigkeit zu wirken wieder auf false.

  3. #3
    Habe jetzt eine Bedingung hinzugefügt, ob die Einheit den Buff drauf hat, wenn sie aggro ist. Wenn nicht soll sie Prävention casten, dann wird das nicht öfter ausgelöst, hätt ich selber draufkommen sollen^^

    Mit dem Abfragen, ob die Einheit eine bestimmte Fähigkeit castet, muss ich noch etwas schauen, habe das noch nicht so richtig gefunden, habe dafür erstmal diesen Trigger benutzt:



    Ereignisse
    Einheit - A unit Wird angegriffen
    Bedingungen
    (Owner of (Attacking unit)) Gleich (==) Neutral feindlich
    Aktionen
    Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
    'IF'-Bedingungen
    (Successful: Order (Attacking unit) to Neutraler Pandarenen-Braumeister - 'Trunkenheit' (Attacked unit)) Gleich (==) True
    (Successful: Order (Attacking unit) to Menschen-Blutmagier - 'Flammenschlag' (Position of (Attacked unit))) Gleich (==) True
    'THEN'-Aktionen
    Do nothing
    'ELSE'-Aktionen
    Einheit - Order (Attacking unit) to Neutraler Pandarenen-Braumeister - 'Trunkenheit' (Attacked unit)


    dasselbe nochmal nur mit der anderen fähigkeit, hat so erstmal funktioniert, werde aber noch weiter suchen und probieren wie das mit dem true oder false funktionert.

    Erstmal vielen Dank, das hat mir auf jeden Fall schonmal sehr geholfen

    achso wollt noch schnell fragen:
    Wenn ich mehrere Trigger habe indem zB Einheitengruppe oder Location benötigt wird, da nehm ich ja ne variable mit dem entsprechenden typ: group oder point usw... brauch ich das jeweils nur einmal und kann die für alle trigger benutzen oder benötige ich da besser für jeden trigger eine neue variable?
    Ich bin mir da nämlich nicht sicher, ob das egal ist oder ob ich lieber mehrere variablen des selben typs mache.
    Geändert von Bete (20. Mai 2015 um 15:07 Uhr)

  4. #4
    Bin froh das ich helfen konnte
    hier mal was zu deiner Frage:klick mich vor allem Punkt fünf (Variablen).
    Ich gehe mal davon aus, dass du noch recht wenig über das triggern weisst, deswegen wüde ich mir mal ein paar Tutorials angucken, wenn du dann Fragen hast kannst du die hier stellen ggf. kannst du mir auch ne pn schicken. Bin mir aber sicher das dir hier ganz gut geholfen wird. Hier lungern einige sehr nette leute rum, die einiges über den editor und coding drauf haben.
    Wenn du des Englischen mächtig bist dann kanst du auch mal hier rein schauen mich auch klicken.

  5. #5
    Danke, habe mir das mal durchgelesen mit den variablen, verstehe jetzt auch etwas mehr was array bedeutet^^ Kenne mich auch nur bedingt aus aber wird ja schritt für schritt besser

    Ja wenn ich Fragen habe dann schau ich hier gerne rein, schwierig ist zwar manchmal das passende zu finden aber da muss man einfach suchen^^

    Danke nochmal =D

Ähnliche Themen

  1. Antworten: 30
    Letzter Beitrag: 12. Juli 2011, 00:26
  2. Zauber nur einmal wirken?
    Von Crainy im Forum Triggerforum
    Antworten: 4
    Letzter Beitrag: 30. August 2007, 16:52
  3. Zauber übereinander wirken
    Von Kabanos im Forum Allgemeine Mappingfragen
    Antworten: 1
    Letzter Beitrag: 13. Mai 2007, 21:54
  4. Wahrscheinlichkeit Zauber zu wirken?
    Von N3mezis im Forum Triggerforum
    Antworten: 6
    Letzter Beitrag: 29. Dezember 2005, 12:40
  5. Zauber nach Fähigkeit wirken
    Von seejay im Forum Triggerforum
    Antworten: 7
    Letzter Beitrag: 08. Juni 2004, 23:46

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
  •