Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - Pathfinder Roleplaying Game
Register FAQ Community Today's Posts Search

Notices

Reply
 
Thread Tools Display Modes
SteelRat451
Junior Member
 
Join Date: Nov 2013
Posts: 14

Old December 19th, 2013, 07:21 AM
I am trying to create a new class that uses the custom abilities of two other classes. To do this I would have to use the Custom Ability of one class as a Secondary Ability for the new class. The only solution I found to this is to recreate all the custom abilities of one class as secondary abilities. This strikes me as "silly and wastful" (to quote the comments in the Shaman script which does something similar.) I suspect there is some form of script that can do this based on the Shaman script that overwrites the secondary abilities' expression to avoid duplication. (see below, I understand this duplicates the custom ability list within a given class to the secondary ability, but it does not address accessing other classes.)

Code:
      ~we'll overwrite the secondary abilities' expression, since we need
      ~to make them use the same abilities as our primary list. The alternative (creating every spirit twice, once for each table), is silly and wasteful.
      field[cCstS2Expr].text = field[cCstSpExpr].text

      ~Same with the hexes.
      field[cCstS4Expr].text = field[cCstS3Expr].text
I just have no idea how to redirect the "AllowC2nd" of the referenced class to the custom ability (as opposed to the secondary ability). Any suggestions or pointing out an existing script that does something similar (which I obviously haven't found), would be appreciated.
SteelRat451 is offline   #1 Reply With Quote
ShadowChemosh
Senior Member
Volunteer Data File Contributor
 
Join Date: Jan 2010
Location: Chicago, IL (USA)
Posts: 10,729

Old December 19th, 2013, 11:14 AM
It would be helpful here to know what two classes and which abilities your trying to get too? I am not near HL so I can't give a good answer but your on the right track of having to modify the Custom Expression used by your class to allow selection of the other two.

The one issue is you have to know which Custom ability count they each are. So for examples Rogue Talents are connected to Primary (1st) so it would be hard to allow it to go into the Secondary (2nd) slot.

Let me know the two classes and abilities and I will try and do a quick poke tonight at it.

Hero Lab Resources:
Pathfinder - d20pfsrd and Pathfinder Pack Setup
3.5 D&D (d20) - Community Server Setup
5E D&D - Community Server Setup
Hero Lab Help - Hero Lab FAQ, Editor Tutorials and Videos, Editor & Scripting Resources.
Created by the community for the community
- Realm Works kickstarter backer (Alpha Wolf) and Beta tester.
- d20 HL package volunteer editor.
ShadowChemosh is offline   #2 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,213

Old December 19th, 2013, 11:33 AM
Have you looked at existing things that do this? For example, the Rage domain modifies the Cleric class so that the quaternary slot is used to list the primary abilities from the Barbarian. The Sacred Servant archetype adds Cleric primary abilities (domains) to its tertiary slot. The Stonelord archetype places the Stalwart Defender's primary abilities into its tertiary slot.
Mathias is offline   #3 Reply With Quote
SteelRat451
Junior Member
 
Join Date: Nov 2013
Posts: 14

Old December 19th, 2013, 01:00 PM
@ShadowChemosh:

One class is a custom class I already coded. The class abilities I want to use are primary (1st) The other class is Barbarian, from which I want to use rage powers, which is also a primary (1st). This is the one I am currently working on, although I intend to also create another merging the custom class with a Witch as will using Hexes (also primary (1st)). In short what I am trying to do is what you said would be hard. If you need classes of similar makeup, try a class with Rogue Talents (rogue) and Rage Powers (barbarian), I'm confident I could adapt the code to the custom class. I'm not in a great rush, and would appreciate any insight. Don't rush to write code for this until I get a chance to check out Mathias' suggestions, no point in wasting your time. Thanks!

@Mathias:

I've tried looking at different existing things and will have a look at your suggestions. I usually resort to existing code, tutorials, forum searches and looking at the raw code out of editor before posting questions; although that doesn't mean I found what may already be there. Your suggestions sound like what I am looking for (I just didn't know were to look for such code structure...). Thanks!
SteelRat451 is offline   #4 Reply With Quote
SteelRat451
Junior Member
 
Join Date: Nov 2013
Posts: 14

Old December 19th, 2013, 02:07 PM
@Mathias

I've looked at your suggestions, as well as revisiting your scripting 201 thread as well as another thread where it looks like you helped someone with a similar issue. The problem I run into is this: linkage[varies] works in archetypes, linkage[table] works in cleric domains and class abilities but what sort of linkage works in a class. Is the root command an option and if so, what would it look like?
SteelRat451 is offline   #5 Reply With Quote
Mathias
Senior Member
Lone Wolf Staff
 
Join Date: May 2005
Posts: 13,213

Old December 19th, 2013, 02:27 PM
You're writing a script on the class to modify itself?

Don't use any transition - you're already in the correct place.

Just:
Code:
 
field[cCstS2Expr].text = "The expression you need in this case"
If you're doing this from a class special that's bootstrapped from the class, that's when you'd use the root. transition:

Code:
 
root.field[cCstS2Expr].text = "The expression you need in this case"
Mathias is offline   #6 Reply With Quote
SteelRat451
Junior Member
 
Join Date: Nov 2013
Posts: 14

Old December 19th, 2013, 03:42 PM
Yes, I'm modifying the class itself and no linkage makes sense (now getting a better idea how linkages work...).

Using your advice above, this is the code I'm using. It still doesn't want to modify field[cCstS2Expr] which seems to be stuck as the default (according to the debug info windows). Would I need to script the secondary ability count and secondary ability name as well or am I missing something else?

Code:
Phase: Final Phase (Users)    Priority: 99999999

~we'll overwrite the secondary abilities' expression, since we need
~to make them use primary barbarian abilities

field[cCstS2Expr].text = "(SpecSource.cHelpBbn) & !Helper.Secondary & !Helper.Tertiary"
SteelRat451 is offline   #7 Reply With Quote
SteelRat451
Junior Member
 
Join Date: Nov 2013
Posts: 14

Old December 19th, 2013, 04:42 PM
The code in my last post works just now that the tilde were exchanged...grrr.

Last edited by SteelRat451; December 20th, 2013 at 08:14 AM.
SteelRat451 is offline   #8 Reply With Quote
repair
Junior Member
 
Join Date: Feb 2014
Posts: 10

Old August 25th, 2014, 08:38 PM
Running into a similar problem in getting a classes custom ability to show up as a Secondary ability. Will this scrip work for me?
repair is offline   #9 Reply With Quote
AndrewD2
Senior Member
 
Join Date: Mar 2007
Location: Muskegon, MI
Posts: 2,975

Old August 26th, 2014, 02:43 AM
Yes it should, just change Barbarian to Summoner
AndrewD2 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 12:21 AM.


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