Jump to content

BG1 Tweak Pack


Guest grogerson

Recommended Posts

Hope it helps. If I've got something wrong, I hope someone who knows better than me will speak up and get things corrected cause I don't want to steer anyone down the wrong way.....
So do I. I'm a noob, you've at least graduated to novice :) . Maybe Cam or one of the other Masters will drop by and enlighten us both...
Looks like it should work. Basically, for each level you'll have different ADD_MEMORIZED_SPELLs and maybe HP/lore/proficiency adjustments.

 

WRITE_LONG 0x100 is definitely wrong... that's probably a typo for 0x10 but even that shouldn't be necessary, judging from the .cre files.

 

I'm having trouble sorting out what's what in this long thread. As far as fixes, you should probably report those separately - either in the BG1 Fixroom or the public thread in my signature. Edit: nevermind, looks like you did this already, at least for a couple of the issues.

 

From a scan of the recent posts, I picked out the following:

Several stores shared

Also, in basic BG1 (no TotSC), several stores are "shared". The Naskel and Gullykin temples is a known bug. I've also found the following are shared:

 

Magic Item Merchant: AR4907, AR0706

General Store: AR0803, AR1112, AR1116, AR0304

Potion Store: AR1302, AR1320, AR1115, AR1117

 

Paladin spellbook possibly hosed

paladin just hit 9th level, has one 1st level spell slot to memorize, but doesn't have anything showing for him to memorize...

 

Xplevel.2da for druids hosed

So, eh... if we're going to fix this, I guess we need to decide whether to fix it according to what the values are in the game manual (which as I said, is copied from PnP) or from BG2 (and I'm not sure where BG2 got its values, since the manual has the PnP values) or from somewhere else.

 

NPCs without override scripts

The NPCs, that do not have any script assigned that has their name, are Imoen, Garrick, Skie, Branwen, Xan, (EDIT: forgot Faldorn, end EDIT) and for all, the override script slot is empty.

I'll double-post this in the Fixroom, but going forward it'll help us all out if we separate the fixes from the tweaks (delete obligatory joke about the Fixpack not separating them...).
Link to comment

Thanks for the reply, Miloch. I'll see if the WRITE_LONG 0x100 is what's causing the CTD. I've either removed or deprecated all other non-working tweaks. This is the last one I want to get done.

 

As for the rest of this thread, the NPC override script problem was taken over to the public Fixpack thread by the original poster. plainab noted the XPLEVEL.2DA druid problem and should have that taken care of.

 

I also posted the store duplication and paladin spellbook problem on the public Fixpack thread, and was acknowledged by plainab. Hopefully the paladin problem isn't hard-coded (note to self: check if rangers have the same problem).

Link to comment

Regarding your paladin problem:

I posted in response to one of your other posts in another thread with the spell table that the paladins use in bg1 but then I noticed that in your testing you used this component

~BG1TWEAKS/SETUP-BG1TWEAKS.TP2~ #0 #2180 // Bards, Paladins and Rangers Use Icewind Dale-Heart of Winter Spell Tables
I don't know much about this, but I would guess that this is your culprit. I don't know what the new table looks like. There could be something going on here. You may want to try the game again without this particular component to see if it corrects the issue..

 

I'm gonna go see if an unmodded game can repeat your issue.... Level 9 you say? Okay how much xp do I need to add to the chr file.... *wanders off in thought*

 

EDIT:

 

*wanders back in* Okay, I did a quick check on an unmodded game. First off, rangers and paladins will never get to levels where they gains spells because of the XP cap. So I had to remove the xp cap first. I created a paladin and gave enough xp to get to level 9 (the first level where they should get a spell). No spells. I increased wisdom to no effect. I created a ranger and gave enough xp to get to level 8 (where they should get spells). No spells. I increased xp again to get to level 9 and again no spells. I believe that since bioware capped the xp at levels below where paladins and rangers get spells that they didn't bother putting in the ability for them to gain spells. However rangers and paladins do continue to get additional spell quantities on their innate spells. By the way, how do priests and druids get their spells? Do they have a hardcoded list somewhere that the player can choose to have them memorize?

Link to comment

I do have what I believe is a working beta. I'm looking for anyone interested in testing. Send me a PM or e-mail if you are. Until someone tells me how to attach the package here (what can I say, I'm a noob at this) it will be available only by e-mail.

 

Unfortunately the e-mail will be without the WeiDU executable since (I'm guessing) it gets tagged as a virus threat and kills the attachment. The simplest work-around is to download/copy another WeiDU .exe file to the BG1Tweak folder and rename it setup-BG1Tweaks.exe.

 

I'm still with this project. Right now I'm doing my first run through SoA/ToB, and I'll be back to it as soon at it's done.

Link to comment
I do have what I believe is a working beta. I'm looking for anyone interested in testing. Send me a PM or e-mail if you are. Until someone tells me how to attach the package here (what can I say, I'm a noob at this) it will be available only by e-mail.
I don't really have a whole lot of time for testing, but I can probably host your beta on my server until you have something more official that G3 can host. I suppose I could also at least make sure it at least installs both on my TotSC and plain BG1 too. I'll PM you my e-mail

 

