Skip to content

Enchanted Weapons not "Enchanted"

horredtheplaguehorredtheplague Member, Developer Posts: 186
(Latest update, All mods uninstalled, Repair Install run first for test veracity): Test shown in screenshot, a SW2H06 (Spider's Bane +2) vs a Fire elemental (equipped w/ Immune2.itm--blocks non-magic and +1 enchantment weapons). The Enchantment offset at 0x60 is left at 0 in the SW2H06 file; in BG2 vanilla this same item was set to 2 (as expected). Side effect: see screenshot. This is one of MANY weapons missing this setting in BGEE. The majority of in-game magical weapons, in fact (else I'd have made a list). If this has been reported already, I didn't see it on the bug thread.
«1

Comments

  • Sam_Sam_ Member Posts: 172
    Weapons in BG1 almost exclusively have an "Enchantment" value of 0. In BG1, this value really wasn't used and so it wasn't a big deal. In BG2/BGEE, however, this value determines what a weapon can hit. For instance, some creatures require a +1 or even a +3 weapon to hit. When the weapons were ported from BG1 to BG2, the Enchantment values weren't changed, thus swords like Icingdeath and Twinkle are treated as non-magical (since they have enchantment levels of 0) when determining what they can hit. For example, Icingdeath and Twinkle are +3 weapons, and so should have an Enchantment value of 3, although interestingly in BG2 Twinkle has an enchantment value of 5 which coincides with its original (and if you look at the actual AD&D documentation/sources, proper) name of "Scimitar +5, Defender". But that's another issue entirely...

    Current Behavior:
    Weapon "Enchantment" values are incorrect/inconsistent.

    Expected Behavior:
    Weapon "Enchantment" values should reflect actual enchantment level of the weapon.
  • WooWoo Member Posts: 135
    Twinkle is supposed to be a +4 Defender, and Icingdeath is a +2 Frostbrand.
  • Sam_Sam_ Member Posts: 172
    @Woo, Regardless of what anyone thinks they should be, the Enchantment of the item definitely shouldn't be 0. In the game they are +3 weapons, thus they should be +3 weapons when actually determining what they can hit. That is the issue being brought up here, not how this source or that defines them.
  • WooWoo Member Posts: 135
    Sword,+4 Defender: This gives its wielder the option of using all, some, or none of the +4 bonus in
    defense (improving his Armor Class) against any opponent using a hand-held weapon, such as a dagger,
    mace, spear (not hurled), sword, etc. For example, the wielder can, on the first round of battle, opt to use
    the sword as +2 and save the other two bonus factors to be added to his Armor Class. This can be done
    each round.
    Note that there is also a sword, +5 defender.This is identical to the +4 sword with one extra bonus
    point.

    ^Twinkle.

    Sword+3, Frost Brand, +6 vs. fire-using/dwelling creatures: This sword always provides a +3
    bonus. The +6 bonus takes effect against creatures that use fire or live in fiery environments. The
    weapon does not shed any light, except when the air temperature is below 0 degrees F. It does give
    special benefits against fire, for its wielder is protected as if he were wearing a ring of fire resistance.
    The frost brandsword also has a 50% chance of extinguishing any fire into which its blade is thrust.

    ^Icingdeath.

    Straight out of DMs Guide. If anything they should be +3 and +4 like they are.
  • Sam_Sam_ Member Posts: 172
    @Woo
    You are entitled to claim that this is a bug in the game that should be changed, but this IS NOT THE BUG UP FOR DISCUSSION IN THIS TOPIC!!! Please start a new topic bringing up this concern if you wish, but this topic is not the place.
  • valkyvalky Member Posts: 386
    edited December 2012
    *fistshaking @TE* :)
    Now that is quite interesting as most of the enchanted weapons, with a few exceptions have an enchantment level of 0 to determine what it can hit.

    The only difference would be the flag, if it's a basic weapon or magical, e.g. hitting a flesh golem doesn't need a specific enchantment level, it only requires a magical weapon. (in BGEE)

    Though I checked only a couple a "basic" enemies, whom I know of the need of having a specific weapon and it's usually only the magical attribute.

    In BG2 most of the weapons have the proper enchantment level, cause there are a sh*tload of enemies, who are immune to at least something :) Also weapons like Daystar, Bastard vs Shapeshifter etc. are treated with their proper enhancement (+3/+4) to determine, what it can hit.
    Yet it does not exist in BGEE; I found only a couple of weapons, which are not even implemented or on a rare occasion have that enchantment properly set.

    And I might be wrong but in D&D you always needed a specific enchantment to beat a creatures DR or a weapon with just a ridiculous high enchantment level to negate it, ie +3 to overcome the cold-iron DR of a greater werewolf ...
    This is just simplified in nearly every game and those weapons are considered to usually have the enchantment level of their highest bonus if it can beat a creatures DR. (like Scimitar +5, Defender, which is only a +2 or +3 Scimitar with the defending attribute but in BG2 it's a +5 weapon)

    As mentioned, it doesn't matter in BGEE, the few critters, who have actual an immunity need a specific weapon (gr. werewolf)

    edit: still it's a bug :>
  • Sam_Sam_ Member Posts: 172
    Well in the Black Pits, the fire elementals and the Rakshasa can't be hit with weapons that have an enchantment of 0. Just looking quickly, I see at least 54 different creature files that this applies to as well, including pretty much all elementals, most of the higher level demons, and several of the golems. See IMMUNE2.ITM and IMMUNE3.ITM among others. They render the creature wearing the item immune to weapons with Enchantments less that 2 and 3 respectively.
  • valkyvalky Member Posts: 386
    Hmm, haven't played the pits yet and switched to BG2 with my char...but found a couple of weapons in the source, which happen to have the enchantment level properly set, but don't exist in the single player campaign.
    So I can only imagine, that they are available there :) or you need magic..

    ninja-edit: you are right, checked them too - but as mentioned such weapons just don't exist in the campaign or not that I can remember looting it. (ie SW1H41/SW1H42)

    Am currently more busy to re-install BG2 from a scratch, cause I had an older version of SCSII and just upgrading would mess up the whole game or some other specific mods, which need to be properly installed thereafter and not only by using the weidu log.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    Yeah, i mentioned this bug in beta. We have a total inconsistency here. BG1 had no such flag, and likely no such creatures.
  • valkyvalky Member Posts: 386

    Yeah, i mentioned this bug in beta. We have a total inconsistency here. BG1 had no such flag, and likely no such creatures.

    I think it wouldn't hurt to set the enchantment level of several weapons properly. Should be only affecting Black Pits...but as I didn't have played it yet, I dunno what weapons you can buy/loot or whatever :D

    The several (*unique*) enemies I checked in the campaign were only affected by very specific weapons and were not element of having a +x weapon. (flesh golem, xyz slime, helm horror, g-were etc).

    They should just place an Iron Golem in Durlags Tower instead of the pussy of a final boss.
  • horredtheplaguehorredtheplague Member, Developer Posts: 186
    If fixed, will there be a way to detect the value via a script? Or will we the modders still need to add an equipping effect w/ a custom stat WEAPON_ENCHANTMENT?
  • hansolohansolo Member Posts: 136
    If the flesh golems can only be hit my magical flagged weapons, then a lot of items are bugged, even concerning the main campaign.
    All the new clubs (both newly added +1 and the new +2) aren't flagged as magical, e.g.
  • valkyvalky Member Posts: 386
    But there aren't that many, and by the time all of your party NPC have magical weapons anyway..and I never wear clubs to begin with :O And Jaheira was happy to wield one specific scimitar in my game but switched her with Branwen nonetheless, cause of the silence spell.
    (though you are right, there are a lot of inconsistencies for nearly every weapon in BGEE)

    Checked the Flesh Golem(s) or whichever critter is used in the game, and the item he carries gives it weapon immunity to non-magical, no (non-existent) specific enchantment level and alike is set or required.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862

    If fixed, will there be a way to detect the value via a script? Or will we the modders still need to add an equipping effect w/ a custom stat WEAPON_ENCHANTMENT?

    All i know: there is no new trigger for this at the moment.
  • LennisLennis Member Posts: 34
    Don't know if its relevant, but I've noticed the +1 wakizashi isn't hitting things that other +1 weapons are.
  • agrisagris Member Posts: 581
    I noticed this in the Black Pits- some of the creatures only hit by magical weapons (was it the clay golems?) would throw up 'weapon ineffective' messages for a lots of magic items.
  • EdwinEdwin Member Posts: 480
    edited December 2012
    @agris In regard to golems, not only must the weapon be enchanted, but it must deal out the correct damage type (slashing, crushing, etc.) which varies for each type of golem.
  • agrisagris Member Posts: 581
    @Edwin I agree, but the "weapon unusable" text only appears for non-magic items hitting creatures immune to non-magic weapons, right? The 100% resistances will print out 0 damage without the log saying "weapon unusable". Or is my memory going?

    Now that i've looked through this forum more tho, it seems the pro modders are all over these type of item bugs tho, so that's good.
  • EdwinEdwin Member Posts: 480
    I can't remember anything other than "weapon ineffective" appearing as a blanket statement irrespective of which type of ineffectiveness being reported.
  • DiscoCatDiscoCat Member Posts: 73
    @Edwin agris has it right, if the target is immune to a particular type of damage (e.g. slashing) and you hit it with a slashing weapon then the game displays "[target] was immune to my damage". On the other hand, if the target is immune to magical/non-magical weapons or weapons of a particular enchantment level, then attempting to hit it with such a weapon results in an auto-miss and the displaying of the "weapon ineffective" message.

    At least, that's how it is in the BG2 engine, maybe stuff's changed in BGEE?
  • CamDawgCamDawg Member, Developer Posts: 3,438
    I've already submitted a patch for this. Magical flags and enchantment levels are missing from just about everything at the moment.
  • horredtheplaguehorredtheplague Member, Developer Posts: 186
    Thanks @CamDawg. I'll hold off on making my own mod patch for it then, and commenting out the related DS component and supportive scripting in BPSeries.
  • horredtheplaguehorredtheplague Member, Developer Posts: 186

    Thanks @CamDawg. I'll hold off on making my own mod patch for it then, and commenting out the related DS component and supportive scripting in BPSeries.

    (...I couldn't resist the challenge, so I wrote my own patch function for the meantime) :)

  • agrisagris Member Posts: 581
    care to share?
  • CamDawgCamDawg Member, Developer Posts: 3,438
    @horredtheplague
    Here's the list I came up with--I'd be interested if you see any discrepancies. Most of these are simply setting the enchantment levels they had in BG2.

    ACTION_DEFINE_ASSOCIATIVE_ARRAY cd_enchant BEGIN
    ANKHEG2 => 3 // , originally enchantment 0
    AROW02 => 1 // Arrow +1, originally enchantment 0
    AROW04 => 1 // Acid Arrow, originally enchantment 0
    AROW10 => 1 // Arrow of Piercing, originally enchantment 0
    AROW11 => 2 // Arrow +2, originally enchantment 0
    AROW15 => 3 // Arrow of Ice, originally enchantment 0
    AROW1A => 2 // Arrow +2, originally enchantment 0
    AX1H02 => 1 // Battle Axe +1, originally enchantment 0
    AX1H03 => 2 // Battle Axe of Mauletar +2, originally enchantment 0
    AX1H05 => 2 // Throwing Axe +2, originally enchantment 0
    AX1H06 => 2 // Throwing Axe +2, originally enchantment 0
    AX1H18 => 1 // Beruel's Retort +1, not found in BG2 array
    AX1H19 => 1 // Golden Axe +1, not found in BG2 array
    BASILG2 => 4 // Attack, originally enchantment 0
    BASILG3 => 4 // Attack, originally enchantment 0
    BASILL1 => 2 // Attack, originally enchantment 0
    BASILL2 => 2 // Attack, originally enchantment 0
    BEARSPIR => 3 // Attack, originally enchantment 5
    BLUN03 => 1 // Flail +1, originally enchantment 0
    BLUN05 => 1 // Mace +1, originally enchantment 0
    BLUN07 => 1 // Morning Star +1, originally enchantment 0
    BLUN09 => 3 // Kiel's Morning Star, originally enchantment 0
    BLUN10 => 3 // The Root of the Problem +1, originally enchantment 0
    BLUN36 => 1 // Club +1, not found in BG2 array
    BLUN37 => 2 // Mighty Oak +2, not found in BG2 array
    BLUN38 => 2 // Club +1, not found in BG2 array
    BLUN39 => 2 // The Thresher +2, not found in BG2 array
    BLUN40 => 2 // Chanserv's Fish +2, not found in BG2 array
    BLUN41 => 1 // The Stupefier +1, not found in BG2 array
    BLUN42 => 2 // Krotan's Skullcrusher +2, not found in BG2 array
    BOLT02 => 1 // Bolt +1, originally enchantment 0
    BOLT06 => 2 // Bolt +2, originally enchantment 0
    BOW02 => 1 // Composite Longbow +1, originally enchantment 0
    BOW04 => 1 // Longbow +1, originally enchantment 0
    BOW06 => 1 // Shortbow +1, originally enchantment 0
    BOW07 => 2 // The Dead Shot +2, originally enchantment 0
    BOW08 => 2 // Protector of the Dryads +2, originally enchantment 0
    BOW09 => 2 // Longbow, originally enchantment 0
    BRBLP => 1 // Attack, originally enchantment 0
    BRBRP => 2 // Attack, originally enchantment 0
    BULL02 => 1 // Bullet +1, originally enchantment 0
    BULL03 => 2 // Bullet +2, originally enchantment 0
    BULL07 => 1 // Bullet of Fire, not found in BG2 array
    BULL08 => 1 // Bullet of Ice, not found in BG2 array
    BULL09 => 1 // Bullet of Electricity, not found in BG2 array
    CDWOLFM => 1 // Attack, originally enchantment 0
    COMPB06 => 1 // Shortbow +1, not found in BG2 array
    COMPB08 => 2 // Protector of the Dryads +2, not found in BG2 array
    COMPB18 => 2 // Shortbow +2, not found in BG2 array
    COMPS02 => 1 // Bastard Sword +1, not found in BG2 array
    COMPS03 => 3 // Kondar +1, not found in BG2 array
    COMPS18 => 4 // Sword of Balduran, not found in BG2 array
    COMPS42 => 2 // Bastard Sword +2, not found in BG2 array
    CUTAROW1 => 0 // Arrow of Ice, not found in BG2 array
    DAGG02 => 1 // Dagger +1, originally enchantment 0
    DAGG03 => 2 // Heart of the Golem +2, originally enchantment 0
    DAGG04 => 2 // Longtooth: The Grave Binder +2, originally enchantment 0
    DAGG09 => 1 // Werebane +1, originally enchantment 0
    DART02 => 1 // Dart +1, originally enchantment 0
    DART05 => 1 // Asp's Nest, originally enchantment 0
    DART09 => 1 // Dart of Fire, not found in BG2 array
    DART10 => 1 // Dart of Ice, not found in BG2 array
    DART11 => 1 // Dart of Acid, not found in BG2 array
    DRIZZTS => 5 // Attack, originally enchantment 0
    ETTERC1 => 1 // , originally enchantment 0
    ETTERC2 => 1 // , originally enchantment 0
    GHAST1 => 1 // Attack, originally enchantment 0
    HALB02 => 1 // Halberd +1, originally enchantment 0
    HAMM02 => 1 // War Hammer +1, originally enchantment 0
    HAMM03 => 2 // Ashideena +2, originally enchantment 0
    HAMM04 => 4 // The Knee-capper +1, originally enchantment 0
    HAMM13 => 1 // Hammer of Dawn +1, not found in BG2 array
    JELLMU1 => 2 // Attack, originally enchantment 0
    JELLOC1 => 2 // Broken Shield, originally enchantment 0
    LEAT25 => 2 // Rugged Leathers +2, not found in BG2 array
    LIONSPIR => 3 // Attack, originally enchantment 6
    OGRE1 => 1 // Attack, originally enchantment 0
    P3-12M4 => 4 // , originally enchantment 1
    PLYFIST => 1 // Attack, originally enchantment 0
    PLYJELLY => 3 // Attack, originally enchantment 0
    PLYMSTAR => 1 // Morning Star, originally enchantment 0
    PLYSPID => 1 // Attack, originally enchantment 0
    PSTAFM0 => 4 // Narbucchad's Demise +4, not found in BG2 array
    PSTAFM0B => 3 // Narbucchad's Demise +3, not found in BG2 array
    PSTAFM0C => 2 // Narbucchad's Demise +2, not found in BG2 array
    PSTAFM0D => 1 // Narbucchad's Demise +1, not found in BG2 array
    PSTAFM0E => 1 // Narbucchad's Demise +1, not found in BG2 array
    PSTAFM1 => 5 // Narbucchad's Demise +5, not found in BG2 array
    REVENT1 => 3 // , originally enchantment 0
    REVENT2 => 3 // , originally enchantment 0
    SGRASP => 6 // Shocking Grasp, originally enchantment 0
    SIRINE1 => 2 // , originally enchantment 0
    SLNG02 => 1 // Sling +1, originally enchantment 0
    SLNG03 => 3 // Arla's Dragonbane +3, originally enchantment 0
    SLNG11 => 1 // Sling of Unerring Accuracy, not found in BG2 array
    SNAKSPIR => 3 // Attack, originally enchantment 5
    SPER02 => 1 // Spear +1, originally enchantment 0
    SPER03 => 3 // Backbiter +3, originally enchantment 0
    SPIDHU1 => 3 // Attack, originally enchantment 0
    SPIDPH1 => 1 // Attack, originally enchantment 0
    SPIDSW1 => 1 // Attack, originally enchantment 0
    SPIDWR1 => 1 // Attack, originally enchantment 0
    STAF02 => 1 // Quarterstaff +1, originally enchantment 0
    STAF05 => 3 // Staff of Striking +3, originally enchantment 0
    STAF06 => 2 // Staff Mace +2, originally enchantment 0
    STAF07 => 2 // Staff Spear +2, originally enchantment 0
    STAF08 => 3 // Aule's Staff +3, originally enchantment 0
    SW1H02 => 1 // Bastard Sword +1, originally enchantment 0
    SW1H03 => 3 // Kondar +1, originally enchantment 0
    SW1H05 => 1 // Long Sword +1, originally enchantment 0
    SW1H06 => 2 // Varscona +2, originally enchantment 0
    SW1H08 => 1 // Short Sword +1, originally enchantment 0
    SW1H09 => 2 // The Whistling Sword +2, originally enchantment 0
    SW1H10 => 3 // The Shadow's Blade +3, originally enchantment 0
    SW1H13 => 3 // Moonblade +3, originally enchantment 0
    SW1H14 => 1 // Short Sword +1, originally enchantment 0
    SW1H15 => 3 // Icingdeath +3, originally enchantment 0
    SW1H16 => 3 // Twinkle +3, originally enchantment 0 // 5 enchant in BG2
    SW1H19 => 1 // The Vampire's Revenge +1, originally enchantment 0
    SW1H22 => 1 // Scimitar +1, originally enchantment 0
    SW1H24 => 4 // The Burning Earth +1, originally enchantment 0
    SW1H78 => 1 // Drusus +1, not found in BG2 array
    SW1H79 => 3 // Harrower +1, not found in BG2 array
    SW1P01 => 2 // Viper's Edge +2, not found in BG2 array
    SW2H02 => 1 // Two-handed Sword +1, originally enchantment 0
    SW2H03 => 3 // Two-handed Sword, Cursed Berserking +3, originally enchantment 0
    SW2H06 => 2 // Spider's Bane +2, originally enchantment 0
    SW2H07 => 3 // The World's Edge +3, originally enchantment 0
    SW2H08 => 2 // Durlag's Pride +2, originally enchantment 0
    SW2H22 => 1 // Gold Digger +1, not found in BG2 array
    SW1H47 => 1 // Wakizashi + 1, not actually wrong just needs flag
    SW2HD1 => 1 // Rancor +1, not found in BG2 array
    WOLFM => 1 // Attack, originally enchantment 0
    WOLFSPIR => 3 // Attack, originally enchantment 5
    WOLFVA1 => 2 // Attack, originally enchantment 0
    WOLFWI2 => 2 // Attack, originally enchantment 0
    WYVERN1 => 2 // Attack, originally enchantment 0
    WYVERN2 => 2 // Attack, originally enchantment 0
    XBOW02 => 1 // Heavy Crossbow +1, originally enchantment 0
    XBOW03 => 5 // The Guide +2, originally enchantment 0
    XBOW05 => 1 // Light Crossbow +1, originally enchantment 0
    XBOW06 => 1 // The Army Scythe +1, originally enchantment 0
    BLUN11 => 2
    SW1H19 => 1
    SW1H98 => 1
    SW1H99 => 5
    SW2H99 => 3
    END


    And for magical/non-magical flags

    COPY_EXISTING ~ax1h18.itm~ ~override~ // beruel's retort +1
    ~belt16.itm~ ~override~ // belt of antipode
    ~blun36.itm~ ~override~ // club +1
    ~blun37.itm~ ~override~ // mighty oak +2
    ~blun38.itm~ ~override~ // club +1
    ~blun40.itm~ ~override~ // chanserv's fish +2
    ~bull07.itm~ ~override~ // bullet of fire
    ~bull08.itm~ ~override~ // bullet of ice
    ~bull09.itm~ ~override~ // bullet of electricity
    ~clck18.itm~ ~override~ // knave's robe
    ~misc73.itm~ ~override~ // the horn of kazgaroth
    ~nebelt01.itm~ ~override~ // adoy's belt
    ~ring47.itm~ ~override~ // iron thorn
    ~shille.itm~ ~override~ // shillelagh
    ~shld07p.itm~ ~override~ // sartessa's vengeance +1
    ~shld33.itm~ ~override~ // buckley's buckler
    ~slng11.itm~ ~override~ // sling of unerring accuracy
    ~staf25.itm~ ~override~ // the ossifier
    ~sw1h47.itm~ ~override~ // wakizashi +1
    ~sw1h78.itm~ ~override~ // drusus +1
    ~sw1h99.itm~ ~override~ // sword of chaos
    ~sw2h22.itm~ ~override~ // gold digger +1
    WRITE_BYTE 0x18 (THIS | BIT6)

    COPY_EXISTING ~boot06.itm~ ~override~ // worn out boots
    ~chan12.itm~ ~override~ // elven chain
    ~comps01.itm~ ~override~ // bastard sword
    ~misc1a.itm~ ~override~ // bottle of wine
    ~misc91.itm~ ~override~ // grapes
    ~pstafm2.itm~ ~override~ // narbucchad's demise
    ~scrlauto.itm~ ~override~ // autograph
    ~sw2h05.itm~ ~override~ // two-handed sword
    ~ttshld01.itm~ ~override~ // medium shield
    WRITE_BYTE 0x18 (THIS & `BIT6)


  • horredtheplaguehorredtheplague Member, Developer Posts: 186
    @CamDawg yours is more thorough a list than mine (nor did I use a fancy array function). All I'm doing on my end is making the magical weapons a player can use, magical/enchanted (for the sake of party AI) w/ a REGEXP and item type, using the THAC0 as reference. Crude and far from perfect, but better than what vanilla has to offer atm?

    But if you're considering acid arrows (arow04) as magical, look at arow05-09,12,14 and 16 for consistency. Also, BOLT03-05. All these I left alone, because I wasn't sure on the ruling regarding arrows w/ magical damages--but if you change one.... ;)

    There's SHILLE.itm, but was this ruled to be a "non-magical" magically-created weapon?

    @agris: My code will be installed as part of the next BPSeries release along w/ a couple other BGEE bug fixes, while waiting for proper BGEE patching.
  • griever0483griever0483 Member Posts: 129
    edited January 2013
    Current Behavior: Wakizashi +1 is not flagged as magical (It can't hit magical creatures such as Flash Golems)

    Expected Behavior: Wakizashi +1 can hit magical creatures such as Flash Golems
  • TressetTresset Member, Moderator Posts: 8,268
    I just checked it in my newly downloaded Near Infinity. You are right. It isn't flagged as magical.
  • JalilyJalily Member Posts: 4,681
    edited January 2013
    @CamDawg has submitted a fix for items that weren't correctly flagged as magical and vice versa.
  • griever0483griever0483 Member Posts: 129
    @Jalily : Thanks, but where can I find this fix?
Sign In or Register to comment.