[Release] BG1 NPC Projekt: Mit deutscher Teilübersetzung!

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
1. Endet die Romanze mit Xan, etwa weil der HC kein Vollelf ist, wird der Wert der Variable "X#Xaromanceactive" nicht auf 0 gesetzt (o. ä.). Es wird zwar die Variable "Xaromanceinactive" mit dem Wert 1 hinzugefügt, was die Romanze daktiviert, aber die Variable, welche den Status der aktiven Romanze steuert, bleibt unverändert. Das hat zur Folge, dass der Start anderer Romanzen blockiert wird: Corans Romanze kann anschließend zum Beispiel erst aufgenommen werden, sobald "X#Xaromanceactive" händisch auf 0 gesetzt wurde. Könnte auch andere Romanzen beeinflussen.
Das würde ich mal als guten Fund bezeichnen. Corans "Romance Match" check erfolgte in der Tat nicht, wenn Xans Veriable auf 2 stand, unabhängig davon, ob die Romanze durch die "Inactive" -Variable vielleicht bereits als beendet markiert wurde. Sollte in der nächsten Version behoben sein.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
3. Befinden Montaron und Kivan sich zur selben Zeit in der Gruppe, während man im Räuberlager Ender Sai anspricht, tötet Montaron Ender. Daraufhin löst Kivan einen Texteinwurf aus, bei dem man sich entscheiden kann (muss), ob man Kivan oder Montaron aus der Gruppe wirft. Dieser Text findet sich in der x#kiint.tra, ich vermute daher, dass die Sequenz Teil der BG1-NPC-Mod ist (?). Entlässt man daraufhin Montaron, loopt Kivan trotzdem obigen Einwurf in Endlosschleife, bis man gezwungenermaßen auch ihn endgültig entlassen muss.
Auch ein guter Fund. Da hatte wohl noch nie jemand die beiden in einer Gruppe zu diesem Zeitpunkt. Da fehlte das Schließen der Triggervariablen. Ist lokal gefixt.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Die Mod updatet zur v25!

Es gibt eine italienische Übersetzung von Coland und diverse Bugfixes.

Änderungen:
- Italian translation added by Coland.
- Corrected morning after dialogue for Ajatnis romance: should not trigger next lovetalk in addition.
- Fixed reference to Imoen's script name for EET in "x#bgreplace_bgee.d".
- Shar_teel will also notice falling of a ranger/paladin if the PC meets the same requirements for CHA/STR as for romance (both greater than 10).
- Kivan's dialogue after the Montaron-Ender incident will not loop.
- Added OUTDOOR check to Jaheira's dialogue about nature.
- Coran's romance should not be blocked if Xan's broke after being committed.
- Boomerang Dagger +2 for BG:EE is now EET version (not old BGII).
- typo correction(s).
- Added Dynamic Install Order categories to bg1npc.ini to support ALIEN's Project Infinity.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Den Dank gebe ich gleich mal zurück, @Belryll ! Deine unermüdlichen Bugreports haben viele der Bugfixes der letzten Zeit ermögicht und was Du beim Übersetzen gewisser NPC für's BG1NPC an Blut und Wasser geschwitzt hast geht auch auf keine Kuhhaut! :up:
 

Belryll

Senior Member
Registriert
05.01.2009
Beiträge
708
Danke dir für deinen herzlichen Ansporn! :)

was Du beim Übersetzen gewisser NPC für's BG1NPC an Blut und Wasser geschwitzt hast geht auch auf keine Kuhhaut!

He he. Ich versorge dich gerne auch weiterhin mit Kostproben der besten "Textjuwelen" - ich weiß ja nun, wie sehr du ausschweifende Schilderungen romantischen Getändels und Geturtels magst. :D

