World of Gothic Archiv > NWN-Hilfe
Scripte führen zum absturz
Seite 1 von 1  1 
24.07.2002, 19:55 #1
Omega Darkblade
Beiträge: 257
Scripte führen zum absturz
Also ich hab ein Problem.
Ich habe gerade 2 versionen von dem anfang meines Moduls.

Die erste ist fast ogne scripts und funzt einwandfrei
Die 2te hat 3 scripte mehr und wenn ich sie teste stürzt das Spiel immer ab

also müsste ja theorethisch ein script davon falsch/kapput sein, oder?


Die Scripte

eine kleine belohnung

void main()
{
GiveXPToCreature(GetPCSpeaker(), 10);
CreateItemOnObject("nw_it_mpotion015", GetPCSpeaker(), 1);
}


Variable wird auf 1 gesetzt

void main()
{
SetLocalInt(GetPCSpeaker(), "Maligat", 1);
}


Text erscheint wenn variable auf 1

int StartingConditional()
{
if(!(GetLocalInt(GetPCSpeaker(), "Maligat") == 1))
return FALSE;
return TRUE;
}


die solten richtig sein.
24.07.2002, 20:01 #2
Equestris
Beiträge: 397

HAste das mit dem Scriptwizard gemacht?Wenn ja dann liegts bestimmt nicht an den Scripten...
24.07.2002, 20:03 #3
Omega Darkblade
Beiträge: 257

jo sind mit ausm scriptwizard.
Aber es kann eigentlich an nix anderem liegen.
24.07.2002, 20:08 #4
GuradonHellsing
Beiträge: 232

eohm das letzte sieht komisch aus müßte doch eher so aussehehen ....
void main()
{
if ()
{ // bla
return true
}
return false;
}
24.07.2002, 20:10 #5
Levi
Beiträge: 43

Naja, jedenfals sollte keins der Skripte zum Absturz führen...
Aber ich hab da auch eins:

void main()
{
object oItem = GetModuleItemAcquired();
object oPC = GetItemPossessor(oItem);
if ( (GetIsObjectValid(oItem)) && (GetIsObjectValid(oPC)) &&
(oItem == GetObjectByTag("Trick17")))
{
ActionTakeItem(oItem, oPC);
ActionGiveItem(oItem, GetObjectByTag("Regal1"));
SendMessageToPC(oPC, "Test");
}
}

Das Skript sollte dem PC das Item mit dem Tag "Trick17" wegnehmen, sobald er es aufnimmt (bitte nicht nach dem Sinn fragen).
Beide Objekte sind valid, oPC ist der gesuchte PC (Wenn ich die beiden Actions auskommentiere stürzt nix ab, und die Message kommt an), also sind alle Objekte (oPC, oItem) so wie sie sein sollten.
Ich kann auch eine der Actions auskommentieren, das Spiel stürzt trotzdem ab, also lösen beide zeilen den Absturz aus.

Ich fürchte wir sind beide opfer eines Bugs im Toolset. Hast du die dt-Version oder die us?
24.07.2002, 20:11 #6
Omega Darkblade
Beiträge: 257

hmm der scriptwizard hat das so ausgespuckt



das müsste dan so aussehen ,oder?

