World of Gothic Archiv
> Editing Synchronisation eines selbsterstellten Mods |
|
28.03.2002, 19:23 | #1 | ||
Matrim Beiträge: 10 |
Synchronisation eines selbsterstellten Mods
Da fällt mir doch glatt noch ne Frage ein: Wie bindet man die Sprach-Samples für eigene Dialoge ein? Kann mir da jemand weiterhelfen???? |
||
28.03.2002, 19:39 | #2 | ||
Malek Beiträge: 6.225 |
Die Samples gehören in eine VDF Datei bzw in der .MOD Datei in das Verzeichnis _workDATASOUNDSPEECH Gespeichert werden sie als Wave, vorzugsweie im Format 44800 HZ, 16 Bit, Mono. Die Namen richten sich nach dem, was du in die DIA geschrieben hast. Beispiel: AI_Output (other, self,"DIA_Ricelord_Hello_15_00"); //Du kümmerst dich um die Reisfelder, richtig? AI_Output (self, other,"DIA_Ricelord_Hello_12_01"); //Warum? Suchst du Arbeit? Also müssten die beiden Samples DIA_Ricelord_Hello_15_00.wav und DIA_Ricelord_Hello_12_01.wav heissen. Und wie immer das kompilieren der OU im Spacer nicht vergessen.... |
||
29.03.2002, 18:35 | #3 | ||
Matrim Beiträge: 10 |
Vielen Dank!!! Ich hab noch ein paar Fragen: 1. Wie erstellt man ein funktionierendes Bett im Spacer?(Eins, in dem der Spieler, aber auch NSCs schlafen können) 2. Wie kann man aus einem NSC einen Händler machen? Wie legt man fest was er verkaufen soll? (in den beim Spiel enthaltenen Charakter - und Dialogscripts habe ich keine Hinweise gefunden) |
||
29.03.2002, 20:04 | #4 | ||
GülleMüller Beiträge: 472 |
quote: Pb hats so gmacht: MOB->OBInter->OBDoor mit visual(Beispiel): BEDLOW_NC.ASC onStateFunc: SLEEPABIT //Is wichtig zum auswählen der Schlaflänge focusName: Bed VobName: Bed static: FALSE //statische Kollisionsabfrage Dyn: TRUE //dynamische Kollisionsabfrage Mit AI_UseMob([C_NPC],"BED"); sollte dann der NPC das Bett benutzen können(wenn es sich innerhalb eines Umkreises von 10m um NPC befindet!) quote: Du mußt eine C_INFO mit trade=1; versehen, dann machst du diesen Menupunkt zum Start des Handels. Guck am besten mal in die Datei DIA_Bau_900_Ricelord.d und suche nach "trade". Das Handelsmenu öffnet sich, nachdem alle Output-Units unter DIA_Ricelord_TRADE_Info() abgehandelt wurden. quote: Soweit ich weiß, handelt der NPC mit allen Sachen, die er im Inventory hat. Damit er nur bestimmte Sachen verkauft, mußt du sein Inventory nach jedem Handelsvorgang löschen und mit den Dingen bestücken, die er verkaufen soll. Das Problem ist, daß alle Händler alle Waren annehmen(die zum Verkauf bestimmt sind) und wenn da ein wichtiges dabei ist, ist es ja wech. Ich kann dir da nurnoch nen Hinweis geben: mit Npc_HasOffered([C_NPC]self,[C_NPC]other,[int] itemInstance ) kannst du abfragen, ob der Spieler dem NPC self(?) einen Gegenstand itemInstance anbietet. Hih(hope it helps) cu... |
||
30.03.2002, 10:10 | #5 | ||
HornOx Beiträge: 1.458 |
quote:Gibts einen Befehl der das macht? Ich kenn nur den der die angegebene Anzahl von einem angegebenen Item löscht, aber der bringt hier ja nix, da müßte man den für jedes c_item extra hinschreiben. Außerdem wäre das eine unendliche geldquelle: NPC zusammenschlagen, ausplündern, ansprechen und handeln auswählen ohne was zu kaufen. Und das beliebig häufig... Rüstungen bzw Items mit mainflag=ITEM_KAT_ARMOR; werden nicht zum handeln angeboten, das ist u.U. nützlich um dem Spieler bestimmte Dinge vorzuenthalten. z.b. könnte man damit wunderbar die Münze die jeder NPC der FM hat um nicht nach seinem Scripttod zu verschwinden unsichtbar verstecken oder verhindern das Items die in Tagesabläufen gebraucht/automatisch erzeugt werden vom Spieler geraubt werden. Beim Handeln funkt das genauso. |
||
01.04.2002, 18:38 | #6 | ||
Matrim Beiträge: 10 |
:D Wow, Mann. Das sind ja ne Menge Infos. Vielen, vielen Dank an alle dir mir geantwortet haben!!! Das muss ich jetzt alles erst mal ausprobieren.:D |
||
01.04.2002, 19:15 | #7 | ||
GülleMüller Beiträge: 472 |
quote: Jo hast recht! Aber das kann man auch unterbinden, indem man einfach alle Items aus dem Inventory löscht, die er nicht verkaufen soll und die anderen in Ruhe läßt. Man muß zwangsläufig RemoveInvItem(War das richtig?? Mein System hat sich verabschiedet und da muß ich ersma G1 neu installieren:( kann deshalb net nachgucken) auf jedes Item anwenden, aber das kann man ja inner Funktion machen. Außerdem kann man als Anzahl der zu löschenden Items 100000 oder so eingeben, da löscht er sogut wie alle(außer der NPC hat mehr als 100000 von der Sorte). Wenn man es genau machen will kann man den Tagesablauf des NPC unterbrechen wenn er 0 zu verkaufende Items hat und ihn zu irgendeiner Truhe/Hütte schicken, damit er wieder neues Zeugs holt. Ich hab mich nicht weiter drum gekümmert, weil es ne Sache des Storyliners ist. Will mich da net reinhängen(außerdem bin ich faul!! :)) |
||
|