And if you're waiting on Cam for something, you might be waiting a while. I don't think he had a problem with you pinching his code though (he's probably glad someone else is doing it besides him).

 

I assume you have some sort of readme (if not, that's probably the most important thing you want to do). Can probably pinch that from the BG2 Tweaks html file too.

Link to comment
I don't really have a whole lot of time for testing, but I can probably host your beta on my server until you have something more official that G3 can host. I suppose I could also at least make sure it at least installs both on my TotSC and plain BG1 too. I'll PM you my e-mail

Thanks for the hosting offer. I've forwarded the folder to plainab. I'll e-mail it to you tonight as well. No WeiDU.exe, however. I think it's a Microsoft thing, seeing it as a potential virus. Of course this is from a blithering idiot.

 

If you could look over the code as well, I'd appreciate it. As a side note, I did get one request a while ago for this mod. The man found this thread by doing a Google search. He had no problems installing, though he only wanted a couple of the tweaks.

 

I haven't worked on it for a while. Not since getting into playing BG2. Personally, I like BG1 better. I should be finished in about a month or so, then I'll get back to this. I want to get the Khalid as a Fighter/Mage component working before going v1 here.

 

And if you're waiting on Cam for something, you might be waiting a while. I don't think he had a problem with you pinching his code though (he's probably glad someone else is doing it besides him).

I've heard he can disappear for lengthy periods. From his comments earlier in this thread, I'd have to agree with you. It took a load off his over-full plate. Of course, the components are all tagged CDB, so in effect I've left the code as his.

 

I assume you have some sort of readme (if not, that's probably the most important thing you want to do). Can probably pinch that from the BG2 Tweaks html file too.

I do have a readme, and I did steal it from the BG2 Tweaks html. It's in Wordpad format, however. Warning you just in case...

Link to comment

There's a thread here where somebody thought that the automatic teleport to candlekeep was a little lame. I thought that it might be a good idea to provide a tweak where the player could choose to have the scripts modified to not teleport the player to candlekeep. Of course, I'm not sure how that would affect the rest of the game since most scripts & dialogs have checks against chapter level only. The player probably couldn't properly complete some chapter 5 quests because of those chapter checks. But I leave the choice for you to include such a thing up to you. Thread in question is here.

 

Oh, the tweak pack seemed to install okay. But we need to put in checks or rearrange things because it's possible to install gems and potions require lore and then have all items identified. The second makes the first useless so we either put in a check OR we combine the two into subcomponents of the same component.

Link to comment

Coded because I was bored, completely untested and I don't want to test it either.

 

Please check for silly typos and by completely untested, not even tested with an install.

 

BEGIN ~Duke Eltan won't teleport you to CandleKeep~

COPY_EXISTING ~Deltan.dlg~ ~override~
DECOMPILE_DLG_TO_D
REPLACE_TEXTUALLY EXACT_MATCH ~IF ~~ THEN BEGIN 10 // from: 7.2
 SAY #1441 /* ~I think the best course of action would be to follow these leaders to Candlekeep.  Whatever they have planned must not bode well for any of us, especially if they need the privacy of Candlekeep.  Go now, and make haste to Candlekeep.  Take this book.  It must be given to the Keeper of the Portal, otherwise you will not be let into the library.  Here also if the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player1,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player2,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player3,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player4,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player5,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player6,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
DestroySelf()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

~IF ~~ THEN BEGIN 10 // from: 7.2
 SAY #1441 /* ~I think the best course of action would be to follow these leaders to Candlekeep.  Whatever they have planned must not bode well for any of us, especially if they need the privacy of Candlekeep.  Go now, and make haste to Candlekeep.  Take this book.  It must be given to the Keeper of the Portal, otherwise you will not be let into the library.  Here also if the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
EscapeArea()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~
REPLACE_TEXTUALLY EXACT_MATCH ~IF ~~ THEN BEGIN 11 // from: 7.3
 SAY #1442 /* ~Then there is only one thing to do: travel to Candlekeep and learn what they're doing there, whatever it is, it can't bode well for the fortunes of this city.  Take this book.  Without it, the Keeper of the Portal won't allow you entrance into the library.  Here also is the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player1,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player2,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player3,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player4,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player5,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player6,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
DestroySelf()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

~IF ~~ THEN BEGIN 11 // from: 7.3
 SAY #1442 /* ~Then there is only one thing to do: travel to Candlekeep and learn what they're doing there, whatever it is, it can't bode well for the fortunes of this city.  Take this book.  Without it, the Keeper of the Portal won't allow you entrance into the library.  Here also is the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
EscapeArea()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

COMPILE ~override/deltan.d~

BUT_ONLY_IF_IT_CHANGES

 

At a rough guess, that should do it for vanilla BG1

 

Icen

Link to comment
There's a thread here where somebody thought that the automatic teleport to candlekeep was a little lame... Thread in question is here.

I notice the post as well. Might be something for the pack over at CoM. Looks like he's taking his in a different direction than this one. Of course, I might add it here, too.

 

Oh, the tweak pack seemed to install okay. But we need to put in checks or rearrange things because it's possible to install gems and potions require lore and then have all items identified. The second makes the first useless so we either put in a check OR we combine the two into subcomponents of the same component.

I mentioned this to Cam. The order is right out of BG2 Tweaks. And since they're mutually exclusive, combining them into one makes sense.

 

Coded because I was bored, completely untested and I don't want to test it either.

 

Please check for silly typos and by completely untested, not even tested with an install.

 

BEGIN ~Duke Eltan won't teleport you to CandleKeep~

COPY_EXISTING ~Deltan.dlg~ ~override~
DECOMPILE_DLG_TO_D
REPLACE_TEXTUALLY EXACT_MATCH ~IF ~~ THEN BEGIN 10 // from: 7.2
 SAY #1441 /* ~I think the best course of action would be to follow these leaders to Candlekeep.  Whatever they have planned must not bode well for any of us, especially if they need the privacy of Candlekeep.  Go now, and make haste to Candlekeep.  Take this book.  It must be given to the Keeper of the Portal, otherwise you will not be let into the library.  Here also if the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player1,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player2,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player3,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player4,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player5,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player6,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
DestroySelf()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

~IF ~~ THEN BEGIN 10 // from: 7.2
 SAY #1441 /* ~I think the best course of action would be to follow these leaders to Candlekeep.  Whatever they have planned must not bode well for any of us, especially if they need the privacy of Candlekeep.  Go now, and make haste to Candlekeep.  Take this book.  It must be given to the Keeper of the Portal, otherwise you will not be let into the library.  Here also if the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
EscapeArea()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~
REPLACE_TEXTUALLY EXACT_MATCH ~IF ~~ THEN BEGIN 11 // from: 7.3
 SAY #1442 /* ~Then there is only one thing to do: travel to Candlekeep and learn what they're doing there, whatever it is, it can't bode well for the fortunes of this city.  Take this book.  Without it, the Keeper of the Portal won't allow you entrance into the library.  Here also is the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player1,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player2,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player3,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player4,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player5,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
ActionOverride(Player6,LeaveAreaLUA("AR2626","TRDUKELT",[4714.2930],12))
DestroySelf()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

~IF ~~ THEN BEGIN 11 // from: 7.3
 SAY #1442 /* ~Then there is only one thing to do: travel to Candlekeep and learn what they're doing there, whatever it is, it can't bode well for the fortunes of this city.  Take this book.  Without it, the Keeper of the Portal won't allow you entrance into the library.  Here also is the reward money that I had promised you.~ */
 IF ~~ THEN DO ~GiveGoldForce(2000)
SetGlobal("HelpEltan","GLOBAL",2)
GiveItem("BOOK68",LastTalkedToBy)
IncrementChapter("Chptxt6")
AddJournalEntry(15840)
ActionOverride(Player1,LeaveAreaLUAPanic("AR2626","TRDUKELT",[4714.2930],12))
EscapeArea()
~ JOURNAL #6592 /* ~The Duke has told us to go to Candlekeep.  He thinks that we can gather important information from the Iron Throne leaders.  He has given us a valuable book;  we must give this book to the Keeper of the Portal at Candlekeep, otherwise we'll never be allowed to enter.~ */ EXIT
END~

COMPILE ~override/deltan.d~

BUT_ONLY_IF_IT_CHANGES

 

At a rough guess, that should do it for vanilla BG1

 

Icen

Thanks for the code. I'll check it out. I'm just the clerk of this project, not a programmer.

Link to comment
Oh, the tweak pack seemed to install okay. But we need to put in checks or rearrange things because it's possible to install gems and potions require lore and then have all items identified. The second makes the first useless so we either put in a check OR we combine the two into subcomponents of the same component.
If you want to do this and get me a revised version, I'll host that instead. Like I said, I'm a bit busy to do a lot of testing, but hosting isn't a problem. And add Icen's code if you want, though it'd help if someone actually tested that (preferably whoever coded it :)).
Link to comment

Patch for the revised version is simple.

Add to both gems and potions require lore and identify all items components:

SUBCOMPONENT @XX // ~Lore Modifications~

Where XX is the tra entry.

 

Also move them both together at a point prior to the shopkeepers ability to identify component and make an adjustment to the Shopkeepers ability to identify component. It makes no sense to adjust the ability to identify IF all items have been identified. So I recommend having the shopkeepers component do a check for the identify all items component.

That means add to each of the shopkeeper subcomponents:

FORBID_COMPONENT setup-bg1tweaks 3020 ~Identify All Items component has been installed. That component makes this one useless.~

or whatever you want it to say. It should also work with a tra reference as well, but you'll have to test that.

Link to comment
(preferably whoever coded it :)).

 

Oh fine, I will get it to install. But I can't actually test in BG1, lack of my TotSC disc. ( :laugh: )

 

Icen

That's okay. Most everything will have some effect in a non-totsc install.
Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...