Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : dungeon-mod - vampirherz



Lord Vladec
30.10.2007, 20:19
n'abend alle,

ich hab mir mal ein dungeon gemoddet in dem ein wahnsinniger vampirlord sein unwesen treibt... nun wollt ich ein item machen (n herz), wenn man dieses erhält oll man entscheiden können ob man das herz aussaugt und so zum vampir wird, oder ob man einem opfer des lords das leben zurück schenkt indem man es mit dem blut des herzes füttert.

das ganze soll so ausshen:
lord stirbt, man nimmt herz ins inventar--> questlog kommt in dem steht dass man herz hat und sich nun entscheiden muss: selbst nehmen, opfer geben, nichts damit tun

dann soll ein fenster aufgehen in dem man anwählen kann was man tun will

wenn man auf selbst nehmen klickt wird man sofort 25er Vampir, nach 24 stunden zu einem 50er usw., wie beim normalen vampir. (das herz soll dann als questitem gelten kann nimmer mehr abgelegt werden)

wenn man auf opfer geben klickt soll das opfer wiederbelebt werden (es ist da tot) und man führt einen dialog mit dem opfer. es dankt etc. (das herz verschwindet, geht zum opfer ins inventar und wird questitem)

wenn man auf nichtstun klickt geschieht erstaunlicherweise nix (herz bleibt im inventar, kann abgelegt und verkauft weredn, bring aber nichts (wie zB stoff))



ich scheitere leider schon am anfang, dass das questlog aufgeht wenn man den gegenstand bekommt kann ich machen, aber dann weiss ich net mehr weiter wies gehen sollte...

Low Post
30.10.2007, 22:17
Dass der Questlog kommt würde ich so machen indem ich in das Skript des Items einen OnAdd Block einfüge, der die Quest auf die nächste Stufe bringt:

scn HeartScript

Begin OnAdd
if GetStage [Quest-ID] < x
SetStage [Quest-ID] x
endif
End


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

Kann sein, dass es noch an ein paar Stellen hackt (z.B. der MessageBox --> evtl. in den Questskript-Gamemode-Block verschieben/ der Vampierverwandlung --> in den Originalskripts nachschauen), allerdings sollte das im großen und ganzen so funktioneren.

Dafür will ich jetzt aber auch in die Credits.

Lord Vladec
31.10.2007, 12:23
oke, vielen dank :) ich versuchs grad mal...

du kommst nun natürlich in die credits, versprochen :)

Lord Vladec
31.10.2007, 12:52
hmm... ist grad ein problem aufgetaucht: wenn ich das Resultskript eintragen will un dann Quest-ID durch die ID (bei mir '001DasSchwarzeHerz') ersetzte kommt die fehlermeldung: "unknow variable '001DasSchwarzeHerz'."

skript sieht so aus:

set 001DasSchwarzeHerz .MenuShown to 1
MessageBox "Was wollt ihr mit dem Herz tun?" "Selbst nehmen" usw, gleiches wie im beispiel


dann gibt ernoch n fehler aus beim questscript...
kommt:
Syntax error. unknow command 'Menushown'.

beim script für das opfer kommt:
script command "ressurect" not found.

GlasMond
31.10.2007, 15:33
beim script für das opfer kommt:
script command "ressurect" not found.

Sorry Scripte sind gar nicht mein Ding, aber hier liegt anscheinend nur ein Schreibfehler vor. ;)

resurrect

Lord Vladec
31.10.2007, 16:04
daren wird liegen^^ hab eben einfach alles rüberkopiert... danke ;)

die anderen probleme bestehen aber immer noch

kenet_korva
31.10.2007, 16:21
Wenn das genau so im Script steht wird es an dem Abstand zwischen
set 001DasSchwarzeHerz .MenuShown to 1 liegen . Das muss

set 001DasSchwarzeHerz.MenuShown to 1 heißen.

Lord Vladec
31.10.2007, 18:26
hmm... hab ich nun geändert, nun kommt der gleiche fehler, aber mit unknow variable '001DasSchwarzeHerz.MenuShown'

... ich habe das doch richtig verstanden, da wo 001dasschwarzeherz steht muss die editorID (vom quest in dem auch das result-skript steht) die beim Quest-Fenster steht reinkommen?!


edit: habe das mitm resurrect geändert, kommt aber immer noch der fehler:

unknow variable or function 'forceresurrection'.

Low Post
31.10.2007, 23:27
Sorry Scripte sind gar nicht mein Ding, aber hier liegt anscheinend nur ein Schreibfehler vor. ;)

resurrect
Ich hasse es, den Fehler mach ich jedesmal...


Die beiden anderen Fehler liegen an Schreibfehlern (bei ForceResurrection), bzw. dem Vergessen die Variable Menushown zu definieren.
Warte kurz, ich korrigiere meinen Post.


