Jump to content

jmerry

Modders
  • Posts

    1,284
  • Joined

  • Last visited

Everything posted by jmerry

  1. All three of those items grant +100% poison resistance, which means they grant immunity to poison damage. No action needed.
  2. It's definitely an intentional change, which has been in as long as I've known the mod. But I'm not sure which component it's associated with, and it's the sort of thing that really should be documented somewhere. You can, of course, sell pelts to a number of merchants, including the shops at High Hedge and Feldepost's Inn. You'll get half as much as the Nashkel merchant's price, at least before depreciation sets in.
  3. Normally, that item just has some innocuous properties like extra HP. What mod/mods do you have that alter the Plate of Balduran?
  4. While I can't speak to what mods might do with things, there are ability checks in the (unmodded) dialogues for the initial infiltration. You need sufficient strength to get the option that actually works in the initial dialogue. There's another dialogue option that gets you to the camp, but if you take it they're too suspicious of you once you arrive. No class checks, though. The only character that causes trouble in the vanilla version is Kivan, who understandably blows your cover as soon as you meet Tazok.
  5. Even the hacky ways (which were used pre-EE, as opcode 318 didn't exist back then) are vulnerable to pauses scrambling the order - it doesn't matter what sort of protection effect you're using if the payload lands before the protection can be processed. There's really no good way around this engine bug.
  6. All right, looking at it ... this spell gets made in code (newspell/extra_arcane_spells.tpa): And the core of that is one line, adding the damage effect: m.ab_fx.add{s_opcode=12 s_power=8 s_parameter2b=64 s_target=2 s_timing=1 s_dicenumber=p_level=1?16:p_level s_dicesize=6 s_save_for_half=1 s_dispel_resist=1} So there's the s_save_for_half=1 element; that should set the "save for half" flag. But there's something missing: nothing to say which save to use. So it defaults to no save, and the flag is moot. Check the description ... nothing about what save to use. Default assumption is that it's a spell save, so add "s_save_vs_spell=1" to that effect definition: m.ab_fx.add{s_opcode=12 s_power=8 s_parameter2b=64 s_target=2 s_timing=1 s_dicenumber=p_level=1?16:p_level s_dicesize=6 s_save_vs_spell=1 s_save_for_half=1 s_dispel_resist=1} So that's the bug confirmed, and the one-line fix needed.
  7. It's the level 0 stuff interacting poorly with her immortality scripting. NPCs get reset to level 0 with 1 max HP so you can choose how they develop, but Hexxat already has a min-HP effect on her amulet and is scripted to "die" when she drops to 1. Then she returns to her coffin, and comes back an hour later with full HP. Which, if her maximum HP is 1, just takes her down again. If you could level her up so she had some actual maximum HP, the problem would go away, but you don't get control of her long enough to do that. Note also that Hexxat normally gets extra base points in her thief skills, because vampires aren't listed in the SKILLRAC.2DA table; she gets the human bonuses added into her base stats, instead of incorporated by the game engine.
  8. ... Correcting something I said earlier, random treasures in vanilla BGEE allow for at least some chance of scrolls at all treasure tiers. Plus there's a small chance of upgrading to higher level scrolls; you roll the "random magic item" possibility on the random treasure table, and then roll the "random scroll" option on the random magic item table. There's also a token for random level 4 scrolls in vanilla, but no way to get there from the standard random treasures so it never comes up. Anyway, ignoring that small chance of an upgrade, here's what levels of random scroll are possible in BGEE from the various levels of random treasure, under vanilla rules and recent versions of this SCS component: Token Vanilla SCS 35.7 SCS 35.10 Drops from RNDTRE01 Level 1 None Level 1 Hardly anything RNDTRE02 Level 1 None Level 1 Bandits, gibberlings, gnolls, kobolds, tasloi, xvarts, etc. RNDTRE03 Level 1 Level 1 Level 2 Ettercaps, hobgoblins, half-ogres, ogrillons, etc. RNDTRE04 Level 2 Level 2 Level 3 Ankhegs, flinds, ghasts, ghouls, gnoll chiefs, ogres, ogre berserkers, etc. RNDTRE05 Level 3 Level 3 Level 3 Basilisks, doppelgangers, ogre magi, skeleton warriors, etc. For some reason, the lowest-level random treasure is basically unused. The remaining four are where it's at for the BG1 campaign.
  9. OK, looks like the comment "levels are on a 0-8 convention" is incorrect as of 35.10. The number in the token ID is now equal to the spell level, read conventionally. And random scrolls are limited to levels 1-3 in BG1, 1-7 in BG2. The system is now significantly more generous than in vanilla BGEE; some enemies that didn't drop scrolls can now drop level 1 scrolls, some enemies that dropped level 1 scrolls can now drop up to level 2 scrolls, and enemies that could drop level 2 scrolls (ghouls and ghasts, for example) can now drop up to level 3 scrolls. It looks like EET does some tricky things with random treasures, separating the BG1 random treasures (that can drop level 1-3 scrolls) and the BG2 random treasures (that can drop scrolls of much higher level) into different items. The old token name goes with the BG2 table, while a new token name points to the BG1 table. And if a mod that doesn't take this into account is installed onto EET, you can end up with random treasures that are significantly more generous than intended.
  10. If you're seeing level 1 scrolls, then ... actually, I can just ask. What do the DWRNSCR# rows look like in RNDTRES.2DA?
  11. So, the baseline for this region ... First, there are a few preplaced enemies. Gnarl, Hairtooth, the gnoll chieftain, and the chieftain's generic minions. Gnarl and Hairtooth don't have any scrolls. The chieftain has three instances of RNDTRE04. The minions are just more of the same creatures that you can find elsewhere. Then, there are a bunch of spawn points, all of which generate various xvarts and gnolls. All of these have one instance each of RNDTRE02. The table for RNDTRE02 includes an entry for RNDSCR01; you get a random level 1 scroll about once for every twenty instances of that treasure token. The table for RNDTRE04 includes two entries for RNDSCR02; you get a random level 2 scroll about once for every ten instances of that treasure token. So, in vanilla, you'll get lots of level 1 scrolls, might pick up a level 2 scroll from the chieftain, and won't ever see a level 3 scroll. Then SCS gets involved. The "wider random scrolls" component wipes out the existing random scroll tokens (which are level-based in BG1 but vary more in BG2), and replaces the entries on the other random treasure tables pointing to them with some gold. Then it creates new random scroll tokens dwrnscr0 through dwrnscr8 for level 1-9 spells. And finally, it replaces a fraction of random treasure tokens with these new random scrolls, with some randomization as to the spell level. For items in containers, this is done at install time; in BGEE; RNDTRE01 and RNDTRE02 can become DWRNSCR1 (a level 2 scroll), RNDTRE03 can become DWRNSCR1 or DWRNSCR2 (a level 2 or level 3 scroll), RNDTRE04 can become DWRNSCR1, DWRNSCR2, or DWRNSCR3 (a level 2 through 4 scroll), and RNDTRE05 can become anything from DWRNSCR1 to DWRNSCR5 (a level 2 through 6 scroll). For items on creatures, it's the same range but done through item-creating spells. But wait, there's a catch. For spells above a maximum level, the tables don't get filled out, and that token isn't actually created. No spells above level 4 in BG1, no spells above level 8 in BG2. So that highest-level random treasure in BGEE can't actually create a level 5 or 6 scroll for you. And if it does roll that ... I don't know what happens, but that looks like a likely source of invalid items. And then there's the big issue: it looks to me like the whole table is off by one. Are you seeing any random level 1 scroll drops at all? The comments in that file imply that level 1 scrolls go into DWRNSCR0, but that random scroll token is never created under any circumstances. This component is intentionally somewhat more generous about the higher-level scrolls than the base game. It should be possible to pick up a level 3 scroll from the chieftain, if you get lucky. But it doesn't look to actually be working properly. [Added in edit] I just took a look at the previous version of this, from 35.7 to 35.9. That had no random scrolls on RNDTRE01 or RNDTRE02, DWRNSCR0 on RNDTRE03, DWRNSCR1 on RNDTRE04, and DWRNSCR2 on RNDTRE05. So that version would have had no scrolls at all from the regular gnolls and a chance of a level 2 scroll from the chieftain. 35.10 made things substantially more generous with chances of scrolls from the lower random treasures, but also introduced that off-by-one problem for no level 1 scrolls anywhere.
  12. There's nothing wrong with having several divine spellcasters in the party; you can always choose different spell choices. Aerie points you toward a back-line support caster, who mixes in some attack spells and includes divine spells in her sequencers. Your protagonist looks to be a front-line warrior with plenty of self-buffs. Jaheira's a front-liner too, but she doesn't have the cleric self-buffs so she focuses on spells that she doesn't have to cast in the thick of combat - open a battle with an Insect Plague or True Seeing, cast a Death Ward or summon a nymph in advance, heal afterward. So your initial suggestion is perfectly fine. It absolutely works. And it just doesn't line up with how I'd ever build a party, so I can't offer much advice. There's no theme there; it's just a bunch of characters who are vaguely on the same side.
  13. The changes to the cemetery area in chapter 6: a bunch of entrances to the chapter 2/3 version of the main underground area get deactivated, the one entrance to the chapter 6 version of the main underground area gets activated, and a bunch of events are scripted to happen when you first go there in that chapter. That latter set of events may interfere with Hexxat's tombwalking quests, which also rely on scripting causing things to happen when you enter the graveyard area. Once you're done with that first visit to the graveyard in chapter 6, everything should be normal for anything else involving the area.
  14. The mechanism there ... in the base game, the Black Pits has a special override script for PCs (BPPLOT.BCS) that does the "fall asleep at 1 HP, wake when raised" part, and the non-removable "Slave Ring" with a min-HP effect and immunity to instant death (But only the opcode 55 "slay" kind, because that's the only kind that comes up in that adventure). Area scripts handle the "if everyone goes down, you lose" part. This already has the potential to do some bad things. If you export a Black Pits character and import them to the main campaign, they'll keep the script and any equipment they have - including the "Slave Ring" if you did so before victory. Put that into a campaign that's not designed for it, and trouble ensues. Shoal's kiss on the protagonist is a soft-lock, for one - they go down, you can't raise them in the field because you don't have the levels, and you can't leave to reach a temple because of "You must gather your party before venturing forth". If you still have the ring, it's also impossible to kill that character for a proper Game Over, and your only recourse is to quit out. So you can take that mechanism as inspiration, but it needs a lot of tweaks to actually function outside its original context.
  15. Good to know. And that projectile change looks like a sensible thing to do here.
  16. The limitation on protection items and enchanted armor isn't anything on the item itself; it's based on ITEMEXCL.2DA. You just need to add a row for your item to that table.
  17. Mechanically, I think what's going on is the old mechanism for leveling NPCs - they get replaced based on NPCLEVEL.2DA whenever you enter their area. This has been largely defanged by setting all of the entries to be the same and putting triggers in their scripts for when they first join, but the mechanism is still there. So a global character that isn't in that file shouldn't be affected...
  18. Evil NPCs not joining at high rep varies somewhat by character, and Viconia is notably complicated in BGEE. The first time Viconia asks to join, in Peldvale, she doesn't check reputation. All subsequent times, she'll only join if you're already at or below 18 rep.
  19. The symbols are a bit tricky in general; the versions of the three normally available to players in the BG series are party-unfriendly, but there are NPC versions of the spell that are party-friendly. This distinction is entirely handled through the projectile: ICEGLYP for the party-unfriendly versions, TRAPGLPN for the party-friendly versions. There's an enemy-only version of Pain in the BG series already; it uses a different (party-friendly) projectile SPARMANP. And it doesn't have a proper description. This, however, is a spell copied directly from IWD by the SCS/IWDification spells component. It uses the ICEGLYP projectile. The description is also copied directly from IWD. So, I see two possibilities here: - The projectile has different properties between the two games. - The description is inaccurate in IWD. (I don't have IWD, so I can't test this) There's another symbol spell copied over; Hopelessness. That one has a party-friendly description, and a new projectile not already in the BG series ... which is party-friendly. I'm leaning toward the description being inaccurate in IWD.
  20. Let's see - how do the pieces here work? The spell shield portion of ISoM is a tweaked clone of Spell Shield; one level of deflection against the MAGICATTACK sectype. The vanilla version of the wand ability has the ABJURER and MAGICATTACK types. So that would run into the effect, use up the deflection, and then the shield gets removed. (This part required a fix in v35, because the cloning process didn't update everything it needed to) SCS, in the spell tweak for Breach, externalizes the effects of the wand to actual spells. The "Pierce Magic" spell becomes a clone of Pierce Magic, modified to always reduce MR by 20 instead of depending on caster level. And ... oh. That's the catch. In the process of externalizing the spell, the wand's Pierce Magic ability ends up with exactly one effect. That's a "cast spell" effect, newly created, with power 0. And since the ability still has the MAGICATTACK sectype, the spell shield deflects this carrier effect. The subspell never gets cast. And that drains zero levels of deflection, because that's based on the first effect in the ability being deflected. The spell shield is not used up. Have you tested the wand's Pierce Magic ability against the original Spell Shield? If I'm right, that should have the same issue. And so should the Breach ability; that ability also has the ABJURER and MAGICATTACK types, and its content gets replaced by a "cast spell" effect. Recommended fix: remove the types of the carrier abilities when editing the Wand of Spell Striking in modify_breach.tpa. The subspells interact properly with spell defenses, so the carrier abilities should pass through everything. As for the description - that's not something SCS changes. The wand uses abbreviated versions of the descriptions of Breach and Pierce Magic, and the level limit for Pierce Magic happens to be omitted here.
  21. Some mod probably adds something, but there's no innkeeper in Gullykin in vanilla.
  22. Which is less interesting than it sounds; while the bag item is duplicated, the contents aren't - they still point to the same .STO, so the bags are just portals to each other. When a character leaves the party, any critical items they were carrying (which includes the Flail of Ages and all containers) are removed from their inventory and sent to player 1. Apparently, trying to process this twice in the same tick for the same character leads to the items being sent twice, because the game hasn't updated that they're not in the inventory anymore. Why does a double Imprisonment in a Time Stop trigger this? Imprisonment has a projectile, so it doesn't land during the Time Stop. But it's touch-range, so there's basically no travel time; that mage walks right up to you before casting, and then casts their next spell without any further movement. So both spells land at exactly the same time, and the bug happens. What can be done to avoid this? Tweaking mage AI so it doesn't cast Imprisonment twice on the same target during a Time Stop - after all, it's not only what triggers the bug, it's also obviously dumb.
  23. If it's happening when the creature dies, it's not the random treasures. Random treasure tokens are resolved (or fail to resolve) when the item is created; either the creature holding it spawns in, or the area with the container is first entered.
  24. Already in. // tbd, cam (from jmerry) // npcs spawning/moving on impassable terrain (see also baerie.dlg, aeriej.dlg, ar1000.are) COPY_EXISTING ~ar0800.are~ ~override~ // Graveyard District, Stein LPF ALTER_AREA_ACTOR INT_VAR y_coord=1071 STR_VAR actor_name=Stein END BUT_ONLY
  25. A very odd decision, given the existence of LICH_FEAR and its significantly different effects than DEMON_FEAR in the unmodded EE. SCS ignores LICH_FEAR in favor of its own clone of DEMON_FEAR (identical except for name) entirely. Also, if you install the mage component (which builds dw#licfi) before/without the fiend component (which builds DEMON_FEAR) on a game that this bug applies to, there's nothing to copy. That can't be good; the best possible result is a spell that does nothing. So that's an internal dependency that needs to be cleared up... ... but yes, the "dump in override after installation" option doesn't really work. The file I uploaded needs to overwrite the one in the stratagems folder before installation in order to handle this bug.
×
×
  • Create New...