Lone Wolf Development Forums

Lone Wolf Development Forums (http://forums.wolflair.com/index.php)
-   HL - d20 System (http://forums.wolflair.com/forumdisplay.php?f=46)
-   -   Replacing Wizard Class in Level Up menu (http://forums.wolflair.com/showthread.php?t=45962)

BillS September 25th, 2013 08:25 AM

Replacing Wizard Class in Level Up menu
 
Bear with me, this is kind of long and complex, but I wanted to get the best problem description possible.

BACKGROUND

I am playing in a house rules 3.5 campaign with lots of variants. Most of them I have been able to handle through adding new elements, but one case is causing me some problems.

The campaign has no Draconic language and I want to replace it in the Wizard class (for instance) with Abyssal, Celestial, and Infernal as available bonus languages.

I am able to make a new class using copy from the existing Wizard class, remove the Draconic language and add Abyssal, Celestial, and Infernal.

ISSUES:

1) If I make this a separate class and assign it to a House Rules source, I have the following problems.

Even if the House Rules source is not selected, the new class shows up in the list. Selecting the new source shows a bunch of "Attempt to access non-live" errors, which I think makes sense since most of the data is probably stored in the source .user file that isn't being loaded if it isn't selected.

Once the House Rules source is selected, both the original "Wizard" class and the "Wizard New" class work correctly

QUESTION: Why is the new class showing up even when the source is not selected?

2) What I _really_ want to do for neatness sake is that when this House Rules source is selected I want the d20 Wizard class to be replaced by this Wizard class. When I use "cHelpWiz" in the "Replaces Thing Id" for the new class, the Wizard-New class shows up twice in the "Level Up" list. Oddly, the first entry seems to be more associated with the original "Wizard" class (it contains both the max levels of 20 and the original "Wizard" description, though the languages show as changed).

No matter which of the two "Wizard-New" classes I pick, I get the error

Invalid tag expression specified for 'foreach' statement
Location: 'eval' script for component 'BaseClHelp' (Eval Script 'Calc cSpecial') near line 80

This also happens if I use "Wizard" as the name of the new class (though obviously it is "Wizard" that shows up twice).

QUESTION: Is there a way to do this substitution? Is there some additional component I need to clone and change?


NOTES:

Hero Lab V4.2b - #371
d20 System Data Files 4.1
Lawful_G_d20 (v1.9)

FINALLY...

In a more general sense, is there some kind of documentation for finding and changing components in the HLEditor? I've been kind of learning based on a general idea of how these sorts of things work combined with experimentation and looking up answers on the forum, but that's proving a bit awkward as my changes get more complex.

BillS September 27th, 2013 05:22 AM

I found out the situation with issue 1 - creating the class also at some point seems to create a "class level" entry, which needs to be edited to select the House Rules source.

I still have the problems listed in issue 2.

Mathias September 27th, 2013 09:10 AM

Classes are composed of two linked components - the Class (cHelpWiz) that stores the overall information about a class, and the Class Level (cWizard), which is what you actually add on the Classes list while creating a Wizard character. So, to replace the class, replace both the entry on the Class tab and the entry on the Class Level tab in the editor.

BillS September 27th, 2013 11:38 AM

I confirmed that I replaced the proper entries for Wizard in both Class (cHelpWiz) and Class Level (cWizard). Now only the new class shows up, but I still get the "foreach" error, both when I first select the class and when I try to change any attributes.

What is BaseClHelp? Is it a basic list of classes I need to modify or add to?

BillS September 27th, 2013 12:14 PM

Just had another issue - when I have (seemingly successfully) added "Wizard - New" as a separate class, I find that I cannot select Specialized or Forbidden Schools. I found a post (http://forums.wolflair.com/showthrea...hool#post69722) that says there was a thread that explained how to fix this, but I'll be doggoned if I can find that thread.

I've been programming for decades but this is making me feel pretty stupid :)

Mathias September 27th, 2013 12:57 PM

Quote:

Originally Posted by BillS (Post 166704)
Just had another issue - when I have (seemingly successfully) added "Wizard - New" as a separate class, I find that I cannot select Specialized or Forbidden Schools. I found a post (http://forums.wolflair.com/showthrea...hool#post69722) that says there was a thread that explained how to fix this, but I'll be doggoned if I can find that thread.

I've been programming for decades but this is making me feel pretty stupid :)

Within the editor, from the Help menu, choose "Help on Using the Editor". Then, look in Tutorial #4, in the "Inheriting Abilities from Another Class" section.

Mathias September 27th, 2013 12:59 PM

Quote:

Originally Posted by BillS (Post 166700)
I confirmed that I replaced the proper entries for Wizard in both Class (cHelpWiz) and Class Level (cWizard). Now only the new class shows up, but I still get the "foreach" error, both when I first select the class and when I try to change any attributes.

What is BaseClHelp? Is it a basic list of classes I need to modify or add to?

When Hero Lab gives you an error message, you can right-click it and copy it. Without knowing more about the error you're getting, I can't help you.

BillS September 27th, 2013 05:31 PM

It's the one in the first post.

Mathias September 27th, 2013 06:24 PM

Remove the "Replaces Thing Id" on both the class and the class level - then, use the *Preclude tab to preclude the old versions while this house rule is turned on.

Replacement is checked before sources are checked, so by making replacements, you're entirely removing the normal Wizard class.

I suspect the error message is also due to the replacement - classes may not have been set with replacement in mind.

Sendric September 30th, 2013 05:52 AM

Quote:

Originally Posted by Mathias (Post 166716)
Remove the "Replaces Thing Id" on both the class and the class level - then, use the *Preclude tab to preclude the old versions while this house rule is turned on.

Replacement is checked before sources are checked, so by making replacements, you're entirely removing the normal Wizard class.

I suspect the error message is also due to the replacement - classes may not have been set with replacement in mind.

Having played around with this some, you can pretty safely use replace thingid for anything in the Class Level tab. Replacing things in the Class tab, however, tends to cause problems.


All times are GMT -8. The time now is 07:46 PM.

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