Construction Set Wie mache ich am besten...

Sebastian A.

Bürger
Hi,
ich habe ein paar Fragen:

1. Ich möchte wenn ich ein Level hochsteige, dass die Attribute so ehöht werden, wie ich trainiert habe (also: wenn ich im Schwert-, Axt-, oder Nahkampf 1 Level hochsteige meine Stärke um 1 erhöht wird und wenn sie um 5 gestiegen sind um 5 erhöht wird). Kapiert? Wie mache ich dass am besten?

2.Ich möchte verdeckte Ermittler erstellen. Sie sollten wie normale Bürger aussehen. Sie sollen dich wenn du ein geringes Kopfgeld hast (da wo die normalen Wachen einfach stehen bleiben) dich eine Zeit lang verfolgen und warten bis du eine Straftat begehst. Erst dann sollten sie dich mit dem gewöhnlichen Spruch(bezahlen, Knast oder wiedersetzen) ansprechen und zu ihrer Waffe und Rüstung greifen (davor unbewaffnet und mit normaler Kleidung). Verstanden? Wie mache ich dass am besten?

3. Wie mache ich einen toten NPC?
 
Zuletzt bearbeitet:
1. Nicht zu realisieren
2. " " "
3. Im CS: im Fenster des NPC's bei health den wert 0 eingeben.
oder in Game: Konsole öffnen, npc anklicken und folgendes eintippen: kill
 
1. Nicht zu realisieren
2. " " "
3. Im CS: im Fenster des NPC's bei health den wert 0 eingeben.
oder in Game: Konsole öffnen, npc anklicken und folgendes eintippen: kill

@ Albin: Bei erstens muss ich dich leider enttäuschen. Denn es ist möglich, jedoch ein bisschen aufwendig.

@ Sebastian A: Es gibt keine Fertigkeit "Axtkampf" xD
Ich habe dafür einfach die Stumpfe Waffen-Fertigkeit genommen. Hier ist gleich mal ein Script dazu (zu deinem Beispiel):
Code:
scn MirFälltGeradeKeinerEin^^

short einstellen
short lvl
short sk
short nk
short ak

Begin GameMode

If einstellen == 0
set sk to player.getBaseactorValue Blade
set nk to player.getBaseActorValue HandToHand
set ak to player.getBaseActorValue Blunt
set lvl to player.GetLevel
set einstellen to 1
Endif

If lvl < player.getLevel && einstellen == 1
	set sk to player.getBaseActorValue Blade - sk
	set nk to player.getBaseActorValue HandToHand - nk
	set ak to player.getBaseActorValue Blunt - ak
	If sk == nk == ak
		player.modav Strength sk
	Endif
	set einstellen to 0
Endif

end

@ Phoenix-Ch: Schöner Script :ugly:
besonders der Befehl advlevel gefällt mir. Den kannte ich nähmlich vorher noch gar nicht. Mal wieder was dazu gelernt :ugly:

Mfg Gildur
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Sebastian A.
okay. beim 2. meinte ich eher schwer realisierbar.
 
Schwer!? Einfach ein Script laufen lassen, das bei nem gewissen Kopfgeld einen NPC spawnt, der dem Spieler folgt, und ab nem bestimmten Betrag diesen NPC in die Wachen-Fraktion reintun und fertig.
 
  • Like
Reaktionen: 1 Person
ich möchte hierbei anmerken dass ich im scripten schlechter bin als ein noob.
könntest du das script hier reinschreiben?
 
Leider braucht man dazu ein paar NPC-KI-Pakete, die ich so nicht zur Hand habe und mich mit NPCs auch gar nicht mal so auskenne, als dass ichs auswendig wüsste. Die Scripts sind eigentlich recht einfach:
Code:
scn 000Agentenspawn
Begin Gamemode
if player.GetCrimeGold >= 1
spawnbefehldenichnocherörternmöchte
endif
end

Begin Gamemode
If player.GetCrimeGold >= [DieSummeabwannerangreifensoll]
NPCRef.Additem DieganzenSachenda; Hier musste ihm halt alle Sachen geben, die er nachher equippen soll, denn leider ist es so, wenn du ihm vorher schon alles gibst, zieht er die automatisch an. Oder zumindest kenn ichs so. Drum geh ich halt lieber auf Nummer sicher.
NPCRef.EquipItem DieganzenSachenda; Joar, siehe vorher. Musst halt beachten, dass du für jedes Item immer einen Befehl nimmst.
NPCRef.SetFactionRank FraktionsIDderWachen RangderWache; Musste halt leider alles selbst nachschauen
Endif
End
Soll der Agent denn mehrmals kommen oder nur einmal? Und wo soll er kommen? Soll er direkt hinter dem Spieler erscheinen oder doch eher an nem bestimmten Ort?
 
  • Like
