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
DannyBoy2k
Senior Member
 
Join Date: Jul 2005
Posts: 181

Old February 9th, 2007, 07:39 AM
Well, pretty much what it says above...how would one go about making a spell list for a new class, beyond those already included? Friend of mine is hell-bent on making a Duskblade from PHB II...and when I create one it says basically that there are no spells to choose from. I assume this is because there is no Duskblade spell list, meaning I have to make one.

( I know I have a ton of questions, and about weird-ass classes too. But I figure both that it's a good way to learn, and a good way to find errors and anomalies. :wink: )
DannyBoy2k is offline   #1 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old February 9th, 2007, 09:57 AM
At 08:39 AM 2/9/2007, you wrote:
>Well, pretty much what it says above...how would one go about making
>a spell list for a new class, beyond those already included? Friend
>of mine is hell-bent on making a Duskblade from PHB II...and when I
>create one it says basically that there are no spells to choose
>from. I assume this is because there is no Duskblade spell list,
>meaning I have to make one.


The first step would be to set a new "Spell Class Tag" on the class
helper object. In the editor, go to the Duskblade class helper, and
change "Spell Class Tag" to "Duskblade" (you'll probably have to add
a new tag to do that). Make sure the new helper object is spliced in,
then recreate the panel for the class and reload the data files.

Add a Duskblade level, switch to the Duskblade tab, and there should
be 0 spells to choose from. Go back to the editor and switch to the
spells tab. Create new copies of a few of the spells you want in the
Duskblade list, but for "Spell Class", change whatever class they're
for to "Duskblade". Save them and splice them in. Now try to add a
spell again - the spells you just spliced should appear in the list.


(Note - please make sure to splice in more than one spell - there's a
crash issue which might hit you if there's only one spell in the
list. I've fixed it for the next release, but I don't want you
running into it here.)


>( I know I have a ton of questions, and about weird-ass classes too.
>But I figure both that it's a good way to learn, and a good way to
>find errors and anomalies.)


Oh, no worries! All the questions you guys ask here help us greatly
improve Hero Lab.


Thanks for youe feedback!



--
Colen McAlister (colen@wolflair.com)
Chief Engineer, Lone Wolf Development
http://www.wolflair.com/
Colen is offline   #2 Reply With Quote
DannyBoy2k
Senior Member
 
Join Date: Jul 2005
Posts: 181

Old February 9th, 2007, 10:38 AM
Ok, then. I like what I see so far from you guys, so I'll keep nagging and poking.
And, of course, I instantly have a question. After having slapped myself silly-buggers for not figuring something this easy, I still have a problem...see, it tells me that while I have spells...I can't pick them, since 'No more spells can be learned'. Choosing any spells forceably makes it 'Excess level 0 spells'.

Oh, and a couple other things. First, the lists where you enter known spells and spells per day...do they have to start at 0? It tends got ME confused, at least. If they have to, they have to, just thought I should mention it. And secondly a potential bug. The first time you open one of those two, there is an 'offset' in the middle of the list making the spaces where you enter the number not line up properly. If you scroll the list, the boxes move above or below this offset, so it can be worked around. And if you close it, and then re-open it, the offset is gone, at least it has been for me. Just thought you should me made aware of it.
DannyBoy2k is offline   #3 Reply With Quote
Colen
Senior Member
Lone Wolf Staff
 
Join Date: Dec 2008
Posts: 4,690

Old February 9th, 2007, 01:01 PM
At 11:38 AM 2/9/2007, you wrote:
>And, of course, I instantly have a question. After having slapped
>myself silly-buggers for not figuring something this easy, I still
>have a problem...see, it tells me that while I have spells...I can't
>pick them, since 'No more spells can be learned'. Choosing any
>spells forceably makes it 'Excess level 0 spells'.


Did you set the number of spells per day the class can cast? "Spells
per day" should be on the list for the class helper object - edit it
and you can enter the number of spells the class can memorize / cast
/ whatever.



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

Old February 9th, 2007, 01:32 PM
This brings up one concern I had about eventually adding in much of my material.

How much of a drag is it on the memory usage or database crunching to keeping adding in copies of entire spelllists for each class? I would have thought that simply adding a tag to the spells saying which classes have access to it at different levels would create less duplication.
sppeterson is offline   #5 Reply With Quote
DannyBoy2k
Senior Member
 
Join Date: Jul 2005
Posts: 181

Old February 9th, 2007, 02:46 PM
Quote:
Originally Posted by Colen

Did you set the number of spells per day the class can cast? "Spells
per day" should be on the list for the class helper object - edit it
and you can enter the number of spells the class can memorize / cast
/ whatever.
'Spells per day'? Haven't found THAT, I don't think? I've found a 'Spells per LEVEL', and have added that, as best I can, as well as spells known.
DannyBoy2k is offline   #6 Reply With Quote
rob
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 8,232

Old February 9th, 2007, 10:09 PM
At 02:32 PM 2/9/2007, you wrote:
Quote:
How much of a drag is it on the memory usage or database crunching to keeping adding in copies of entire spelllists for each class? I would have thought that simply adding a tag to the spells saying which classes have access to it at different levels would create less duplication.
Excellent question!!!

I'm happy to report that the "cost" should be little different from adding tags to the spells, but the added flexibility and simplicity for authoring makes things much easier.

The reason for this is due to the architecture of Hero Lab's engine. We don't use a traditional database. When the data files are compiled, two separate files are generated. The first is a set of control data and the second is string data. The control data consists of all the "things" and other objects that HL manages, but all of the strings (e.g. names, descriptions, etc.) live in the separate file. The compiler uses duplicate detection for all strings, so all references to the same text are merged into a single reference to one string within the string data. The net result is that five different "Protection from Evil" spells consume five separate, tiny, control structures and all share the same storage for the name, description, range, etc. This is a slight extra cost over applying control tags, but very slight.

Where this really pays off is when users want to merge data. If control tags all had to be assigned to one centralized instance of a spell, then data files would need to be reaching in and modifying other things. Then you have problems with conflicts, missing things, and timing to make sure the things you want to modify exist before you apply the modification. For data files managed entirely by one coordinated team, this is wholly doable, albeit a nuisance. For a distributed user community that will ideally be sharing their creations with each other, that is a veritable train wreck.

So we opted for an approach that incurs a slight extra cost (probably on the order of 1-2% overall) and streamlines the sharing of material.

If the volume of data becomes ginormous (e.g. Wizards gives us a license to support all their supplements) and we end up with 100MB of data, the run-time handling of the compiled string data can be made more intelligent to use a smart cache that was limited to a fixed amount of RAM. This would entail a bit of work, but it would allow HL to run in a small memory footprint and maintain its high performance. The key thing is that it could be done completely transparently to all data files, which means the architecture can be readily evolved without breaking anything, should the need arise. :-)

