Jump to content

Easy way to identify items without having them auto-identified?


dnd4me

Recommended Posts

Is there a way to give the Glasses of Identification like 50+ charges, or some higher number than 3, where it's unlikely I'll run out of charges before I need to rest?

 

I don't like the mod that automatically identifies all items, because, when looking at a corpse, or chest, etc, it's handy to see that an item is blue, or needs to be identified. This lets you know that this is not a mundane item and is worth taking a closer look at.

 

What I don't like is that I often have no way of identifying items, as a ranger/cleric, without resting so I can get 3 charges on my Glasses of ID, or going to town to pay for the service.

 

Just looking for an easy remedy for this. I thought about using Shadow Keeper to jack my lore up really high, but apparently that's not possible.

 

Thanks in advance! =)

Link to comment

Lore is re-calculated at every level up, unfortunately.

 

Altering bg2_tweaks/setup-bg2_tweaks.tp2 as following alters the 'all items identified' component by giving every item a lore value of 1 and preventing them from being already identified.

--- BG2_Tweaks/Setup-BG2_Tweaks.tp2	2009-09-19 00:42:51.437500000 +0200
+++ BG2_Tweaks/Setup-BG2_Tweaks.tp2	2010-06-28 12:21:02.352318300 +0200
@@ -8085,7 +8085,7 @@
PRINT @1
COPY_EXISTING_REGEXP GLOB ~^.+\.itm$~ ~override~
  PATCH_IF (SOURCE_SIZE > 0x71) THEN BEGIN // protects against invalid files
-	WRITE_SHORT 0x42 0
+	WRITE_SHORT 0x42 1
  END
  BUT_ONLY_IF_IT_CHANGES

@@ -8098,26 +8098,6 @@

END

-// ensures are regexp search doesn't die
-COPY_EXISTING ~ar0087.are~ ~override/xr2400.are~
-			  ~ar0087.are~ ~override/xr2600.are~
-
-// add charges to items in game
-COPY_EXISTING_REGEXP GLOB ~^.+\.cre$~ ~override~
-						  ~^.+\.are$~ ~override~
-  PATCH_IF ("%SOURCE_FILE%" STRING_COMPARE_REGEXP "^.+\.cre$" = 0) BEGIN // if creature
-	READ_LONG 0x2bc "itm_off" ELSE 0
-	READ_LONG 0x2c0 "itm_num" ELSE 0
-  END ELSE BEGIN
-	READ_LONG  0x78 "itm_off" ELSE 0
-	READ_SHORT 0x76 "itm_num" ELSE 0
-  END
-  FOR (index = 0; index < itm_num; index = index + 1) BEGIN
-	READ_BYTE  ("%itm_off%" + 0x10 + (0x14 * "%index%")) "flag"
-	WRITE_BYTE ("%itm_off%" + 0x10 + (0x14 * "%index%")) ("%flag%" BOR 0b00000001) // adds identified flag
-  END
-  BUT_ONLY_IF_IT_CHANGES
-
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\/////\\\\\
/////												  \\\\\

Link to comment

You can't copy it in the tp2, since it's a diff file, AKA instructions for the 'patch' program to alter the file. Unfortunately, I can't find a GUI-driven program to perform patch operations.

 

Since the patch is rather short, you can perform the patches yourself: the @@ lines tell you (approximately) the point in the file where you should perform the changes, the lines that start with a - tell which lines to remove, the lines that start with a + the ones to add, and the other lines are for context.

 

Notepad is passable, but Notepad++ is way better (at the very least, Notepad risks corrupting the source file).

Link to comment
You can't copy it in the tp2, since it's a diff file, AKA instructions for the 'patch' program to alter the file. Unfortunately, I can't find a GUI-driven program to perform patch operations.

 

Since the patch is rather short, you can perform the patches yourself: the @@ lines tell you (approximately) the point in the file where you should perform the changes, the lines that start with a - tell which lines to remove, the lines that start with a + the ones to add, and the other lines are for context.

 

Notepad is passable, but Notepad++ is way better (at the very least, Notepad risks corrupting the source file).

 

Do I make the changes you mention above with or without the identify all items patch installed?

 

And just to confirm, it appears as though I just remove a bunch of lines (everything with a - before it) and alter the "WRITE_SHORT 0x42 0" to a "WRITE_SHORT 0x42 1" (changing the 0 to a 1). Correct?

Link to comment

I believe I made all the changes you listed but it didn't seem to work. I'm doing the Lilarcor quest now, and made a save before and after I get the sword. With the "all items identified" patch installed, it is auto-id'd with or without the changes you listed, unless I misunderstood what you wanted me to do. This is the first time I've tried editing such files.

Link to comment

Woohoo, finally got it to work, BUT! I didn't realize that ALL items are now unidentified by default. Meaning items that normally wouldn't have to be ID'd now need to be (everything). My goal was to have magical items, that normally need to be ID'd before use, remained blue on a corpse or chest, indicating they were worth picking up and selling/using, etc, but became easily identifiable.

 

So maybe have the game check to see if the "lore to identify" value is > 1, then to reset those, and only those, items to have a "lore to identify" value = 1. Leave the mundane items that don't need to be ID'd in the first place the way they are.

 

Is this possible without too much difficulty?

Link to comment
I'm too lazy to make a diff of it but you can replace the "WRTITE_SHORT 0x42 1" line with "WRITE_SHORT 0x42 THIS = 0 ? 0 : 1" and it should work like you want it to.

 

So make all the other changes the bigg mentioned and make the alteration above and that should work?

Link to comment
I'm too lazy to make a diff of it but you can replace the "WRTITE_SHORT 0x42 1" line with "WRITE_SHORT 0x42 THIS = 0 ? 0 : 1" and it should work like you want it to.

 

So make all the other changes the bigg mentioned and make the alteration above and that should work?

Yes. But it'll say "WRITE_SHORT 0x42 0" if you don't make all the changes.

Link to comment
I'm too lazy to make a diff of it but you can replace the "WRTITE_SHORT 0x42 1" line with "WRITE_SHORT 0x42 THIS = 0 ? 0 : 1" and it should work like you want it to.

 

So make all the other changes the bigg mentioned and make the alteration above and that should work?

Yes. But it'll say "WRITE_SHORT 0x42 0" if you don't make all the changes.

 

Awesome! Haven't gotten out of the dungeon yet to make absolute certain (ran patcher after entering dungeon), but I used an item viewer and it looks like it should have worked. Thanks so much!

Link to comment

Archived

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

×
×
  • Create New...