Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
I apologize that I haven't had the time before now to lay out how to modify Hero Lab for the Cheese Grinder rules.
(Here's the ruleset, for anyone else who's reading this: http://www.thecheesegrinder.com/inde...&id=6&Itemid=2) On the mechanics tab, create a new mechanic, and use the "Sources" button to assign this to a new "Cheese Grinder" source. Now, press the "Eval Script" button at the top right, and "click to add another eval script". The first thing we'll handle is that you want a 40-point attribute point buy. herofield[tGen].value stores the number of attribute points the user the user has chosen on the Configure Hero form (herofield[tGen].value = 0 means the "Pick/roll ability scores" method. So, we'll add a script to override that. Normally, these are values that the user would set. Hero Lab's been told that they're user fields, and normally, the compiler would give errors if a user field was modified. So, beginning the script with "trustme" turns off that error report from that point to the end of the script. Timing: First/5000 Code:
trustme herofield[tGen].value = 40 Code:
trustme herofield[tGen].value = 40 herofield[tStartLev].value = 11 herofield[tStartPP].value = 0 herofield[tStartGP].value = 100000 herofield[tStartSP].value = 0 herofield[tStartCP].value = 0 Once a mechanic has been added to a character (namely, the testing character), you can no longer use "Test Now!" to apply an incremental change in that Mechanic. Instead, switch windows to the main Hero Lab window, and on the Develop menu, select "Quick Reload Data Files" (keyboard shortcut ctrl-r). That will apply the changes you've made to your mechanic. Last edited by Mathias; June 16th, 2010 at 02:44 PM. Reason: Added a note about ctrl-r |
#1 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
Next, you want to add +1 feat and +1 trait allowed, correct?
2nd Eval Script: Timing: PreLevel/10000 #resmax[resFeat].value += 1 #resmax[resTrait].value += 1 |
#2 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
You want to make sure that the user does select some of the options on the configure hero form and doesn't check others.
Set up a test character with all the sources you want and none of the others. Now, in the "Develop" menu, make sure that "Enable Data File Debugging" (at the top) is enabled, then at the bottom, choose "Floating Info Windows" and then "Show Hero Tags". In the list that pops up, you'll see a large block of tags listed as "Source Volume". Write down the tag Ids listed for those. Now, go back to the Mechanics tab, and press the "Expr-Reqs" button on the top left. Here's an Expr-req that requires the "Max HPs at New Level" option to be selected: Code:
tagis[source.OptHPs] <> 0 Now, for requirements you want to prevent. Configure a test character with sources you don't want to allow, so that you can look up their tags. For example, "source.Society" is the category header for the two Pathfinder Society sources - you probably don't want your users selecting that, so here's the Expr-req to prevent that: Code:
tagis[source.Society] = 0 |
#3 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
Non-standard Race rules
The level adjustments you want to use for monsters and templates are the same as the level adjustments that existed in the SRD (they aren't used in the Pathfinder rules, but there was no reason to remove them from HL when the d20 files were turned into the Pathfinder files). The level adjustment is stored in field[cLevelAdj].value It's not really practical for you to duplicate every monster and template out there in order to add the correct level adjustment to each, so the next best thing is to change those adjustments from within your Mechanic. In a new eval script on the mechanic: Timing: First/500 Code:
hero.childfound[tmHlCelest].field[cLevelAdj].value += 4 You'll need a separate line for each race and template. I'd recommend copying the first line a few dozen times, then select the Id (tmHlCelest in this example), then press the "Find Thing" button that's on the top-right of the Eval script. At the top of that, restrict the list to Templates or Races, and find the template/race you're interested in. Select it, and HL will replace the text you had selected with the Id of the thing you selected. |
#4 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
Other Rules
Achievement feats aren't allowed: Expr-req: Code:
tagis[fCategory.Achieve] = 0 Pre-req: Code:
~start out valid @valid = 1 ~search all our things with a cost foreach pick in hero from Buyable ~if we find one with a cost greater than 49000, set us to invalid if (eachpick.field[gCost].value > 49000) then @valid = 0 endif nexteach Use the Pick-reqs button. At the top, check the "Preclude Selection if Present?" option, then use the "Choose" button at the bottom, specify that you want to choose from rings, and select the ring of blinking. If you want more control over the error message for the ring of blinking, use the following as an expr-req: Code:
childlives[irBlinking] = 0 Last edited by Mathias; June 16th, 2010 at 03:16 PM. |
#5 |
Member
Join Date: May 2010
Location: Warner Robins, GA
Posts: 33
|
Thanks a ton!
Now if I can get all this done in time for Origins, if not I will at least have this setup on our user laptop for DragonCon. Once I get all these setup is it possible to "save" it somehow so I can put like a single file or something on the website so that people can 'import' the configuration? www.thecheesegrinder.com www.d20Pro.com |
#6 |
Senior Member
Volunteer Data File Contributor
Join Date: Jan 2010
Location: Chicago, IL (USA)
Posts: 10,729
|
Totally. When you do the above you will be creating a new Data file(ie .user) file that will have the above changes. So all you have to do is share that .user file with others and they will have those changes also. It just needs to be installed into their hero lab\data\pathfinder folder.
You may also wish to look at This Thread as it goes over using the secondary update URL. So you could have it just setup to have HL download and install your .user file(s) just like other updates. This is what I have working for my players and they love the simple one click install of new updates I do. Hope that helps. 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. Last edited by ShadowChemosh; June 17th, 2010 at 06:19 AM. Reason: spelling |
#7 |
Senior Member
Lone Wolf Staff
Join Date: May 2005
Posts: 13,213
|
You could also create a blank character with all the settings correct, but I'm afraid it may not be long before someone forgets "Save As", rather than "Save" and overwrites it, so that may not be useful.
The HLExport program that was installed along with Hero Lab (it'll be in the same folder in the directory and the same folder in the start menu) is for packaging up files - It can take the .user file that contains the mechanic, and/or portfolios (if, perhaps, you wanted to enter your pre-gens), and the files it creates are recognized as belonging to Hero Lab by Windows. |
#8 |
|
|