Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - d20 System
Register FAQ Community Today's Posts Search

Notices

Reply
 
Thread Tools Display Modes
chogenkiboy
Member
 
Join Date: Feb 2007
Posts: 43

Old February 8th, 2007, 05:06 PM
I'm trying to implement the Elf Wizard Racial Substitution Level for 1st level from Races of the Wild, pg. 157. It's essentially a Wizard that adds a class special called Generalist Wizardry. Generalist Wizardry behaves like a weaker version of school specialization, but instead of losing schools, the restriction is the character must be an Elf. Instead of preparing a free specialty spell of each level, the character can prepare a single free spell of the highest level the Elf Wizard can cast.

Lacking the knowledge to attempt a deep level, script heavy implementation, I tried a sledge hammer approach of creating a Wizard Class variant that would access a Wizard Class Helper variant with modified spells per level.

The Wizard Class itself didn't undergo any significant changes, just Name, Unique Id, Description Text, Bootstrap to the helper variant, and Linkage to the helper variant.

In the Wizard Class Helper variant, I didn't see a way to edit spells per level in the Editor, so I hacked the XML file and incremented the number of highlest level spell slots for each level by one.

The custom file seems to compile fine, but when I select a level in "Elf Wizard", Hero Lab shuts down with the following log:
C:\HeroLab\HeroLab.exe
1.0.g 107
ACCESS VIOLATION
Address: 0x004329e1
Type: bad read

Not much for me to troubleshoot with... any suggestions? I'm sure there's a slicker way to do this with validations scripts and all kinds of cool stuff, but I'm just trying to get a character print out for the DM at this point.
chogenkiboy is offline   #1 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old February 9th, 2007, 09:40 AM
At 06:06 PM 2/8/2007, you wrote:

>I'm trying to implement the Elf Wizard Racial Substitution Level for
>1st level from Races of the Wild, pg. 157. It's essentially a Wizard
>that adds a class special called Generalist Wizardry. Generalist
>Wizardry behaves like a weaker version of school specialization, but
>instead of losing schools, the restriction is the character must be
>an Elf. Instead of preparing a free specialty spell of each level,
>the character can prepare a single free spell of the highest level
>the Elf Wizard can cast.
>
>Lacking the knowledge to attempt a deep level, script heavy
>implementation, I tried a sledge hammer approach of creating a
>Wizard Class variant that would access a Wizard Class Helper variant
>with modified spells per level.
>
>The Wizard Class itself didn't undergo any significant changes, just
>Name, Unique Id, Description Text, Bootstrap to the helper variant,
>and Linkage to the helper variant.
>
>In the Wizard Class Helper variant, I didn't see a way to edit
>spells per level in the Editor, so I hacked the XML file and
>incremented the number of highlest level spell slots for each level by one.
>
>The custom file seems to compile fine, but when I select a level in
>"Elf Wizard", Hero Lab shuts down with the following log:
>C:\HeroLab\HeroLab.exe
>1.0.g 107
>ACCESS VIOLATION
>Address: 0x004329e1
>Type: bad read
>
>Not much for me to troubleshoot with... any suggestions? I'm sure
>there's a slicker way to do this with validations scripts and all
>kinds of cool stuff, but I'm just trying to get a character print
>out for the DM at this point.


If you look at the new wizard class helper object in the editor, and
scroll down the list of items, you should see a "Spells per Level"
entry. Clicking the "Edit" button should allow you to edit the spells
per level there. Otherwise, it sounds like you've done everything
correctly, so I'm not sure why the crash is happening.


Would you mind sending your data files to colen@wolflair.com? I'd
like to try and work out what's causing that crash, so we can stop it
happening in the future.


Thanks, and sorry for the inconvenience,



--
Colen McAlister (colen@wolflair.com)
Chief Engineer, Lone Wolf Development
http://www.wolflair.com/
Colen is offline   #2 Reply With Quote
chogenkiboy
Member
 
Join Date: Feb 2007
Posts: 43

