Dafür eine andere Frage: Wenn man eine Nuka-Cola Flasche benutzt, erhält man sofort einen Flaschendeckel. Kann man das gleiche auch mit einem Gegenstand machen, der nicht sofort, sondern erst nach X Zeit im Inventar auftaucht? Beispiel die Flasche wieder, der Spieler benutzt die Nuka-Cola und erhält 10 Minuten später einen Flaschendeckel.Hmm, müsste gehe, wenn du dem Script-Effekt eine bestimmte Dauer verleihst.
Also im Prinzip will ich dem Spieler ein Item ins Inventar zaubern, sobald ein Effect aufgehört hat.
Ich hasse diesen Editor einfach nur. Man, nicht mal der Editor von The Fall ist so scheiße und der Editor von The Fall ist echt übel limitiert. Wenn das GECK nicht gerade bei einem falschen Mausklick abschmiert, passiert so ein Mist wie oben.
Hab jetzt ein Objekt platziert und es ging weg... Kostet mich sehr viele Nerven. Hatte schon drüber nachgedacht, ob ich hier damals bei Fallout 3 auch darüber gepostet hab, konnte aber keine Beiträge mehr dazu finden.
Blöderweise hab ich echt alles übers GECK vergessen. Ich weiß nicht mal mehr, wie ich eine eigene Worldspace mit Startpunkt usw. testen kann... und von meiner alten Fallout 3 Mod zu kopieren geht auch nicht, weil die ja auf GTS aufgebaut hat. :p
Du meinst COCMarkerheading? Und: Keine Ahnung, wie ich eine Zelle umbenenne. :> Doppelklick drauf scheint nicht zu funktionieren.
Also das Laden deiner Datei hat beim ersten mal schon mal mein GECK abstürzen lassen. :s000: Beim zweiten Versuch ging es.
Konnte meine Zelle jetzt auch laden. Nur merkwürdigerweise spawne ich in extremer Höhe, falle runter und bin tot.
Weiß jemand ob es möglich ist, ein Script zu starten, wenn der Spieler tot ist?
hm. sobald 1hp, script ausführen.. wenn das ding ohne probleme läuft, wäre das auch gut. ich müsste den spieler sowieso erst wiederbeleben. wo müsste das script denn angehängt werden? npc player?
LexxFiendEnter.startcombat player
setEnemy PlayerFaction LexxFiendFactionQ1
SetEnemy PlayerFaction LexxFiendFactionQ1 100
scn CPMephistosScript ;Name des scripts
short doonce1 ;hier werden die Variablen definiert, standardmässig sind sie 0
short doonce2
short doonce3
short doonce4
short variableA
short unasdead
Begin GameMode
If (CPUnasRefCave.GetDead == 1 && doonce3 == 0) ;CPUnasRefCave fragt ab ob Unas noch lebt und doonce3 stellt sich dass es noch nicht ausgeführt wurde
MephistoRef.AddScriptPackage 0CPMephistoTalkPC5
set doonce3 to 1 ;hier wird doonce3 dann auf 1 gesetzt damit der Abschnitt nicht wieder abgerufen wird
Endif
End
Willst du eine Variable per Condition zum Beispiel abfragen, erst Questname oder NPC-Referenz angeben
z.B.: set CPDorfbewohner.wasserbarkat to 1 ;CPDorfbewohner ist der Name der Quest in deren script die Variable wasserbarkat gesetzt ist
(das script muss mit der Quest oder dem NPC verbunden sein)
Begin OnPackageEnd LexxNPCerreichtHaus
StartCombat Geger01Ref
End
Referenz.ResetAI
6. Ich interagiere mit einem anderen NPC (Fesseln lösen) und will in dem Moment Fraktion 2 mir gegenüber feindlich einstellen. Ich benutze den selben Script-Befehl, wie in einem anderen Dialog und es funktioniert einfach nicht, keiner reagiert darauf.
4. Wenn ich einen NPC vom Startort zum Zielort (ein anderes Gebäude, weit entfernt) laufen lasse, funktioniert das laufen. Sobald die NPCs das Gebäude betreten, sind sie einfach verschwunden, obwohl die XMarker mit Referenz korrekt platziert sind.
3. Ein NPC soll mich ansprechen, was via AI Package geregelt wird. Problem: Wenn Variable X == Y ist, soll das *nicht* passieren... funktioniert nicht.
Im Zweifelsfall immer schauen, ob es im ESM Format besser klappt.
Das HUD wird glaub ich mit "disableplayercontrols" mit ausgeblendet.
Falls du das nicht vor hast, dann probier's mal "con_ToggleMenus"
Und wenn das nicht klappt, dann kannst du hier (http://forums.bethsoft.com/index.php?/topic/1139340-beta-new-vegas-script-extender-nvse-v1/page__st__180) mal fragen, ob sie dir die Function wieder einbauen, bzw reparieren.
ToggleMenus ist ein ganz normaler Konsolenbefehl,
Und die Skript Extender Befehle mit con_iregendwas sind eigentlich nur Implementierungen der Konsolenbefehle für Scripte.
Ja, sind natürlich dann alle menus deaktiviert... :/
Klar, "Persistent Reference" wird generell gebraucht, egal welches Dateiformat die Mod hat.Naja, ich hatte das mit einem Plugin mal gemacht und hinterher festgestellt, das obwohl die Gegenstände per Script mit moveto bewegt werden konnten, ich vergessen hatte, die als persistent zu markieren. Das hätte mit FO3 wahrscheinlich nicht funktioniert. #mmh naja
Sollte der Fehler nicht durch das Konvertieren behoben sein?
Funktioniert das auch mit bereits existierenden NPCs in einer Mod?
Ich hab jetzt lediglich die NPCs aus meiner Mod via FNVEdit in eine neue Mod kopiert (bzw. alle anderen Einträge rausgelöscht) und das dann wieder abgespeichert.Das wird wahrscheinlich das Problem sein.
Die ganze Mod in ein Masterfile zu konvertieren hat funktioniert, die NPCs waren aber trotzdem noch Weiß.;D
Was anderes: Hat jemand eine Idee, wie man so eine Titelanzeige wie beim FNV Dead Money DLC hinbekommen kann?Jup, gehört sicher zum Video.
Siehe hier (http://www.youtube.com/watch?v=gXzAOhr8loA#t=1m02s), ab 01:02 (würde ja gerne direkt darauf verlinken, aber irgendwie funktioniert das nicht).Ist mir auch schon unangenehm aufgefallen. Scheint ab einer gewissen Länge des Videos nicht mehr zu funktionieren.
Also im Hauptspiel wurde das Intro und Outro über einen Narrator und mit Bildern / Texturwechseln im Spiel gemacht. Wird wohl im DLC auch so laufen... Mist. +1 Nervige Sachen. Ich sehne mich zurück zum Fallout 2 Modding.
Naja, kein Bock ein Video dafür zu machen. Bin kein Fan von Videoarbeit und hab das bei meiner Fallout 2 Mod damals schon gehasst.
Edit: Hab mir grad das Video noch mal in HD angeschaut. Ist definitiv via Narrator und Dialog gelöst. Werde das morgen mal austesten, wenn ich Zeit finde.
Lexx, was meinst du? Den Untertitel vom Sprecher oder den Titel des DLCs?
Also ich weiß, dass an der Stelle im DLC definitiv kein Video abgespielt wird, das Script sagt nichts dergleichen. Es läuft auf jeden Fall über den Narrator-Dialog. Ist nur scheiße, dass ich mir keine Texturen ansehen kann.Du meinst, dass es kein intro.bik für den DLC gibt? Ich weiß nicht, gab bisher immer eins.
Könnte natürlich auch irgendwo in den einer bsa oder so ähnlich liegen. Konntest du die Spieldateien alle öffnen?
Da muss irgendwo eine Quest und ein Script zu finden sein, welches das ganze timed.
Joo, alles zu finden unter Quest "vendings", auch wie das technisch läuft. Habs aber noch nicht ganz kapiert, auch wenns relativ unkompliziert aussieht.Schau ich mir grad mal an. Von der Sache hat das nur vorteile. Videos sind sehr groß und man kann mit einzelnen Bildern komplexe Enden machen mit wesentlich weniger Platzaufwand.
SwapTexture OnScreenSlideRef "##GS01:0"
Diesen Befehl verstehe ich noch nicht. Es wird eine Textur von einem Referenzobjekt ausgetauscht, soweit klar... nur was genau diese Referenz ist und wodurch sie letztlich angezeigt wird, ist mir unklar.Durch eine Nif.
joo ok, aber welcher Befehl sorgt dafür, dass diese Nif als Vollbild präsentiert wird?Das Nif ist eine Leinwand, keine Kamera, wie ich vorhin fälschlich sagte.
Hab's nun kapiert.Yup, der Spieler wird in die Zelle portiert und dort mit DisablePlayerControls (http://geck.bethsoft.com/index.php/DisablePlayerControls) vor der Leinwand festgenagelt.
Der Spieler wird am Ende in die Zelle "Endgame" geportet. Dort befindet sich der Narrator und die Leinwand. Ist also eine Art Minikino. Das bietet auf jeden Fall interessante Möglichkeiten.
Also, für die volle Funktionsweise wird die Quest "vEnding" und die Zelle "Endgame" benötigt.
Dein Screen-Nif wird bei mir im GECK als rotes Fehlerfragezeichen angezeigt.
/Edit: Und du deaktivierst am Anfang alle Begleiter, reaktivierst sie aber nicht, wenn die Slideshow vorbei ist.
/Edit²: Wenigstens muss ich jetzt nicht mehr an meiner Testmod weiter bauen und kann gleich dein Zeug übernehmen. :> Hatte heute keine Zeit, mich weiter um meins zu kümmern und werd' auch gleich pennen gehen.
weil die dt. Version Mist ist und zum anderen, weil ich die nicht besitzeNa so lange man nicht die Cut-Version hat, kann man die Sprache ja zum Glück umstellen.
%k - replaced by a string representing the key associated with a DirectInput scan codeDas %k hab ich schon Probiert, das bringt in der MassageBox aber immer nur das k, wenn ich das einsetze.
Nein. Ich habe ein Objekt mit REF Name, das ich *in* allen Dateien suchen will. Scripte in den Quest Dateien, in den Dialog Dateien, etc. etc.
man kann jede art von text mittels der textsuche auffindig machen. Tab Edit->Find TextSehr schön btw #thumbsup
if (Player.GetObjectiveCompleted NVDLC02MQ04 100)
begin onActivate
AddNote xyzNote
ShowMessage xyzMsg
Disable
end
Mein Code ist sechs Zeilen lang, da gibt es nicht viel zu übersehen.
Wofür gibts denn das hier? http://www.newvegasnexus.com/downloads/file.php?id=41642 (http://www.newvegasnexus.com/downloads/file.php?id=41642)
Mhm, jetzt geht die Abfrage gar nicht mehr. Nicht mal mehr der Code im Else-Block wird ausgeführt, muss also an der Abfrage generell liegen.
Kein Grund, die Sache künstlich zu verkomplizieren.
Außerdem ist mir aufgefallen, dass die Wasserstrahler links und rechts jetzt auf "initially disabled" stehen, was ja eigentlich bedeutet, dass die im Spiel jetzt auch ausgeschaltet sind. Hab ich irgendwas übersehen?
Sets the specified quest stage to "Completed", and resolves any of the attached stage items that pass their conditions (runs results, adds to quest log, completes the quest if it should).
Begin OnAdd Player
SetStage MyQuest (Player.GetItemCount PuzzleItem)
End
elseif QuestInit == 2
if Player.GetInWorldspace NVDLC01VillaChristine; Medical District 2 of 15 of Dirty Dean's Password Puzzle Parts are located here
setStage DeansDirtyQuest 10
elseif Player.GetInWorldspace NVDLC01Villa; The Villa 4
setStage DeansDirtyQuest 20
elseif Player.GetInWorldspace NVDLC01VillaDean; Residential District 2
setStage DeansDirtyQuest 30
elseif Player.GetInWorldspace NVDLC01EastTownS; Salida del Sol South 3
setStage DeansDirtyQuest 40
elseif Player.GetInWorldspace NVDLC01EastTownN; Salida del Sol North 4
setStage DeansDirtyQuest 50
elseif Player.GetInWorldspace NVDLC01WestTownN; Puesta del Sol North 0
setStage DeansDirtyQuest 60
elseif Player.GetInWorldspace NVDLC01WestTownS; Puesta del Sol South 0
setStage DeansDirtyQuest 70
elseif Player.GetInCell SLBoSBunkerINT; Abandoned BoS Bunker Quest fail
setStage DeansDirtyQuest 255
endif
würde allerdings btw nur ein Stage für alle 15 Teile machen.
Gehe in den Objektive-Tab und füge 15 Einträge für Stage 10 bei. Jeweils mit 2/15 / 3/15 etc. bei jedem Objektive-Eintrag fügst du bei Conditions player.getitemcount puzzleitem == 1 (für 1/15) == 2 (für 2/15) ein. etc.
Im optimalen Falle ändert das Spiel so automatisch die Objektive und du musst dann nur den Stage ändern, wenn 15 erreicht ist.
scn DeansDirtyQuestScript
;Dean's Dirty Secrets Quest starts after the player dealt with Elijah
int QuestInit;
int StashFound; tracks the number of stashes the player found
int Stash01; to identify each puzzle part
int Stash02
int Stash03
int Stash04
int Stash05
int Stash06
int Stash07
int Stash08
int Stash09
int Stash10
int Stash11
int Stash12
int Stash13
int Stash14
int Stash15
Begin GameMode
if QuestInit == 0; Quest is not initiated yet
if GetQuestCompleted NVDLC01MQ03 != 1; Last Quest not completed, wait
return
elseif GetQuestCompleted NVDLC01MQ03; Player exited the Casino Vault, go on with Dean's Dirty Secrets
if NVDLC01DeanRef.GetDisabled; Dean may survive the player confrontation in the theatre, need to reenable him
NVDLC01DeanRef.enable
endif
setStage DeansDirtyQuest 1
set QuestInit to 1
return
endif
elseif QuestInit == 1
if GetHasNote DeansDirtyPWNote == 0
return
else
; showMessage GenericDebugMsg
setStage DeansDirtyQuest 2
SetObjectiveDisplayed DeansDirtyQuest 10 1
GalaBeamSound.disable
set QuestInit to 2
return
endif
elseif QuestInit == 2
if (Stash01 + Stash02) == 0
return
elseif (Stash01 + Stash02) == 1
SetObjectiveDisplayed DeansDirtyQuest 10 0
SetObjectiveDisplayed DeansDirtyQuest 11 1
elseif (Stash01 + Stash02) == 2
SetObjectiveDisplayed DeansDirtyQuest 11 0
SetObjectiveDisplayed DeansDirtyQuest 12 1
SetObjectiveCompleted DeansDirtyQuest 12 1
SetObjectiveDisplayed DeansDirtyQuest 20 1
set QuestInit to 3
endif
elseif QuestInit == 3
if (Stash03 + Stash04 + Stash05 + Stash06) == 0
return
;SetObjectiveDisplayed DeansDirtyQuest 20 1
elseif (Stash03 + Stash04 + Stash05 + Stash06) == 1
SetObjectiveDisplayed DeansDirtyQuest 20 0
SetObjectiveDisplayed DeansDirtyQuest 21 1
elseif (Stash03 + Stash04 + Stash05 + Stash06) == 2
SetObjectiveDisplayed DeansDirtyQuest 21 0
SetObjectiveDisplayed DeansDirtyQuest 22 1
elseif (Stash03 + Stash04 + Stash05 + Stash06) == 3
SetObjectiveDisplayed DeansDirtyQuest 22 0
SetObjectiveDisplayed DeansDirtyQuest 23 1
elseif (Stash03 + Stash04 + Stash05 + Stash06) == 4
SetObjectiveDisplayed DeansDirtyQuest 23 0
SetObjectiveDisplayed DeansDirtyQuest 24 1
SetObjectiveCompleted DeansDirtyQuest 24 1
endif
return; erstmal so weit, wird nach dem Schema fortgesetzt
if Player.GetInCell SLBoSBunkerINT; Abandoned BoS Bunker Quest fail
setStage DeansDirtyQuest 255
endif
endif
End
scn DeansDirtyPWPuzzleScript
;this script tracks which of the 15 puzzle pieces already have been found by the player, it sets the respective variables on DeansDirtyQuest
Begin OnDrop DeanSecretStash01Ref
set DeansDirtyQuest.Stash01 to 1
End
Begin OnDrop DeanSecretStash02Ref
set DeansDirtyQuest.Stash02 to 1
End
Begin OnDrop DeanSecretStash03Ref
set DeansDirtyQuest.Stash03 to 1
End
Begin OnDrop DeanSecretStash04Ref
set DeansDirtyQuest.Stash04 to 1
End
Begin OnDrop DeanSecretStash05Ref
set DeansDirtyQuest.Stash05 to 1
End
Begin OnDrop DeanSecretStash06Ref
set DeansDirtyQuest.Stash06 to 1
End
Begin OnDrop DeanSecretStash07Ref
set DeansDirtyQuest.Stash07 to 1
End
Begin OnDrop DeanSecretStash08Ref
set DeansDirtyQuest.Stash08 to 1
End
Begin OnDrop DeanSecretStash09Ref
set DeansDirtyQuest.Stash09 to 1
End
Begin OnDrop DeanSecretStash10Ref
set DeansDirtyQuest.Stash10 to 1
End
Begin OnDrop DeanSecretStash11Ref
set DeansDirtyQuest.Stash11 to 1
End
Begin OnDrop DeanSecretStash12Ref
set DeansDirtyQuest.Stash12 to 1
End
Begin OnDrop DeanSecretStash13Ref
set DeansDirtyQuest.Stash13 to 1
End
Begin OnDrop DeanSecretStash14Ref
set DeansDirtyQuest.Stash14 to 1
End
Begin OnDrop DeanSecretStash15Ref
set DeansDirtyQuest.Stash15 to 1
End