Reaktionen: Sebastian A.
@Oberscht: Er sollte auf einer bestimmten Route patrulieren und immer kommen wenn ich ein bestimmtes Kopfgeld habe(z. B. 1-100) und ab einem bestimmten Kopfgeld wie eine normale Wache reagieren (also dich in den Knast stecken, Geld holen oder dich angreifen)!

Hab noch eine Frage: Wie mache ich es, dass sich ein von mir erstelltes Haus sich verändert, wenn ich z. B. dass Haus bei einer bestimmten Person kaufe oder bei einem Händler Innenaustattung kaufe? Muss ich da eine neue Celle erstellen?
 
Ach, du willst gar nicht, dass er ganz auf einmal spawnt, sondern, dass er patrouilliert? Nun denn, das macht die Sache im Grunde einfacher, da die Skripte nicht so schwer sind, für mich aber schwieriger, da ich das CS nicht hab und keine NPC-Einstellungen einsehen kann.
 
Nein, die Objekte, die du kaufst, sind von vornherein da. Nehmen wir mal einen Schrank für das Haus. Der Schrank ist schon da, aber auf "Initially Disabled" geschaltet. Sobald du den Zettel kaufst, auf dem steht, dass du jetzt den Schrank besitzt, wird er über den Script-Befehl "SchrankRef.Enable" aktiviert und ist erst dann wirklich da. Du kannst das aber auch anders regeln als Bethesda, also nicht über Zettel, auf denen steht: "Ihr seid jetzt stolzer Besitzer eines Schranks". Man kann das auch über Dialoge, Quests etc. regeln.

Wenn wir von einem Schriftstück ausgehen, das der Spieler kauft, sieht der Script so aus:

Code:
scn [B]Scriptname[/B]

short done

begin onAdd Player

if ( done == 0 )
   [B]SchrankRef[/B].Enable
   set done to 1
endif

end

Das "done" kannst du bei einem "onAdd"-Block meines Wissens nach auch weglassen, ich habe mir das aber so angewöhnt, weil ich mich da irgendwie "sicherer" fühle. Oblivion kann man nie ganz vertrauen. ;)
 
  • Like
Reaktionen: Sebastian A.
ok, aber ich möchte auch dass davor schon Gegenstände drin sind. Und die dann ersetzt werden z.B. ein alter, klabriger Stuhl der verschwindet und stattesen ein total neuer Stuhl auftaucht!
 
Die Cell austauschen? Also dass alles neu ist und alle reingelegten Sachen futsch sind? Nun ja, dann geht das so:
Pack auf die exakte Position der Originaltür die Tür zur neuen Cell, mach nen Haken bei "Initially Disabled" und mach dann ein Skript mit altetür.disable und neuetür.enable.
 
  • Like
Reaktionen: Sebastian A.
neue Frage:
ich möchte dass ein bestimmter Topic Text erst dann erscheint wenn ich bestimmte Bedinungen erfüllt habe(z.B. der Graufuchs bin).
Und wie mache ich dass ich von Topic Text zum nächsten Topic Text weitergeleitet werde?
 
Hi,
zu deiner 1. Frage: du musst erst irgendwo das Topic Adden (ich nenne es einfach mal "BinGraufuchs"). Dann musst du in dem Topic einfach einen Text reinschreiben, der gesagt wird, wenn man das Topic anklickt, und bei der Condition "GetIsID" "Grafuchs" "==" "1".
Wenn du nicht der Graufuchs bist, wird das Toic gar nicht erst in der Topic-Leiste zum anklicken angezeigt, falls doch, dann wird eben auf Klick der Text abgespielt.
Zu deiner 2. Frage: Wenn du jetzt meinst, dass man von einem Topic einen Text abspielt und danach einen Text von einem anderen Topic, so ist das, glaube ich, nicht möglich. Genau so wenig kann man auch beim Abspielen eines Textes in einem Topic danach einen anderen Text im selben Topic abspielen.

MfG Gildur
 
  • Like
Reaktionen: Sebastian A.