Edit:
Fertig, sollte jetzt eigentlich keine Fehlermeldungen produzieren.

Lord Vladec
01.11.2007, 15:01
oke, heute abend versuchs ich nochmal... ich mach dann edit und schriebs obs geklappt hat :)

@Low Post
Ich habe dich nun in der Credits aufgeführt :)

Ausschnitt aus Credits:

-Scripts: Low Post

Ausschnitt aus PI beschreibung:

...
Die Mithilfe von Low Post ermöglichte erst einige Inhalte, vielen Dank für die Mitarbeit.


..hoffe so ists gut für dich, ansonsten einfach melden



edit:

ALLLSOOOO:

alle scripts konnt ich ohne fehler anspeichern, nur das letzte für das opfer nicht, da kommt folgende fehlermeldung:

(genauer wortlaut)
script 'opferscript', line 25:
mismatched if/else/endif block starting on line 25

wenn ich dann auf "ja" klicke (was ich ja muss, sonst stürzt ja des CS ab...)

kommt dies efehlermeldung noch im nachinein:

(genauer wortlaut)
script 'Opferscript', line 25:
mismatched if/then/else block.

... ich such mal nach einer lösung, aber ich kann höchstenms mit brute-force vorgehen, im scripten bin ich net wirklich gut... hab bisher nur kopiert und geändert, nie selbst geschrieben...

danke für eure hilfe

Low Post
03.11.2007, 13:51
Tschuldigung das es so lange gedauert hat, aber sowohl mein PC, als auch I-Net gingen nicht.


Fehlermeldung kommt daher, dass ich (wiedereinmal) ein endif vergessen habe.
Ist korrigiert.

PS: ich hab mal deinen SPAM-Post gelöscht.

Lord Vladec
05.11.2007, 10:17
oke, habs versucht... aber es kommt immer noch die genau gleiche fehlermeldung... auch auf line 25... biste sicher obs du oben schon korrigiert hast?

GlasMond
05.11.2007, 14:56
Suche dir doch einfach mal Zeile 25 heraus und schreibe für diesen Block noch ein endif ans Ende. Das könnte das Problem schon lösen. :rolleyes:

Low Post
05.11.2007, 15:02
oke, habs versucht... aber es kommt immer noch die genau gleiche fehlermeldung... auch auf line 25... biste sicher obs du oben schon korrigiert hast?

Waaaaaaaaaaaaaaaaaaaaaaaaaaaaah, noch ein zweites endif (genau danach) vergessen.
Korrigiert.

Wenn die Fehlermeldung jetzt wieder kommt...

Lord Vladec
06.11.2007, 16:19
...unknow variable '001DasSchwarzeHerz.ForceConversation'

ich hab mal testmässig diese variable festgelegt (also mit short .....), ich weiss aba net ob ichs am richtigen ort gemacht habe, ich sag ja, nur testmässig...
aslo, bitte noch sagen in welchem script die variable rein muss oder oben grad ändern, dankö :)

dann brachte er aber immer noch:

script opferscript Line 44
missing parameter count
compiled script not saved!

Low Post
06.11.2007, 20:44
...unknow variable '001DasSchwarzeHerz.ForceConversation'

ich hab mal testmässig diese variable festgelegt (also mit short .....), ich weiss aba net ob ichs am richtigen ort gemacht habe, ich sag ja, nur testmässig...
aslo, bitte noch sagen in welchem script die variable rein muss oder oben grad ändern, dankö :)

Die Variable muss nicht deklariert werden, ich hab nur versehentlich die falsche genommen. Richtige: [Quest-ID].ForceResurrection


dann brachte er aber immer noch:

script opferscript Line 44
missing parameter count
compiled script not saved!

Bei AddItem und RemoveItem die 1 vergessen.


Wie immer: oben korrigiert.
Das einzige was ich verändert habe war das Opferscript, die anderen bleiben gleich.

Lord Vladec
07.11.2007, 19:09
oke...

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?

Low Post
08.11.2007, 07:49
oke...

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).

Lord Vladec
08.11.2007, 15:00
nur 1 opfer...

sorry wenn ich mich da schlecht ausgedrückt habe...

edit: habs mitm questscript nochma ausprobiert:

warning:

line11
script command "elsif" not found

Low Post
08.11.2007, 17:07
nur 1 opfer...

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. ^^

Lord Vladec
08.11.2007, 19:15
vielen dank, werds morgen gleich ausprobieren :)

also, den platz in der credits haste dir jetzt gaaannnnzzzz sicher verdient^^ hast nun ja beinahe mehr gemacht als ich an der mod ;)

Low Post
08.11.2007, 21:57
vielen dank, werds morgen gleich ausprobieren :)

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. ^^

Lord Vladec
09.11.2007, 21:59
also, test hat folgendes ergeben:

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?)

Low Post
10.11.2007, 02:40
also, test hat folgendes ergeben:

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).


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:

scn HeartScript

Begin OnAdd
if GetStage [Quest-ID] < x
SetStage [Quest-ID] x
endif
End


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

Lord Vladec
15.11.2007, 17:39
so, melde mich ma wieder...

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...

Low Post
15.11.2007, 20:30
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.

Lord Vladec
16.11.2007, 16:02
ok, sorry, habe mich wohl zu ungenau ausgedrückt (schon wieder)...

ich dachte eigentlich schon dass des opfer aufsteht nachdem man die antwort in der box angeklickt hat...

ich versuchs mal mit den neuen scripts, antwort folgt

Lord Vladec
18.11.2007, 12:15
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)

Low Post
18.11.2007, 12:43
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.

Lord Vladec
18.11.2007, 17:02
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...

Low Post
18.11.2007, 21:05
Thema wiederbeleben:
Bei den alten Skripts hab ich das auch nicht anders gelöst(gleiche Befehle), ich hab nur eine essentielle Zeile vergessen, wodurch das Skript nie zum Punkt der Wiederbelebung kommt. Moment, ich editiere gleich.


Vampier:
Das du dich nicht weiterentwickelst müsste am Vampierskript selber liegen, da greifen meine Skripte nicht ein. Hast du denn ein anderes PI laufen, dass da etwas verändern könnte?


Edit:
Hab die fehlende Zeile jetzt hinzugefügt (set MenuShown to 3), probier's jetzt mal.

Lord Vladec
19.11.2007, 16:28
@vampir: ich hab PI, aber keins am laufen... poste doch mal deinen vampirscript... der sollte ja noch korekt sein, oder? ich vergleiche dann ma

neuer script probier ich noch aus, ich mach denne edit

edit: so ging ne zeitlang.. aber nu konnt ichs testen: das selbe... passiert nix...

naja, dann nehme ich eben das script mit wiederbeleben mit aktivierung, des geht auch, bzw., welche zeile muss ich einfügen um die queststage zu erhöhen? zB dass nach auswahl der 2. antwort (opfer) des neue questlog kommt und dann nach aktivierung (wiederbelebung) nochma eine queststage erhöt wird?

des mitm vampit is durchaus... merkwürdig...

Low Post
26.11.2007, 18:18
Vampier:
wie gesagt, ich hab keine Ahnung was da nicht funktioniert.


Wiederbeleben:
Anstelle des direkten wiederbelebens könnte man auch einen von Anfang an lebenden NPC dorthinbewegen, töten, den toten entfernen und den neuen wiederbeleben (damit er aufsteht). Müsste man aber auch noch testen.
Wenn du willst kann ich mal versuchen die Skripte dementsprechend anzupassen.

Falls du aber bei der Aktivierung bleiben willst, der Befehl lautet SetStage [Quest-ID] x.
Stand doch schon im Herzscript drin.

PS: nach so einer langen Zeit kannst du bedenklos einen Doppelpost machen ;)

Lord Vladec
27.11.2007, 14:30
das mitm aktivieren is schon OK... naja, aber des mitm vampir... ich habs auchnochma kontrolliert... sollt alles funzen!? naja, wenn DAS nicht geht... des is eigentlich einer der wichtigstens inhalten... unteranderem...

vielleicht hasste ja net gesehen, aber könntest du mal DEIN vampirescript (haste ja net geändert?!) posten, dann kann ich schauen, vielleicht fehlt bei meinem ja

Low Post
27.11.2007, 15:49
Mein Vampierscript? Da:

Scriptname VampireScript


short hasdisease
short currentday
short daycount
short vampday
short vampupdate
short randomdream
short doonce

float vamphour
float fQuestDelayTime

begin gamemode

if ( doonce == 0 )
set randomdream to -1
set fQuestDelayTime to 0.5
set doonce to 1
endif

if ( PCVampire == -1 )
return
endif


;SCRIPTING FOR ACQUIRING VAMPIRISM
;---------------------------------------------------------------------------------------------------------------------

If ( hasdisease == 0 )
if ( Player.IsSpellTarget VampDisease == 1 )
set hasdisease to 1
endif
endif

;If player has been cured of disease, reset 'hasdisease' var

if ( hasdisease == 1 )
if ( Player.IsSpellTarget VampDisease == 0 )
set hasdisease to 0
endif
endif

if ( hasdisease == 1 )
if ( currentday == 0 )
set currentday to GameDay
else
if currentday != gameday
set daycount to ( daycount + 1 )
set currentday to GameDay
endif
endif
endif
;If hasdisease still == 1, this is the first time the player has been in this state
;give him introductory messagebox (TEMP) and reset hasdisease var