Old February 9th, 2007, 11:54 AM
Heh, scrollbar... didn’t notice it before but got it now... too used to the standard gray scrollbar I guess. I sent the file.

If you're familiar with Racial Substitution Levels, I'm wondering whether you have recommendations for more integrated ways to implement them.

Thanks!
chogenkiboy is offline   #3 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old February 9th, 2007, 01:56 PM
At 12:54 PM 2/9/2007, you wrote:

>Heh, scrollbar... didn't notice it before but got it now... too used
>to the standard gray scrollbar I guess. I sent the file.


Thanks. I've noted the bug, and it should be fixed in the next update.


The easy way to fix the problem is to make the new 'elf wizard'
helper replace the current wizard helper (by specifying "cHelpWiz" in
the "Replaces Id" box in the editor). This will make everything work
fine, with the downside that all wizards you create will be Elf
Wizards (and get the extra spell).




The harder option is to delete the "Elf Wizard" helper. Then, on the
Elf Wizard class level, change the bootstrap and the linkage to
reference the original "cHelpWiz" object, and add the following script:

phase - UserPostAt
priority - any
script:

var level as number
level = hero.child[cHelpWiz].tagcount[Hero.Arcane] - 1
hero.child[cHelpWiz].field[cMemMax].arrayvalue[level] =
hero.child[cHelpWiz].field[cMemMax].arrayvalue[level] + 1



This will get less complicated once I add more support for stuff to
the data files, but right now here's what it's doing:

level = hero.child[cHelpWiz].tagcount[Hero.Arcane] - 1

Set 'level' to the highest level of arcane spells the Wizard class
can cast. The -1 is there because if you can cast level 0 arcane
spells, you have 1 Arcane tag; level 1 arcane spells, you have 2
arcane tags; etc.


hero.child[cHelpWiz].field[cMemMax].arrayvalue[level] =
hero.child[cHelpWiz].field[cMemMax].arrayvalue[level] + 1

The 'cMemMax' field is a 10-element array that holds the number of
spells you can memorize for each level. We already know what the
highest level of spell we can cast is, so increase that value by one.


Hopefully this makes sense. If not, let me know. I'll also be adding
functionality to make this easier in a future release.


>If you're familiar with Racial Substitution Levels, I'm wondering
>whether you have recommendations for more integrated ways to implement them.


We have them 'designed in' to the data structures, but the way to
define them isn't implemented yet. Basically the Basics tab will have
another small table between the 'class levels' table and 'increase
attributes' table, where you'll select racial substition levels. That
way you can define the levels separately from class levels.


Hope this helps,



--
Colen McAlister (colen@wolflair.com)
Chief Engineer, Lone Wolf Development
http://www.wolflair.com/
Colen is offline   #4 Reply With Quote
jamestkirk.land
Junior Member
 
Join Date: Oct 2007
Posts: 2

Old October 3rd, 2007, 12:13 AM
This is a different question but on the same topic.

The Generalist Wizardry 1st level Elven Wizard Racial Substitution Level states:

"...At each new wizard level, she gains one extra spell of any spell level that she can cast."

I looked (admittedly not extensively) for a tag in the wizard list that mentioned how many free spells they get each level and couldn't find it. I think it should be as simple as changing a "2" to a "3".

Thanks!
jamestkirk.land is offline   #5 Reply With Quote
jamestkirk.land
Junior Member
 
Join Date: Oct 2007
Posts: 2

Old October 3rd, 2007, 12:14 AM
This is a different question but on the same topic.

The Generalist Wizardry 1st level Elven Wizard Racial Substitution Level states:

"...At each new wizard level, she gains one extra spell of any spell level that she can cast."

I looked (admittedly not extensively) for a tag in the wizard list that mentioned how many free spells they get each level and couldn't find it. I think it should be as simple as changing a "2" to a "3".

