subtledoctor Posted March 28, 2017 Share Posted March 28, 2017 Anyone know if it's possible to do a temporary Lore bonus in a spell? I can only get permanent, indelible increases. - timing mode 0: doesn't work - timing mode 1: doesn't work - timing mode 4: doesn't work Only timing mode 9 seems to work. - Spell1 increments Lore, then Spell2 uses a negative value in parameter1: doesn't work - Spell1 increases Lore to 200%, then Spell2 decreases it to 50%: doesn't work - opcode 321 from this spell or another: doesn't work This is driving me crazy! Does this engine seriously not have a way to trigger a temporary Lore bonus?? Link to comment
kjeron Posted March 28, 2017 Share Posted March 28, 2017 Timing mode 1, and by extension 4 and 7, have never worked for Lore. But I have no issues applying or removing it when using timing modes 0, 2, 3, 9, or 10. Keep in mind that Lore bonuses from Wisdom and Intelligence are added after any Set Value or Set% effects, and that Set% effects do not stack, only the last one takes effect. Like most Stat-based opcodes, Timing Modes 1/4/7 modify the creatures base stat, they do not attach an effect to the creature. In this case, a creatures base Lore stat is constantly updated by the engine to match "LORE.2da". Changes to that file are immediately reflected in-game, without requiring leveling up, unlike something like base THAC0, which is only updated to match "THAC0.2da" when you level up. No idea why lore is set this way, but it is. Link to comment
Roxanne Posted March 28, 2017 Share Posted March 28, 2017 Anyone know if it's possible to do a temporary Lore bonus in a spell? I can only get permanent, indelible increases. - timing mode 0: doesn't work - timing mode 1: doesn't work - timing mode 4: doesn't work Only timing mode 9 seems to work. - Spell1 increments Lore, then Spell2 uses a negative value in parameter1: doesn't work - Spell1 increases Lore to 200%, then Spell2 decreases it to 50%: doesn't work - opcode 321 from this spell or another: doesn't work This is driving me crazy! Does this engine seriously not have a way to trigger a temporary Lore bonus?? Timing mode 1, and by extension 4 and 7, have never worked for Lore. But I have no issues applying or removing it when using timing modes 0, 2, 3, 9, or 10. Keep in mind that Lore bonuses from Wisdom and Intelligence are added after any Set Value or Set% effects, and that Set% effects do not stack, only the last one takes effect. Like most Stat-based opcodes, Timing Modes 1/4/7 modify the creatures base stat, they do not attach an effect to the creature. In this case, a creatures base Lore stat is constantly updated by the engine to match "LORE.2da". Changes to that file are immediately reflected in-game, without requiring leveling up, unlike something like base THAC0, which is only updated to match "THAC0.2da" when you level up. No idea why lore is set this way, but it is. I do this in the Sandrah mod - she has a book to look up unknown things - it actually activates a spell that increases lore for 30 seconds or so and lets you identify things in the inventory. So it is possible. PS - this is in EET (BG2EE basis) I use Lore Bonus(21) Value 60 Increment(0) Timing Mode 0 Duration 30 (I did this as a workaround since the *identify* feature only works for those special glasses and scrolls and cannot be used on any other items in the game. And, it is used on an NPC whose base lore is known so that I can use a fixed increment value - maybe not applicable for the use you have in mind?) Link to comment
Gwendolyne Posted March 28, 2017 Share Posted March 28, 2017 Did you try to add your item in the ITEMSPEC.2DA file? That's what I intended to do to create a new identifying item... Link to comment
Roxanne Posted March 28, 2017 Share Posted March 28, 2017 Did you try to add your item in the ITEMSPEC.2DA file? That's what I intended to do to create a new identifying item... Yes, it is the file that has the spectacles and identification spells listed. However, adding to it does not do anything. I had some discussions on a forum some time back about it - if I remember the outcome correctly, it was that only those items will ever have the feature directly and it is not expandable. This is why I made my item conversable and use a dialogue that allows you to cast a spell that gives you a 30 second lore increase where you can now identify things. Also it sets a timer for the next possible re-use. In this context it was also discussed that the copy of the identification glasses from the Finch NPC mod do not work although added to that 2da. PS - I am not 100% sure whether this was before the last EE version release (maybe things have changed) - since I have working what I wanted to achieve, I did not retry ever since. Sorry if maybe my knowledge is outdated, it is the most recent I have. Link to comment
Gwendolyne Posted March 28, 2017 Share Posted March 28, 2017 Thanks for the feedback. I will try earlier than scheduled and let you know if it works. If not, your experience will save me a lot of headache, like "wtf, it is supposed to work and doesn't. What did I coded wrong? and so on..." that spoil modding time. Link to comment
argent77 Posted March 28, 2017 Share Posted March 28, 2017 The file ITEMSPEC.2DA works correctly in more recent versions of the EE games. Link to comment
Gwendolyne Posted March 28, 2017 Share Posted March 28, 2017 Thanks, Argent. Tested with a unicorn rider (paladin kit): it works but the identifying screen doesn't mention the name of my new item, only the "scroll" option (the spell one is grayed). Link to comment
subtledoctor Posted March 28, 2017 Author Share Posted March 28, 2017 Huh. So theoretically I could put a new 2nd-level version of Identify into itemspec.2da and make it work like the vanilla spell? But only for v2.3+, it sounds like. I'm looking for a solution that works on IWDEE. Dunno why timing mode 0 didn't work for me... maybe I screwed something else up. I'll try again. Link to comment
Gwendolyne Posted March 28, 2017 Share Posted March 28, 2017 No, it only works that way with items. If you want to identify by spell, it seems Roxanne's workaround is a nice tip. Link to comment
subtledoctor Posted March 29, 2017 Author Share Posted March 29, 2017 So weird - it's working fine with timing mode 0 now. I think it may have had a problem with putting a 321 cancellation as the first effect, to prevent stacking. Instead I do an olde-fashioned-y 206 effect at the end. Sorry for the dumb question! Link to comment
Avenger Posted March 31, 2017 Share Posted March 31, 2017 If lore was set by an effect that goes away (as in, changes the base stat and isn't embedded in the creature), then its effect will surely be cancelled at next level up. This is because lore is recalculated by the engine (this was always the case with lore). Link to comment
Galactygon Posted March 31, 2017 Share Posted March 31, 2017 So weird - it's working fine with timing mode 0 now. I think it may have had a problem with putting a 321 cancellation as the first effect, to prevent stacking. Instead I do an olde-fashioned-y 206 effect at the end. Sorry for the dumb question! There are some peculiarities with 321 if you place it in a spell other than where your noncumulative effect is. i.e. if you place 321 that dispels "spell b" in "spell a" that casts "spell b" (via opcodes 146/326) then the effects of "spell b" will not be properly applied. You have to place 321 in "spell b" where the rest of your effects are. Link to comment
subtledoctor Posted March 31, 2017 Author Share Posted March 31, 2017 I *think* it was, SpellA - effect 1: 321 cancelling SpellA, timing mode 1 - effect 2: lore bonus, timing mode 0, duration 30 seconds I think this is the EE method to make non-stacking spells: repeated castings extend the duration of the effect, but do not increase the effect itself. What works for me right now is what I consider to be the "BGT method" of non-stacking spells: SpellA - effect 1: lore bonus, timing mode 0, duration 30 seconds - effect 2: 206 protecting against SpellA, timing mode 0, 30 seconds The spell can't stack but also can't be extended; you have to wait until it expires before renewing the effect. For my purposes (an infinitely castable Identify cantrip) this works fine. Link to comment
Recommended Posts
Archived
This topic is now archived and is closed to further replies.