die scrpits kann ich jetzt alle abspeichern... aber beim ersten ingame test:
feld mit den drei entscheiduungsfelder kommt... aber egal was man anklickt, nix passiert.... beim 1. button wird man net zum vampir, beim 2. passiert auch nix, und beim dritten passiert das was passieren soll: auch nix.
an was könnte das liegen?
kA, aber hats vielleicht damit zu tun dass das "opfer" schon bei spielbeginn tot ist, also net erst vom vampirlord getötet wird?
die scrpits kann ich jetzt alle abspeichern... aber beim ersten ingame test:
feld mit den drei entscheiduungsfelder kommt... aber egal was man anklickt, nix passiert.... beim 1. button wird man net zum vampir, beim 2. passiert auch nix, und beim dritten passiert das was passieren soll: auch nix.
an was könnte das liegen?
kA, aber hats vielleicht damit zu tun dass das "opfer" schon bei spielbeginn tot ist, also net erst vom vampirlord getötet wird?
...
Ja, es ist u.a. eine Ursache, dass das Opfer schon von Anfang an tod ist, denn beim Spiel wird abgefragt, ob er vom Vamplord angegriffen wird, und dann, ob er tod ist.
Gibt's denn nur ein Opfer oder mehrere, die man wiedererwecken kann?
Warum bei der MessageBox nix passiert kann daran liegen, dass sie in das Questskript muss. Probier's jetzt mal (Wiedererwecken wird nicht funktioneren, allerdings sollte die Vamp-Verwandlung gehen).
--
Ich kam, sah, und konnte meinen Augen nicht trauen
sorry wenn ich mich da schlecht ausgedrückt habe...
edit: habs mitm questscript nochma ausprobiert:
warning:
line11
script command "elsif" not found
...
Wieder ein typischer Fehler von mir, soll eigentlich elseif heißen.
Ich hab die Skripte nochmal angepasst, müsste eigentlich funktionieren.
Änderungen: ich hab den Gamemodeblock für die wiederauferstehung in das Questskript gelegt. Sollte zwar kaum einen Unterschied machen, aber so läuft er nur, solange die Quest aktiv ist. Performance schonen und so, du weißt schon...
Das Skript sollte auch bei mehreren Toten/Opfern funktionieren, aber falls du ganz sicher gehen willst löscht du die Zeile set [Quest-ID].Opfer to GetSelf aus dem Opferskript und ersetzt im Questskript die Zeile Opfer.StartConversation Player, [Topic-ID der Dankesrede] mit [Referenz-ID des Opfers].StartConversation Player, [Topic-ID der Dankesrede]. Dann wird es 100%ig nur für den einen NPC funktionieren. Falls das andere Skript Probleme macht kannst du es ja mal damit versuchen.
Mir ist übrigens noch ein weiterer Grund eingefallen, warum das mit dem Auswerten der MessageBox nicht geklappt hat: Das Questskript wird nur alle 5 Sekunden aktualisiert. Lässt sich zwar durch eine einfache Zeile "beheben", dann würde ich allerdings diesen Teil als extra Quest machen, damit das Skript nur so kurz wie nötig läuft.
Da das hier aber imho nicht nötig ist würde ich einfach den Spieler etwas warten lassen. Man kann die 5 s ja als Inkubationszeit des Vampirismus verkaufen. ^^
--
Ich kam, sah, und konnte meinen Augen nicht trauen
also, den platz in der credits haste dir jetzt gaaannnnzzzz sicher verdient^^ hast nun ja beinahe mehr gemacht als ich an der mod
...
Ich hab doch "nur" das Skript geschrieben, der Rest war ja Korrektur von Syntaxfehlern, weil ich die Skripte direkt im Antwortfenster (bzw. Editor) schreibe und dann nicht noch extra im CS überprüfen lassen.
Mach blos nicht zuviel in den Credits, nicht dass ich dann der Skripter der Nation werde. ^^
--
Ich kam, sah, und konnte meinen Augen nicht trauen
wenn man selbst zum vampir wird bekommt man die vampireigenschaften, und man ist auch äusserlich vampir, aber man bleibt IMMER, egal wie lange man wartet (bzw., ich habe 3 * 24 H geschlafen) vampir der 1. stufe (vampirismus 25) ausserdem passiert nichts anderes als dass man die eigenschaften bekommt... (ich kann dem script entnehmen dass da noch n quest gestartet werden soll)
ahja, und das herz ist kein Q-gegenstand, man kann es also aus dem inventarwerfen
beim opfer ist folgendes:
man muss es nach etwa 5 sek. mit leertaste anklicken, von alleine steht des net auf
sobald es aufgestanden ist wirds feindlich und will dich umlegen... (oke, dass kann auch ein fehler meineerseits sein... vielleicht hab ich bei den KI einstellungen des NPC was falsch gemacht?)
wenn man selbst zum vampir wird bekommt man die vampireigenschaften, und man ist auch äusserlich vampir, aber man bleibt IMMER, egal wie lange man wartet (bzw., ich habe 3 * 24 H geschlafen) vampir der 1. stufe (vampirismus 25) ausserdem passiert nichts anderes als dass man die eigenschaften bekommt... (ich kann dem script entnehmen dass da noch n quest gestartet werden soll)
ahja, und das herz ist kein Q-gegenstand, man kann es also aus dem inventarwerfen
...
Wie gesagt, wie genau das mit dem Vampierwerden funktioniert weiß ich auch nicht, ich hab nur die Sachen auß dem Vampierskript (das zur Quest Vampire) übernommen.
Das das Herz kein Questgegenstand ist kommt daher, dass es nicht so definiert wurde. Ich hab gedacht, dass das Herz dann entfernt werden soll, hab die entsprechende Zeile aber vergessen. Jetzt wird's aber zum Questgegenstand (neue Version des Questskripts; die "Vampierverwandlung" bleibt aber gleich).
Zitat von Lord Vladec
beim opfer ist folgendes:
man muss es nach etwa 5 sek. mit leertaste anklicken, von alleine steht des net auf
sobald es aufgestanden ist wirds feindlich und will dich umlegen... (oke, dass kann auch ein fehler meineerseits sein... vielleicht hab ich bei den KI einstellungen des NPC was falsch gemacht?)
...
Liegt vielleicht daran, dass die Lebensenergie immer noch bei 0 lag (Startwert). Ich hab die mal vor dem Wiederbeleben auf 25 gesetzt (neue Version des Opferskripts), schau mal was er jetzt macht.
Das mit dem aufstehen sollte eigentlich analog zum entfernen des VampLordHerzes aus dem Spielerinventar passieren, das ansprechen kann dann etwas länger dauern.
Das mit dem angreifen könnte mit dem Aggression-Wert des NPCs zusammenhängen, oder aber er ist in einer Evil-Faction.
Edit: Ich hab jetzt noch eine weitere Zeile der Vampierverwandlung hinzugefügt (Quest Vampire gestartet). Schau mal, ob's jetzt geht.
Edit²:
Ich schreib die Skripte jetzt nochmal hier rein, damit man nicht ständig eine Seite zurückblättern muss:
set [Quest-ID].MenuShown to 1
scn VampLordQuestScript
short button
short ForceResurrection
short MenuShown
short DoOnce
float Timer
Begin Gamemode
if MenuShown == 1
set MenuShown to 2
MessageBox "Was wollt ihr mit dem Herz tun?" "Selbst nehmen" "Opfer wiederbeleben" "Nichts tun"
elseif MenuShown == 2
if button == 0
set button to GetButtonPressed + 1
elseif button == 1
if Player.GetVampire == 0
;Spieler zum Vampier machen:
Player.AddSpell VampDisease
set Vampire.hasdisease to 1
set Vampire.Currentday to Gameday
set Vampire.daycount to 3
WakeUpPC
set PCVampire to 1
endif
SetQuestObject [ID des Herzens des Vampierlords] 1
set MenuShown to 3
elseif button == 2
set ForceResurrection to 1
set MenuShown to 3
elseif button == 3
[OpferRef-ID].SetActorValue Health 25
[OpferRef-ID].resurrect 1
Player.RemoveItem [ID des Herzens des Vampierlords] 1
[OpferRef-ID].AddItem [ID des Herzens des Vampierlords] 1
SetQuestObject [ID des Herzens des Vampierlords] 1
set ForceResurrection to 1
set MenuShown to 3
else
MessageBox "Dieser Text sollte nicht zu sehen sein."
endif
elseif ForceResurrection == 1
if Timer < 3 ;um dem Opfer Zeit zu geben aufzustehen
if DoOnce == 0
set DoOnce to GetSecondsPassed + 1 ;um GetSecondsPassed auf 0 zu stellen
endif
set Timer to Timer + GetSecondsPassed
else
set ForceResurrection to 2
[OpferRef-ID].StartConversation Player, [Topic-ID der Dankesrede]
endif
endif
End
--
Ich kam, sah, und konnte meinen Augen nicht trauen
habe die neuen script übernommen, es passiert aber exakt das selbe wie mit den älteren scripts... (vamp entwickelt sich et weiter, opfer muss man erst anklicken damit es wieder aufsteht, dann is es aber feindlich)
agressionswert hab ich überprüft, ist nur 10, kann net daran liegen. Factions hat des opfer auch keine...
Nur als Verständnisfrage: Wann soll der Opfer-NPC genau wiederbelebt werden?
Gleich nach der Messagebox?
Ich hab das nämlich bisher so verstanden, dass man die Option in der MessageBox auswählt, und der NPC dann bei der nächsten "Aktivierung" (so als ob man ihn ansprechen/ausnehmen will) wiederbelebt wird.
Thema Vampierverwandlung:
Ich hab doch gesagt, dass ich da nichts verändert habe.
Ich werd mir das Skript mal etwas genauer anschauen, das wird jetzt aber etwas dauern.
Edit:
Vampierverwandlung "upgedatet", sollte jetzt ohne Probleme funktionieren.
Edit²:
Ich hab das Skript jetzt mal so umgeschrieben, dass das Opfer "sofort" (kann auch etwas länger dauern, nach meinen "Berechnungen" dürfte es maximal 20 Sekunden dauern) nach der Auswahl in der MessageBox wiederbelebt wird.
Neue Version findet sich auf Seite 2, die alte (mit aktivieren) auf Seite 1.
--
Ich kam, sah, und konnte meinen Augen nicht trauen
also: des mitm "sofort" wiederbeleben funzt net richtig... hab ca. 1 minute gewartet und des opfer ist immer noch tot... oke, die alte version würde da auch gehen, müsst dann nur noch n queststage mehr machen, aber des könnte ich dann selbst machen.
des mitm vampir funz net, man wird vampir, bekommt sogar eionen traum, aber man wird nicht mehr vampir. mein bleibt immer 25er (ich habe 7 Tage (7*24H) geschlafen)
Wiederbeleben:
Man könnte noch versuchen, die Leiche zu entfernen und dafür einen Lebenden Gegenpart hinstellen. Warum das so nicht geht ist mir ein Rätsel.
Vampier:
Liegt wahrscheinlich am Vampierskript selber. Als ich bei meinen Test (nur Vampierteil) die Tage durchgeschlafen habe hat der sich auch nicht verwandelt. Versuch mal den Großteil des Tages zu warten und nur die restlichen paar Stunden zu schlafen.
--
Ich kam, sah, und konnte meinen Augen nicht trauen
Wiederbeleben:
Man könnte noch versuchen, die Leiche zu entfernen und dafür einen Lebenden Gegenpart hinstellen. Warum das so nicht geht ist mir ein.......
...
hmm.... aber des würde im game doch recht komisch aussehen, wenn die leiche verschwundet und dann ein lebender da steht... aber egal, ich kann das auch gut mit dem älteren script lösen (bei benützen wiederbelebe)
des mitm vampir versuch ich ma... mache dann edit
edit: warten hat auch nichts genütz... ich schau mal des vampirscript an und versuch was zusammenzubasteln...
Edit²:
ok... ich habe nun mal testmässig das script so eingerichtet dass man net gleich zum vampir wird, sonder einfach die vampirkrankheit bekommt.
dann bin ich nach 3 tagen schön zum vampir geworden... dannach gings aber auch nicht weiter...
hm... sollte doch gehen, das vampirwerden durch die krankheit ist ja net durch dein script gesteuert...
Ok, ich hab eigentlich keine ahnung vom scripten, kommt mir einfach logisch vor...
kennste vielleicht ein modder der vampir-mods macht? ein vampir-experte wäre gefragt...
Geändert von Low Post (18.11.2007 um 21:00 Uhr)
Grund: Doppelpost
ich hab nu das cript n bissl angepasst, nun "scheint" es zu funktionieren.
das mit dem vampir-bug hab ich net testen können...
hier ma das questscript
scn VampLordQuestScript
short button
short ForceResurrection
short MenuShown
short DoOnce
float Timer
Begin Gamemode
if MenuShown == 1
set MenuShown to 2
MessageBox "Was wollt ihr mit dem Herz tun?" "Selbst nehmen" "Opfer wiederbeleben" "Nichts tun"
elseif MenuShown == 2
if button == 0
set button to GetButtonPressed + 1
elseif button == 1
if Player.GetVampire == 0
Player.AddSpell VampDisease
set Vampire.hasdisease to 1
set Vampire.Currentday to Gameday
set Vampire.daycount to 3
WakeUpPC
set PCVampire to 1
SetStage A1dasschwarzeherz 20
endif
SetQuestObject 001darkestheart 1
set MenuShown to 3
elseif button == 2
vampgirl.SetActorValue Health 25
vampgirl.resurrect 1
Player.RemoveItem 001darkestheart 1
vampgirl.AddItem 001darkestheart 1
SetQuestObject 001darkestheart 1
set ForceResurrection to 1
set MenuShown to 3
SetStage A1dasschwarzeherz 30
elseif button == 3
set MenuShown to 3
SetStage A1dasschwarzeherz 40
else
MessageBox "Dieser Text sollte nicht zu sehen sein."
endif
elseif ForceResurrection == 1
if Timer < 3
if DoOnce == 0
set DoOnce to GetSecondsPassed + 1
endif
set Timer to Timer + GetSecondsPassed
else
set ForceResurrection to 2
vampgirl.StartConversation Player, vampiregirl
endif
endif
End
die anderen scripts hab ich gelassen.
einzig, was shit ist: das opfer liegt auf einem bett, wenn das aufsteht, dann stehts immer noch aufm bett.
und die dankesrede kommt nur wenn man auf gleicher höhe direkt vor dem NPC steht
Geändert von Low Post (31.12.2007 um 13:25 Uhr)
Grund: Script in Code-Tags gesetzt