if ( PCVampire == 1 )
if ( hasdisease == 1 )
if ( GetPCIsSex Male == 1 )
Messagebox "Ihr träumt von jemandem, der friedlich in seinem Bett schläft, als ein hagerer Schatten lautlos ins Zimmer gleitet. Er nähert sich dem Bett, beugt sich über den Schlafenden und versenkt seine Reißzähne in dessen Hals. Nach einer Weile erhebt sich die blasse Figur, das Kinn tropfend von Blut. Als die Farbe in das Gesicht des Vampirs zurückkehrt und seine Züge sich wieder herausbilden, erkennt Ihr Euer eigenes Gesicht. Schreiend wacht Ihr auf."
else
Messagebox "Ihr träumt von jemandem, der friedlich in seinem Bett schläft, als ein hagerer Schatten lautlos ins Zimmer gleitet. Er nähert sich dem Bett, beugt sich über den Schlafenden und versenkt seine Reißzähne in dessen Hals. Nach einer Weile erhebt sich die blasse Figur, das Kinn tropfend von Blut. Als die Farbe in das Gesicht des Vampirs zurückkehrt und seine Züge sich wieder herausbilden, erkennt Ihr Euer eigenes Gesicht. Schreiend wacht Ihr auf."
endif
set hasdisease to -1
player.addspell Vampirism25
Player.addspell Vampirism25Att
Player.addspell Vampirism25Skills
Player.addspell VampireHuntersSight
player.removespell VampDisease
player.setfactionrank playervampirefaction 0
addtopic CureforVampirism
StartQuest MS40
set vampday to GameDay
set vamphour to GameHour
endif
endif

;SCRIPTING FOR STATE CHANGES AS A VAMPIRE
;--------------------------------------------------------------------------------------------------------------------

;First things first. If player has fed, reset Vampirism level to 25 and start the counters over again

If ( PCVampire >= 1 )
if ( Player.HasVampireFed == 1 )
Set PCVampire to 1

;remove any spell from higher states

Player.removespell Vampirism50
Player.removespell Vampirism50Att
Player.removespell Vampirism50Skills
Player.removespell VampireSeduction
Player.removespell Vampirism75
Player.removespell Vampirism75Att
Player.removespell Vampirism75Skills
Player.removespell VampireReignofTerror
Player.removespell Vampirism100
Player.removespell Vampirism100Att
Player.removespell Vampirism100Skills
Player.removespell VampireEmbraceofShadows

;re-add state 1 spells

Player.addspell Vampirism25
Player.addspell Vampirism25Att
Player.addspell Vampirism25Skills
set vampday to GameDay
set vamphour to GameHour
MessageBox "Euer Hunger auf Blut ist gestillt... für den Augenblick."
endif
endif

;Run a timer, checking for 24 hour intervals. If 24 hours have passed, increment vampupdate and reset hour/day vars

if ( PCVampire >= 1 )
if ( vampday != GameDay )
if ( ( vamphour + 1 ) < GameHour )
set vampupdate to 1
set vampday to GameDay
set vamphour to GameHour
elseif ( vamphour >= 22 )
if ( vampday + 1 < Gameday )
set vampupdate to 1
set vampday to Gameday
set vamphour to GameHour
endif
endif
endif
endif



;When VampireState doesn't match Vampirism Effect, update effects

if ( PCVampire == 2 )
if ( Player.getav vampirism == 25 )
Player.removespell Vampirism25
Player.removespell Vampirism25Att
Player.removespell Vampirism25Skills
Player.addspell Vampirism50
Player.addspell Vampirism50Att
Player.addspell Vampirism50Skills
Player.addspell VampireSeduction
set randomdream to GetRandomPercent
endif
elseif ( PCVampire == 3 )
if ( Player.getav vampirism == 50 )
Player.removespell Vampirism50
Player.removespell Vampirism50Att
Player.removespell Vampirism50Skills
Player.addspell Vampirism75
Player.addspell Vampirism75Att
Player.addspell Vampirism75Skills
Player.addspell VampireReignofTerror
set randomdream to GetRandomPercent
endif
elseif ( PCVampire == 4 )
if ( Player.getav Vampirism == 75 )
Player.removespell Vampirism75
Player.removespell Vampirism75Att
Player.removespell Vampirism75Skills
Player.Addspell Vampirism100
Player.addspell Vampirism100Att
Player.addspell Vampirism100Skills
Player.addspell VampireEmbraceofShadows
set randomdream to GetRandomPercent
endif
endif


;Pick dream text based on randomdream var