Thanks!
jamestkirk.land is offline   #6 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old October 15th, 2007, 11:14 AM
jamestkirk.land wrote:
>
>
> This is a different question but on the same topic.
>
> The Generalist Wizardry 1st level Elven Wizard Racial Substitution Level
> states:
>
> "...At each new wizard level, she gains one extra spell of any spell
> level that she can cast."
>
> I looked (admittedly not extensively) for a tag in the wizard list that
> mentioned how many free spells they get each level and couldn't find it.
> I think it should be as simple as changing a "2" to a "3".


I'm not sure I understand this. If I'm reading it correctly, at every
single Wizard level, you get to cast an extra spell per day? So that's
20 extra spells by the time you get to 20th level? Or does it mean
something else?



--
Colen McAlister, colen@wolflair.com
Chief Engineer, Lone Wolf Development
Colen is offline   #7 Reply With Quote
chogenkiboy
Member
 
Join Date: Feb 2007
Posts: 43

Old October 15th, 2007, 06:18 PM
There are two parts. One is gaining an extra spell for the Elf Wizard's spellbook (i.e. three per level instead of two as listed in PHB on pg 57), but that's handled easily with the normal spellbook functionality. The second part is what needs to be modeled using the Hero Lab Editor... "The elf wizard may also prepare one additional spell of her high highest spell level each day."

For example, a 1st level Elf Wizard can cast 3 zero level spells and 2 1st level spells each day, and a 5th level Elf Wizard can cast 4 zero level spells, 4 1st level spells, 3 2nd level spells, 3 3rd level spells and 2 4th level spells each day (not including INT bonuses, etc.). In other words Generalist Wizardry only adds one extra spell per day to the casting total, but it's always of the highlest level the Elf Wizard can cast.

Hope that helps.
chogenkiboy is offline   #8 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old October 19th, 2007, 06:32 PM
chogenkiboy wrote:
>
>
> There are two parts. One is gaining an extra spell for the Elf Wizard's
> spellbook (i.e. three per level instead of two as listed in PHB on pg
> 57), but that's handled easily with the normal spellbook functionality.
> The second part is what needs to be modeled using the Hero Lab Editor...
> "The elf wizard may also prepare one additional spell of her high
> highest spell level each day."
>
> For example, a 1st level Elf Wizard can cast 3 zero level spells and 2
> 1st level spells each day, and a 5th level Elf Wizard can cast 4 zero
> level spells, 4 1st level spells, 3 2nd level spells, 3 3rd level spells
> and 2 4th level spells each day (not including INT bonuses, etc.). In
> other words Generalist Wizardry only adds one extra spell per day to the
> casting total, but it's always of the highlest level the Elf Wizard can
> cast.


The easiest way to handle that "automatically" would be to just create a
new Wizard class in the editor, with the spell counts changed to give 1
extra spell of the highest levels.

In the next version of Hero Lab, you'll also be able to add an In-Play
Adjustment to increase the number of spells you're allowed for a certain
spell level.

Finally, you could add a feat that searched the array of spells the
Wizard could cast, and added 1 to the highest level. That would be the
most complex thing to do, but once you did it it would work
automatically without you changing an adjustment every few levels.


--
Colen McAlister, colen@wolflair.com
Chief Engineer, Lone Wolf Development
Colen is offline   #9 Reply With Quote
Lawful_g
Senior Member
Volunteer Data File Contributor
 
Join Date: Mar 2007
Posts: 1,245

Old October 24th, 2008, 10:24 AM
[quote="Colen"]At 12:54 PM 2/9/2007, you wrote:

>If you're familiar with Racial Substitution Levels, I'm wondering
>whether you have recommendations for more integrated ways to implement them.


We have them 'designed in' to the data structures, but the way to
define them isn't implemented yet. Basically the Basics tab will have
another small table between the 'class levels' table and 'increase
attributes' table, where you'll select racial substition levels. That
way you can define the levels separately from class levels.


Hope this helps,



So I was wondering if the racial substitution thing ever got worked out in a uniform way? I have a dwarven cleric that took a substitution level to smite giants rather than turn undead, and I'd like to put that in hero-lab, but as of now I have no idea how.
Lawful_g is offline   #10 Reply With Quote
Reply


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 11:47 AM.


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