Construction Set Statue die durch einen Trigger zu einem angreifenden Npc wird ? Wie mache ich das ?

Master of Worlds

Vertrauter
Wie könnte ich eine Art Elfen Statue (Halle der Epochen, Diebesgilden Quest) als Aktivator machen ?

Also einen Aktivator, der aussieht wie eine Statue und der beim Aktivieren (z.B. durch einen Trigger) zu einem Npc wird der den Player dann angreift.


Wie könnte ich das machen ? Ist das überhaupt möglich ?


Mfg Master of Worlds
 
Das gibts schon im ganz normalen Spiel in einer Diebesgilden-Quest,

ziemlich am Ende, kurz bevor wenn man in den Kaiser-Palast kommt ... die stehen links und rechts neben der Statue, die man mit dem Pfeil treffen muss, damit der Durchgang sich öffnet und greifen einen an, sobald man in die Nähe kommt ...
Kannst es dir ja im CS anschauen :)
 
Zuletzt bearbeitet:
Ja, die Statuen meine ich ja.

Ich meine nur ob irgendwie möglich ist daraus einen Aktivator zu machen, damit nicht durch einen Aktivator allen Statuen Aktiviert werden ?

Mit dem Script selbst habe ich schon versucht es auf einen anderen Npc zu übertragen aber es ging nicht.

Ich will das es durch einen Trigger aktiviert wird, aber da ich schon die Diebesgilden Quest durch habe, wie wahrscheinlich auch viele andere bräuchte ich meine eigene Statue mit einem Seperaten Script das durch einen Aktivator ausgelöst wird, leider ist es mir bisher nicht gelungen.

Einmal war der Npc einfach nur ein Npc, ohne Statue sein, dann waren es noch ein paar andere missgeschicke.

Am Besten wäre es für mich so eine Statue als Aktivator zu haben.
Z.B. Statue A und B stehen nebeneinander, durch Trigger A wird Statue A lebendig und greift an, Statue B steht noch als Statue da und der Player denkt z.B. der Kampf ist vorrüber, dann geht er noch einen Schritt weiter und Trigger B Aktiviert Statue B, Statue B aktiviert dann wiederrum C und D. So ungefähr wie bei Eisenklingen, Klinge 1 wird aktiviert und dadurch werden Kligne 2-x aktiviert.

Wie könnte ich das denn machen, ohne noch mehr am Script herumzu pfuschen ?

Mfg Master of Worlds
 
Gar net. Schreib doch einfach einen neuen Scrip oder poste ihn hier, dann können wir dir damit helfen.

Einen Npc zur Statue zur machen ist generell kein Problem, allerdings sieht er dann aber aus wie ein Npc, nicht wie eine Statue..
 
Der Npc soll nur ungefähr da stehen und aussehen wie eine Statue, er muss nicht komplett versteinert sein.

So ungefähr wie die Elfenstatue


Hier ist jedenfalls das normale Script von den Elfen Statuen aus der Halle der Epochen.
Code:
ScriptName ElvenStatueScript

Short NewAmbush
Short SetIdle

begin OnLoad
	equipitem TG11ElvenLongsword
	setalert 1
	setghost 1
	pickidle
	setunconscious 1
	setdestroyed 1		; so you can't activate
	pms effectTG11stone
end

Begin OnDeath
	setdestroyed 1
End

Begin GameMode
	If GetStage TG11Heist >=73 && NewAmbush == 0
		If GetDistance Player <= 1600
			Set NewAmbush to 1
			TG11Statue01.SetGhost 0
			TG11Statue01.SetUnconscious 0
			TG11Statue01.SetDestroyed 0
			TG11Statue02.SetGhost 0
			TG11Statue02.SetUnconscious 0
			TG11Statue02.SetDestroyed 0
			Set SetIdle to 0
		ElseIf SetIdle == 0
			PickIdle
			Set SetIdle to 1
		EndIf
	EndIf
End

Nur versteh ich nicht was ich dann daran umschreiben müsste.
Wisst ihr es ungefähr ? Oder kennt ihr ein gutes Tutorial für Skripte ?

Mfg Master of Worlds
 
Versuch es mal hiermit:
Code:
ScriptName ElvenStatueScript

begin OnLoad
	set myself to getself
	setalert 1
	setghost 1
	pickidle
	setunconscious 1
	pms effectTG11stone
