Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Dark Dreams of Furiae - a new module for NWN:EE! Buy now
Attention, new and old users! Please read the new rules of conduct for the forums, and we hope you enjoy your stay!

TobEx: 01

DanBoulosDanBoulos Member Posts: 146
edited August 2012 in Fixed
Current Behaviour:

Actions AddKit() and AddSuperKit() uses the low short of the argument only, so both AddKit(BARBARIAN [0x40000000]) AddKit(0x80000000 [WILDMAGE]) will check for AddKit(0)

Expected Behaviour:

Actions AddKit() and AddSuperKit() use the entire int, so AddKit(BARBARIAN [0x40000000]) AddKit(0x80000000 [WILDMAGE]) will check for 0x4000000 and 0x8000000, respectively


Fix AddKit(), and AddSuperKit() action to properly use SetKit()

Post edited by Bhryaen on


  • WispWisp Member Posts: 1,102
    Confirmed. AddKit and AddSuperKit can add WILDMAGE and BARBARIAN.

  • cmorgancmorgan Member Posts: 707
    @Wisp - can you please help me figure out if Kit() now matches this new behavior? I cannot get dialog to recognize either .ids symbol or .ids # using Kit().

  • WispWisp Member Posts: 1,102
    I can't reproduce any problem.
    <<<<<<<< .../fl/innke2.d EXTEND_BOTTOM innke2 0 + ~Kit(Player1,BLACKGUARD)~ + ~Waive that fee! Waive it! *shake fist*~ + 3 END >>>>>>>> COMPILE ".../fl/innke2.d"
    works just fine for me.

  • cmorgancmorgan Member Posts: 707
    edited August 2012
    Please try the vanilla ones - just too make sure it is me screwing up and not the game having a trouble:

    <<<<<<<< .../fl/innke2.d EXTEND_BOTTOM innke2 0 + ~Kit(Player1,TRUECLASS)~ + ~[PC] <PLAYER1> is a 0x00004000 TRUECLASS. Vanilla. Really. I know, it's amazing. Just a stranger on the bus, trying to make his way home.~ + 3 + ~Kit(Player1,BERSERKER)~ + ~[PC] <PLAYER1> is a 0x00000001 BERSERKER... and just found out BG:EE will not have the ability to import Kensai/Blackguard/Cleric of Talos triple classed Wild Elves that can use Thieve's items.~ + 3 + ~Kit(Player1,WIZARDSLAYER)~ + ~[PC] <PLAYER1> is a 0x00000002 WIZARDSLAYER so keep them, away from everyone in this blasted game except Valygar.~ + 3 + ~Kit(Player1,KENSAI)~ + ~[PC] <PLAYER1> is a 0x00000004 KENSAI so they are a long way from Kara-Tur.~ + 3 + ~Kit(Player1,CAVALIER)~ + ~[PC] <PLAYER1> is a 0x00000008 CAVALIER but their attitude has improved greatly recently.~ + 3 + ~Kit(Player1,INQUISITOR)~ + ~[PC] <PLAYER1> is an 0x00000010 INQUISITOR because No One Expects The Spanish Inquisition!~ + 3 + ~Kit(Player1,UNDEADHUNTER)~ + ~[PC] <PLAYER1> is an 0x00000020 UNDEADHUNTER so they must be friends with Buffy.~ + 3 + ~Kit(Player1,MAGESCHOOL_ABJURER)~ + ~[PC] <PLAYER1> is an 0x00000040 MAGESCHOOL_ABJURER so they stay away. From everything.~ + 3 + ~Kit(Player1,MAGESCHOOL_CONJURER)~ + ~[PC] <PLAYER1> is a 0x00000080 MAGESCHOOL_CONJURER which means they are likely to test the summoning limit.~ + 3 + ~Kit(Player1,MAGESCHOOL_DIVINER)~ + ~[PC] <PLAYER1> is a 0x00000100 MAGESCHOOL_DIVINER so you can get water practically anywhere they have a stick.~ + 3 + ~Kit(Player1,MAGESCHOOL_ENCHANTER)~ + ~[PC] <PLAYER1> is a 0x00000200 MAGESCHOOL_ENCHANTER and so cute, so cuddly... so dreamy...~ + 3 + ~Kit(Player1,MAGESCHOOL_ILLUSIONIST)~ + ~[PC] <PLAYER1> is a 0x00000400 MAGESCHOOL_ILLUSIONIST so don't believe what you see.~ + 3 + ~Kit(Player1,MAGESCHOOL_INVOKER)~ + ~[PC] <PLAYER1> is a 0x00000800 MAGESCHOOL_INVOKER so they swear alot. Or catch fire. Or swear while catching fire.~ + 3 + ~Kit(Player1,MAGESCHOOL_NECROMANCER)~ + ~[PC] <PLAYER1> is a 0x00001000 MAGESCHOOL_NECROMANCER, somehow escaped from the Fixpack forums, now resurrecting old topics in BG:EE land.~ + 3 + ~Kit(Player1,MAGESCHOOL_TRANSMUTER)~ + ~[PC] <PLAYER1> is a 0x00002000 MAGESCHOOL_TRANSMUTER so no worries on the whole "supply of gold" thing.~ + 3 + ~Kit(Player1,MAGESCHOOL_GENERALIST)~ + ~[PC] <PLAYER1> is a 0x00004000 MAGESCHOOL_GENERALIST which still means a serious ass-whoopin' if anger is involved.~ + 3 + ~Kit(Player1,FERALAN)~ + ~[PC] <PLAYER1> is a 0x00008000 FERALAN which means "incomprehensibly dirty" to anyone but Tarzan.~ + 3 + ~Kit(Player1,STALKER)~ + ~[PC] <PLAYER1> is a 0x00010000 STALKER so make sure Taylor Swift is not around.~ + 3 + ~Kit(Player1,BEASTMASTER)~ + ~[PC] <PLAYER1> is a 0x00020000 BEASTMASTER which is a really old movie...~ + 3 + ~Kit(Player1,ASSASIN)~ + ~[PC] <PLAYER1> is a 0x00040000 ASSASIN but don't let on, or it is curtains for you, see?~ + 3 + ~Kit(Player1,BOUNTYHUNTER)~ + ~[PC] <PLAYER1> is a 0x00080000 BOUNTYHUNTER so Dog is his best friend.~ + 3 + ~Kit(Player1,SWASHBUCKLER)~ + ~[PC] <PLAYER1> is a 0x00100000 SWASHBUCKLER. To us commmoners, that should read Pirate.~ + 3 + ~Kit(Player1,BLADE)~ + ~[PC] <PLAYER1> is a 0x00200000 BLADE so a rogue, a daring Dumas-wannabe...~ + 3 + ~Kit(Player1,JESTER)~ + ~[PC] <PLAYER1> is a 0x00400000 JESTER but that job is really taken up by Imoen.~ + 3 + ~Kit(Player1,SKALD)~ + ~[PC] <PLAYER1> is a 0x00800000 SKALD so don't get started about heroism, or suffer endless iambic pentameter.~ + 3 + ~Kit(Player1,GODTALOS)~ + ~[PC] <PLAYER1> is a 0x01000000 GODTALOS so great at parties, but very bad for your criminal record.~ + 3 + ~Kit(Player1,GODHELM)~ + ~[PC] <PLAYER1> is a 0x02000000 GODHELM so has no sense of humor.~ + 3 + ~Kit(Player1,GODLATHANDER)~ + ~[PC] <PLAYER1> is a 0x04000000 GODLATHANDER so suffering is part of the equation. Must write code for fun.~ + 3 + ~Kit(Player1,0x08000000)~ + ~[PC] <PLAYER1> is a 0x08000000 TOTEMIC version of Druids.~ + 3 + ~Kit(Player1,SHAPESHIFTER)~ + ~[PC] <PLAYER1> is a 0x10000000 SHAPESHIFTER hopefully not into your mom...~ + 3 + ~Kit(Player1,BEASTFRIEND)~ + ~[PC] <PLAYER1> is a 0x20000000 BEASTFRIEND so attends dogshows.~ + 3 + ~Kit(Player1,BARBARIAN)~ + ~[PC] <PLAYER1> is a 0x40000000 BARBARIAN like Conan. No, the other one.~ + 3 + ~Kit(Player1,WILDMAGE)~ + ~[PC] <PLAYER1> is a 0x80000000 WILDMAGE so watch out... ~ + 3 + ~Kit(Player1,BLACKGUARD)~ + ~[PC] <PLAYER1> is a 0x4020 Blackguard which needs to be capitalized!~ + 3 END

    Whether I have
    FERALAN, 0x00008000, or 32768
    WILDMAGE, 0x80000000, or 2147483648
    seems not to matter - my PC comes back with no kit detection. In fact, I can't get weidu to be happy with anything but the decimal numbers (so Kit(Player1,2147483648) is installed via weidu and decomiles in NI and DLTCEP and WeiDU as WILDMAGE, but Kit() fails to detect Wildmage in-game...

    Avenger_teambg thinks the kit.ids needs repair, as the devs probably built off of the old broken .ids, but I think it is probably deeper - since the AddKit() etc. now sets the full value, I think the Kit() call is still only reading the old value set, which puts us back to not being able to detect widlmage vs barbarian vs. whatever. Hopefully, it is just me screwing up.

Sign In or Register to comment.