cmorgan Posted November 27, 2006 Share Posted November 27, 2006 Hey there, everyone... Pro5 is doing a massive review of code on the BGT side, which is bound to pay off for both Tutu and BGT players. Before I begin integrating Pro5's reports from email into the worklog (and this thread), could anyone following BG1 NPC pull any bug reports *NOT* covered below and post in this thread? (I can't access other sites at work, so it is up to you folks). I will use it to build my target list and check against the work Pro5 is working through on the BGT side. The list so far: Edit Nov 29, 2006 by cm: integrated into 3rd post master list Link to comment
Miloch Posted November 27, 2006 Share Posted November 27, 2006 Nice list. There's something a bit wacky with your hyperlinks though - might want to double check (might want to number them too) . I don't think there's much on other forums (assuming you've covered this one and you and pro5 are aware of SHS issues). Only thing is apparently Macready has covered the 3rd item on your list in the next EasyTutu release (area scripts). This came up in a search here and on PPG but we're probably talking about a separate mod: - Continuity between BG1 NPC and BG2 Flirts Also the only thing I had in my notes you haven't already covered is this: - Rebalance Garrick subquest items with Song & Silence store items (I PMed you about this a while back - haven't gotten around to doing more research... may be a fix to S&S instead) Regarding Imoen dialogue... I'm sure others have noticed this, and it's probably nothing, but if you do a file corruption check in NI, you get some offset errors in _IMOEN.DLG. This is on a completely clean, unmodded EasyTutu install. You get the same thing in a few other .DLGs but none that affect BG1 NPC that I'm aware of. And a DLG check in DLTCEP has similar errors in _IMOEN.DLG and IMOEN2.DLG - something about titleless journal strings and transitions having action indexes but no flags. This comes up quite a bit so like I said, it's probably nothing (but if so it'd be good to filter out of the checks somehow...). Link to comment
cmorgan Posted November 28, 2006 Author Share Posted November 28, 2006 Worklog prompts from Pro5's work and pending forum-prompted repairs: To Do List for pro5-3 update documentation update tra package with WinMerge info on changes to older tra's already out to translators Rebuild PID stringfixers for BGT side of the install. Readjust the Brilla interjection at the end of Kagain's quest to make sure everything works and the DV changes actually took hold. Recheck and update Contributor's Credits thread & ReadMe Rebuild Gorion's Body burial to be a single event triggered by solo, party, delayed party>> On at least two installs, variables that are supposed to be set by Imoen's J-File interactions do not set variables, causing the variables to hang open. This may or may not be related to dialogues exiting early. Confirmed that this is a problem with Jaheira's interjecting CHAIN3; repairing code and moving the burial of gorion to a separate triggered DisplayStringHead event that can be triggered across multiple situations. Rebuild Jaheira's first friend talk as an independent event Check NVROL on Ajantis/Sharteel interaction Deal with Beador only reacting to Jaheira resulting in a "set-up" for the druids Miloch's suggested Myr'Cutio (X#GARWYL) repairs: choose from bardic armour to AC4, HP36 < Increase - perhaps double, THAC0 18 > Lower, # of attacks 1 < Could make it 2 or even 3, Has proficiency of 1 in swords < could make 3 or 4 http://forums.pocketplane.net/index.php/topic,23372.0.html as per Pro5's discovery, and devSin's confirmation, check and reduce Area checks using AreaTypeNote that AreaType() checks can be logically combined. If you wanted a trigger to be true if OR(2) AreaType(OUTDOOR) AreaType(DUNGEON), you can use AreaType(33). My custom build of Near Infinity allows you to OR these conditions and will correctly resolve them when decompiling (AreaType(33) would decompile to AreaType(OUTDOOR | DUNGEON)), but you can just use the numeric ID and compile with anything. The same applies for negation (if you want !AreaType(OUTDOOR) !AreaType(DUNGEON), !AreaType(33) will produce equivalent results). Not sure I want to go here; might be hard for new folks to pick out where we are baneing/luvvin recheck Kivan's falsed out timer and rebuild with new condition to avoid PIDs (see point for bandit timers on Pro5's list; we need to either dump it or rebuild it) Nythrun's creature debugging: The only creature I noticed out of the Bio-usual order is x#corafi.cre which is in the charname order, so no real problems outside of DLTCP Three creatures don't have spell memorization tables at all - this won't trouble the game until something tries to read how many spells they should have, then boom. Probably best to add one mixed v1 .eff structures (0x30 in length) with v2 (0x108 when embedded) on a creature in the BG2 engine. Several of the creatures are like this: x#dfake.cre, x#corafi.cre, and x#ajanfi.cre. I'll see if there's an automatable way to standardize this, as I'm not sure what will happen when the engine sets a LOCALS on a BG1-era-effect creature. Innates not being level one aren't the mod's fault and hopefully Macready fixes them in Tutu. cmorgan note: will run alpha of Nythrun's .cre fixer anyways; then gather data for Tutufix and patch into BG1 NPC. berelinde's gathered debugging:X#LP1REP.tra, X#LP2REP.tra, X#LP3REP.tra@48 = ~Ah, another way to spend your riches. How novel. You might as well save your gold. Fame or infamy will not save us.~ X#GAINT.DI_C_T2 ~_KISSIQ~ 1 X#GarKis== ~_GARRIJ~ IF ~InParty("garrick") InMyArea("garrick") !StateCheck("garrick",CD_STATE_NOTVALID) Global("TalkedToChicken","GLOBAL",0)~ THEN @114 END X#IMINT.DI_C_T2 _KISSIQ 1 X#ImoenKissiq1== ~_IMOEN2~ IF ~InParty("imoen") InMyArea("imoen") !StateCheck("imoen",CD_STATE_NOTVALID) Global("TalkedToChicken","GLOBAL",0)~ THEN @116END X#MINSC.tra@99 = ~Welcomed the returning heroes. Oh, goodie, Minsc is so happy to have found a new lodge in this far away place. Look, even little Boo looks forward in anticipation to the great feast your Order will give in our honor at the end of our quest.~ X#COINT.tra @122 = ~And an oddball too... why not hurl lightning and fireballs at me once I've spoken to her and made for the exit, like every other woman? That way nobody gets hurt... unless there is sentient furniture in the room...~ Please change to @122 = ~And an oddball too... why not hurl lightning and fireballs at me once I've spoken to her and made for the exit, like every other woman? That way nobody gets hurt... unless the furniture in the room has sentimental value...~ note: edited to move completed fixes to a reference post so I know what to do next. Unknowns needing attention Interaction/compatibility with UB for Tutu (there is not currently a BGT version AFAIK)Requests Not In Scope of BG1 NPC Project Continuity of flirts/banters/romances into BG2 (should be a separate BG2 mod) Imoen BG1 expansion (romance or otherwise) (should be a separate Tutu mod) Beregost rebuild or repair (good discussions on PPG about this). Link to comment
pro5 Posted November 28, 2006 Share Posted November 28, 2006 EDIT: Original post integrated in list above. Link to comment
cmorgan Posted November 28, 2006 Author Share Posted November 28, 2006 Thank you! still editing and sorting out the materials above; awesome stuff. I just need summer vacation to strat now, so I can get cracking on the code fixes and integration!!! Link to comment
berelinde Posted November 29, 2006 Share Posted November 29, 2006 Wednesday isn't going to happen. Well, it will happen, but not with a revamped version. With Coran's baf, you could lose the OR(12) and be safe. If you don't want the condition to return true, just leave it out. Link to comment
cmorgan Posted December 9, 2006 Author Share Posted December 9, 2006 Pro5 fix for BGT version of the first part of BGREPLACE.D, without happiness entries. Note: In BGT some, if not most, of those unhappy-leave states are False() - therefore no fix is necessary. cm note-t-self; find way of pouring bottles of scotch through internet connection - or win lottery to freely distribute cash /Edit - Integrated into internal pro5-1 distribution; see reference post Link to comment
cmorgan Posted December 18, 2006 Author Share Posted December 18, 2006 Also the only thing I had in my notes you haven't already covered is this:- Rebalance Garrick subquest items with Song & Silence store items (I PMed you about this a while back - haven't gotten around to doing more research... may be a fix to S&S instead) Miloch, could you drop me a pm on this? I can't find my notes on this, and so can't take a look. Are we talking about item changes, or a check for Song & Silence and using those items? Link to comment
Miloch Posted December 18, 2006 Share Posted December 18, 2006 Miloch, could you drop me a pm on this? I can't find my notes on this, and so can't take a look. Are we talking about item changes, or a check for Song & Silence and using those items?I think a lot of this could be solved by just making the items at the Song & Silence vendor more expensive, if Andyr or someone is willing to accept those changes. My point was the existence of relatively easily-obtained bard items right in that same area conflicts with the subquest somewhat. I haven't had a chance to look at this recently, but it wouldn't be hard to call up the items with NI or DLTCEP and suggest some more appropriate values. I'll take a look. Link to comment
Miloch Posted December 22, 2006 Share Posted December 22, 2006 Ok, finally got around to looking at the subquest items and Raoul's - posted details on the Song & Silence forum since my main recommendations are for that mod. Spoilers in the next paragraph - you've been warned! ....... The bottom line for BG1NPC is that the bardic armour you get from the quest is not as good as that you've probably already bought from Raoul. However, it is flagged and described as magical chain, so it should be better (AC4). This will make the Myr'Cutio (X#GARWYL) harder also but he isn't that tough, certainly not for a party of six by this point in the game. The skeletons are obviously no contest. In addition to my suggested changes from the other thread, the following would make him more of a challenge: - HP36 < Increase - perhaps double - THAC0 18 > Lower it quite a bit so he can hit # of attacks 1 < Could make it 2 or even 3 - Has proficiency of 1 in swords < could make 3 or 4 - Possibly put a couple healing potions in his quick slot Link to comment
cmorgan Posted January 4, 2007 Author Share Posted January 4, 2007 new internal up for testing, reflecting above changelog through January 3, 2007 Link to comment
cmorgan Posted January 4, 2007 Author Share Posted January 4, 2007 OK, will have a new version this evening - first on the list is this (I forgot about) for BGT, from pro5: X#KIVAN.D REPLACE ~BVICONI~ IF ~~ THEN BEGIN 0 // ---> 575 SAY @0 IF ~~ THEN EXIT END END REPLACE ~BVICONI~ IF ~~ THEN BEGIN 8 // ---> 583 SAY @1 IF ~~ THEN EXIT END END REPLACE ~BVICONI~ IF ~~ THEN BEGIN 9 // ---> 584 SAY @2 IF ~~ THEN EXIT END END REPLACE ~BVICONI~ IF ~~ THEN BEGIN 10 // ---> 585 SAY @3 IF ~~ THEN EXIT END END X#KIINT.D I_C_T2 ~EDWIN~ 0 KivanEdwin1 // 0 ---> 74 == ~KIVANJ~ IF ~InParty("kivan") !Dead("kivan") !StateCheck("kivan",CD_STATE_NOTVALID)~ THEN @80 END I_C_T2 ~EDWIN~ 1 KivanEdwin2 // 1 ---> 75 == ~KIVANJ~ IF ~InParty("kivan") !Dead("kivan") !StateCheck("kivan",CD_STATE_NOTVALID)~ THEN @80 END X#AJINT.D //Edwin I_C_T2 ~EDWIN~ 8 X#AjantisEdwin // 8 --> 82 == AJANTJ IF ~InParty("ajantis") !Dead("ajantis") !StateCheck("ajantis",CD_STATE_NOTVALID)~ THEN @56 END X#SHINT.D /* Edwin */ I_C_T2 ~EDWIN~ 8 X#SharEdwinJoin // 8 ---> 82 ==~SHARTJ~IF~InParty("sharteel") !Dead("sharteel") !StateCheck("sharteel",CD_STATE_NOTVALID)~ THEN @16 END X#MIINT.D ( headers only, to save space ) I_C_T2 ~EDWIN~ 0 MinscEdwinDyna2 // 0 ---> 74 I_C_T2 ~EDWIN~ 1 MinscEdwinDyna2a // 1 ---> 75 I_C_T2 ~EDWIN~ 2 MinscEdwinDyna2b // 2 ---> 76 I_C_T2 ~EDWIN~ 7 MinscEdwinDyna3 // 7 ---> 81 I_C_T2 ~EDWIN~ 6 MinscEdwinDyna4 // 6 ---> 80 I_C_T2 ~EDWIN~ 5 MinscEdwinDyna5 // 5 ---> 79 I_C_T2 ~EDWIN~ 8 MinscEdwinDyna6 // 8 ---> 82 I_C_T2 ~EDWINJ~ 6 MinscEdwinDyna1 // 6 --> 193 X#EDINT.D EXTEND_BOTTOM ~EDWIN~ 3 // --> 77 IF ~~ THEN REPLY @0 + X#EdwinJoinsAlone END EXTEND_BOTTOM ~EDWIN~ 4 // --> 78 IF ~~ THEN REPLY @0 + X#EdwinJoinsAlone END EXTEND_BOTTOM ~EDWINJ~ 12 // --> 199 IF ~InParty("edwin") !Dead("edwin") !StateCheck("edwin",CD_STATE_NOTVALID)~ THEN DO ~SetGlobal("EdwinAbandoned","GLOBAL",1) SetGlobal("KickedOut","LOCALS",2) SetDialogue("EDWIN") LeaveParty()~ EXIT END X#GAINT.D I_C_T2 ~EDWIN~ 0 X#GarEdJ1 // ---> 74 == ~GARRIJ~ IF ~InParty("garrick") !Dead("garrick") !StateCheck("garrick",CD_STATE_NOTVALID)~ THEN @70 END I_C_T2 ~EDWIN~ 1 X#GarEdJ2 // ---> 75 == ~GARRIJ~ IF ~InParty("garrick") !Dead("garrick") !StateCheck("garrick",CD_STATE_NOTVALID)~ THEN @71 END I_C_T2 ~EDWIN~ 2 X#GarEdJ3 // ---> 76 == ~GARRIJ~ IF ~InParty("garrick") !Dead("garrick") X#IMINT.D I_C_T ~EDWIN~ 8 X#EdwinImoenJoin // 8 ---> 82 == ~IMOEN2J~ IF ~InParty("IMOEN2") !Dead("IMOEN2") !StateCheck("IMOEN2",CD_STATE_NOTVALID)~ THEN @93 == ~EDWIN~ IF ~InParty("IMOEN2") !Dead("IMOEN2") !StateCheck("IMOEN2",CD_STATE_NOTVALID)~ THEN @94 END Repaired BGT, January 4, 2007 Link to comment
cmorgan Posted January 4, 2007 Author Share Posted January 4, 2007 ok, I am truly an idiot at times - not a knock on myself, just memory problems! I think the current internal of the Bardic Rep Change is not working 'cause I coded /* Tutu area script changes */ EXTEND_BOTTOM ~FW2301.BCS~ ~BG1NPC/Phase2/BAF/X#LP1REPAS.BAF~ //The Friendly Arm Inn EXTEND_BOTTOM ~FW4809.BCS~ ~BG1NPC/Phase2/BAF/X#LP2REPAS.BAF~ //The Belching Dragon EXTEND_BOTTOM ~FW0705.BCS~ ~BG1NPC/Phase2/BAF/X#LP3REPAS.BAF~ //The Elfsong I think that should be /* Tutu area script changes */ EXTEND_BOTTOM ~_AR2301.BCS~ ~BG1NPC/Phase2/BAF/X#LP1REPAS.BAF~ //The Friendly Arm Inn EXTEND_BOTTOM ~_AR4809.BCS~ ~BG1NPC/Phase2/BAF/X#LP2REPAS.BAF~ //The Belching Dragon EXTEND_BOTTOM ~_AR0705.BCS~ ~BG1NPC/Phase2/BAF/X#LP3REPAS.BAF~ //The Elfsong Cluaing in the devil works, but for some reason does not let the second or third responses become active. Everyone interjects, but coming back does not allow second sections of the CHAIN to show up. /Edit- good news - and bad. The area script works great, so does the deactivation and the initial override.bcs for the poets. Two problems remain. 1. The DisplayStringHead needs a longer delay so it doesn't become annoying, and it never resumes after the Bard is talked to. 2. We somehow have scripted out the ability to have the second and third replies for each NPC present. It jumps right to the "Do it" or "Not Today". Something is evaluating each of these the first time, because there is noticeable lag while processing this dialogue. We may need a CHAIN guru to tell us why this isn't working. Link to comment
berelinde Posted January 4, 2007 Share Posted January 4, 2007 I've been having a similar problem with chains breaking under odd circumstances. I've been solving it by using extern commands, which are cumbersome. Would a random number function work here instead, and let them say stuff over and over if they feel like it? IF ~InParty("NPC") InMyArea("NPC") !StateCheck("NPC","CD_STATE_NOTVALID) RandomNum(3,1)~ THEN ~blah blah blah~ IF ~InParty("NPC") InMyArea("NPC") !StateCheck("NPC","CD_STATE_NOTVALID) RandomNum(3,2)~ THEN ~fidlesticks~ IF ~InParty("NPC") InMyArea("NPC") !StateCheck("NPC","CD_STATE_NOTVALID) RandomNum(3,3)~ THEN ~whatev~ Link to comment
cmorgan Posted January 4, 2007 Author Share Posted January 4, 2007 I don't see why one would work and the other not... I have posted at PPG and am off to read the CoM post about CHAIN behavior (if I can find it). We could work around this (with long and involved recoding), but the idea is so elegant it just *has* to work! On the DisplayStringHead, I apparently coded it to only run on initial sight. I have set it up so it runs whenever the .cre is activated, but will not run in the interval between closing dialogue and Deactivating. It looks like it is working fine. i will get a fixed version up tonight. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.