Jump to content

Minor 2da corrections


Recommended Posts

I posted about some errors in two of BG2's 2da files a couple of months ago in the BGT forum, because BGT itself had tried to correct them (unsuccessfully by the time, but that was remedied when I reported it). I figured back then that this is really Fixpack material, but didn't post it here because of the low activity. Now is the time.

 

In vanilla BG2, both LOREBON.2da and SKILLRNG.2da have a line that is incorrect according to any Baldur's Gate manual:

 

- LOREBON.2da sets the lore bonus for having an intelligence/wisdom score of 15 to 5. The correct value is 3.

- SKILLRNG.2da sets the ranger's stealth ability at level 2 to 20. The correct value is 21.

 

Since my report, BGT corrects this by doing the following (the code is Ascension's work):

 

COPY_EXISTING ~LOREBON.2DA~ ~override~
 SET_2DA_ENTRY 15 1 2 ~3~
BUT_ONLY_IF_IT_CHANGES

COPY_EXISTING ~SKILLRNG.2DA~ ~override~
 SET_2DA_ENTRY 2 1 2 ~21~
BUT_ONLY_IF_IT_CHANGES

 

This should be adopted by the Fixpack, as it is a plain BG2 issue.

 

--------------

 

In addition to what I had originally discovered, I reckon that BGT does some modifications to two more 2da files that are meant as general corrections as well. Here is the whole section of setup-BGT.tp2 that I am talking about:

 

//////////////////////////////////////////////////////////////////
//Ruleset
//////////////////////////////////////////////////////////////////

COPY_EXISTING ~ALIGNMNT.2DA~ ~override~
FOR( cnt=0; cnt<50; cnt=cnt+1 ) BEGIN		//standard SoA 51 rows
  READ_2DA_ENTRY cnt 0 10 "row_name"
  PATCH_IF( (("%row_name%" STRING_COMPARE_CASE "FIGHTER_THIEF")=0)	  OR
		 (("%row_name%" STRING_COMPARE_CASE "FIGHTER_MAGE_THIEF")=0) OR
		 (("%row_name%" STRING_COMPARE_CASE "MAGE_THIEF")=0)		 OR
		 (("%row_name%" STRING_COMPARE_CASE "CLERIC_THIEF")=0)) BEGIN
 SET_2DA_ENTRY cnt 2 10 ~1~
 SET_2DA_ENTRY cnt 3 10 ~1~
  END
END
BUT_ONLY_IF_IT_CHANGES

COPY_EXISTING ~LOREBON.2DA~ ~override~
 SET_2DA_ENTRY 15 1 2 ~3~ // Wisdom 15 correction
BUT_ONLY_IF_IT_CHANGES

COPY_EXISTING ~SKILLRAC.2DA~ ~override~
 SET_2DA_ENTRY 2 4 8 ~15~ // Elf Move Silently correction
 SET_2DA_ENTRY 4 4 8 ~10~ // Half-Elf Move Silently correction
 SET_2DA_ENTRY 5 4 8 ~20~ // Halfling Move Silently correction
 SET_2DA_ENTRY 6 3 8 ~10~ // Half-Orc Find Traps correction
BUT_ONLY_IF_IT_CHANGES

COPY_EXISTING ~SKILLRNG.2DA~ ~override~
 SET_2DA_ENTRY 2 1 2 ~21~
BUT_ONLY_IF_IT_CHANGES

 

For ALIGNMNT.2da, I know that these corrections are done by the Fixpack as well, so that's all good.

But as for SKILLRAC.2da, this is also relevant for the Fixpack and hasn't been included yet.

 

And still further, I now realize that the last line of change to SKILLRAC.2da in the BGT code is probably a mistake. The default "Find Traps" value for half-orcs is 5, the same as for humans, and the manual doesn't say that half-orcs get any bonuses, so changing it to 10 seems wrong to me here.

Link to comment

But as for SKILLRAC.2da, this is also relevant for the Fixpack and hasn't been included yet.

 

I'm aware of the SKILLRAC.2DA issue. In fact, I was the one who provided that fix. However, I'm not entirely convinced that it belongs in the fixpack since it's entirely based on PnP rules and the game's manual.

 

For what it's worth, a slightly expanded version of that fix is provided within RR as a stand-alone component.

Link to comment

In vanilla BG2, [...] LOREBON.2da [...] have a line that is incorrect according to any Baldur's Gate manual:

- LOREBON.2da sets the lore bonus for having an intelligence/wisdom score of 15 to 5. The correct value is 3.

That's kind of funny, because in both manuals (BG1 & BG2) the INT/WIS tables give +3 Lore @ 15. But also, both manuals state under Lore (pg. 96 and 101 respectively):

"E.g. A character with 18 Wisdom (+10) and 15 Intelligence (+5) would have +15 to Lore."

 

Let's agree that's a typo, however.

 

And still further, I now realize that the last line of change to SKILLRAC.2da in the BGT code is probably a mistake. The default "Find Traps" value for half-orcs is 5, the same as for humans, and the manual doesn't say that half-orcs get any bonuses, so changing it to 10 seems wrong to me here.

EDIT: I was referring to RR's adjustment on this, but aVENGER beat me to it. Suffice to say, it would seem that the BGT changes are not really Fixpack-material (it's an incomplete PnP adjustment).

