Junior Member
Join Date: May 2012
Posts: 15
|
Hello all,
I'm working on a new Archetype with a Drake Companion. I could get into a lot of details but in truth, it is all working fairly well except for creating a new subtype breath weapon. I've been trying to find the answer in the forums but I feel like I'm learning Greek from a Russian but it's being taught in German which neither of us is very good at speaking. My guess is I need to use the Item Selection - Select from... Freeform edit control so I can add my subtype options but I'm don't know and can't figure out how to make it do anything. Then I need help getting the subtype breath weapon to work. Again lost. Thanks for any help you can give me. Kevin |
#1 |
Senior Member
Join Date: Oct 2011
Posts: 6,793
|
I don't understand what you are trying to do. What does "a new subtype breath weapon" mean? Are you trying to switch the damage type of the breath weapon, for example from fire to acid or something?
|
#2 |
Junior Member
Join Date: May 2012
Posts: 15
|
I was able to make a Drake subtype "Holy" as a Race Custom Ability, though it is the only selection available for my Companion. Right now I can't even figure out how I did that.
The "Holy" Drake subtype get a free Drake Power Breath Weapon. This breath weapon I want is a new Element type that would do bonus damage vs Evil. I can't get a "Holy" breath weapon to be selected from the list. I not sure I'm explaining this well. |
#3 |
Junior Member
Join Date: May 2012
Posts: 15
|
Remembered how I got it to be a companion subtype and why the other options are not available. "Available to configurable" I would have to duplicate the other subtypes to make them available to my config file. Which is something I will be doing for the Drake Powers for other reasons and may do for the subtypes anyway though it is not required for what I want to accomplish.
|
#4 |
Senior Member
Join Date: Oct 2011
Posts: 6,793
|
Sorry again for losing track of this.
So it sounds like you made a couple racial variants which can be added and you gave each of them a certain bootstrapped breath weapon. My first question is, which pick for breath weapon are you bootstrapping? There are two generic ones which slightly differ, raBreath and raDrBreath. So once you know which one you're using, make a copy of it and look at the scripts to see how it generates the info used in building its livename and summary. For example, raDrBreath has this script (with helpful notes!) Code:
<eval index="1" phase="Final" priority="50000" name="Dragon Breath Weapon sets livename"><![CDATA[ ~ The dragon race should bootstrap this special with an abValue = the ~ number of dice, and abValue2 = to the die size and a BloodEner.? tag ~ for the energy type. If we want to override the damage type, enter ~ text in abText2 (For instance an umbral dragon would have ~ "negative energy" in abText2). ~ Any existing races which use the old method (which sets the livename ~ from a script on the race), should be preserved because if there is ~ already a livename set, then the procedure does nothing. ~ We call this twice. First here for livename. Then later for sbName. call SetDraBre ]]></eval> The other option, raBreath, has user comments in the definition (rather than the scripts). Code:
<comment><![CDATA[ Generalized version of breath weapon that allows user to specify energy type, area (shape), range, damage, etc. Fortmat is: thingname (range & area, damage/effect, save type DC half/negates, frequency of use) ~ Should be bootstrapped with the following values abValue - # of damage dice abValue2 - size of damage dice abRange - range trkMax - usage freuency ~ Should be bootstrapped with the following tags Usage - usage period wType - type of damage abRange - range units, usually Feet abArea - primary area, usually a Cone or Line abSave - usually RefHalf ~ Optional configurations abValue4 - secondary range value abText3 - secondary range text abValue3 - bonus damage appended after abValue/abValue2 abText2 - supplementary effect appended after abValue3 wMain - can be used to specify damage instead of abValue and abValue2 abDC - bonus/penalty to DC ~ Overrides abText - override damage ]]></comment> Hope that helps! |
#5 |
Junior Member
Join Date: May 2012
Posts: 15
|
This is all very helpful Thank you so much!
I'm working with cDrCBreWea This is the Eval Script I see doneif (field[usrChosen1].ischosen = 0) if (field[usrChosen1].chosen.tagis[BloodEner.Acid] <> 0) then hero.childfound[raBreath].field[abText].text = "acid" elseif (field[usrChosen1].chosen.tagis[BloodEner.Cold] <> 0) then hero.childfound[raBreath].field[abText].text = "cold" elseif (field[usrChosen1].chosen.tagis[BloodEner.Elec] <> 0) then hero.childfound[raBreath].field[abText].text = "electricity" elseif (field[usrChosen1].chosen.tagis[BloodEner.Fire] <> 0) then hero.childfound[raBreath].field[abText].text = "fire" endif I have a Tag that says: Group Id: fShowWhat Tag Id Energy Base Name: Energy Type (Base 4) Abbrev: Energy Type (Base 4) it is this Energy Type (Base 4) that I thought I needed to duplicate and add my holy. It seems to be where the field[usrChosen1].chosen.tagis picks are. There is a bootstrap to- raBreath It has its own fields and tags that I think I understand. Your post is definitely giving me things to think about and work out here. I thought I was going to try and get the script from Equipment/Item Power- iHoly to work for me but have not gotten that far. I did think I had to make a Race/Subtype. There is also a cDrC**** for each breath weapon type And since I have your attention. I have another small problem I ran into since originally posting. This has to do with size increase. For my Drake, I want to have it get a stat increase to strength +2 at lvl 4 though it does not get bigger. At lvl 6 it gets a size increase and the bumps in stats that go along with it. I got the lvl 4 increase to work but at lvl 6 I only get an additional +2 not the +4 I was expecting. This has to be because of how I co-opted the script for size increase but that does not mean I know what to do to fix it. I am nearly certain it has to do with the tagreplace where I keep the same RaceSize. Is there a way to fix it to get what I want? This script was copied from Race rDrakeComp if (herofield[tCompLevel].value >= 18) then perform tagreplace[RaceSize.Tiny12,RaceSize.Large1] perform hero.childfound[wBite].tagreplace[wMain.1d3,wMain.1d8] perform hero.childfound[wSting].tagreplace[wMain.1d3,wMain.1d8] field[rSpeed].value = 30 elseif (herofield[tCompLevel].value >= 12) then perform tagreplace[RaceSize.Tiny12,RaceSize.Medium0] perform hero.childfound[wBite].tagreplace[wMain.1d3,wMain.1d6] perform hero.childfound[wSting].tagreplace[wMain.1d3,wMain.1d6] field[rSpeed].value = 30 elseif (herofield[tCompLevel].value >= 6) then perform tagreplace[RaceSize.Tiny12,RaceSize.Small11] perform hero.childfound[wBite].tagreplace[wMain.1d3,wMain.1d4] perform hero.childfound[wSting].tagreplace[wMain.1d3,wMain.1d4] elseif (herofield[tCompLevel].value >= 4) then perform tagreplace[RaceSize.Tiny12,RaceSize.Tiny12] perform hero.childfound[wBite].tagreplace[wMain.1d3,wMain.1d4] perform hero.childfound[wSting].tagreplace[wMain.1d3,wMain.1d4] endif |
#6 |
Senior Member
Join Date: Oct 2011
Posts: 6,793
|
So the fShowWhat tag is basically telling some background scripts how to set a field called usrCandid1, which holds a tag expression limiting what is shown in the selector. Creating a new fShowWhat tag won't help, because the background scripts won't be looking for it. What you'll need to do instead is delete the fShowWhat tag, and set the usrCandid1 field yourself directly.
You'll also need to create something to select which will represent this new "holy" type. Here is an example of one of the "Selection Helper" things we have defined, which are being selected from in the normal version of cDrCBreWea Code:
<thing id="selEnFire" name="Fire" compset="SelectHelp"> <tag group="Selection" tag="Energy"/> <tag group="Selection" tag="EnergyBase"/> <tag group="Selection" tag="EnergyAAr"/> <tag group="BloodEner" tag="Fire"/> <tag group="SchoolEner" tag="Fire"/> <tag group="ElemFocus" tag="Fire"/> <tag group="ElemFocGrt" tag="Fire"/> <tag group="MythEleFoc" tag="DamFire"/> <tag group="wType" tag="Fire"/> <tag group="wType" tag="FireHalf"/> <tag group="MMElemSpel" tag="selEnFire"/> <tag group="fEleSplDup" tag="selEnFire"/> </thing> Assuming your new pick has the ID selEnHoly, here is what I would set usrCandid1 to: component.SelectHelp & (Selection.EnergyBase | thingid.selEnHoly) So that should allow you to select "Holy" but as you see from the scripts in cDrCBreWea, its got no branch to handle choosing this new thing. So the simplest solution, I think, would be to include a check in the same eval scripts which you are using to modify cDrCBreWea's usrCandid1 field. |
#7 |
Senior Member
Join Date: Oct 2011
Posts: 6,793
|
Quote:
|
|
#8 |
Junior Member
Join Date: May 2012
Posts: 15
|
Even more stuff to play with. So exciting!
I am aware of Size Increase special (cDrCSizInc) it IS where I have made my stat change and I probably should have told you that. I call it Drake Maturation, going from juvenile to Adult. +2 Str & +2 Wis. I guess I should be taking notes of all the stuff I've been trying because I now remember the info I put in from the race was because my maturation was not working at all until I finally figured out I did not have it set for Post-Level and the Race change mentioned was just a wild guess for what is not working. At least I now have taken that useless bit out. However, I still am not getting a +4 str at lvl 6. I do if I level to 12 & 18. To be clear my strength progression I'm getting is lvl 1- 9, lvl 4- 11, lvl 6- 13, lvl 12- 17, lvl 18- 21 when I want lvl 1- 9, lvl 4- 11, lvl 6- 15, lvl 12- 19, lvl 18- 23 Would changing the priority or Index make a change? Code:
~ abValue = Str Bonus ~ abValue2 = Wis Bonus field[abValue].value += (field[xCount].value * 2) field[abValue2].value += (field[xCount].value * 2) and Code:
~ only run the rest for the first copy doneif (tagis[Helper.FirstCopy] = 0) ~ If we're not shown, just get out now doneif (tagis[Helper.ShowSpec] = 0) ~ If we're disabled, do nothing doneif (tagis[Helper.SpcDisable] <> 0) ~These are permanent changes to size, and so shouldn't show as temp adjustments when we change attributes. perform hero.childfound[aSTR].assign[Helper.PermanentSizeIncr] perform hero.childfound[aWIS].assign[Helper.PermanentSizeIncr] #applybonus[aSizeBon,hero.child[aSTR],field[abValue].value] #applybonus[aSizeBon,hero.child[aWIS],field[abValue2].value] Copied and modified from Size Increase special (cDrCSizInc) Thank you so much for your help. Kevin |
#9 |
Junior Member
Join Date: May 2012
Posts: 15
|
Not that it matters at this point, and is another reason for taking notes, I now recall why I made that size addition to the rDrakeComp. the size change was not working. The stats were changing but the drake size was staying at tiny. I tried that as a way to make it work and it did. However, it is working without it now.
|
#10 |
|
|