Construction Set Skriptthread zum Construction Set

kurze frage, bin noch neu beim scripten, hab mir ne anleitung für einen wetterveränderer angesehen, und den script leicht geändert, auch einen activator damit belegt, allerdings lauteten die ursprünglichen Befehle Begin scripteffectstart und begin gamemode, welche befehle muss ich einfügen, damit auch ein activator den script auslösen kann?

Begin GameMode kannst du beibehalten, der Befehl ist Allgemein und bezieht sich eigentlich nur darauf, dass sich dieser Block über mehrere Frames ausdehnen kann, währen alle anderen (ScriptEffectUpdate mal ausgenommen) nur innerhalb von 1 Frame statt finden.
 
Begin GameMode kannst du beibehalten, der Befehl ist Allgemein und bezieht sich eigentlich nur darauf, dass sich dieser Block über mehrere Frames ausdehnen kann, währen alle anderen (ScriptEffectUpdate mal ausgenommen) nur innerhalb von 1 Frame statt finden.

Hab gamemode auch ursprünglich gelassen und auch statt scripteffectstart onactivate versucht, da mir bekannt war, dass scripteffectstart nur für magiescripts gilt, hat nur leider nicht funktioniert. :?
 
Hab gamemode auch ursprünglich gelassen und auch statt scripteffectstart onactivate versucht, da mir bekannt war, dass scripteffectstart nur für magiescripts gilt, hat nur leider nicht funktioniert. :?

Wie sah dein Script denn aus?

So:

Code:
scn Wetteramulet

short wetter

Begin Onactivate
MessageBox "Welches wetter?", "1",....
end

Begin GameMode
		if wetter == 0
			;Auswahl 1 Klar
			SetWeather Clear 1
		elseif wetter == 1
			;Auswahl 2 Wolkig
			SetWeather Cloudy 1
		elseif wetter == 2
			;Auswahl 3 Nebel
			SetWeather Fog 1
		elseif wetter == 3
			;Auswahl 4 Regen
			SetWeather Rain 1
		elseif wetter == 4 
			;Auswahl 5 Schnee
			SetWeather Snow 1
		elseif wetter == 5
			;Auswahl 6 Normal
			ReleaseWeatherOverride
		endif
end
 
Ist soweit aber eigentlich richtig.

Das einzige was man noch machen könnte, ist zusätzliche Variablen hinzuzufügen:

Code:
scn Wetteramulet

short wetter
short step

Begin Onactivate
If step == 0
MessageBox "Welches wetter?", "1",....
Set Step to 1
end

Begin GameMode
If step == 1
		if wetter == 0
			;Auswahl 1 Klar
			SetWeather Clear 1
                        Set Step to 0
		elseif wetter == 1
			;Auswahl 2 Wolkig
			SetWeather Cloudy 1
                        Set Step to 0
		elseif wetter == 2
			;Auswahl 3 Nebel
			SetWeather Fog 1
                        Set Step to 0
		elseif wetter == 3
			;Auswahl 4 Regen
			SetWeather Rain 1
                        Set Step to 0
		elseif wetter == 4 
			;Auswahl 5 Schnee
			SetWeather Snow 1
                        Set Step to 0
		elseif wetter == 5
			;Auswahl 6 Normal
			ReleaseWeatherOverride
                        Set Step to 0
		endif
         end
end
 
Ist soweit aber eigentlich richtig.

Das einzige was man noch machen könnte, ist zusätzliche Variablen hinzuzufügen:

Code:
scn Wetteramulet

short wetter
short step

Begin Onactivate
If step == 0
MessageBox "Welches wetter?", "1",....
Set Step to 1
end

Begin GameMode
If step == 1
        [COLOR="Red"]Set Wetter to GetButtonPressed[/COLOR]
		if wetter == 0
			;Auswahl 1 Klar
			SetWeather Clear 1
                        Set Step to 0
		elseif wetter == 1
			;Auswahl 2 Wolkig
			SetWeather Cloudy 1
                        Set Step to 0
		elseif wetter == 2
			;Auswahl 3 Nebel
			SetWeather Fog 1
                        Set Step to 0
		elseif wetter == 3
			;Auswahl 4 Regen
			SetWeather Rain 1
                        Set Step to 0
		elseif wetter == 4 
			;Auswahl 5 Schnee
			SetWeather Snow 1
                        Set Step to 0
		elseif wetter == 5
			;Auswahl 6 Normal
			ReleaseWeatherOverride
                        Set Step to 0
		endif
         end