if ( randomdream >= 0 )
if ( randomdream <= 9 )
MessageBox "Ihr träumt von langen Tagen, an denen Ihr im Sonnenlicht Eures Heimatlandes badet. Ihr fühlt die Wärme und die Hitze und spürt, wie Euer Körper erfrischt wird. Dann wacht Ihr auf und erkennt, es war nur ein Traum."
set randomdream to -1
elseif ( randomdream <= 19 )
MessageBox "In Eurem Traum seht Ihr eine schöne junge Frau, die ein Kind an ihre Brust drückt. Erst als Ihr näherkommt, wird Euch klar, dass die Frau eine verdorrte Leiche ist und dass das Kind violett und aufgedunsen ist und an der Pest stirbt. Als Mutter und Kind zu Staub zerfallen, wacht Ihr auf. "
set randomdream to -1
elseif ( randomdream <= 29 )
MessageBox "In Eurem Traum behandelt eine alte Hexe die Verbrennungen an Euren Händen. Als sie eine Salbe auf Eure Haut aufträgt, fühlt Ihr das Prickeln der Magie, als der Schmerz nachzulassen beginnt. Doch während Ihr zuschaut, beginnt das Fleisch Eurer Hände Blasen zu werfen, rissig zu werden und aufzureißen und in Fetzen auf den Boden ihrer Hütte zu fallen. Mit dem Lächeln der Hexe vor Augen wacht Ihr auf."
set randomdream to -1
elseif ( randomdream <= 39 )
MessageBox "In einem Traum über Eure Kindheit erinnert Ihr Euch an Versteckspiele, mit denen Ihr und Eure Freunde Euch an einem warmen Sommernachmittag die Zeit vertriebt. Ihr versteckt Euch in der elterlichen Scheune in der sicheren Annahme, dort nicht gefunden zu werden. Bald schon wird der süße Heugeruch von einem düsteren, ekligen Hauch überdeckt."
set randomdream to -1
elseif ( randomdream <= 49 )
MessageBox "Ihr träumt von einem üppigen Bankett, das vor Euch ausgebreitet ist. Ihr tut Euch gütlich an einer besonders feinen Portion Fleisch, und der Duft lässt Euch das Wasser im Mund zusammenlaufen. Erst als Ihr in das letzte Stück schneidet, seht Ihr die Maden, die sich darin winden. Ihr hustet Blut aus, während die Maden beginnen, sich durch Euren Magen nach draußen zu fressen."
set randomdream to -1
elseif ( randomdream <= 59 )
MessageBox "Ihr liegt auf dem Rücken, und ein seliges Gefühl des Friedens erfüllt Euren Verstand. "
set randomdream to -1
elseif ( randomdream <= 69 )
MessageBox "Eine warme, sanfte Brise kitzelt Euer Antlitz, doch als Ihr versucht, über Euer Gesicht zu wischen, stellt Ihr fest, dass Ihr Eure Arme nicht bewegen könnt. Als Ihr auf Eure Haut schaut, seht Ihr, dass sie sich in kaltes, grünes Glas verwandelt hat. Ihr steht stocksteif, nehmt rasche, flache Atemzüge, da Ihr wisst, dass eine Bewegung Eure Haut in Tausende von Stücken bersten lässt. Euer Gesicht juckt noch schlimmer, und Ihr wisst, Ihr werdet niesen."
set randomdream to -1
elseif ( randomdream <= 79 )
MessageBox "In Eurem Traum öffnet Ihr Eure Augen und schaut in einen wundervollen blauen Himmel. Die Sonne scheint, doch Ihr fühlt Euch kalt, sogar ein wenig feucht. Ihr nehmt einen Atemzug, doch beginnt zu husten, als Ihr Blut und Erde aushustet, die Ihr in Eure Lunge gezogen habt. "
set randomdream to -1
elseif ( randomdream <= 89 )
MessageBox "In Eurem Traum nähert Ihr Euch einem uralten Vampir. Da Ihr soeben einen gefährlichen Auftrag für ihn ausgeführt habt, seid Ihr stolzgeschwellt und sicher, dass er Euch nun noch größere Macht verleihen wird. Die Augen des gesamten Clans ruhen auf Euch. Während Ihr zum Podium schreitet, auf dem er wartet, wird Euch klar, dass der Auftrag in Wirklichkeit noch nicht abgeschlossen ist und dass Euch all Eure Vampirkräfte verlassen haben. "
set randomdream to -1
elseif ( randomdream <= 99 )
MessageBox "In Eurem Traum wandert Ihr durch die kühle Nachtluft. Euer Körper schreit nach Blut, da Ihr seit Tagen nicht mehr gespeist habt. Schwach stolpert Ihr zu einem kleinen Teich. Als Ihr Euch hinabneigt, seht Ihr, dass in diesem Teich kein Wasser ist, sondern warmes, frisches Blut, von dem Dampf aufsteigt. Ihr senkt Euren Kopf, um zu trinken, doch könnt Euren Mund nicht öffnen."
set randomdream to -1
endif
endif




End


Begin MenuMode

;If player is resting after 3 days with disease, increment PCVampire and wake 'im up

if ( hasdisease == 1 )
if ( currentday == 0 )
set currentday to GameDay
else
if currentday != gameday
set daycount to ( daycount + 1 )
set currentday to GameDay
endif
endif
endif


