Jump to content

guyudennis

Members
  • Posts

    82
  • Joined

  • Last visited

Everything posted by guyudennis

  1. You misunderstood me: I wanted to make an ability that allows my character to “break free” if he is rendered helpless, but I didn’t want him to break free from a forced hold like during a cutscene. I believe what subtledoctor suggested will achieve just that.
  2. Is it possible to change op185 so that it wouldn't set STATE_HELPLESS? This way I can safely use op232 with para2 = 5 to trigger certain behaviors, without having to worry about characters breaking free from cutscene hold. Or is opcode editing outside of the scope of the fixpack? PS. we will probably need separate icons for op109 and op175/185 as already suggested previously.
  3. Shouldn't INNER_ACTION achieve what you want to do? Or, put the read (levels, skills , etc) into variables, which can surely be accessed later: COPY_EXISTING ~mxsplran.2da~ ~override~ // ranger spell table COUNT_2DA_COLS cols READ_2DA_ENTRIES_NOW rows cols FOR (col = 1; col < cols; ++col) BEGIN // loop through each spell level FOR (row = 0; row < rows; ++row) BEGIN // loop through each class level READ_2DA_ENTRY_FORMER rows row 0 rng_lv_start // current class level READ_2DA_ENTRY_FORMER rows row col rng_lv_spell // max spells available for the combination of current class level and current spell level PATCH_IF (rng_lv_spell = 1) BEGIN // stop at the very 1st time spells for each spell level become available SET ~rng_lv%col%_start~ = rng_lv_start // set corresponding starting class level variables for each spell level SET row = rows // break loop END END END INNER_ACTION BEGIN ACTION_FOR_EACH ranger_clab IN ~clabrn01~ ~clabrn04~ BEGIN // true ranger, beastmaster COPY_EXISTING ~%ranger_clab%.2da~ ~override~ LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv1_start f_MaxLevel = rng_lv1_start STR_VAR f_Entry = ~GA_SPRA101~ END // blades of fire LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv1_start f_MaxLevel = rng_lv1_start STR_VAR f_Entry = ~GA_SPRA102~ END // longstrider LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv2_start f_MaxLevel = rng_lv2_start STR_VAR f_Entry = ~GA_SPRA201~ END // snare LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv2_start f_MaxLevel = rng_lv2_start STR_VAR f_Entry = ~GA_SPRA202~ END // swift haste PRETTY_PRINT_2DA BUT_ONLY END COPY_EXISTING ~clabrn03.2da~ ~override~ // stalker LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv1_start f_MaxLevel = rng_lv1_start STR_VAR f_Entry = ~GA_SPRA102~ END // longstrider LPF set_clab_2da_entries INT_VAR f_MinLevel = rng_lv2_start f_MaxLevel = rng_lv2_start STR_VAR f_Entry = ~GA_SPRA202~ END // swift haste PRETTY_PRINT_2DA BUT_ONLY ACTION_FOR_EACH priest_clab IN ~clabpr01~ ~clabpr02~ ~clabpr03~ ~clabpr04~ ~ohtyr~ ~ohtempus~ ~clabdr01~ ~clabdr02~ ~clabdr03~ ~clabdr04~ BEGIN // all cleric and druidic classes and kits COPY_EXISTING ~%priest_clab%.2da~ ~override~ LPF set_clab_2da_entries INT_VAR f_MinLevel = 1 f_MaxLevel = 1 STR_VAR f_Entry = ~AP_DVRNCSN~ END // priest caster level anti-boost PRETTY_PRINT_2DA BUT_ONLY IF_EXISTS END END BUT_ONLY ... few hundred lines later in the TPA, I accessed some of the variables (rng_lv1_start) again... COPY_EXISTING ~dvrncs.spl~ ~override~ // ranger caster level boost // add spell extended effects: lv1 PATCH_IF (ranger_caster_level_full = 1) BEGIN SET rng_cst_lv_boost = 7 // set ranger caster level to full class level, with ranger caster level hardcoded as class level minus 7 since spell-casting is originally available at lv8 END ELSE BEGIN SET rng_cst_lv_boost = (7 - (rng_lv1_start - 1)) // set ranger caster level to class level minus (rng_lv1_start - 1), mimicking the original behavior but at the same time fully responsive to spell table alterations END LPF ADD_SPELL_EFFECT INT_VAR opcode = 191 target = 2 timing = 9 parameter1 = rng_cst_lv_boost parameter2 = 1 END // caster level bonus BUT_ONLY
  4. It will always disregard your ranger levels and instead always use your cleric levels for caster level determination.
  5. Thank you for the assistance as always, Subtle.
  6. Thank you. But I could add a hundred op248 directly as extended effects in the ability header to achieve the same thing. So that doesn’t look like a good reason either. The only plausible reason I see at the moment is still with 206: say you have a hundred extended effects in the ability, and you somehow want to be able to neutralize a subset of them, then maybe it’s cleaner to externalize this subset all into a spell and then you can utilize a single instance of 206 to block them… I’m not arguing; I’m just trying to understand so I can be smarter with my code in the future. And I do appropriate your answers and help. As for an example, I was looking KR’s version of SPCL902. Demi’s method of dealing with it did not make sense to me. But in recollection, it seems that’s his standard way to doing things…maybe just personal preference at the end of the day.
  7. Say we have an ability which has op248 (melee hit effect) + actual EFF, like in the case of SPCL902. I've seen mods alter the EFF from type op55 to op146 another SPL, with the SPL invoking the op55 instead. My question is: why the hassle of adding another "layer" to achieve the same end? What is the advantage of an EFF#146+SPL#whatever combo over a direct EFF#whatever? Is it done so that it can be easily neutralized by some op206 later? Other than that, any other reason for this combo?
  8. Hi everyone, Thank you all for the answers, and quick ones! I am truly embarrassed to have missed the documented negative value does nothing bit for ALTER_SPELL_EFFECT. I consulted Weidu readme at least a couple of times for this function, but somehow still missed that sentence. Regarding projectile, yes I meant something like CREATE to make one from scratch rather than having an already made binary pro file. But I am perfectly ok with having it as binary, now that I know there’s no existing function/macro to create one and creating from an inlined file then editing byte by byte is probably not worth the hussle considering how infrequently I come across them. Might as well just copy and alter an existing one. Looks like learning how to mod also involves getting to know all the quirks here and there, like this melee damage modifier not showing up. Oh, good fun!
  9. Hi community, Asking some seemly unrelated questions I encountered along the way: * Why some opcodes (ie #0, #54) simply refuse to be ALTER_SPELL_EFFECT’ed if parameter1 is to be changed to a negative value? Yet positive value changes always work; or if I delete it first then ADD_SPELL_EFFECT it back, it will now accept negative values without any issue. WTF? * Why does op73 (extra damage modifier) bonus show up fine on character screen (ie the inventory screen’s damage portion) but op285 (melee weapon damage modifier) simply won’t show its bonus on the same screen (obviously with a melee weapon equipped)? IESDP does not mention this difference in “behavior”. * I am proficient with using Weidu to create spells/effects/items from scratch and then add ability headers (with IR’s macro) & extended effects; but I cannot seem to find any mentioning of a way to use Weidu to create projectiles from scratch? * Does op206-self have to be the last in the effect chain? If it were stuffed in the middle, would it prevent the effects after it from being executed? * While it’s quite intuitive to me to understand for items how global effects (conveniently named “equipped effects”) and extended effects (wrapped around similarly convenient headers named “melee” or “range”), I have a much harder time distinguishing between global and extended effects for spells, especially since most of spells will simply use melee headers anyways. Take an example for a spell/ability that removes itself when cast then gives itself back after a certain period: I’ve seen this done both as global effects or in the extended effects, and both works… So what’s the difference between global and extended effects for spells? Is there a good tutorial somewhere for a good explanation of how spells work structurally? IESDP shows me the skeleton of a spell file but not much about its inner workings. * With the addition of the “break sanctuary” flag (BIT9 if memory serves) in 2.6, for an ability to break invisibility when used, do I still need to apply op136 (force visible) if I already set BIT9? So much for now. And as always, thanks for helping!
  10. Speaking from my personal take of the concept and my playing experiences. This is a unstoppable maelstrom of destruction, and a scary psycho on top. I don't think his fighting strategy should be really that "intelligent" or "optimal"; he probably doesn't care either. Their current SCS behavior can be simplified as: seeing party, goes mental, locks on a random opponent and charges directly to him/her. My best chance of defeating him is actually not facing him in close range, but to slow him (with Grease for example) and try to use missiles and evocation school magic to damage him as much as possible before he reaches me, 'cause when he finally and inevitably does, my character is already effectively "half-dead", and his/her first reaction is to actually try fleeing from the berserker rather than "okey, let's dance!". I won't deliberately kite the zerker, but I always consider him scary enough that I should try to keep myself away from him, especially taking advantage of the initial distance I have with him. The whole experience of fighting a SCS berserker for me, feels just about right... Now if somehow the psycho learns the dark art of being a smart-ass at the same time and can willingly control his freakout timer to be just about 1 meter away from me, the whole experience would feel "wrong", at least to me. And I would actually argue it's not fair to the player either, especially during earlier stages of the game, 'cause no self righteous butt-kicking goodness would stand a chance in close proximity with a raging orger berserker. So I would say, let the player who deliberately kite kite, and keep the zerkers mental. PS. The "raging" would actually take time both in PnP and from actual legends. A recent movie, The Northman, at least made an effort showing the actual "preparation" process of going berserk before a battle. So once again, being able to time your rage to activate just when he reaches an opponent in close range does not feel right. Too optimal and artificial, I think is the word I was searching for.
  11. In your Baldur.lua file, search for SetPrivateProfileString('Game Options','Cleric Ranger Spells','1'). Changing from 1 to 0 here will give you the oBG/oBG2 "feature" of a Cleric/Ranger having access to all divine spells (less the Shaman-specific ones of course).
  12. I just tested, and my Cleric 2 / Ranger 17 dual had AC6 after casting Barkskin on herself. However, I don't know if it really answers your question, since in a unmodded game, Barksin is available to Clerics and Druids. Are there even any level-dependent Druid-specific spells up to level 4 in the vanilla game?
  13. Exactly how I did it. Thanks again. Super nice of you.
  14. Done and working as expected. Thanks, everyone.
  15. Thank you for the thorough reply and test. Much appreciated! Edit: Now I just need to make the cleric CLAB ability to cancel my ranger caster level boost as you have suggested.
  16. (1) Is it correct that for a single-class ranger, his caster level is hardcoded to be 7 levels below his actual class level (based on the fact the ranger gains spell casting starting level 8 in a unmodded game)? I can change mxsplran.2da to move his spell progression to start earlier, for example to level 6 instead of level 8, but his caster level will still be at -7, right? (2) What about Cleric/Ranger multiclass? Is he under the same penalty (inherited from his ranger class)? If so, does this penalty apply only for his "ranger spells" or the "cleric spells" are also impacted? (3) If I apply a 191 (through his ranger CLAB) to bump his caster level by 7, would it apply to his "cleric spells" also? Meaning his "ranger spells" are ok now after the 191 bump, but his "cleric spells" are now over-leveled by 7? (4) Does the baldur.lua option rangerclericspell (or something similar) have any impact on the question at hand (caster level) apart from controlling what spells he can gain through his ranger class? Thanks in advance!
  17. For dual-classed characters, does option 2 change the kit for the 1st class or the 2nd? And in case it’s the latter, what happens if the 1st class already had a kit?
  18. Sorry for necro'ing an old thread, but I think I've discovered a new incompatibility between SR and IWDification. First, I've confirmed this issue on both EET and SoD (Beamdog version so no Modmerge needed). Basically, Installing the IWDification Arcane Spell Pack after IR+SR, then when one tries to use Wand of Monster Summoning (wand10.itm) in game will result in CTD. Here're the combinations I've tested (on a fresh install of either SoD or EET), always starting a new game with the pre-made elf mage chic, then consoling in wand10 and scrl75 (for identification): IR alone (since IR also alters wand10.itm) - OK IR + SR (either SR4b18 or latest Git master) - OK IR + IWDification (either v2 or latest Git master) - OK IR + SR (either SR4b18 or latest Git master) + IWDification (either v2 or latest Git master) - CTD While I understand this does not necessarily mean it's a bug/issue on IWDification's part (it could well be SR or even IR), I'm posting here anyways mainly because (1) IWDification was the last of the 3 mods in my installation order, and (2) trying to make sense of IWDification's code is beyond my skill level... Weidu log for the CTD scenario attached for reference. WeiDU.log
  19. I met the same annoy-ness and thought I was an idiot... took a big chunk of me hair (pulling) to get it working eventually.
  20. Ok…thanks for the explanation. “Moving” ranger kits to fighter kits was actually what I wanted to do in the first place. It’s ok. Once again, sorry for the OT talk, Awachi.
  21. Sorry for OT, but in which mod is this? Does this mean I could modify this spell and turn it into an innate ability so I can make for example a fighter kit with a “hide” button that does not involve EEex?
  22. If we connect the line and say druid (soells) functions within the confines of nature, and nature is infested with fey creatures, then enchantments fit pretty well with druids. Also, the way I imagine her, an avenger freezes and burns (or maybe dominates and confuses); she does not disable, as that feels less vengenful. So for what's its worth, I'd vote for Confusion (a direct enchantment attack rather than necromancy disable) here for the general public. I mod my own game and turn avergers to elementalists nevertheless.
  23. This, worked. Now I might use CDTweaks’ method for 2H-battleaxes and give every handaxe an ability to switch to a melee-only version of itself. Thanks for the feedback and help, everyone.
×
×
  • Create New...