end

Uff das macht mich jetzt fertig.
Von dir hätt ich das nicht erwartet :roll:. Mir ist aufgefallen das nirgendwo der Button bestimmt wird... Wie kann man das nur übersehen :lol:
 
Ohh Danke Sir Troy, ich werd alt, dann übersieht man sowas manchmal ;)

GetButtonPressed bezieht sich auf die voher definierten Button in der Messagebox, in diesem Fall also die "Schönes Wetter" "Regen" "Sturm" "Normal".
 
  • Like
Reaktionen: SirTroy
Hallo.

Ich möchte mit einem Script das Opfer sofort töten, wenn der Mörder ungesehen ist und schleicht. Geht das?

Player.IsSneaking - für das Schleichen.
Womit ich das 'Ungesehen' hinbekomme und wie ich das richtige Opfer herausbekomme, damit ich es mit
kill - töten kann, ist die Frage an euch.

Ich hoffe, ihr könnt mir helfen.

mfg
 
Soll das Opfer jetz unbestimmt sein oder soll es nur um EIN Opfer gehen?

Wenn es ein Opfer ist dann Persistent Reference und im Script dann die ID angeben.

Falls es ein unbestimmtes Ziel sein soll musst du wohl auf OBSE zurückgreifen.
Das ganze machst du mit GetCrosshairRef, also die Reference die sich momentan im Fadenkreuz befindet. Falls du willst das man auch ein weiter entferntes Opfer erkennen soll musst du das Gamesetting iActivatePickLength (oder so ähnlich) erhöhen bzw. senken je nach dem was du willst.

Ob er gesehen wird kannst du mit IsActorDetected oder ähnlichen befehlen bestimmen.

Falls du noch hilfe brauchst sag bescheid.
 
Uiuiui du fragst was^^

ich hatte sowas mal nebenher für einen Hausmod gemacht, und da hatte ich das ganze mit einer Verzauberung gelöst, die beim ersten Tick überprüft, ob der Actor eine Alert Flag hat, ich hab es allerdings nie zuende ausprobiert, und weiß nicht, ob Npcs erst nach dem ersten Verzauberungs-Tick auf Alarmstatus schalten, oder davor schon.

Im Zweifel ausprobieren oden Obse nehmen^^
 
Sowas ist doch bekannt... Du erstellst einen Skripteffekt, den du auf die Waffe legst...
Code:
scn name

ref target

Begin ScriptEffectStart
 set target to getSelf
 if player.isSneaking && player.isActorDetected == 0
  target.kill
 endif
end
 
Ich habe das Script von Diarrhoe ausprobiert, was ja auch einleuchtet (denke auch s geht ohne obse), aber wenn ich jemanden ungesehen schlage passiert erst gar nichts und nach eingen Sekunden hängt sich das Spiel auf.
 
Habe lange danach gesucht. Eventuell sucht ja noch jemand danach. Wiederbeleben jediglicher Person oder Creatur geht hiermit.

Console Ziel anwählen und
resurrect
eingeben.

Und nochmal an Alle. "Hört mit diesem Oh bloss kein OBSE" auf. Es tut nicht weh, schadet niemand sondern erhöht nur den Funtionsumfang erheblich. Da Abfragen möglich sind die sonst nicht vorhanden sind. Die OBSE 16er Version ist absolut stabil und sollte jeder auf dem Rechner haben.

im Gegenteil nutzt das mal demnächst alle, damit das zum Standart wird. Und die Vergangenheit endlich ruhen bleibt.
 
Zuletzt bearbeitet:
Ich habe nichts gegen OBSE!
Allerdings ist es nun mal so, dass viele es nicht haben und es sich auch nicht für einen einzigen Mod installieren wollen.
Außerdem hat es doch auch keinen Nachteil, wenn es auch ohne geht!

mfg
 
Ich empfehle es in einen Gamemode Block zu machen. Also eine Quest. Funktioniert meistens besser, vorallem da es ständig durchläuft und nicht nur bei jedem Schlag. Dafür musst du aber die OBSE version nehmen, die imho sehr viel besser funktionieren wird!
 
Klappt jetzt (auch ohne OBSE). Ich musste die Verzauberung für 5 sec machen.
Und um das System mit den Benutzungen und dem Aufladen zu umgehen, darf der Zaubereffekt nichts kosten und die Waffe Ench: 0 haben (logischer wäre 1, da ja 1-0=1 und damit immer möglich.)
mfg
Tach810i