if ( hasdisease == 1 )
if ( daycount >= 3 )
if ( IsPCSleeping == 1 )
WakeUpPC
set PCVampire to 1
endif
endif
endif

;If player is ready for state change, check for time passing and increment PCVampire

if ( PCVampire >= 1 )
if ( PCVampire < 4 )
if ( vampupdate == 1 )
if ( IsTimePassing == 1 )
set PCVampire to ( PCVampire + 1 )
set vampupdate to 0
set vampday to GameDay
set vamphour to GameHour
endif
endif
endif
endif

End


Allerdings hatt ich beim Test afaik auch Better Vampieres aktiv, dass auch Reverse Vampires beinhaltet. Das verändert das Skript wie folgt:


Scriptname VampireScript


short hasdisease
short currentday
short daycount
short vampday
short vampupdate
short randomdream
short doonce

float vamphour
float fQuestDelayTime

begin gamemode

if ( doonce == 0 )
set randomdream to -1
set fQuestDelayTime to 0.5
set doonce to 1
endif

if ( PCVampire == -1 )
return
endif


;SCRIPTING FOR ACQUIRING VAMPIRISM
;---------------------------------------------------------------------------------------------------------------------

If ( hasdisease == 0 )
if ( Player.IsSpellTarget VampDisease == 1 )
set hasdisease to 1
endif
endif

;If player has been cured of disease, reset 'hasdisease' var

if ( hasdisease == 1 )
if ( Player.IsSpellTarget VampDisease == 0 )
set hasdisease to 0
endif
endif

if ( hasdisease == 1 )
if ( currentday == 0 )
set currentday to GameDay
else
if currentday != gameday
set daycount to ( daycount + 1 )
set currentday to GameDay
endif
endif
endif
;If hasdisease still == 1, this is the first time the player has been in this state
;give him introductory messagebox (TEMP) and reset hasdisease var

if ( PCVampire == 1 )
if ( hasdisease == 1 )
if ( GetPCIsSex Male == 1 )
Messagebox "Ihr träumt von jemandem, der friedlich in seinem Bett schläft, als ein hagerer Schatten lautlos ins Zimmer gleitet. Er nähert sich dem Bett, beugt sich über den Schlafenden und versenkt seine Reißzähne in dessen Hals. Nach einer Weile erhebt sich die blasse Figur, das Kinn tropfend von Blut. Als die Farbe in das Gesicht des Vampirs zurückkehrt und seine Züge sich wieder herausbilden, erkennt Ihr Euer eigenes Gesicht. Schreiend wacht Ihr auf."
else
Messagebox "Ihr träumt von jemandem, der friedlich in seinem Bett schläft, als ein hagerer Schatten lautlos ins Zimmer gleitet. Sie nähert sich dem Bett, beugt sich über den Schlafenden und versenkt ihre Reißzähne in dessen Hals. Nach einer Weile erhebt sich die blasse Figur, das Kinn tropfend von Blut. Als die Farbe in das Gesicht des Vampirs zurückkehrt und ihre Züge sich wieder herausbilden, erkennt Ihr Euer eigenes Gesicht. Schreiend wacht Ihr auf."
endif
set hasdisease to -1
player.addspell Vampirism25
Player.addspell Vampirism25Att
Player.addspell Vampirism25Skills
Player.addspell VampireHuntersSight
Player.addspell VampireSeduction
Player.addspell VampireReignofTerror
Player.addspell VampireEmbraceofShadows
Player.addspell Daywalk
Player.addspell SleepyVoices
player.removespell VampDisease
player.setfactionrank playervampirefaction 0
addtopic CureforVampirism
StartQuest MS40
set vampday to GameDay
set vamphour to GameHour
endif
endif

;SCRIPTING FOR STATE CHANGES AS A VAMPIRE
;--------------------------------------------------------------------------------------------------------------------

;First things first. If player has fed, reset Vampirism level to 25 and start the counters over again

If ( PCVampire >= 1 )
if ( Player.HasVampireFed == 1 )
Set PCVampire to 1

;remove any spell from higher states
Player.removespell Vampirism50
Player.removespell Vampirism50Att
Player.removespell Vampirism50Skills
Player.removespell Vampirism75
Player.removespell Vampirism75Att
Player.removespell Vampirism75Skills
Player.removespell Vampirism100
Player.removespell Vampirism100Att
Player.removespell Vampirism100Skills
Player.removespell vBloodrage
Player.removespell Bloodrage
player.removespell daywalk
Player.removespell vDaywalk
player.removespell vWeakness
Player.removespell VampireHuntersSight
Player.removespell VampireSeduction
Player.removespell VampireReignofTerror
Player.removespell VampireEmbraceofShadows
Player.removespell SleepyVoices
;re-add state 1 spells

