NPC soll bei Nähe des Spielers anderen NPC angreifen

Lenni420

Fremdländer
Liebe Community,
ich arbeite zur Zeit an einer Mod und habe folgendes Problem: Ich möchte, dass ein NPC, sobald sich der Spieler nähert, einen anderen NPC angreift. Ich habe schon ein wenig rumprobiert aber bin (weil ich mich bisher eigentlich nur mit texturieren beschäftigt habe) zu keiner Lösung gekommen.
Ich hoffe ihr könnt mir helfen und bedanke mich schonmal für eure Antworten!
 
Ich hab zwar des längeren keinen script mehr geschrieben aber dieser hier sollte eigentlich funktionieren^^:

Code:
Scriptname XY extends actor

Actor Property NPC1 Auto
Actor Property NPC2 Auto

Event OnLoad()
    RegisterForUpdate(1)
    GotoState ("Update")
EndEvent
 
State Update    
    Event OnUpdate()            
        if (Game.GetPlayer().GetDistance(NPC1) < 500)
            UnregisterForUpdate()
            NPC1.StartCombat(NPC2)
            GoToState ("finish")
        endif
    EndEvent
EndState

State finish
EndState

Mit den Zahlen musst du dann natürlich noch ein bisschen herum "spielen" um zu gucken wie es für deine situation am besten passt.
Ist zwar jetzt nicht perfekt aus geklügelt, aber sollte den zweck erfüllen. Ich persönlich würde den script in eine Quest einbauen und diese per change location event starten lassen und statt Event OnLoad - Event OnInit benutzen, aber da ich nicht weis wie erfahren du in diesen Sachen bist hab ich es mal lieber einwenig simpler gehalten^^
p.s. Gehört eigentlich in den script thread.
 
Zuletzt bearbeitet:
Danke für die schneller Antwort, habe es letztlich aber doch anders gelöst ;)
Habe aber ein neues Problem:
sobald sich die NPCs angreifen teilen beide nur einen Schlag aus, danach starren sich sich nur mit gezogener Waffe an, egal welchen combat style ich ausprobiere - das Problem beibt.
 
Hm...
Du könntest versuchen 2 neue Factions zu erstellen, die beide feindlich zu einander sind und dann in den script folgendes hinzufügen:
Code:
NPC1.AddToFaction(Faction1)
NPC2.AddToFaction(Faction2)
Vermutlich gibt es dazu auch eine simplere lösung, aber das ist mir jetzt halt spontan eingefallen^^
 
So ähnlich habe ich es gemacht.
Sie bleiben aber trotzdem nach dem ersten Schlag stehen und werfen sich böse Worte an den Kopf...
 
Habe sie gerade erst gesetzt:D
Vielen Dank! Klappt jetzt alles super, die Mod sollte in den nächsten paar Tagen fertig werden, nochmals Danke!
 
Nochmal Danke an alle, die geantwortet haben.
Die Mod ist jetzt fertig, ihr findet sie im Steam Workshop als "Empire's Pride". Freue mich über jeden download.