Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - d20 System

Notices

Reply
 
Thread Tools Display Modes
Kendall-DM
Spy
 
Join Date: Jan 2011
Location: Van Nuys, California
Posts: 1,220

Old March 21st, 2011, 10:39 PM
Been trying to get to this and help you out, but I have been extremely busy lately. I should have a chance tomorrow or the next to give it a look.
Kendall-DM is offline   #11 Reply With Quote
Kendall-DM
Spy
 
Join Date: Jan 2011
Location: Van Nuys, California
Posts: 1,220

Old March 22nd, 2011, 12:35 PM
I've gotten this to work in a test wizard type class. Because the metamagic scripting that determines level and how it is applied is encapsulated and hidden from user modification, there is nothing I can do about what the metamagic feat reports as the new spell level when you apply the metamagic feat to a spell. However, the spell itself uses up the correctly modified slot for the Incantatrix special ability (-1 level to the metamagic).

There is another problem though. Metamagic applied spells have no memory of what metamagic feat was applied to it. HL creates a temporary custom spell, modifies its name to the modified spell's name with the metamagic title added on ("Maxim, Quick, Still, etc.) and modifies the spell level to the new spell level. This means, I have no idea how to tell which feat got applied, or how many of them. I've tried a few different methods, and the one I'd like to work out is to get the sLevel of the gizmo (spell) that is being modified. I'm not entirely sure how to do that, but if there is a way to do that, I can take the difference of the gizmo spell and the metamagic spell. Unfortunately, this causes another problem in any case, because if you apply multiple +1 metamagics to a spell, this will lead to a false positive on that difference. So, I'm not sure that can be fixed, a real conundrum.

As it stands, this works for applying a single metamagic. It just doesn't have a way to limit which metamagics get the -1 applied and which do not. As a GM, you might have to enforce it yourself, since there is no way to figure out if a +1 or less metamagic is being applied. This is the best I could do in the time I had available, use this as a starting point to getting the code to work as you'd like.

Code:
<<Pre-Levels (users) 10000>>
~ Determine new metamagic spell level.
foreach pick in hero where "thingid.sCustomSpl"
  if (eachpick.field[sLevel].value > 1) then
     eachpick.field[sLevel].value -= 1
  endif