Player.addspell Vampirism25
Player.addspell Vampirism25Att
Player.addspell Vampirism25Skills
Player.addspell VampireHuntersSight
Player.addspell VampireSeduction
Player.addspell VampireReignofTerror
Player.addspell VampireEmbraceofShadows
player.addspell SleepyVoices
Player.addspell Daywalk
set vampday to GameDay
set vamphour to GameHour
MessageBox "Euer Hunger auf Blut ist gestillt... für den Augenblick."
endif
endif

;Run a timer, checking for 24 hour intervals. If 24 hours have passed, increment vampupdate and reset hour/day vars

if ( PCVampire >= 1 )
if ( vampday != GameDay )
if ( ( vamphour + 1 ) < GameHour )
set vampupdate to 1
set vampday to GameDay
set vamphour to GameHour
elseif ( vamphour >= 24 )
if ( vampday + 1 < Gameday )
set vampupdate to 1
set vampday to Gameday
set vamphour to GameHour
endif
endif
endif
endif



;When VampireState doesn't match Vampirism Effect, update effects

if ( PCVampire == 2 )
if ( Player.getav vampirism == 25 )
Player.removespell Vampirism25
Player.removespell Vampirism25Att
Player.removespell Vampirism25Skills
Player.removespell vDaywalk
Player.removespell VampireReignofTerror
Player.removespell Daywalk
Player.addspell Vampirism50
Player.addspell Vampirism50Att
Player.addspell Vampirism50Skills
set randomdream to GetRandomPercent
endif
elseif ( PCVampire == 3 )
if ( Player.getav vampirism == 50 )
Player.removespell Vampirism50
Player.removespell Vampirism50Att
Player.removespell Vampirism50Skills
Player.removespell VampireEmbraceofShadows
player.removespell sleepyvoices
Player.addspell Vampirism75
Player.addspell Vampirism75Att
Player.addspell Vampirism75Skills
set randomdream to GetRandomPercent
endif
elseif ( PCVampire == 4 )
if ( Player.getav Vampirism == 75 )
Player.removespell Vampirism75
Player.removespell Vampirism75Att
Player.removespell Vampirism75Skills
Player.removespell VampireSeduction
Player.addSpell Bloodrage
Player.Addspell Vampirism100
Player.addspell Vampirism100Att
Player.addspell Vampirism100Skills
set randomdream to GetRandomPercent
endif
endif


;Pick dream text based on randomdream var