Link to comment

That's kind of funny, because in both manuals (BG1 & BG2) the INT/WIS tables give +3 Lore @ 15. But also, both manuals state under Lore (pg. 96 and 101 respectively):

"E.g. A character with 18 Wisdom (+10) and 15 Intelligence (+5) would have +15 to Lore."

 

Let's agree that's a typo, however.

 

Yes, I still maintain that +3 is the correct value. I simply don't think that giving the same lore bonus for both 15 and 16 WIS/INT is intended.

So can we agree that the changes regarding lorebon.2da and skillrng.2da should be in?

 

 

As for skillrac.2da ...

I'm aware of the SKILLRAC.2DA issue. In fact, I was the one who provided that fix.

 

Heh, I wasn't aware of that. The code in the second post looks awfully familiar. :D

 

I'm not entirely convinced that it belongs in the fixpack since it's entirely based on PnP rules and the game's manual.

 

So wait, you're saying the modified values are backed consistently both by PnP rules AND the manual? I couldn't have forged a better argument! :D Seriously though, I have no explanation as to why the vanilla values ought to be the correct ones. skillrac.2da in BG2 completely matches the values from the PnP table, EXCEPT for those 3 or 4 entries. Do we really believe that the developers INTENTIONALLY changed these few, specific values for the game? For what porpose? And then they also produced a manual that deviates from their own "decision" but "accidentally" matches PnP again? To me, this is the same as with the second level value in skillrng.2da - there is no way that changing "21" to "20" was on purpose, it was just a mistake when implementing the PnP values into the game.

So yeah, I understand this is not my call, but I'm still advocating that the changes to skillrac.2da are actually Fixpack material, no matter where they have already been implemented as a tweak.

Link to comment

Just to briefly butt in on SKILLRAC, the BG1 and BG2 manuals do not give the same values. Which one takes precedence?

 

Well, the differences exist because the two games have different skills implemented, so for the BG2 Fixpack, the BG2 manual takes precedence. But ... way more importantly ... you incidentally led me to something very interesting. I've got it! It all makes sense now! I'll explain:

 

Open up a BG1 manual. Now open up SKILLRAC from BG1. We notice that in BG1, there is no discrepancy between the 2da and the manual, they are perfectly consistent.

 

In BG1, there are only 4 skills that are affected by dexterity. In BG2 the skills are changed. Specifically, the skill "Stealth" is split into "Move Silently" and "Hide in Shadows", plus two more skills are added.

 

Go back to SKILLRAC from BG1. Now open up SKILLRAC in vanilla BG2 with the disputed values. Compare the two tables. From the structure of BG2's SKILLRAC you can see that Move Silently never made the split. The Move Silently column is just the old Stealth column, as a matter of fact the entire table from BG1's SKILLRAC is incorporated and UNTOUCHED within BG2's SKILLRAC table. When making up SKILLRAC for BG2, the SKILLRAC from BG1 was taken and only new columns were added, but it was overlooked that the splitting of Stealth actually required some adjustments for the Move Silently column that emerged out of the old Stealth column! That's also why the 3 disputed values are ALL "Move Silently" values. It's not a coincidence: All NEW columns were ADDED correctly, according to PnP, the same way that in BG1 it was all according to PnP. It's only the old fourth column where the values don't match PnP, because this column wasn't added, it used to be Stealth, and since Stealth isn't Stealth anymore, the values for that column aren't correct anymore like they were in BG1.

 

