chayjay Posted January 24 Share Posted January 24 I have run into an odd bug with Prism the Sculptor at the Nashkel Mines - he's already dead before any interaction with him. I can't say for certain that this is ToF's doing, but the only other mods I have installed at the moment are Mur'neth and the BG1 NPC Project (see attached weidu.log), and I don't think either of them should mess with Prism. When I arrived at his sculpture outside the Nashkel Mines, Prism's corpse was already lying on the ground - no sign of Greywolf or the emeralds. I tried spawning in a new Prism using the console, and he died instantly (see attached image). My best guess is that maybe ToF's updated ability score rules have caused the game to recalculate Prism's hit points and get an answer less than 1 (according to the Fandom wiki, he only has 7 constitution, which is a +0 modifier in unmodded BGEE but a -2 in 3e, and he's level 3, resulting in a total swing of -6... on a character who normally has 4 HP). But if that were the issue, I can't imagine he'd be the only character affected, and I haven't seen any other unexpected dead commoners in Beregost or Nashkel. Any ideas? WeiDU.log Quote Link to comment
jmerry Posted January 24 Share Posted January 24 (edited) It's a bit more complicated than that, as the game engine ensures that a level N creature must have a maximum HP count of at least N. But that's maximum HP, and current HP is calculated before that rule is applied. So Prism's at 4/4 with a 0 CON modifier, 1/3 with a -1 CON modifier, and dead/3 with a -2 CON modifier. Confirmed, by the way. I tested it by tinkering with HPCONBON.2DA and cheat-traveling to the area in an otherwise vanilla install. As for why you aren't seeing other dead NPCs? CON modifiers are only applied for creatures with player classes. Commoners and most other people you see around town have the INNOCENT class, which doesn't get that. Prism is a mage, which does. Searching for CREs with player classes and less than 10 CON ... ouch. The bar gets about two thirds of the way through and then just stops. Near Infinity has failed me. (After about ten minutes, the "Error reading ****.CRE" boxes started popping up.) Update: I figured out how to do it. Working on the list... Edited January 24 by jmerry Quote Link to comment
chayjay Posted January 24 Author Share Posted January 24 Ah, interesting; thanks for the explanation! Good to know I've found a legitimate issue and haven't just messed something up on my own! Quote Link to comment
RoyalProtector Posted January 24 Share Posted January 24 Hm. That reminds me that during my test BGEE run, I noted that Xzar had 2 Health. I was wondering if that could have resulted in just outright dead NPCs because of things like this Quote Link to comment
DavidW Posted January 24 Share Posted January 24 It sounds very possible. I'll check. (Some of ToF's ability modifiers are PC-only, but Con changes affect everyone.) Quote Link to comment
DavidW Posted January 24 Share Posted January 24 OK, I can reproduce this on a clean install of only that component. (Not that I really need to, jmerry's research looks conclusive.) Let me investigate the best fix. Quote Link to comment
jmerry Posted January 24 Share Posted January 24 (edited) After searching an unmodded BGEE+SoD install, here are the CREs that go from alive to dead with the change to CON modifiers: - BAT_IN (Level 1, 1 HP, 9 CON). An epidemic has decimated the cave-dwelling bats of the Sword Coast. - BDHYRETH (Level 2, 3/14 HP, 6 CON). This follower of Ilmater refused healing, and has now succumbed to his wounds. - BDTHUG01, BDTHUG02, BDTHUG07 (Level 1, 1 HP, 9 CON). These idiots who like to get into fistfights with each other aren't getting up this time. - PRISM (Level 3, 4 HP, 7 CON). He didn't finish his masterpiece. - PRISON (Level 1, 1 HP, 9 CON). The Flaming Fist hasn't been taking care of their prisoners. Somebody should investigate. - XAN4 (Level 4, 8/12 HP, 7 CON). Xan didn't survive his captivity. You should have gotten there sooner. - XAN6 (Level 6, 12/17 HP, 7 CON). These higher-level versions of the NPCs appear in original BG1 if your party's average level is high enough when they first join. But not the EE, which has the lowest-level version of the NPC join and then adds XP instead. Edited January 24 by jmerry Quote Link to comment
DavidW Posted January 24 Share Posted January 24 lol. The obvious solution is just to do a per-creature patch here (it would need to be a regexp, I think, because of mod-added creatures.) I'm a little concerned that I should take this as a warning that the component is too overtuned, but perhaps that's for another day. Quote Link to comment
RoyalProtector Posted January 24 Share Posted January 24 Just out of (technical) curiosity... What sort of regex would account for NPCs that should probably be taken care of so they don't spawn dead? Quote Link to comment
Bartimaeus Posted January 24 Share Posted January 24 Well, this explains why Prism was randomly dead in my previous playthrough while I was using 3E-style Constitution. Quote Link to comment
DavidW Posted January 24 Share Posted January 24 1 hour ago, RoyalProtector said: Just out of (technical) curiosity... What sort of regex would account for NPCs that should probably be taken care of so they don't spawn dead? At the moment I'm inclined to do something relatively sweeping, like ACTION_DEFINE_ASSOCIATIVE_ARRAY con_3e_adjust_map BEGIN 1=>5 2=>6 3=>7 4=>8 5=>8 6=>9 7=>10 8=>10 9=>10 END COPY_EXISTING_REGEXP GLOB ".*\.cre" override PATCH_IF (BYTE_AT 0x273) <=21 BEGIN // filter for PC classes con=BYTE_AT 0x23d PATCH_IF VARIABLE_IS_SET $con_3e_adjust_map("%con%") BEGIN WRITE_BYTE 0x23d $con_3e_adjust_map("%con%") END END BUT_ONLY That patches every PC-class creature in the game with below-average hit points so that it doesn't get fewer hit points under the new system than under the old one. Quote Link to comment
Chitown Willie Posted January 24 Share Posted January 24 Hi David, Just a thought - I've been using "Alternative Constitution Bonuses" from Bart's Tweaks, which is along the same lines but only affects level ups: ## Alternative Constitution Bonuses</br> 3rd Edition-style Constitution, with the addition of some very slow regeneration that makes resting actually have some value if you have high Constitution characters but no clerical healing spells. A character with a Constitution of 10 would receive exactly one more hitpoint from resting for 8 hours, while a character with a Constitution of 18 would receive just two more hitpoints, with a much bigger scaling up once you go beyond that into exceptional constitution territory. It doesn't sound like much, but it wasn't designed to be powerful, just to help a little in the early stages of BG1 when you don't have enough healing spells readily available and you find resting 3 times in a row to be distasteful. 01: -3 HP on level up, no regeneration, -5 fatigue bonus<br/> 02: -2 HP on level up, no regeneration, -4 fatigue bonus<br/> 03: -2 HP on level up, no regeneration, -4 fatigue bonus<br/> 04: -2 HP on level up, no regeneration, -3 fatigue bonus<br/> 05: -2 HP on level up, no regeneration, -3 fatigue bonus<br/> 06: -1 HP on level up, no regeneration, -2 fatigue bonus<br/> 07: -1 HP on level up, no regeneration, -2 fatigue bonus<br/> 08: -1 HP on level up, no regeneration, -1 fatigue bonus<br/> 09: -1 HP on level up, no regeneration, -1 fatigue bonus<br/> 10: 0 HP on level up, 1 hp/2400 second regeneration, 0 fatigue bonus<br/> 11: 0 HP on level up, 1 hp/2100 second regeneration, 0 fatigue bonus<br/> 12: 1 HP on level up, 1 hp/1800 second regeneration, 1 fatigue bonus<br/> 13: 1 HP on level up, 1 hp/1500 second regeneration, 1 fatigue bonus<br/> 14: 2 HP on level up, 1 hp/1200 second regeneration, 2 fatigue bonus<br/> 15: 2 HP on level up, 1 hp/900 second regeneration, 2 fatigue bonus<br/> 16: 3 HP on level up, 1 hp/600 second regeneration, 3 fatigue bonus<br/> 17: 3 HP on level up, 1 hp/450 second regeneration, 3 fatigue bonus<br/> 18: 4 HP on level up, 1 hp/300 second regeneration, 4 fatigue bonus<br/> 19: 4 HP on level up, 1 hp/240 second regeneration, 4 fatigue bonus<br/> 20: 5 HP on level up, 1 hp/180 second regeneration, 5 fatigue bonus<br/> 21: 5 HP on level up, 1 hp/120 second regeneration, 5 fatigue bonus<br/> 22: 6 HP on level up, 1 hp/60 second regeneration, 6 fatigue bonus<br/> 23: 6 HP on level up, 1 hp/30 second regeneration, 6 fatigue bonus<br/> 24: 7 HP on level up, 1 hp/12 second regeneration, 7 fatigue bonus<br/> 25: 7 HP on level up, 1 hp/6 second regeneration, 7 fatigue bonus<br/> Quote Link to comment
jmerry Posted January 24 Share Posted January 24 (edited) I'm pretty sure "on level up" is just another way to say the same thing - the bonuses/penalties apply at level 1 as well. I tested another related thing ... what happens if I create a pure mage (d4 base HP) with a -4 CON modifier to HP (CON 3, with the ToF tables)? Answer: Naturally, the game ends instantly. And when I click through the crumbling hand animation, BGEE gets stuck on a black screen with the Candlekeep ambient sounds. Indefinitely, until I force quit. No interface, no other visuals at all. The game really can't handle a protagonist that spawns in already dead. Edited January 24 by jmerry Quote Link to comment
DavidW Posted January 24 Share Posted January 24 That’s hilarious. (But possibly a reason to consider truncating the Con penalty.) Quote Link to comment
DavidW Posted January 24 Share Posted January 24 Quote Within these hallowed halls of knowledge, your story begins.. and ends. You have spent most of your twenty years of life within this keep's austere walls, under the tutelage of the sage Gorion. Acting as your father, he has raised you on a thousand tales of heroes and monsters, lovers and infidels, battles and tragedies. But throughout your youth, you have been a sickly child, seeking solace in the study of magic from the constant and debilitating illnesses that plague you. Lately, Gorion has been growing distant from you, as if some grave matter weighs heavily on his heart, overshadowing even his concerns about your frailty. You have asked about his concerns as gently as possible, at least when the coughing abate enough for you to speak and you are able to leave your bed for a few moments, but your queries have been in vain. Your sole comfort is the knowledge that he is a wise man, and you know he will tell you when the time is right. Nonetheless, his silence is troubling, and you cannot help but feel that something is terribly wrong... Today, Gorion has appeared more agitated than ever, and now he has uncharacteristically interrupted your rest in the middle of the day. Imparting hurried instructions for you to equip yourself for travel. But it is too late for that. The latest bout of fever has been worse than all that come before, and as Gorion enters your bedchamber, he sees only the sorrowful face of the healer as he gently closes your eyes for the last time. LATER: Quote ARMORED FIGURE: You're perceptive for an old man. You know why I'm here. Hand over your ward and no one will be hurt. If you resist, it shall be a waste of your life. GORION: You are too late. Leave me to my grief and you and your lackeys shall be unharmed. ARMORED FIGURE: I am sorry for your loss, old man. Quote Link to comment
Recommended Posts
Join the conversation
You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.