Ikki Posted July 6, 2017 Share Posted July 6, 2017 hi AstroBryGuydid you consider including native EET compatibility : it would be so comfortable to not have to install the mod under BGEE first Link to comment
AstroBryGuy Posted July 6, 2017 Share Posted July 6, 2017 Not at this time. I've never installed EET (or BGT; I played Tutu before BGEE). The whole "one giant game" just doesn't appeal to me. I have no objection to EET compatibility. It's just not my cup of tea. If someone wants to figure out the edits needed, they can submit them as a pull request on GitHub. Link to comment
Ikki Posted July 9, 2017 Author Share Posted July 9, 2017 hello AstroBryGuy, if you want to give it a look, i have a little patch bg1npc_BGT_TUTU_BGEE_EET.rar that allow the installation directly in EET // Log of Currently Installed WeiDU Mods// The top of the file is the 'oldest' mod// ~TP2_File~ #language_number #component_number // [subcomponent Name -> ] Component Name [ : Version]~EET/EET.TP2~ #0 #0 // Initialise EET (first mod in install order): 1.0 RC9~EET_CORE.TP2~ #0 #0 // Core EET (game importation): 1.0 RC8~BG1NPC/BG1NPC.TP2~ #2 #0 // BG1 NPC Project : modifications necessaires: v22.8~BG1NPC/BG1NPC.TP2~ #2 #1 // BG1 NPC Project : bavardages, quetes et interjections: v22.8~BG1NPC/BG1NPC.TP2~ #2 #2 // BG1 NPC Project : donner a Edwin son portrait de BG2: v22.8~BG1NPC/BG1NPC.TP2~ #2 #3 // BG1 NPC Project : donner a Imoen son portrait de BG2: v22.8~BG1NPC/BG1NPC.TP2~ #2 #4 // BG1 NPC Project : donner a Jaheira son portrait de BG2: v22.8~BG1NPC/BG1NPC.TP2~ #2 #5 // BG1 NPC Project : donner a Minsc son portrait de BG2: v22.8~BG1NPC/BG1NPC.TP2~ #2 #6 // BG1 NPC Project : donner a Viconia son portrait de BG2: v22.8~BG1NPC/BG1NPC.TP2~ #2 #7 // BG1 NPC Project : donner a Kivan son portait issu du mod "Kivan and Deheriana Companions": v22.8~BG1NPC/BG1NPC.TP2~ #2 #9 // BG1 NPC Project : romance d'Ajantis, elements de base (contenu adolescent): v22.8~BG1NPC/BG1NPC.TP2~ #2 #10 // BG1 NPC Project : romance de Branwen, elements de base (contenu adolescent): v22.8~BG1NPC/BG1NPC.TP2~ #2 #11 // BG1 NPC Project : romance de Coran, elements de base (contenu adulte): v22.8~BG1NPC/BG1NPC.TP2~ #2 #12 // BG1 NPC Project : romance de Dynaheir, elements de base (contenu adolescent): v22.8~BG1NPC/BG1NPC.TP2~ #2 #13 // BG1 NPC Project : relation avec Shar-Teel, elements de base (contenu adulte): v22.8~BG1NPC/BG1NPC.TP2~ #2 #14 // BG1 NPC Project : romance de Xan, elements de base (contenu adolescent): v22.8~BG1NPC/BG1NPC.TP2~ #2 #15 // BG1 NPC Project : conflits de romance pour personnage feminin, Ajantis - Xan - Coran: v22.8~BG1NPC/BG1NPC.TP2~ #2 #16 // BG1 NPC Project : possibilite d'envoyer les PNJs attendre dans une auberge: v22.8~BG1NPC/BG1NPC.TP2~ #2 #17 // BG1 NPC Project : emplacement initial d'Alora -> Alora apparait a la Maison des Merveilles: v22.8~BG1NPC/BG1NPC.TP2~ #2 #19 // BG1 NPC Project : emplacement initial d'Eldoth -> Eldoth apparait a Bois-Manteau: v22.8~BG1NPC/BG1NPC.TP2~ #2 #21 // BG1 NPC Project : emplacement initial de Quayle -> Quayle apparait au Pont de la Porte de Baldur: v22.8~BG1NPC/BG1NPC.TP2~ #2 #23 // BG1 NPC Project : emplacement initial de Tiax -> Tiax apparait a la Porte de Baldur: v22.8~BG1NPC/BG1NPC.TP2~ #2 #26 // Ajustement du rythme des bavardages pour BG:EE: v22.8~BG1NPC/BG1NPC.TP2~ #2 #28 // BG1 NPC Project : ajustement de reputation grace a des bardes: v22.8~BG1NPC/BG1NPC.TP2~ #2 #29 // BG1 NPC Project : zones de Bois-Manteau accessibles au chapitre 1 -> Rendre accessible le Pavillon de Bois-Manteau (premiere zone de Bois-Manteau uniquement): v22.8~BG1NPC/BG1NPC.TP2~ #2 #31 // BG1 NPC Project : ajustements du journal de Sarevok -> Journal de Sarevok enrichi par SixofSpades: v22.8~BG1NPC/BG1NPC.TP2~ #2 #200 // BG1 NPC Project : dialogues inities par le joueur: v22.8 I have tested it with BGEE too and it install without problems ( for TUTU and BGT there maybe some tuning require ) the patch require some extented cpmvars (it use those from k4thos, and the missing association are put in bg1npc_[tutu bgee bgee eet].tpa there is a text file with the change done in the .rar take it as a template, i have certainly made some bugs And Thank for your mod Link to comment
AstroBryGuy Posted July 13, 2017 Share Posted July 13, 2017 Why did you duplicate entries from the cpmvars in the bg1npc_[GAME].tpa files? That's asking to cause errors. If something gets changed in one location but not the other, the changed variable may get overwritten by the unchanged variable in the second location. EDIT: Also, why are you applying the Update SPELDESC.2DA routine for EET? I thought it is using BG2EE as a "base", like BGT used BG2. By updating SPELDESC.2DA to use BGEE string indexes, you'll mess up the strings for healing services in temples. EDIT 2: Many of the creatures added by BG1NPC utilize BG2 soundsets by default, since these resources are available on Tutu/BGT. On BGEE, these resources aren't always available, so I added routines to replace the BG2 soundsets with those available in BGEE. These routines are only applied in BGEE. Like Tutu & BGT, EET should have the BG2 soundsets available, but you have EET using the BGEE routines. Shouldn't EET use the BG2 resources like Tutu/BGT, since they are available? Or are there issues with the BG2 resources in EET? EDIT 3: There will also be issues with EraseJournalEntry() commands, since the string references for the BG1 portion of EET do not match those in BGEE. Link to comment
Ikki Posted July 13, 2017 Author Share Posted July 13, 2017 Why did you duplicate entries from the cpmvars in the bg1npc_[GAME].tpa files I tried to not duplicate them, if there are duplicate they must be removed Just to explain what i have done with those .tpa for EET convertion i needed the cpmvars from K4thos ( they are twice the size ) that's the association missing in K4thos eet_cpmvars, that where present in yours cpmvars : i put them in the bg1npc_eet.tpa files /* Items and Variables that need special handling */ OUTER_SPRINT "VoiceStrange" "False()" OUTER_SPRINT "RunAwayFrom" "RunAwayFromNoLeaveArea" ACTION_IF FILE_EXISTS_IN_GAME ~corwyvrn.cre~ THEN BEGIN OUTER_SPRINT "CorWyvrn" "CORWYVRN" END ELSE BEGIN OUTER_SPRINT "CorWyvrn" "X#CoranWyvern" END OUTER_SPRINT "port_s" "m" OUTER_SPRINT "port_l" "l" /* Tutu/BGT vs BGEE Dialog states */ OUTER_SET housg3state5 = 0 for the other game, i needed K4thos cpmvars too because now there new %ID% that must find a game reference so i have done the same, used K4thos.tpa for say BGT and put the missing reference (that existed only in bg1npc) in bg1npc_bgt.tpa in the bg1npc_bgt.tpa i see 2 line duplicate in the g3_bgt_cpmvars.tpa, those duplicate should be removed (but if they are identical it won't do any harm) These routines are only applied in BGEE I didn't even know about this routines, sure don't apply them on EET game And thank again for updating your mod for EET Link to comment
K4thos Posted July 13, 2017 Share Posted July 13, 2017 Didn't have time to look at the Iggi's code but will try to answer some questions regarding how EET works. EDIT 3: There will also be issues with EraseJournalEntry() commands, since the string references for the BG1 portion of EET do not match those in BGEE. indeed. I'm not aware how it's implemented in this mod but if there is some way to patch them on the fly (since BGT would have dynamic number there rather than static one like BG:EE) then when it comes to referencing exact BG:EE strrefs in EET, without relaying on SAY, all that has to be done is adding 200000 to the original strref (whole BG:EE TLK is appended to BG2:EE and starts from string 200000 onward, same goes for quest entries in bgee.lua - static BG:EE number + 200000. SAY weidu command is not used during conversion). EDIT 2: Many of the creatures added by BG1NPC utilize BG2 soundsets by default, since these resources are available on Tutu/BGT. On BGEE, these resources aren't always available, so I added routines to replace the BG2 soundsets with those available in BGEE. These routines are only applied in BGEE. Like Tutu & BGT, EET should have the BG2 soundsets available, but you have EET using the BGEE routines. Shouldn't EET use the BG2 resources like Tutu/BGT, since they are available? Or are there issues with the BG2 resources in EET? no changes at all when it comes to BG2:EE string numbers. So either use BG2:EE routines or like above add 200000 to the BG:EE strref to display BG:EE strings. EDIT: Also, why are you applying the Update SPELDESC.2DA routine for EET? I thought it is using BG2EE as a "base", like BGT used BG2. By updating SPELDESC.2DA to use BGEE string indexes, you'll mess up the strings for healing services in temples. correct, BG2:EE is used as a base. Link to comment
AstroBryGuy Posted July 13, 2017 Share Posted July 13, 2017 Thanks, k4thos. Regarding the EraseJournalEntry() commands. BG1NPC is actually not very good about cleaning up vanilla journal entries when it adds new options to vanilla dialogs. I tried to fix that for BGEE by defining a variable before compiling the dialog that contains the actions from the vanilla dialog. ACTION_IF GAME_IS ~bgee~ THEN BEGIN OUTER_SPRINT ~BGEEDynaheirEraseJournalEntries~ ~EraseJournalEntry(27171) EraseJournalEntry(27274) EraseJournalEntry(27275) EraseJournalEntry(27031) AddexperienceParty(800)~ END ELSE BEGIN OUTER_SPRINT ~BGEEDynaheirEraseJournalEntries~ ~~ END I did it like this since the game isn't ossified like the dialog.tlk for the original BG1 & BG2, i.e. Beamdog is still fixing typos, tweaking formatting, etc.. (all of which would throw off simply using string-matching). I could create an EET version that adds 200000 to the strrefs pretty easily. Link to comment
K4thos Posted July 13, 2017 Share Posted July 13, 2017 I did it like this since the game isn't ossified like the dialog.tlk for the original BG1 & BG2, i.e. Beamdog is still fixing typos, tweaking formatting, etc.. (all of which would throw off simply using string-matching). I could create an EET version that adds 200000 to the strrefs pretty easily. multiple versions of the same files are harder to maintain, so I would suggest approach used by Tweaks Anthology regarding BG2 chapter numbers differences. Instead of copies of the same files or additional variables just use code like this at the beginning of the mod installation: ACTION_IF GAME_IS ~eet~ BEGIN ACTION_FOR_EACH file IN here_goes_list_with_path_to_each_d_and_baf_files_that_use_EraseJournalEntry BEGIN COPY ~%file%~ ~%file%~ REPLACE_EVALUATE CASE_INSENSITIVE ~EraseJournalEntry(\([0-9]+\))~ BEGIN MATCH1 = MATCH1 + 200000 END ~EraseJournalEntry(%MATCH1%)~ BUT_ONLY END END Above code will update all EraseJournalEntry(x) to EraseJournalEntry(x + 200000) if GAME_IS ~eet~, so the same files that BG:EE version uses are ready for installation. Link to comment
K4thos Posted July 13, 2017 Share Posted July 13, 2017 Sorry, I didn't understand your post correctly. If you're already using variable for adding those journals removal then it would be a matter of changing it like this (or adding this var into cpmvars): ACTION_IF GAME_IS ~bgee~ THEN BEGIN OUTER_SPRINT ~BGEEDynaheirEraseJournalEntries~ ~EraseJournalEntry(27171) EraseJournalEntry(27274) EraseJournalEntry(27275) EraseJournalEntry(27031) AddexperienceParty(800)~ END ELSE ACTION_IF GAME_IS ~eet~ THEN BEGIN OUTER_SPRINT ~BGEEDynaheirEraseJournalEntries~ ~EraseJournalEntry(227171) EraseJournalEntry(227274) EraseJournalEntry(227275) EraseJournalEntry(227031) AddexperienceParty(800)~ END ELSE BEGIN OUTER_SPRINT ~BGEEDynaheirEraseJournalEntries~ ~~ END Link to comment
AstroBryGuy Posted July 13, 2017 Share Posted July 13, 2017 I'm using a variable so that the "EraseJournalEntry()" commands won't exist on a BGT or Tutu install. I can make it work for EET, using your second example. Link to comment
AstroBryGuy Posted July 14, 2017 Share Posted July 14, 2017 @ikki - a warning, most of the edits created by the automatic converter are wrong for BG1NPC. Most the GAME_IS ~bgee~ checks in BG1NPC aren't to deal with engine issues, but with missing BG2 resources, which EET has. If you play through with the version you sent me, you may encounter lots of creatures with random strings for character sounds. I also have serious doubts that the Romance Challenges component will work at all. Two of the areas added by that component will have ARE files based on BG1's AR6000, but trying use BG2 AR6000.WED (i.e., results will be random, you will be able to walk through trees but get stopped by invisible walls). I'd recommend for now installing BG1NPC before EET conversion. Link to comment
Ikki Posted July 14, 2017 Author Share Posted July 14, 2017 you may encounter lots of creatures with random strings for character sounds Yes, that's right, it was strange sometimes I'd recommend for now installing BG1NPC before EET conversion That's too late , but i didn't encounter so many problematic bugs, and a lot of content worked well Link to comment
AstroBryGuy Posted July 15, 2017 Share Posted July 15, 2017 @ikki - Why did you comment out Shar-Teel's interjections on TAZOK states 12-35? The only change you note for the x#shint.d is replacing TAZOK with TAZOK%eet_var%, no editorial changes are noted. Please don't include undocumented editorial changes as part of an EET conversion. Link to comment
Ikki Posted July 15, 2017 Author Share Posted July 15, 2017 @ikki - Why did you comment out Shar-Teel's interjections on TAZOK states 12-35? The only change you note for the x#shint.d is replacing TAZOK with TAZOK%eet_var%, no editorial changes are noted. Please don't include undocumented editorial changes as part of an EET conversion. This was a mistake on my end. before renaming TAZOK to TAZOK%eet_var% this dialog was throwing error and I comment this part trying to narrow the problem, then forgot to uncomment it Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.