Also, I can even explain why it's exactly elves, half-elves, and halflings, but no other races, that have the wrong Move Silently bonus now. Again: not a coincidence anymore! These three particular races are the only ones whose Move Silently bonuses are not identical to their Hide in Shadows bonuses! (Beware! Bonuses, not overall values!) For those races whose MS and HiS bonuses ARE identical, the old Stealth value simply is the new value for BOTH skills, and therefore the non-adjustment of the old Stealth column did not lead to wrong values for these races. Elves, half-elves and halflings, however, have been assigned non-identical bonuses for MS on the one hand and HiS on the other hand, so the old Stealth value cannot simply be applied to both. As Stealth was split and the emerged Move Silently values were NOT adjusted (because Bioware simply took the old SKILLRAC and only added new columns), this non-adjustment is now reflected in the wrong bonuses for these particular races.

 

Anyone still with me? :D

 

 

Oh, and for the half-orc's Find Traps value, I don't have any explanation. :D (BG2 manual <> PnP inconsistency)

Link to comment

Like aVENGER says, it's a PnP rules issue. We tend to frown on those.

 

In BG2, hide and move silently are interchangeable. They're the same value, split in two. There's no evidence BioWare wanted or even cared that they were different.

Link to comment

But as for SKILLRAC.2da, this is also relevant for the Fixpack and hasn't been included yet.

 

I'm aware of the SKILLRAC.2DA issue. In fact, I was the one who provided that fix. However, I'm not entirely convinced that it belongs in the fixpack since it's entirely based on PnP rules and the game's manual.

Can I clarify if

SET_2DA_ENTRY 6 3 8 ~10~ // Half-Orc Find Traps correction

is a mistake?

Link to comment

Can I clarify if

SET_2DA_ENTRY 6 3 8 ~10~ // Half-Orc Find Traps correction

is a mistake?

 

Not a mistake, but rather a PnP based adjustment.

 

The Half-Orc bonuses/penalties are not described in the BG2 manual. That value is taken from the "Player's Option: Skills and Powers" book.

Link to comment

Like aVENGER says, it's a PnP rules issue. We tend to frown on those.

 

In BG2, hide and move silently are interchangeable. They're the same value, split in two. There's no evidence BioWare wanted or even cared that they were different.

 

Well ... I'm not sure what to make of this. "We tend to frown on PnP rules issues", and "Bioware probably didn't care" - is this meant to outweigh my findings? I honestly don't mean to offend anyone, but that wouldn't be enough, not after what I have brought forward. I more than welcome you to dispel my doubts about the vanilla SKILLRAC values.

 

Technically yes, it is a PnP rules issue, but what does that fact alone mean? As I demonstrated, Bioware quite probably WANTED to always have exactly the PnP SKILLRAC values in the first place! This is supported both by the status of SKILLRAC in BG1, and by all the correctly added values in BG2 with only the not-added-but-not-adjusted values remaining as erroneous deviations from PnP in vanilla BG2, but in general it WAS probably meant to be exactly like PnP. The mistake only occured because Stealth ... I'm starting to repeat myself. Whoever advocates that DESPITE all of this, the REAL intention was to either deliberately keep MS identical to HiS or just deliberately deviate from PnP, respectively, should put forward something as convincing for that position as what I found for the other. I don't know how better to express my doubts.

 

As for the second point, yes, let's say HiS and Move Silently are the "same" value, but split in two. That's exactly why the dilemma with the differing MS/HiS bonuses for elves/half-elves/halflings is even possible to begin with. But as for determining what is more likely to be the "correct" behavior ("split into 2 identical values" or "allow to be split into 2 non-identical values"), one can argue either way with no better arguments for either, because in the end this comes down to "hypothetical Bioware decision" vs. "PnP and manual" again. Therefore, I'll make it simple. What is more convincing: that there is merely NO EVIDENCE for Bioware wanting them to be different, or that it actually was all meant to be like PnP in the first place and is only incorrect now because the BG1 SKILLRAC table was blindly copied?

 

-------------------

 

With respect to the half-orc's Find Traps ability, this is a separate issue now. I'm not advocating either position anymore, given the inconsistency between PnP versus BG2+manual in this case. Anyone able to make a decisive call on this should go ahead.

Link to comment

Not having access to the relevant resources, I have to go off the provided code and problem descriptions. Brevity likely would have served you better in relaying the exact issue. I will state, in general, you have to prove that BioWare wanted to do something (or that they were wrong). The evidence for them not wanting to do something already exists: because they didn't do it. ;-)

 

If the values do not match the manual, then they should (but are they the only values in this table not to match, aside from the unimplemented skills, or are there more differences that would imply that the manual is useless here?). (If BioWare put it in print, then it's their own damn fault.)

Link to comment

I find myself enjoying this discussion with you. :) Am I strange? :D

 

I will state, in general, you have to prove that BioWare wanted to do something.

 

