World of Gothic Archiv > Editing
Item nicht gefunden
Seite 1 von 1  1 
20.11.2002, 15:14 #1
Auron_X
Beiträge: 929
Item nicht gefunden
Hallo, ich bin gerade dabei meinen Gothic-Mod probe zu spielen. Mitten im Spiel zeigt er mir dann plötzlich folgendes an:

V: OBJ: Script-Object, ITMI_PLANTS_SWAMPHERB_01 not found!
Please correct instancename!

Danach kommt noch:

M:Invalid item (no name, no instance)

put into inventory. Deleting it.

Die erste Meldung kann auch statt ITMI_PLANTS_SWAMPHERB_01 den Namen des Goldes oder der Pfeile haben (ITMI_NUGGETS oder so ähnlich).

Nach der Meldung kann man normal weiterspielen.

Kann das daran liegen, dass ich eine if-Abfrage in einer Daily-Routine hab? Das ist weil ich nicht weis wie ich die wechseln soll, bei der Definition von Change_Routine steht ja, dass man sie nicht in nem Dialog einsetzen soll.

Hoffe ihr könnt mir helfen.
20.11.2002, 17:55 #2
GülleMüller
Beiträge: 472

halli,
es wäre hilfreicher, wenn du noch die Daily-routine-Funktion posten könntest.
Allerdings sollte die TA-Wexel nicht so aussehen:

FUNC VOID Rtn_start_999 ()
{
if(Npc_HasItems(self,ITFO_Potion_Health_01) >0)
{
TA_Guntherwait (0,00,13,00, "OC1");
TA_Guntherwait (13,00,0,00, "OC1");
}
else
{
TA_Stay (0,00,13,00, "OC1");
TA_Stay (13,00,0,00, "OC1");
};
};



sondern so(z.B. in einem Dialog):
Zuerst die 2 TAs:

FUNC VOID Rtn_start_999 ()
{
TA_Guntherwait (0,00,13,00, "OC1");
TA_Guntherwait (13,00,0,00, "OC1");
};

FUNC VOID Rtn_Next_999 ()
{
TA_StandAround (0,00,13,00, "OC1");
TA_StandAround (13,00,0,00, "OC1");
};


Nun aus irgendeinem Zusammenhang heraus:


...
if(Npc_HasItems(hero,ItMiNugget) >= 100)
{
Npc_ExchangeRoutine(NONE_999_Gunther,"NEXT");
};
...

In diesem Fall wird der TA von Gunther geändert, wenn der Spieler 100 Erz im Inventory hat.
Mit der Namenskonvention der Daily-Routine-Funktionen hab ich mich nicht so genau beschäftigt, aber das sollte auf jeden Fall funktionieren.

Für andere Beispiele such einfach (im originalscript) nach Npc_ExchangeRoutine.

cu
GüMü
20.11.2002, 18:06 #3
Auron_X
Beiträge: 929

Ich werds mal probieren. Aber bei der Definition steht, dass es nicht in Dialoge soll. Also Danke und
Tschüss

[edit]Kanns eigentlich sein dass nur noch GüMü mir antwortet?[/edit]
20.11.2002, 18:25 #4
GülleMüller
Beiträge: 472

Selbst im Originalscript wird es in Dias verwendet und bei mir hab ich nix gefunden, daß es dort nicht beutzt werden soll.
Also keine Sorge, wird schon schief gehn.

quote:
Kanns eigentlich sein dass nur noch GüMü mir antwortet

Glaub net, aber ich bin halt schneller :)

cu
GüMü
20.11.2002, 18:46 #5
HornOx
Beiträge: 1.458

quote:
Kanns eigentlich sein dass nur noch GüMü mir antwortet?
Ich persönlich ignoriere dich seit deiner Forumsmitteilung die mit "Hi Horni," angefangen hat. Und zwar solange bis meine Senilität siegt oder du mir irgendwie positiv auffällst :D
20.11.2002, 21:26 #6
GülleMüller
Beiträge: 472

quote:
Aber bei der Definition steht, dass es nicht in Dialoge soll.

Aso, ja da hst du recht, aber nur wenn du anstelle der extern festgelegten Funktion Npc_ExchangeRoutine() die scriptdefinierte Funktion B_ExchangeRoutine() benutzt.

Wenn du Npc_ExchangeRoutine() benutzt dürfte es zu keinen Schwierigkeiten kommen. Wenn doch sag bescheid.

cu
GüMü

[EDIT]
Verdammt, ich sollte mehr scripten. Es gab mal ne Zeit, da wußte ich zu fast allen externals die Parameter auswendig...
[/EDIT]
21.11.2002, 14:12 #7
Auron_X
Beiträge: 929
Autsch!
@HornOx: Entschuldige, ich wusste ja nicht, dass du so sensibel bist.
Also vergessen wir diese Mail doch einfach und tun so als ob nichts gewesen wär.
Sonst bin ich echt traurig


@GüMü:
Funzt alles wie's soll, aber warum findet der Dussel meine Waypoints nicht? Ich hab mal Alt+U gedrückt, sind alle da und auch vernetzt, aber wenn er hin soll steht er auf der Stelle. Bei alten Points klappt's.

P.S.: Wenigstens liest sich HornOx die Posts noch durch
21.11.2002, 15:27 #8
NicoDE
Beiträge: 1.398

Durch ein Npc_ExchangeRoutine mitten in einem Dialog können merkwürdige Effekte auftreten. Wenn ein NPC zum Beispiel im Dialog auf einer Bank sitzt, und er soll in der neuen Routine auch sitzen, nur wo anders, dann kann es sein, daß er nicht aufsteht und zum anderen Wegpunkt geht. Oder wenn der BodyState des NPCs wechselt, könnte der Dialogmodus unsauber beendet werden.
Deswegen Npc_ExchangeRoutine sicherheitshalber nur am Ende des Dialogs.

Die Meldung mit den fehlenden Instanzen sind Items mit einem Instanznamen, die zwar in die Welt gelegt wurden, zu denen es aber keine Entsprechung in den Skripten gibt. Folglich können sie nicht erzeugt werden, und werden deswegen beim Aufnehmen gelöscht.


- nico
Seite 1 von 1  1