Page 1 of 1

Shadowkeeper effects codes?

Posted: Wed May 19, 2004 3:59 pm
by Luther
Is there a list of the special abilities/effects codes out there anywhere for SK? When you look in Shadowkeeper, you have no idea what does what.

The reason is in my current game, I installed a lot of mods. For the most part they all work well, but I have run into some snags. The current issue is I tweaked my PC so that he is a multi-class Generic archer/Thief. Generic archer is a new class from the tactics mod. So I had some problems along the way and had to reinstall everything a bunch of times. Now, my PC has become an Anti-Paladin/Thief. Anti-Paladin is a class also with Tactics so I'm thinking this overwrote the Archer class of my character when I reinstalled. I'm not really complaining because my character is pretty bad-ass now. Archer abilities up to about 10th level, 5 levels of Anti-Paladin, plus thief skills! Imagine an Anti-Paladin wielding Carsomyr!!!

I'm only asking because when I created the character I pictured him as an Archer-thief and want to know what special abilities are applied to the Generic archer. These are extra THACO for missle and called shots. If anyone has a list of SK effects codes and what they do, please point me in the right direction. :cool:

Posted: Wed May 19, 2004 5:28 pm
by nephtu
Well..

The easiest way to find the specifics you're looking for is to gen up a character of the class & level you want and match the ability code lines by cutting & pasting. I don't know of a master list for anything other than CLUA codes, sorry.

Posted: Wed May 19, 2004 6:05 pm
by UserUnfriendly
Time Stop Immunity
Type: 0x00000136
Param1: 0
Param2: 1
Flags: 0x00000001
Time: 0
Prob: 100
Target: 0x00000002

Permanent Spell Turning (all follow the above format, BTW)
0x000000C7
10
0
0x00000001
0
100
0x00000002

(Second affect, must be added for the grand finale)
0x000000CB
0
10
0x00000001
0
100
0x00000002

Permanent Improved Alacrity
0x000000BC
0
1
0x00000001
0
100
0x00000002

Permanent Mantle (all four are different affects)
0x00000078
0
2
0x00000001
0
100
0x00000002

0x00000078
1
1
0x00000001
0
100
0x00000002

0x00000078
2
1
0x00000001
0
100
0x00000002

0x00000078
3
1
0x00000001
0
100
0x00000002