I did exactly that in post #6. I demonstrated conclusively that Bioware meant to implement the correct SKILLRAC values. And I also figured out and subsequently presented the reason as to why, contrary to Bioware's intention, the values we now find in BG2 happen to be incorrect.

 

The evidence for them not wanting to do something already exists: because they didn't do it. ;-)

 

Heh ... but by the same logic one could argue that every bug isn't one: Since they didn't do it correctly, they meant it to be wrong.

 

Also, please don't assume that I wouldn't agree with the general principle you are putting forward - I do! In fact, ever since I got to know the BG2 Fixpack and started visiting this forum a couple of years ago, I have always more than agreed with the premise that the Fixpack should only fix things which Bioware clearly screwed up, and to this day I am thrilled to see that this premise has ever prevailed. (Saying that you, devSin, have played a huge part in that effort would be a gross understatement.) That premise is what makes this Fixpack not just great, but right. Having said that, I am now putting myself in your position. I understand exactly what you mean: You are feeling that the change I advocate is a violation of that very principle. Except that ... it is not. Admittedly, in this case, the screwing-up by Bioware (i.e. sole justification for Fixpack) isn't completely obvious at first sight. But given what I have found, if you follow the line of reasoning I laid out in the earlier post, then Bioware's mistake and its occurrence become perfectly obvious. Therefore, rather than being a violation of the Fixpack's standards, I maintain that the proposed changes to SKILLRAC are just the opposite.

 

I now also think I was a bit careless with my wording earlier. Because actually, this isn't even a "PnP rules issue". Derived from my findings, I should have said that this is an oversight by Bioware which merely happens to involve PnP values. The PnP values themselves aren't the problem, as Bioware meant to have the correct SKILLRAC table anyway. Therefore, there never was a PnP rules issue. It is the sloppy transition that makes it look as if there is.

Link to comment
I did exactly that in post #6. I demonstrated conclusively that Bioware meant to implement the correct SKILLRAC values. And I also figured out and subsequently presented the reason as to why, contrary to Bioware's intention, the values we now find in BG2 happen to be incorrect.
But you didn't post the tables, or at least the relevant parts. So I'm left trying to decipher what the actual values are, without access to the tables, the desire to look for them on IESDP, nor the memory to actually recall correctly what it is (even I have forgotten most of what I once knew). And as is typical for me, I read through your post and reached an incorrect conclusion. :-)

 

So after your followup, I checked the 2DA on IESDP, and I saw instantly what you're saying.

 

Heh ... but by the same logic one could argue that every bug isn't one: Since they didn't do it correctly, they meant it to be wrong.
You can, and often you should. We're guided either to something that's so inherently silly it couldn't possibly have been intended, or something that is flat-out broken. Guessing which values BioWare intended among two possible, fully functional choices, is the place where you really have to stop and examine the situation.

 

If it doesn't match the manual, then we get to change it (we've used it as justification before, and it's also the justification for the other table fixes here). But that the table itself is simply an extension of the original doesn't immediately signal an issue (if the PnP rules didn't exist, what would be the expectation for those values?).

 

In this case, the important argument you make is that the Hide in Shadows row has compliant values. It's hard to argue that half of what the game uses as a single value is supposed to be compliant and the other half was really intended not to be.

 

Since it involves thief skills, this one is aVENGER's call. It doesn't bother me, but it will change slightly these scores, now in the second decade of the game's life (since these are calculated at runtime IIRC, if anybody is depending on the old scores, they will have changed after installing the fixpack).

Link to comment

Since it involves thief skills, this one is aVENGER's call. It doesn't bother me, but it will change slightly these scores, now in the second decade of the game's life (since these are calculated at runtime IIRC, if anybody is depending on the old scores, they will have changed after installing the fixpack).

 

We can have the 2DA match up with the table in manual with minimal effort, so I guess I'm fine with that. The difference isn't that big anyway, just 5 points per each entry.

 

However, I wouldn't do anything past that i.e. the PnP inspired Half-Orc bonus isn't in the manual so it shouldn't go into the fixpack. Final code:

 

// Fix the incorrect thieving skill racial bonus for elves, half-elves and halflings

COPY_EXISTING ~SKILLRAC.2DA~ ~override~
 SET_2DA_ENTRY 2 4 8 ~15~ // Elf Move Silently correction (was 20)
 SET_2DA_ENTRY 4 4 8 ~10~ // Half-Elf Move Silently correction (was 15)
 SET_2DA_ENTRY 5 4 8 ~20~ // Halfling Move Silently correction (was 25)
BUT_ONLY_IF_IT_CHANGES

Link to comment

Archived

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

×
×
  • Create New...