if ( randomdream >= 0 )
if ( randomdream <= 9 )
MessageBox "Ihr träumt von langen Tagen, an denen Ihr im Sonnenlicht Eures Heimatlandes badet. Ihr fühlt die Wärme und die Hitze und spürt, wie Euer Körper erfrischt wird. Dann wacht Ihr auf und erkennt, es war nur ein Traum."
set randomdream to -1
elseif ( randomdream <= 19 )
MessageBox "In Eurem Traum seht Ihr eine schöne junge Frau, die ein Kind an ihre Brust drückt. Erst als Ihr näherkommt, wird Euch klar, dass die Frau eine verdorrte Leiche ist und dass das Kind violett und aufgedunsen ist und an der Pest stirbt. Als Mutter und Kind zu Staub zerfallen, wacht Ihr auf. "
set randomdream to -1
elseif ( randomdream <= 29 )
MessageBox "In Eurem Traum behandelt eine alte Hexe die Verbrennungen an Euren Händen. Als sie eine Salbe auf Eure Haut aufträgt, fühlt Ihr das Prickeln der Magie, als der Schmerz nachzulassen beginnt. Doch während Ihr zuschaut, beginnt das Fleisch Eurer Hände Blasen zu werfen, rissig zu werden und aufzureißen und in Fetzen auf den Boden ihrer Hütte zu fallen. Mit dem Lächeln der Hexe vor Augen wacht Ihr auf."
set randomdream to -1
elseif ( randomdream <= 39 )
MessageBox "In einem Traum über Eure Kindheit erinnert Ihr Euch an Versteckspiele, mit denen Ihr und Eure Freunde Euch an einem warmen Sommernachmittag die Zeit vertriebt. Ihr versteckt Euch in der elterlichen Scheune in der sicheren Annahme, dort nicht gefunden zu werden. Bald schon wird der süße Heugeruch von einem düsteren, ekligen Hauch überdeckt."
set randomdream to -1
elseif ( randomdream <= 49 )
MessageBox "Ihr träumt von einem üppigen Bankett, das vor Euch ausgebreitet ist. Ihr tut Euch gütlich an einer besonders feinen Portion Fleisch, und der Duft lässt Euch das Wasser im Mund zusammenlaufen. Erst als Ihr in das letzte Stück schneidet, seht Ihr die Maden, die sich darin winden. Ihr hustet Blut aus, während die Maden beginnen, sich durch Euren Magen nach draußen zu fressen."
set randomdream to -1
elseif ( randomdream <= 59 )
MessageBox "Ihr liegt auf dem Rücken, und ein seliges Gefühl des Friedens erfüllt Euren Verstand. "
set randomdream to -1
elseif ( randomdream <= 69 )
MessageBox "Eine warme, sanfte Brise kitzelt Euer Antlitz, doch als Ihr versucht, über Euer Gesicht zu wischen, stellt Ihr fest, dass Ihr Eure Arme nicht bewegen könnt. Als Ihr auf Eure Haut schaut, seht Ihr, dass sie sich in kaltes, grünes Glas verwandelt hat. Ihr steht stocksteif, nehmt rasche, flache Atemzüge, da Ihr wisst, dass eine Bewegung Eure Haut in Tausende von Stücken bersten lässt. Euer Gesicht juckt noch schlimmer, und Ihr wisst, Ihr werdet niesen."
set randomdream to -1
elseif ( randomdream <= 79 )
MessageBox "In Eurem Traum öffnet Ihr Eure Augen und schaut in einen wundervollen blauen Himmel. Die Sonne scheint, doch Ihr fühlt Euch kalt, sogar ein wenig feucht. Ihr nehmt einen Atemzug, doch beginnt zu husten, als Ihr Blut und Erde aushustet, die Ihr in Eure Lunge gezogen habt. "
set randomdream to -1
elseif ( randomdream <= 89 )
MessageBox "In Eurem Traum nähert Ihr Euch einem uralten Vampir. Da Ihr soeben einen gefährlichen Auftrag für ihn ausgeführt habt, seid Ihr stolzgeschwellt und sicher, dass er Euch nun noch größere Macht verleihen wird. Die Augen des gesamten Clans ruhen auf Euch. Während Ihr zum Podium schreitet, auf dem er wartet, wird Euch klar, dass der Auftrag in Wirklichkeit noch nicht abgeschlossen ist und dass Euch all Eure Vampirkräfte verlassen haben. "
set randomdream to -1
elseif ( randomdream <= 99 )
MessageBox "In Eurem Traum wandert Ihr durch die kühle Nachtluft. Euer Körper schreit nach Blut, da Ihr seit Tagen nicht mehr gespeist habt. Schwach stolpert Ihr zu einem kleinen Teich. Als Ihr Euch hinabneigt, seht Ihr, dass in diesem Teich kein Wasser ist, sondern warmes, frisches Blut, von dem Dampf aufsteigt. Ihr senkt Euren Kopf, um zu trinken, doch könnt Euren Mund nicht öffnen."
set randomdream to -1
endif
endif




End


Begin MenuMode

;If player is resting after 3 days with disease, increment PCVampire and wake 'im up

if ( hasdisease == 1 )
if ( currentday == 0 )
set currentday to GameDay
else
if currentday != gameday
set daycount to ( daycount + 1 )
set currentday to GameDay
endif
endif
endif


if ( hasdisease == 1 )
if ( daycount >= 3 )
if ( IsPCSleeping == 1 )
WakeUpPC
set PCVampire to 1
endif
endif
endif

;If player is ready for state change, check for time passing and increment PCVampire

if ( PCVampire >= 1 )
if ( PCVampire < 4 )
if ( vampupdate == 1 )
if ( IsTimePassing == 1 )
set PCVampire to ( PCVampire + 1 )
set vampupdate to 0
set vampday to GameDay
set vamphour to GameHour
endif
endif
endif
endif

End

Sollte allerdings keinen Unterschied machen, da ich nur dem Skript sage die eben hinzugefügte Krankheit herrscht schon seit 3 Tagen und den Teil zum aufwecken übernehme mit dem Unterschied, dass ich nicht vorraussetzte, dass der Spieler schläft.

Lord Vladec
28.11.2007, 16:07
heute hab ich keine zeit, morgen gleiche ich die scripts ma ab... ich hab m an meinem rumgespielt, aba nix verändert... imho... naja, mal sehen

Lord Vladec
29.11.2007, 16:33
ok, hab nun verglichen... is alles korrekt... ich mach glaube nunmal die mod soweit für ne alpha ferttig, vielleicht liegts ja einfach an meinem PI-test-savegame?

Lord Vladec
16.12.2007, 18:28
hat lange keine zeit, viel zu tun wegen arbeit etc...

ich hab nun mal die scripts weggelassen, der rest müsste man mal noch "alpha"-testen, obs nirgens falsch zusammengebaut oder etwas in der luft schwebt. ausserdem müsste man noch testen obs zu leicht/schwer ist.

wer lust hat melden, ich schick das PI dann.

wenn es jemand testet darf ers einfach net online stellen da es 1. net vollständig ist/evt. bug hat
2. keine referanzdateien dabei sind (credits etc.)

wer sich melden will mit PM oder e-mail stahl.opa@vtxmail.ch

Lord Vladec
31.12.2007, 10:36
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