Effects Immunities (Here's the general affect, long list after)
0x00000065
0
# (put #'s from list here, for specific affects)
0x00000001
0
100
0x00000001

5 is Charm Specific Creature,
13 is Death,
24 is Horror,
25 is Poison,
38 is Silence,
40 is Slow,
45 is Stun,
55 is Slay Creature,
60 is Miscast Magic,
71 is Sex Change,
74 is Blindness,
76 is Feeblemindedness,
78 is Disease,
80 is (Deafness),
106 is Fail Morale,
109 is Hold,
114 is Can't Cast Spells,
128 is Confusion/Rigid Thinking/Fear,
134 is Petrification,
144 is Disable Buttons,
145 is Disable Spell Casting Abilities,
146 is Cast Spell (Mage/Cleric/etc.),
147 is Learn Spell,
148 is Cast Spell (Like Scrolls),
175 is Hold Creature Type,
209 is Kill 60HP,
210 is Stun 90HP,
211 is Imprisonment,
213 is Maze,
216 is Level Drain,
217 is Unconsciousness 20 HP,
221 is Remove Spell Protections,
230 is Remove Magical Protections,
231 is Time Stop,
235 is Wing Buffet,
238 is Disintegrate,
240 is Remove Physical Protections,
241 is Control Creature,
244 is Drain Wizard Spell,
263 is Backstab (this actually resets backstab to x1),
264 is Drop Weapons in Panic,
272 is Summon Insects/Insect Plague/Creeping Doom,

this is all i know...aside from experiments using the technique nephtu described....
:p

Posted: Fri May 21, 2004 7:52 am
by Kaitsuburi
Wow, this is some hardcore BG2 hacking! Loving it though :D Thanks!

-kaitsuburi

Posted: Sun Sep 28, 2008 9:20 pm
by Zeuts
Some more affect info

You might think it a little odd for me to be posting this 4 years after the last post (lol), but I was playing BG2 again and started messing with different affects. I figured that posting my findings was the only decent thing to do, so here's a bit more info to add to the list for affect editing. ;)


SPELL MEMORIZATION AFFECTS -------------------------------------------

Type: (0x0000002A for mage, 0x0000003E for cleric)
Param 1: (Number of extra spells)
Param 2: **(Spellbook level to edit)
Flags: 0x00000009
Time: 0
Probability: 100
Target: 0x00000002
Leave resources blank

** NOte: For parameter 2, the spell levels are determined as follows:
Level 1: 1
Level 2: 2
Level 3: 4
Level 4: 8
Level 5: 16
Level 6: 32
Level 7: 64
Level 8: 128
Level 9: 256

ALL Spell levels Effected CLERIC: 127
ALL Spell Levels Effected MAGE: 511

Notice a pattern yet?

Here's the deal. The parameter for each spell level is equal to 2^(Spell level - 1) Therefore, to edit level 9 spells, the paramter is 256, which = 2^(9 - 1) or 2^8. Setting the parameter to 1 LESS than that required for a particular spell level, will cause ALL SPELL LEVELS BELOW IT to be affected.
For instance: Inputting 255, would effect spell levels 1 through 8, but not spell level 9.
Every parameter value is mapped to different spell levels. There is a particular pattern to it, but for practical purposes, if you want each spell level to have a different number of bonus memorization slots, you'll need 9 different affects, one with each 2^(spell level - 1) parameter.
I don't feel like explaining the pattern they used, this should be enough for your spell memorization needs.

Note: Cleric spells only go up to level 7, thus putting in 256 obviously won't work if you're making a cleric spell affect.


SAVING THROWS -------------------------------------------

Type: 0x000000XX (see values for XX below)
Param 1: (Amount of bonus)
Param 2: 0
Flags: 0x00000009
Time: 0
Probability: 100
Target: 0x00000002

XX values:
21 = save vs death
22 = save vs wands
23 = save vs pollymorph
24 = save vs breath
25 = save vs spells


THAC0 -------------------------------------------

Type: 0x00000116
Param 1: (Amount of bonus)
Param 2: 0
Flags: 0x00000009
Time: 0
Probability: 100
Target: 0x00000002


Speed Factor (I think, but don't quote me on this. . .) ----------------

Type: 0x000000BE
Param 1: (Amount of bonus)
Param 2: 0
Flags: 0x00000009
Time: 0
Probability: 100
Target: 0x00000002


AC -------------------------------------------

Type: 0x00000000
Param 1: (Amount of bonus)
Param 2: 0
Flags: 0x00000009
Time: 0
Probability: 100
Target: 0x00000002


Anyway, that's about it for now. I hope somebody finds this helpful. :)

Posted: Wed Apr 29, 2009 12:28 pm
by klezorn
hehe you did good to post it, even after years of inactivity. now some months later i was searching exactly for what you have perfectly explained and described, so big f*king thx! :D

now i'm finally going to be a no less powerful mage than edwin :) after all i'm a bhaalspawn. (and i can remove edwins necklace from my playerchar with shadowkeeper gg)

Posted: Tue Feb 08, 2011 8:43 am
by Revi
Zeuts wrote:You might think it a little odd for me to be posting this 4 years after the last post (lol)
Not at all, that's how I play BG2 too, returning to it every few years when I am bored of the boring soup that are today's RPGs. Thank you for a truly useful and informative post. I would love to see a lot more posts like this that really delve into the game engine mechanics... I had a lot of fun myself a while ago figuring out all various THAC0 mechanics, pointless as it may seem for such an old game.

Posted: Tue Feb 08, 2011 9:19 am
by Revi
One question: why is the target for most of these 0x00000002, but then when you list the immunities you say they should all be applied to target 0x00000001?

[quote="Zeuts]Effects Immunities (Here's the general affect"]

Oh, and here is the one for bonus damage:

0x00000049
#
0
0x00000009
0
100
0x00000002

And this is bonus THAC0:

0x00000116
#
0
0x00000009
0
100
0x00000002

Both were ripped from the kensai kit.

Posted: Sat Jul 21, 2012 3:41 pm
by Revi
Immunity to wing buffet works only part of the way; you still get the unconsciousness effect. Is there a way to make a character immune to this effect, too?

EDIT: A lucky find, this page has ALL the OPcode effects on it!

http://iesdp.com/IesdpOld/Effects/bg2e80h.htm

The answer to my question turned out to be:

39 is Unconsciousness

Posted: Sat Jul 21, 2012 5:55 pm
by Aeronth
Revi wrote:EDIT: A lucky find, this page has ALL the OPcode effects on it!
No, it doesn't. The actual list is... slightly longer.

http://iesdp.gibberlings3.net/opcodes/bg2tob.htm

Posted: Sun Jul 22, 2012 9:13 pm
by Revi
Thanks Aeronth!!!

Posted: Mon Jul 23, 2012 8:13 am
by Revi
Strange, I *should* be immune to Time Stop now, but I'm not.

Used the following affect:

0x00000065
0
231
0x00000001
0
100
0x00000001

...and also tried this after reading someone's suggestion that the "Flag should always be set to 0x09 (Permanent-permanent)":

0x00000065
0
231
0x00000009
0
100
0x00000001

Think the target might be wrong or something, because it does succeed in making me immune to my own Time Stop (how very useful, lol...).

Can anyone help?

Posted: Mon Jul 23, 2012 9:26 am
by Aeronth
I never use Protection from Opcode. It looks dirty.

I'd suggest one of these :
  • #206 (0x0CE) Spell: Protection from Spell [206]
  • #310 (0x136) Protection: from Timestop [310] (sounds perfect, though I find hard to believe there's an Opcode for this...)
You will find them in G3's Opcode list.

Posted: Mon Jul 23, 2012 11:48 am
by Revi
Thanks Aeronth! Will try both.

Posted: Mon Jul 23, 2012 3:11 pm
by Revi
Also wondering: Is there any way to remove the cooldown priod that is triggered by potions and quick-use items (wands, etc.) by setting affects? Even with an insane cast speed and improved alacrity my characters still stand around and do nothing for a while when trying to use a wand after a potion or some combo like that.

EDIT: After extensive testing and cheating, it seems there is no way to do this. The fact that you can use 1 item per round must, until proven otherwise, be considered hardcoded.

Posted: Mon May 20, 2013 5:41 pm
by el fenix
Hi. Great stuff but i wonder if anyone knows the code for the backstab multiplier? Any help would be greatly appreciated!!!!

Thanks! ;)