end

Begin OnActivate
	SetGhost 0
	SetUnconscious 0
End
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Master of Worlds
Code:
ScriptName ElvenStatueScript

[COLOR="Red"]Ref MySelf[/COLOR]

begin OnLoad
	set myself to getself
	setalert 1
	setghost 1
	pickidle
	setunconscious 1
	pms effectTG11stone
end

Begin OnActivate
	SetGhost 0
	SetUnconscious 0
End

Das Rot geschriebene fehlt.
 
  • Like
Reaktionen: Master of Worlds
Hmm... das wäre dann aber nicht für die Triggerbox geignet sondern nur für das Aktivern, also damit du mit dem NPC sprechen kannst.
Ich würde zu dem ganzen gleich einen Quesyt erstellen, damit die eine Statue weiß wann sie "lebendig" werden kann, und den Spieler angreifen darf.
Dann musst du (meinetwegen zueerst) einen Quest erstellen (muss keine richtige Aufgabe sein, ist aber halt so)eineml mit meinetwegen Queststage 5 und dazu noch Queststage 10 (oder 100 und 2000 oder 10 und 56 oder ....)
Dann erstellst du den NPC, (wenn du es noch nicht getan hast) und weist ihm Gildurs Script zu.
Ich weiß nicht ob das mit dem OnLoad funktioniert, müsste aber eigentlich.
den NPC verpflanzt du dann erstmal in deinen Dungeon (oder wohin auch immer er stehen und Angreifen soll, Dungeon erschien mir am Naheliegensten:-D).
Dann "kreierst" du eine neue Triggerbox...(also suchst dir eine raus und gibst ihr eine neue ID, das übliche Geplänkel halt.
Auf die Box legst du dann ein Script, dass die Queststage im Spiel erhöht. Also von garnichts auf wasweißich...
Dann legst du auf die ander Statue ein anders Script.
Zuerst das von SDirTroy, dann:

Code:
Begin OnDeath
if [DEINNPCREF]. getdead
[DEINNPCREF2]. startcombat [DEINNPCDERANGEGRIFFENWERDENSOLL/player]
endif
end

Mmmh... ich hoffe ich habe nichts vergessen... ich kann mir momentan nicht im CS ansehen ob es wirklich geht.
 
  • Like
Reaktionen: Master of Worlds
Wieso so kompliziert?^^

Du machst einfach eine Triggerbox, als Script nimmst du das hier:

Code:
scn blubb

short once

Begin OnLoad
[COLOR="Red"] StatueRef.SetGhost 1
 StatueRef.SetUnconscious 1
 StatueRef.SetDestroyed 1[/COLOR]         ;Muss für alle Statuen wiederholt werden.
end

Begin OnTrigger Player
If once == 0
 StatueRef.SetGhost 0
 StatueRef.SetUnconscious 0
 StatueRef.SetDestroyed 0
 StatueRef.StartCombat Player
endif
end

Dann würde ich noch einen OnDeath Script auf die Statue legen, die dann jeweils die nächste Aktiviert.
 
  • Like
Reaktionen: Master of Worlds
Also eine neue Triggerbox machen, diese mit deinem Blubb Script ausrüsten.

Anstatt StatueRef muss ich ja von der Statue, dem Npc, eintragen. Nur ich finde die Ref nirgends wo finde ich die jetzt ? Sorry, aber ich finde es nicht.

War das nicht unter Enable Parent ?

Wenn ich dann alles gefunden habe, dann müsste der Npc sobald ich/der player durch/über die Triggerbox läuft den Spieler angreifen oder ?

Mfg Master of Worlds
 
Die Reference Editor ID weißt du selber zu.
Dazu klickst du einfach doppelt auf den NPC (im Render-Window).
Dann setzt du einen Haken bei "Persistance Reference" und gibst in die Zeile ganz oben die ID ein.
 
  • Like
Reaktionen: Master of Worlds
Ich danke euch allen. Es hat nun funktioniert, der Npc sieht nun wirklich nur aus wie ein Npc, nicht wie eine Statue, aber für meine Zwecke wird es reichen.

Also nocheinmal vielen Dank.
Mfg Master of Worlds
 
Ich will das in meinem Mod Kammer der Wege einbauen, also meine Frage, braucht man dazu noch einen Mod oder was genau ist das ?

Und nochmal zum Script
Code:
short once

Begin OnLoad
 StatueRef.SetGhost 1
 StatueRef.SetUnconscious 1
 StatueRef.SetDestroyed 1
 StatueRef2.SetGhost 1
 StatueRef2.SetUnconscious 1
 StatueRef2.SetDestroyed 1
end

Begin OnTrigger Player
If once == 0
 StatueRef.SetGhost 0
 StatueRef.SetUnconscious 0
 StatueRef.SetDestroyed 0
 StatueRef.StartCombat Player
 StatueRef2.SetGhost 0
 StatueRef2.SetUnconscious 0
 StatueRef2.SetDestroyed 0
 StatueRef2.StartCombat Player
endif
end

Wenn ich es so wie oben mache werden beide Gleichzeitig aktiviert, aber ich will das der andere erst aktiviert wird wenn Statue 1 besiegt wurde. Würde das so gehen ?

Code:
short once

Begin OnLoad
 StatueRef.SetGhost 1
 StatueRef.SetUnconscious 1
 StatueRef.SetDestroyed 1
 StatueRef2.SetGhost 1
 StatueRef2.SetUnconscious 1
 StatueRef2.SetDestroyed 1
end

Begin OnTrigger Player
If once == 0
 StatueRef.SetGhost 0
 StatueRef.SetUnconscious 0
 StatueRef.SetDestroyed 0
 StatueRef.StartCombat Player

endif
end

Begin OnDeath
if StatueRef. getdead
 StatueRef2.SetGhost 0
 StatueRef2.SetUnconscious 0
 StatueRef2.SetDestroyed 0
 StatueRef2.StartCombat Player
endif
end
 
Das hatte ich auch schon Probiert, aber dann war die Zweite Statue Lebendig und konnte mit mir Reden, sobald ich Statue 1 besiegt hatte, griff Statue 2 mich an. Ich wollte es aber gerne so damit beide Statuen sind, von beginn an.

Code:
short once

Begin OnLoad
 StatueRef.SetGhost 1
 StatueRef.SetUnconscious 1
 StatueRef.SetDestroyed 1
 StatueRef2.SetGhost 1
 StatueRef2.SetUnconscious 1
 StatueRef2.SetDestroyed 1
end

Begin OnTrigger Player
If once == 0
 StatueRef.SetGhost 0
 StatueRef.SetUnconscious 0
 StatueRef.SetDestroyed 0
 StatueRef.StartCombat Player

endif
end

Das Script auf die Triggerbox


und das untere auf den Npc, wäre das dann möglich ?

Code:
Begin OnDeath
if StatueRef. getdead
 StatueRef2.SetGhost 0
 StatueRef2.SetUnconscious 0
 StatueRef2.SetDestroyed 0
 StatueRef2.StartCombat Player
endif
end

Oder müsste es dann so sein ?

Code:
Begin OnDeath
if StatueRef. getdead
 StatueRef2.SetGhost 0
 StatueRef2.SetUnconscious 0
 StatueRef2.SetDestroyed 0
 StatueRef2.StartCombat Player
endif
end

StatueRef2. startcombat player
endif
end

Und danke für den Shader probiere ich gleich mal aus.
 
Das untere wäre ja eigentlich doppelt.
Zumal da auf alle Fälle ein Syntaxfehler ausgelöst würde.
Der zweite kleine Block hat nämlich keinen Beginn.

Ich meinte das so, wie es bei Script 1 + 2 wäre.
 
  • Like
Reaktionen: Master of Worlds
Langsam verstehe ich das mit den Skripten :)


Vielen Dank, es funktioniert jetzt sehr gut.


Edit:Ich habe doch noch eine neue Frage zur Statue.
Wie Schaffe ich es, dass sie in einer Pose steht ? Ich habe schon ein wenig rumprobiert, aber bisher nur den Effect der Ayleiden Statuen auf meine Statuen Übertragen.

Also fehlt noch eine Pose, wie mache ich das am besten ?

Mfg Master of Worlds
 
Zuletzt bearbeitet:
Also, wenn es nur eine einfache Pose wie, Waffe ziehen etc. ist, kannst du das so machen:

Code:
Playgroup Forward, Backward, Attack.... etc

Hier gibt es eine Liste der Möglichkeiten.

Soll es aber komplexer werden, musst du der Statue eine Animation zuordnen.