Btw. würde ich dir in den nächsten Tagen vorsorglich sämtliche bisher übersetzten Files zuschicken, falls das für dich ok ist. Die sind zwar noch nicht alle implementationsfähig, aber immerhin hätten wir dann ein Backup, falls eine Platte abraucht oder eine Datei beschädigt wird.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Btw. würde ich dir in den nächsten Tagen vorsorglich sämtliche bisher übersetzten Files zuschicken, falls das für dich ok ist. Die sind zwar noch nicht alle implementationsfähig, aber immerhin hätten wir dann ein Backup, falls eine Platte abraucht oder eine Datei beschädigt wird.
Ja, sehr gerne!
Ich versorge dich gerne auch weiterhin mit Kostproben der besten "Textjuwelen"
:D Oje - aber nur mit Vorwarnung :D [wir werden über den NPC, um den es geht, hier einen Mantel des höflichen Schweigens hüllen. Wir wollen ja keine Modderkollegen bashen.]
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.379
Ich habe noch was, von dem ich weiß, wie ich das bewerten soll: Ich gehe inzwischen nach dem Start gar nicht mehr zum FAI. Daher kam der Kampf gegen den Magier dort (Tarnesh?) erst, als ich Imoen schon umgeschult hatte. Da bekommt sie auch kein Zauberbuch von ihm. Also die ganzen Dialoge kommen nicht in der Situation. Ist an sich logisch, weil sie ist ja schon Magierin. Aber im Verlauf des Ganzen haben später andere NPC Banter mit ihr über das Buch etc. Ist da den meisten Autoren diese Option nicht geläufig und sie berücksichtigen das nicht oder wird bei Imoen nur die Klasse abgeprüft und keine Variable gesetzt, an er man später diesen Verlauf erkennen könnte, bzw. darauf triggern?
Ich meine es waren Valerie (ganz sicher), Isra und Brandock (da bin ich mir nicht sicher), die über das Buch mit ihr gesprochen haben und dass sie vorsichtig sein soll. Eventuell auch der HC, aber da habe ich einfach nicht so aufgepasst und vor allem ist mir einiges ja auch erst später aufgefallen... (huch, wo ist denn das Buch von Tarnesh, warum hat Imoen das nicht? Ach so, da war ja was...).
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Brandock sagt da nur was zu wenn der BG1NPC-Dialog auch gelaufen ist.
Die anderen Autoren sind vermutlich nicht auf die Idee gekommen, dass das bei einer Magier-Imoen nicht triggern könnte, und haben das als canon-Inhalt einfach angenommen.
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.379
Hatte er dann allgemein mit ihr über Magie geredet und ihre Gefahren?
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Das hier sagt Brandock zu Imoen nur, wenn sie Tarneshs Zauberbuch über BG1NPC in den Händen hielt bzw. später ihren Tome herbeizaubert. Das fragt eine Variable ab, die nur in diesem BG1NPC Dialog gesetzt wird, bzw. beim zweiten die Existenz des Tomes.
/* Imoen hat in Tarneshs Zauberbuch geschaut */
@0 = ~Whoa, Imoen, I am happy <CHARNAME> interfered.~ [c#ablank]
@1 = ~Although <PRO_HESHE> let you have the spellbook... I'd like to have a look at that again at some point too, please?~
@2 = ~What? Ya don't think I could do magic?~
@3 = ~Oh, on the contrary. I am convinced you could do a *lot* of magic, given the right tools and dedication. I am just not sure I would like to, er, experience it.~
@4 = ~I will do great magic! I will prove it. I just need another look into that spell book...~
@5 = ~Imoen, I do not mean to sound forward, but you just left one of the greatest repositories in these lands concerning the study of magic. You know, if no one in Candlekeep could teach you, I am not sure it's such a good idea to start now. Or, maybe, no one *would* teach you? Oh-uh, I shouldn't have said that. NO! Not on the head!~
@6 = ~Brandock, if you are so afraid of my magic, how about ya teach me, hm?~ [c#ablank]
@7 = ~Even if I wanted to, Imoen - I am not sure I *could* teach you. Ouch! What was that?! I was referring to my teaching skills, not your learning skills! For the latter, I have the highest of expectations... Stop giggling.~

/* Imoen hat ihren Tome gezaubert */
@8 = ~Wow, Imoen, now that's impressive!~ [c#ablank]
@9 = ~Isn't it? I did this. Ya didn't think I could do it!~
@10 = ~As I said, on the contrary... What does it do?~
@11 = ~I don't *know*... Isn't it great?!~
@12 = ~Just one minor nitpick... Imoen, would you, in future, would you *please* not do things like that on Amnish soil? We are in Amn, currently, you know? Please don't do magic in Amn. Especially not unpredictable magic.~
@13 = ~Just one minor nitpick... Imoen, would you, in future, would you *please* take care you won't do something like that on Amnish soil? Our current travels might bring south of Nashkel, which is already Amn. Please don't do magic in Amn. Especially not unpredictable magic.~
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.379
Mal eine Frage zum allgemeinen Vorgehen bei dem Projekt: wahrscheinlich haben unterschiedliche Autoren die einzelnen NPC geschrieben, vermute ich mal. Hat da jemand dann auf Kompatibilität zwischen den einzelnen NPCs geachtet? Ich habe gerade so den Verdacht, dass Alora einen Dialog von Montaron gekillt haben könnte. Ich finde nämlich keinen Trigger für ein Gespräch zwischen Montaron und Alvanhendar (bcs und dlgs überprüft). Wobei es eigentlich so aussieht, als hätte da jemand einfach den StartDialogue vergessen...

IF
AreaCheck("BG4003")
Global("X#MontaronWinery","GLOBAL",0)
See("alvahe") // Alvanhendar
InParty(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
InMyArea(Player1)
!StateCheck(Player1,CD_STATE_NOTVALID)
CombatCounter(0)
!See([ENEMY])
THEN
RESPONSE #100
SetGlobal("X#MontaronWinery","GLOBAL",1)
END

Die Global wird später noch für einen Dialog mit Player1 benutzt, aber nicht für mehr. Und Alvanhendar zu prüfen macht ja auch nur Sinn, wenn er mit ihr sprechen will. Das Banter ist bei beiden dlgs drin.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Die Global wird später noch für einen Dialog mit Player1 benutzt, aber nicht für mehr. Und Alvanhendar zu prüfen macht ja auch nur Sinn, wenn er mit ihr sprechen will. Das Banter ist bei beiden dlgs drin.
Oder der Skriptblock ist genau dafür da: um abzufragen, ob Montaron Alvanhendars Winery gesehen hat oder nicht. Irgendwie muss man das ja abfragen, wenn man später darüber einen Dialog machen möchte.

Inkompatibilitäten können schon entstehen - ich denke mal, ob jemand alle NPC Mods auf Kompatibilität überprüft war eine rethorische Frage. Aber Skriptblöcke aus dem Spiel rauszulöschen - was ja in diesem Fall hätte passieren müssen, wenn Du sagst der Block zum Triggern würde fehlen - ist eine recht komplizierte Geschichte und nichts, was mal eben nebenbei passieren könnte.
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.379
Rauslöschen sicher nicht, aber states überschreiben könnte ich mir vorstellen. Alvanhendar hat einen Dialog mit Alora, und zwar an mehr als einer Stelle. Daher dachte ich zuerst, sie hätte da eine Option für Montaron überschrieben. Dann habe ich gesehen, dass Montaron nicht über seine J-dlg angesprochen wird wie es bei Alora der Fall ist, sondern über seine B-dlg. Also doch eher was anderes und kein Überschreiben.
Und dann hätte ich bei obigem Skriptblock erwartet, dass er bei Response halt Alvanhendar anspricht. Macht er halt aber nicht; und auch nicht umgekehrt, dass sie mit der gesetzten Variable ihn anspricht (sie hat nämlich kein eigenes Skript). Über dlg wird das Gespräch auch nicht getriggert.

Und jetzt wo ich es schreibe, fällt mir auf, dass man es möglicherweise über das Area-Skript machen könnte. Das muss ich noch prüfen.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Solange Du mit überschreiben meinst, dass der Dialog im Spiel nicht triggert wegen irgendwelcher Gründe und nicht, dass er danach in den Ressourcen fehlt, sind wir einer Meinung.
 

Lumorus

Wachender
Registriert
03.03.2011
Beiträge
4.060
Ok, ich habe da noch etwas zu Garrick gefunden:

einmal, wie schon gesagt, dass der Offene-Quest-Eintrag "Reisende Bücherfreunde" nicht entfernt wird, wenn man den Geisterbarden und seine Zombies erledigt hat - wenn man sein Kettenhemd aufnimmt, bringt Garrick wie vorgesehen seinen Autotext und die Quest steht unter "So viel zu literarischer Größe" bei den erledigten Quests.

Was mir aber richtig doof aufgefallen ist, ist eine Überschneidung mit einem Gegenstand aus GToaT.
Spricht man Halbazzar mit dem Kettenhemd aus BG1-NSC-Project an, hat man, wenn man das Angebot nicht annehmen möchte, keine Möglichkeit, die kaputte Violine aus GToaT reparieren zu lassen - das geht nur, wenn man das Kettenhemd kurz auf den Boden legt und es nach der Abgabe der Violine wieder aufhebt.
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Ich finde nämlich keinen Trigger für ein Gespräch zwischen Montaron und Alvanhendar (bcs und dlgs überprüft). Wobei es eigentlich so aussieht, als hätte da jemand einfach den StartDialogue vergessen...

IF %BGT_VAR%
AreaCheck("%Gullykin_Winery_L1%")
Global("X#MontaronWinery","GLOBAL",0)
See("alvahe")
InParty(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
InMyArea(Player1)
!StateCheck(Player1,CD_STATE_NOTVALID)
CombatCounter(0)
!See([ENEMY])
THEN
RESPONSE #100
SetGlobal("X#MontaronWinery","GLOBAL",1)
END
@Maus was Du zitierst hast ist der Block, um einen Dialog zu aktivieren. Direkt darunter in der x#moin2.baf ist der Skriptblock, um den Dialog zu triggern:
/* Initiate */
IF %BGT_VAR%
Global("X#MontaronWinery","GLOBAL",1)
InParty(Myself)
!StateCheck(Myself,CD_STATE_NOTVALID)
InMyArea(Player1)
!StateCheck(Player1,CD_STATE_NOTVALID)
THEN
RESPONSE #100
PlaySong(0)
PlaySound("monta99")
StartDialogueNoSet(Player1)
END
Und in Montarons dialog ist dann der dazugehörige Dialog (in der x#moint.d):
APPEND ~%MONTARON_JOINED%~

IF WEIGHT #-2 ~%BGT_VAR% Global("X#MontaronWinery","GLOBAL",1)~ THEN BEGIN X#MoWinery
SAY @0
++ @1 DO ~SetGlobal("X#MontaronWinery","GLOBAL",2)~ + MOINT6.1
+ ~Race(Player1,HALFLING)~ + @2 DO ~SetGlobal("X#MontaronWinery","GLOBAL",2)~ + MOINT6.1
++ @3 DO ~SetGlobal("X#MontaronWinery","GLOBAL",2)~ + MOINT6.
END
(...)
Der Text dazu ist
@0 = ~*SSNNNIFFFF* Ah, say as ye would, and I've said most on it, they's nothin' like to a true halflin' brew house.~
@1 = ~Smells like an outbuilding overdue for a move if you ask me.~
@2 = ~Aye! My nose knows one when it smells it... *SNNNIFFF*~
@3 = ~Yes, it's... quite... aromatic.~
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
Spricht man Halbazzar mit dem Kettenhemd aus BG1-NSC-Project an, hat man, wenn man das Angebot nicht annehmen möchte, keine Möglichkeit, die kaputte Violine aus GToaT reparieren zu lassen - das geht nur, wenn man das Kettenhemd kurz auf den Boden legt und es nach der Abgabe der Violine wieder aufhebt.
@Lumorus ja, das war nicht kompatibel gescriptet. Das habe ich doch gleich mal für die nächste Version geändert, das geht ja mal gar nicht.
Und Garricks Tagebucheintrag sollte in der nächsten Version auch vernünftig schließen, das war auch ungünstig gescriptet (Verwendung zweier unterschiedlicher tra-Dateien. wenn Tagebucheinträge nicht auf den Punkt genau übereinstimmen, werden sie aus dem Tagebuch nicht entfernt, daher sollte man immer denselben Sting verwenden.)

Jetzt wär so der Moment, wo @Belryll mit ganz vielen Übersetzungen um die Ecke kommt. :) Aber kein Stress, ich kann auch einfach nochmal updaten.
 

Lumorus

Wachender
Registriert
03.03.2011
Beiträge
4.060
Super, vielen Dank für Deinen Riesen-Einsatz, @Jastey! :)
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.920
BG1NPC updatet zu v26 mit Bugfixes. Danke an Coland (italienisch) und Arkie (russisch) für die Sprachanpassungen!

Changelog v26:

- New component: "Kivan's Proficiency Tweak", by Angel
- Kivan should count Gerde's ankheg kills correctly.
- Kivan should not reference Prism in Mutamin's garden if he didn't meet Prism.
- Ajantis should not ask Shoal to revive the companion if they didn't die.
- Faldorn should correctly banter with Kagain.
- Halbazzer's dialogue for upgrading the armor should not block his dialogue.
- "Read Gorion's letter" will also trigger in Candlekeep Catacombs.
- "KnowBhaal" variable will only set after letter was read aloud if Gorion's letter is in party's inventory.
- Journal entry for Garrick's quest should close properly for all language versions.
- EET: Tana'ri should be copied to override.
- Compatibility with Shades of the Sword Coast: Bentley will only react to Eldoth if he can see him.
- revised Ajantis' shield colors and BAMs from Sir Kill.
- corrected entry for "Beregost_House08_L2" in cmpvars.tpa.
- Russian version now uses setup.tra out of English language folder.
- added check to forbid installation after EET_End.
- Updated bg1npc.ini with regard to install order syntax.
- Typo corrections.
 
Oben