Hope this makes sense,
Rob
rob is offline   #7 Reply With Quote
rob
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 8,232

Old February 9th, 2007, 10:17 PM
At 03:46 PM 2/9/2007, you wrote:
Quote:
Colen wrote:
Did you set the number of spells per day the class can cast? "Spells
per day" should be on the list for the class helper object - edit it
and you can enter the number of spells the class can memorize / cast
/ whatever.

'Spells per day'? Haven't found THAT, I don't think? I've found a 'Spells per LEVEL', and have added that, as best I can, as well as spells known.
I'm 99% certain that the "Spells Per Level" you have supposedly configured properly in the list of settings *IS* the "Spells Per Day" setting that Colen is referring to.

Colen, it would appear that this one requires additional assistance....

-Rob
rob is offline   #8 Reply With Quote
DannyBoy2k
Senior Member
 
Join Date: Jul 2005
Posts: 181

Old February 10th, 2007, 01:24 AM
Quote:
Originally Posted by rob
At 03:46 PM 2/9/2007, you wrote:
I'm 99% certain that the "Spells Per Level" you have supposedly configured properly in the list of settings *IS* the "Spells Per Day" setting that Colen is referring to.

Colen, it would appear that this one requires additional assistance....

-Rob
Having taken a look-see in the sorcerer/wizard files, I am 100% certain that it is. And yes, I have filled in what they should be where they should be. Seems very strange to me, all of this. Just does not admit I should be able to add any spells.
DannyBoy2k is offline   #9 Reply With Quote
sppeterson
Junior Member
 
Join Date: Oct 2006
Posts: 27

Old February 10th, 2007, 11:43 AM
Quote:
Originally Posted by rob
At 02:32 PM 2/9/2007, you wrote:
Where this really pays off is when users want to merge data. If control tags all had to be assigned to one centralized instance of a spell, then data files would need to be reaching in and modifying other things. Then you have problems with conflicts, missing things, and timing to make sure the things you want to modify exist before you apply the modification. For data files managed entirely by one coordinated team, this is wholly doable, albeit a nuisance. For a distributed user community that will ideally be sharing their creations with each other, that is a veritable train wreck.
Thanks for the response -- and that does make sense.

One issue in PCGEN that always worried me (so I just avoided it altogether) is adding a class that i had to put together a MOD file for that would add that class to a bunch of existing spells -- especially since someone else might be making different mods to them or the base data might change in an update. So trading off a small amount of performance for that sounds good.
sppeterson 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 05:15 PM.


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