int StartingConditional()
{
void main()
{
if(!(GetLocalInt(GetPCSpeaker(), "Maligat") == 1))
{
return FALSE;
{
return TRUE;
}
24.07.2002, 20:14 #7
Levi
Beiträge: 43

quote:
Zitat von GuradonHellsing
eohm das letzte sieht komisch aus müßte doch eher so aussehehen ....
void main()
{
if ()
{ // bla
return true
}
return false;
}



Nö, wenn du nur eine Zeile hast, im if-Block, brauchst du die geschweiften Klammern nicht.
24.07.2002, 20:16 #8
GuradonHellsing
Beiträge: 232

ehm das if ist ne anweisung ich weis zwar nich ob das bei dieser komischen scriptsprache geht aber wenn du if() ohne block schreibst ist nicht klar wo die befehle der Anweisung aufhören und die des Hauptprogramms fortgesetzt werden .........
kann mir nich vorstellen das das gehen soll das program kann schwer 2 rückgabe werte haben ......
24.07.2002, 20:26 #9
Levi
Beiträge: 43

quote:
Zitat von GuradonHellsing
ehm das if ist ne anweisung ich weis zwar nich ob das bei dieser komischen scriptsprache geht aber wenn du if() ohne block schreibst ist nicht klar wo die befehle der Anweisung aufhören und die des Hauptprogramms fortgesetzt werden .........
kann mir nich vorstellen das das gehen soll das program kann schwer 2 rückgabe werte haben ......



Probiers doch aus.
Der Block der if-anweisung geht in dem Fall einfach bis zum nächsten ;
Das geht in Java, C++, PHP und ich müsste mich sehr wundern, wenns in "Aurora-Skript" nicht ginge.
24.07.2002, 20:34 #10
Omega Darkblade
Beiträge: 257

also hab ma weitergemacht.
Es kann nur an.

int StartingConditional()
{
if(!(GetLocalInt(GetPCSpeaker(), "Maligat") == 1))
return FALSE;
return TRUE;
}


oder

void main()
{
SetLocalInt(GetPCSpeaker(), "Maligat", 1);
}

liegen *grübel*
24.07.2002, 20:39 #11
GuradonHellsing
Beiträge: 232

mh wirds trotzdem ma probieren .....
P.S.: Levi du hast recht (grad nochma nachgeschlagen)....
zu lange her das ich c++ gemacht habe wohl ......
24.07.2002, 20:44 #12
Levi
Beiträge: 43

quote:
Zitat von GuradonHellsing
mh wirds trotzdem ma probieren .....
P.S.: Levi du hast recht (grad nochma nachgeschlagen)....
zu lange her das ich c++ gemacht habe wohl ......



Hehe, is auch ein "Feature" das ich ganz schnell wieder vergessen würde.
Das macht den Code ziemlich unübersichtlich und damit fehleranfällig.
Ich würd lieber die 2 Zeilen zusätzlich tippen...
24.07.2002, 20:49 #13
Omega Darkblade
Beiträge: 257

wär irgentjemand villeicht dazu bereit sich mein modul mal anzugucken?
hab alles bis auf eine kleine map mit 3 häusern wieder gelöscht.
24.07.2002, 20:52 #14
GuradonHellsing
Beiträge: 232

komm doch einfach mit irc in
----------------------------------------
chanal:#nwndev.ger
server:Quakenet
24.07.2002, 21:05 #15
Omega Darkblade
Beiträge: 257

Hmm war da grad

hat nich geholfen, das modul funzt immer noch net *löl*fg*
25.07.2002, 13:15 #16
Omega Darkblade
Beiträge: 257

*grml*

da hilft nur noch modul löschen und neuanfangen, oder?


[edit]
Hab NWN jetzt schon mal neuinstaliert
Hat auch nichts gebracht.


hat jemad der n bischen ahnung hat mal lust sich das anzugucken?
(is nur ein Gebiet mit 3 Häusern, 3 Gesprächen und n paar scripten (also das is von dem was ich hatte übergeblieben )
[/edit]
25.07.2002, 15:45 #17
Omega Darkblade
Beiträge: 257

ach ja, es stürzt jetzt irgentwie nur beim kämpfen ab :(
25.07.2002, 16:51 #18
GuradonHellsing
Beiträge: 232

exportier alles und mach neues modul und importier alles ......
25.07.2002, 17:06 #19
Omega Darkblade
Beiträge: 257

hab ich längst getan
25.07.2002, 18:38 #20
Omega Darkblade
Beiträge: 257

Irgentwie bin ich mir gar nicht mehr sicher das es an den scrupten liegt.

Jetzt funzt es auch ohne scripte nich mehr.
Liegt das villei9cht an der deutschen fehlerhaften version des toolsets?
25.07.2002, 19:01 #21
Gawain15
Beiträge: 1.084

Hm also jemand hatte auch schonmal gesagt das die Module die mit deutschen Toolset erstellt wurden instabiler sind als die welche mit der englischen Version erstellt wurden wobei das nur ein Gerücht ist :)

Aber eigentlich sollte es nicht am deutschen Toolset liegen... Betonung aus "sollte" :)
25.07.2002, 19:05 #22
Omega Darkblade
Beiträge: 257

grml

eigentlich "sollte" mein modul auch funzen.
Da ich nichtmal ne hack datei oder ähnliches benutze.
Seite 1 von 1  1