nexteach
Alternate version, with difference possiblity (psuedo-code, don't use, this is strictly for others to puzzle out or if they can find a better way.)

Code:
var diff as number
foreach pick in hero where "thingid.sCustomSpl"
  ~ Difference of actual spell level vs. the metamagic spell level.
  ~ Would still need to track for multiple applications of metamagics to a spell.
  diff = eachpick.field[sLevel].value - <gizmo sLevel, parent non-existent>
  if (diff > 1) then
    eachpick.field[sLevel].value -= 1
  endif
nexteach
Have no idea how to check if multiple metamagics were applied to the spell. In truth, I just don't have enough experience with gizmos.

Last edited by Kendall-DM; March 22nd, 2011 at 12:38 PM.
Kendall-DM is offline   #12 Reply With Quote
Lord Magus
Senior Member
 
Join Date: Jan 2011
Location: Quebec, QC, Canada
Posts: 464

Old March 22nd, 2011, 05:59 PM
Thanks a lot!

And to think I started this out thinking this ability would be rather easy to devise...

Another way to try to do it would be to create an ability (feat-like) that could be applied to spells by the user to reduce its level (kind of a reverse Heighten Spell), so the user could manually adjust the spell's level. Again, not sure how to do this: I don't think Heighten Spell allows for negative modifiers.
Lord Magus is offline   #13 Reply With Quote
Lord Magus
Senior Member
 
Join Date: Jan 2011
Location: Quebec, QC, Canada
Posts: 464

Old April 9th, 2011, 02:40 PM
Nope... can't work around metamagic feats' inherent limitations (no negative value, HL not keeping track of the individual modifiers to spell level).

What I was hoping to do now is to systematically recreate "improved" versions of all MM feats in the community files with a lvl adjustment >1, give those prerequisites of the original metamagic feat as well as the Improved Metamagic class special, and bootstrap those to that same Improved MM class special. Roughly, does that seem feasible?
Lord Magus is offline   #14 Reply With Quote
Storm Matthews
Junior Member
 
Join Date: Mar 2013
Posts: 5

Old March 13th, 2013, 07:03 PM
Not sure if you ever got this done, but I found that this works



Code:
~<Pre-Levels (users) 10000>>
~ Determine new metamagic spell level.
var x as number
foreach pick in hero where "thingid.sCustomSpl"
   x = 0
   if (eachpick.tagis[HasMetaMag.?] <> 0) then
    foreach pick in eachpick.gizmo from BaseMetamg
        if (eachpick.field[mmLevel].value > 1) then
            x += 1
        endif
     nexteach
    endif
    eachpick.field[sLevel].value -= x
nexteach
Storm Matthews is offline   #15 Reply With Quote
TobyFox2002
Senior Member
 
Join Date: Nov 2013
Location: Andover, Ma
Posts: 632

Old January 10th, 2014, 12:56 PM
Quote:
Originally Posted by Storm Matthews View Post
Not sure if you ever got this done, but I found that this works



Code:
~<Pre-Levels (users) 10000>>
~ Determine new metamagic spell level.
var x as number
foreach pick in hero where "thingid.sCustomSpl"
   x = 0
   if (eachpick.tagis[HasMetaMag.?] <> 0) then
    foreach pick in eachpick.gizmo from BaseMetamg
        if (eachpick.field[mmLevel].value > 1) then
            x += 1
        endif
     nexteach
    endif
    eachpick.field[sLevel].value -= x
nexteach
Gives an Error:

Hero Labs was forced to stop compilation after the following errors were detected:

Syntax error in 'eval' script for Thing 'cMissMetaMa' (Eval Script '#1') on line 6
-> Group 'HasMetaMag' not defined

Also, I'd love to have the file for the Incantrix or even Hathran if it exists.
TobyFox2002 is offline   #16 Reply With Quote
Sendric
Senior Member
 
Join Date: Jul 2010
Posts: 3,147

Old January 11th, 2014, 07:17 PM
Check out this thread for info on the incantatrix:

http://forums.wolflair.com/showthread.php?t=44854

The final version of this will be available with the next release.
Sendric is offline   #17 Reply With Quote
Storm Matthews
Junior Member
 
Join Date: Mar 2013
Posts: 5

Old February 23rd, 2014, 04:11 PM
Odd, I just was setting up the dweomerkeeper from F&P, which has a similar feature. I just added that in, copied this script, and it is working correctly. The HasMetaMagic tag should exist. It appears to be assigned to any spell modified by MetaMagic. Note that I am using Pathfinder ruleset, so if this is different for you, just look at the tags for a spell modified by metamagic, find the modifying field, and change the script above accordingly.

Last edited by Storm Matthews; February 23rd, 2014 at 04:14 PM.
Storm Matthews is offline   #18 Reply With Quote
TobyFox2002
Senior Member
 
Join Date: Nov 2013
Location: Andover, Ma
Posts: 632

Old February 24th, 2014, 06:37 AM
Hrm, I kinda abandoned this because I couldn't get it to work right. I was creating the prestige Metaphysical Spellshaper, from the BoEF and this is the capstone of that class as well and it failed.

I also still don't know enough about how the foreach works to try and tinker with it. I'm sure it would solve alot of my problems if I did but I just havent had the time to jump into a new area when I was working on debugging what I already have.

But if you are doing the dweomerkeeper, I'd love to see if I can port it over to the 3.5 set. As it is part of the Faerun stuff, along with anything else for the Forgotten Realms Campaign Setting. Though I have no idea how hard converting is, I've not really tried.
TobyFox2002 is offline   #19 Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -8. The time now is 12:45 PM.


Powered by vBulletin® - Copyright ©2000 - 2024, vBulletin Solutions, Inc.
wolflair.com copyright ©1998-2016 Lone Wolf Development, Inc. View our Privacy Policy here.