Construction Set NPC: reden, töten

Wavebreaker

Gebannter Benutzer
(bei einem Quest)Weiß jemand wie man es hinkriegt, dass der Npc erst mit dem Spieler spricht und dann einen anderen Npc angreift???
Beispiel:
"Hallo, ich werde den und den jetzt angreifen"
dannach ist das Gespräch beendet und der Npc greift den und den an:huh:

Ich hab leider keine Ahnung vom Scripten und würde mich über die Hilfe von außen sehr freuen:)


Noch eins (da muss man 100%tig Scripten):

Wie mache ich es, dass wenn ein npc stirbt (Aufgabe eines Quests) ein Tagebuch Eintrag erscheint???


Danke für die Hilfe im voraus

Wavebreaker
 
Die antwort zum 2. gibts schon irgendwo (ich glaub sogar von mir ;) ) und beim 1. kannste n skript machen, dass bei gesprächsende seine einstellung gegenüber dir senkt, ich glaub, wenn die unter 5 is (das is auch die, die man beim überreden sieht), greift er einen an, also zu den results den dialogs:

set.dispossition 1

z.B. kp ob so geht, aber wenn du weiterhin probleme mit skripts hast, kannste erstma überlegen, ob es den effekt schon woanders im spiel gibt. Dann siehste dir das an, da steht dann ggf. auch ein skript (bei dialogen) oder eben ein skriptname (bei items, creatures, activators, usw.), bei dem du einfach auf "..." klickst, dann kommste zum skript. So findest du vllt, was du suchst. :)
 
Zu Antwort auf Frage 1:

Dass meinte ich nicht. Da kann man auch einfach "startCombat Player"
eingeben.
Aber ich meinte, dass der NPC, den ich so programmieren will, mich erst anspricht und dann einen anderen Npc meiner Wahl angreift.
Beispiel:

Er spricht erst mit mir, und greift dann "Adanrel" an. (nur 'n Beispiel)

Das krieg ich nich hin, und mir fällt jetzt spontan keine Stelle im Spiel ein, wo das so ist.
 
Ich wüsste nicht ob das auch geht, aber ich kenn ne Stelle wo es umgekehrt ist, müsste man dann austauschen...

Das war in der Quest Jagdbeute:
Der Ork tötet ja wenn man aus der Festung kommt den Typen, den man retten sollte, und spricht den Player dann an.
 
Hm, könnte so gehen:

Nach der Rede (Ich greife jetzt den und den an) wird durch den Dialog die Queststage weitergeschaltet (z.B. 10)

Jetzt muß der der angegriffen werden soll eine Reference bekommen (z.b. opferRef)

Dann bekommt der Angreifende folgendes Objektscript verpasst:

scn angriffscn

begin gamemode
if getstage Questname == 10
startcombat.opferRef ((Oder ohne den Punkt ???))
endif

end

Der getötete hat dann ein Objektscript:

scn toterscr

begin onDeath
setstage Questname x (z.B. 15)
end

Damit geht dann die Quest weiter.

So würde ich es erstmal testen. Probiers mal aus.
 
  • Like
Reaktionen: Wavebreaker
Das zweite Zitat hat funktioniert. Danke!!:-D

Die andere Sache hab ich wie folgt gelöst:

Im Render-Window doppelt auf den NPC geklickt und bei Reference Editor
halt eine Reference eingegeben. z.B.: "AnetteREF".
Dann im Topic-Reiter bei den Quests "AnetteREF.startCombat PierreREF"
im Script-Fenster eingegeben.
Es hat funktioniert!!:-D

Eine Frage noch:

Ein neuer Tagebuch-Eintrag soll erscheinen, wenn der NPC weniger als 100 Fuß von einem Map-Marker (nennen wir ihn Mak-Mark) entfernt ist, was muss ich da machen??
 
Da gabs zumindestens im Mw einen Befehl, was ca. so ging

Scn myscript
doonce
if doonce ==0
if PlayerGetDistance >101
setStage Quetname xy
set doonce 1
endif

elseif
return
endif
end


ich garantiere für nichts, aber ungefähr so sollte es aussehen (hoffe ich)
 
Die antwort zum 2. gibts schon irgendwo (ich glaub sogar von mir ;) )

Hat aber nich funktioniert. Leider. (vielleicht liegt's auch an mir):roll:
Hab das anders gemacht:

Von dem NPC der stirbt und anschließend ein Tagebucheintrag erscheint
hat man die Reference "deadRef" (im Render-Fenter NPC doppelt anklicken)
gegeben. Das Script legt man nich auf den NPC sondern auf's quest und schreibt:

scn DeadScript

begin gamemode

if ( deadRef.GetDead > 0 )
setStage <Questname> 100 (oder was auch immer:) )
endif

End

Dann erscheint ein Eintrag, wenn der NPC tot ist:-D