• Please note: In an effort to ensure that all of our users feel welcome on our forums, we’ve updated our forum rules. You can review the updated rules here: http://forums.wolflair.com/showthread.php?t=5528.

    If a fellow Community member is not following the forum rules, please report the post by clicking the Report button (the red yield sign on the left) located on every post. This will notify the moderators directly. If you have any questions about these new rules, please contact support@wolflair.com.

    - The Lone Wolf Development Team

Tinker Class

SeeleyOne

Well-known member
I want to play the Tinker Class from Interjection Games. http://interjectiongames.com/pathfinder/classes.html

Anyway, I am trying to figure out the best way to handle Inventions. They are kind of like the Alchemist's extracts, as they would be in a spellbook. That part seemed easy, just make it like the Alchemist or Wizard.

But it isn't. The character does not actually "cast" the inventions. There is a spell level limit based on class level (level 1 at level 1, level 2 at level 4, etc), but there is no limit to how many inventions can be known and they are not prepared/memorized.

But that is not all, there is a limit to how they are used, and that is with Blueprints. The character gets so many Blueprints per day, and each of these blueprints is composed on one or more inventions with a level total equal to the class level. So for example, level 3 can have three level 1 inventions in the same blueprint. So in that way it is more like how you can make "your favorite Metamagic feat and spells" for spell casters.

So far I just have it be one spell per day per available spell level as a memorized caster (Wizard or Alchemist), but that is not really very accurate.
 
SRD said:
Inventions: Rather than cast spells, a tinker knows inventions drawn from the invention list. A tinker must design and prepare a number of blueprints using his inventions ahead of time. To learn or use an invention, a tinker must have an Intelligence score equal to at least 10 + the invention level. The Difficulty Class for a saving throw against a tinker's invention is 10 + 1/2 the tinker's class level + the tinker's Intelligence modifier unless stated otherwise in an invention's entry. A tinker may know any number of inventions. He must choose and prepare his blueprints ahead of time by getting 8 hours of sleep and spending 1 hour studying his invention book. While studying, the tinker decides which inventions to place into each blueprint.
While this sounds like a spellbook this to really is nothing more than a bunch of "Custom Abilities" no different rogue talents or rage powers. The only difference is the unlimited nature of learning any number.

My advice for that is to have a script on the Class that does a foreach loop and counts the number of Inventions picked and then set the class to have that number. So if a person adds 2 it will be say 2 of 2. If you add three it will say 3 of 3.

SRD said:
Blueprints: A blueprint is a schematic containing a number of inventions. A tinker begins play with a single blueprint, plus additional blueprints equal to his Intelligence modifier / 3, rounded down, minimum 0. Each blueprint can contain a number of inventions whose build point (BP) total is equal to or less than the tinker's class level. At 5th and every 5 levels thereafter, the tinker receives an additional blueprint, for a total of 5 blueprints at 20th level.
This is the issue right here. I am not seeing an easy way of doing this. I see a couple "very" hard ways of doing this but you need a gizmo that allows for selecting multiple inventions together into a single custom "Thing". Big issue is we have very little ability to create Gizmo's in HL and those we can has to be done 100% outside the editor in RAW XML. :(

Another idea is you could build about a dozen configurables that you could bootstrap to the class. These would be on bootstrap conditions based on a Custom.? tag that you assign depending on how many Blueprints the character gets. This means it could be adding like 9+ new tabs and I have never done that before and don't know how HL will react. Plus this means it will be unusable on the iPad.

Then have each configurable able to select the class "Custom Abilities". You could have it build the Search Expression for the list of "Custom Abilities" based only on the inventions that where taken on the class tab.

Then each "Configurable" would act as your Blueprint allowing you to build a list of inventions up to the classes level. You would have to set CfgMax1 field to be equal to the level of the Tinker class.

Plus each chosen Invention would have to deduct any BP cost over 1 from the CfgUse1 field. So if the Inventions BP was 2 HL would automatically add to the CfgUse1 by one so you would have to increase that by an additional one. So this way if you have 5 BP and the Invention you take was 2 you would only be able to spend "3" more BP not "4".
 
Thanks for the ideas. I think that I will use an ability count as you mentioned for the Inventions, and for now I will not include the actual Blueprint part. The player can have it on a paper when playing. Or type something up in the Journal.

For the inventions, I set the ability count to 1, to remind the player to add at least one. But I think that the foreach eval script will probably use an if statement that if it is 0 it is 0 and if it is greater than 0 it is 1. It basically turns it into a boolean.
 
The automatons and Alpha are kind of like Animal Companions with their own tables. I recall that you made a custom table for the Dragonrider. How did you do that? Nevermind, I am looking in that file.
 
Last edited:
I am screwing up the count syntax somehow. I added a custom group tag to the Inventions. thinking that might be easier to count with Custom.Invention

I was trying count:Custom.Invention but it is either just plain wrong or is missing something.

I plan to have my eval script use a field[cGiveSpec].value += X, where X is the "excess" number of Inventions (which I start at 1).
 
I was trying count:Custom.Invention but it is either just plain wrong or is missing something.
count:Custom.Invention would be used for a Bootstrap condition not a normal eval script.

So if you want this to work you will have to put some code on each invention like this:
First/100
Code:
~ Set our tag on the hero
perform hero.assign[Custom.Invention]

Then your count script you can count the number of tags assigned to the hero. The above script won't fire unless the Invention was selected and made Live.
Post-Levels/10000
Code:
~ Count the number of invention tags on the hero and subtract one
~ so that we account for the default allowed 1.
field[cGiveSpec].value += (hero.tagcount[Custom.Invention] -1)

Does any of that help?
 
Awesome, thanks. As I make more stuff I will get better at this. I learned quite a bit from playing with Savage Worlds and Mutants and Masterminds, but those were rather simple by comparison to Pathfinder.
 
I learned quite a bit from playing with Savage Worlds and Mutants and Masterminds, but those were rather simple by comparison to Pathfinder.
SW maybe simple but its a great place to learn about HL. I actually have SW installed just so I can look at all the files and see how things are put together. It helps me out allot to be able to see under the covers. :D
 
SW was where I learned a lot by reading the source code. Great stuff when you want to learn how it all goes together. :)

I have been learning quite a bit just by working on getting this class to work. There have been times that I would have to go back and change something when I realize that an "outside source" (like a feat, Favored Class ability, or whatever) will want to alter it. Oh well, at least time "wasted" is spent learning. Sometimes I think that I should have written a whole pseudocode or UML diagram of everything in its entirety. Had I played the class before working on it would have helped, too.

What techniques for planning how it all works BEFORE wasting time do other people use?
 
Back
Top