Jump to content

Potion of Mirrored Eyes does not work


Salk

Recommended Posts

Potion of Mirrored Eyes works by blocking specific spells. Any idea what resource basilisks use as their gaze attack? (Sorry, don't have a BGT install handy.)

 

There's also a question of whether this is a Fixpack issue--there are no basilisks in unmodded BG2, after all.

Link to comment

I believe it uses Petrification (Effect 134) through basill1.itm.

 

At least that is what NI shows. At the moment I am also without BGT so I extracted those infos from BG1 (basill.cre).

 

What might give us a lead is that the Protect from Petrification spells instead worked flawlessly during my game.

Link to comment

potn38 isn't available at all in BG2, I think, nor touched by the Fixpack.

 

That aside, it provides direct immunity to petrification and the gaze projectile (which it has to, basilisks are pretty much throwing eyedarts at you).

 

Are you getting this on a clean BGT install, or is it MK ULTRA modded? I know it's a file that gets overwritten and tweaked a lot (thank goodness it doesn't actually bounce the projectiles!)

Link to comment
I can't really say my BGT installation was "clean".

 

I have installed quite a number of Mods but I can't think of one which would want to change how the Potion of Mirrored Eyes works.

I think Quest Pack includes a Potion of Mirrored Eyes for the Potion Quest in the sewers.

Link to comment

This might be a lead, Mike1072.

 

I did have Quest Pack installed.

 

UPDATE: Yes, it is very likely that the Quest Pack is the cause of this bug in BGT. It modifies potn38.itm to add more protections from other spells that the original didn't include but in doing so, it has forgotten to keep two effects (probably because useless in a BG2 only game): immunity to petrification (134) and immunity to projectile - Gaze (64)

Link to comment

You can try saving this as a .tp2 and running it on top of questpack + BGT. If it doesn't work or blows up I'll fix it, but not until the next time I'm awake and in front of a computer.

 

BACKUP ~questpack/ImInYourFilesSim~
AUTHOR ~~
NO_IF_EVAL_BUG
BEGIN  ~Potion of Mirrored Eyes for Questpack + BGT~
COPY_EXISTING - ~potn38.itm~ ~override~
 PATCH_IF (SOURCE_SIZE > 0xa9) THEN BEGIN
READ_LONG  0x64 "ho"
READ_LONG  0x6a "eo"
READ_SHORT ("ho" + 0x20) "ei"
FOR (READ_SHORT ("ho" + 0x1e) "ec"; "ec" > 0x00; "ec" -= 0x01) BEGIN
  READ_LONG ("eo" + (("ec" + "ei" - 0x01) * 0x30) + 0x0e) "dr"
  PATCH_IF ("dr" > 0x07) THEN BEGIN
	READ_ASCII ("eo" + (("ec" + "ei" - 0x01) * 0x30)) ~ef~ (0x30)
	SET "ec" = 0x00
	INNER_PATCH_SAVE ~ef~ ~%ef%~ BEGIN
	  WRITE_SHORT  0x00 0xce
	  WRITE_LONG   0x04 0x3956
	  WRITE_LONG   0x08 0x00
	  WRITE_BYTE   0x0c 0x00
	  WRITE_ASCII  0x14 ~~ #8
	END
  END
END
 END
// BUT_ONLY
OUTER_SET "add" = 0x00
OUTER_SPRINT ~im~ ~~
ACTION_FOR_EACH ~item~ IN ~basilg1~
					  ~basill1~
					  ~basigaze~
					  ~eyegor01~
					  ~parabasi~ BEGIN
 ACTION_IF (FILE_EXISTS_IN_GAME ~%item%.itm~) THEN BEGIN
COPY_EXISTING ~%item%.itm~ ~override~
  PATCH_IF (SOURCE_SIZE > 0xa9) THEN BEGIN
	READ_LONG	0x64 "ho"
	READ_LONG	0x6a "eo"
	READ_SHORT   ("ho" + 0x1e) "ec"
	WRITE_SHORT  ("ho" + 0x1e) 0x01
	READ_SHORT   ("ho" + 0x20) "ei"
	READ_ASCII   ("eo" + ("ei" * 0x30)) ~at~ ("ec" * 0x30)
	DELETE_BYTES ("eo" + ("ei" * 0x30)) (("ec" - 0x01) * 0x30)
	WRITE_SHORT  ("eo" + ("ei" * 0x30) + 0x00) 0x92
	WRITE_LONG   ("eo" + ("ei" * 0x30) + 0x04) 0x00
	WRITE_LONG   ("eo" + ("ei" * 0x30) + 0x08) 0x01
	WRITE_ASCIIE ("eo" + ("ei" * 0x30) + 0x14) ~%item%~ #8
	INNER_ACTION BEGIN
	  OUTER_SPRINT ~im~ ~%ef%%im%~
	  OUTER_PATCH_SAVE ~im~ ~%im%~ BEGIN
		WRITE_ASCIIE 0x14 ~%item%~ #8
	  END
	  OUTER_SET "add" = "add" + 0x01
	  COPY_EXISTING ~bh3b1.spl~ ~override/%item%.spl~
		PATCH_IF (SOURCE_SIZE > 0x71) THEN BEGIN
		  READ_LONG	0x64 "ho"
		  READ_LONG	0x6a "eo"
		  READ_SHORT   ("ho" + 0x1e) "e2"
		  WRITE_SHORT  ("ho" + 0x1e) "ec"
		  READ_SHORT   ("ho" + 0x20) "ei"
		  DELETE_BYTES ("eo" + ("ei" * 0x30)) ("e2" * 0x30)
		  INSERT_BYTES ("eo" + ("ei" * 0x30)) ("ec" * 0x30)
		  WRITE_ASCIIE ("eo" + ("ei" * 0x30)) ~%at%~
		END
	  // BUT_ONLY
	END
  END
BUT_ONLY
 END
END
COPY_EXISTING ~potn38.itm~ ~override~
 PATCH_IF (SOURCE_SIZE > 0xa9) THEN BEGIN
READ_LONG	0x64 "ho"
READ_LONG	0x6a "eo"
READ_SHORT   ("ho" + 0x1e) "ec"
WRITE_SHORT  ("ho" + 0x1e) ("ec" + "add")
READ_SHORT   ("ho" + 0x20) "ei"
INSERT_BYTES ("eo" + (("ei" + "ec") * 0x30)) ("add" * 0x30)
WRITE_ASCIIE ("eo" + (("ei" + "ec") * 0x30)) ~%im%~
 END
// BUT_ONLY

Link to comment

You are very very kind, Nythrun!

 

I'd love to give it a try but at the moment I gave up playing and won't do it again untill around Xmas.

 

What I had done was just to copy paste the two missing effects from the unmodded potn38.itm to SimDing0's modified one so to keep the benefits of both version but I am sure your method is much safer.

 

I will copy it and use it when time is right then.

 

Thanks again!

Link to comment
Sorry :band:

 

It's probably time for the "Setup-Yank_File_Out_Of_Override_Temporarily.tp2" mod, unless you're interested in doing weidu --change-log potn38.itm (and probably about a thousand other files).

It's OK. Just commented out the potn38 lines from Questpack for future installs, and copied the .itm file from a patched basic install and it seems to work fine now. At least the issue is isolated.

Link to comment

Archived

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

×
×
  • Create New...