Lone Wolf Development Forums  

Go Back   Lone Wolf Development Forums > Hero Lab Forums > HL - D&D 5th Edition SRD

Notices

Reply
 
Thread Tools Display Modes
DeltaMasterMind
Senior Member
 
Join Date: Jul 2014
Posts: 412

Old December 23rd, 2018, 09:01 AM
Ok for I am having a fit trying to get 5e to play nice with assigning Helper.ProfDouble to skills. Now I am getting it to work with a foreach script. Now the reason this is weird is everytime I try to add in a if statement the tag just won't assign. Here is my script as this script is to check for Helper.Proficient first and assign Double Proficiency and if no Helper.Proficient then to assign Helper.Proficient: Post levels 10000.
Quote:
var tagexpr as string
if (field[usrChosen1].ischosen + field[usrChosen1].chosen.tagis[Helper.Proficient] >= 2) then
tagexpr = field[usrChosen1].chosen.tagids[ProfSkill.?," | "]
foreach pick in hero from BaseSkill where tagexpr
perform eachpick.assign[Helper.ProfDouble]
nexteach
elseif (field[usrChosen1].ischosen <> 0) then
tagexpr = field[usrChosen1].chosen.tagids[ProfSkill.?," | "]
foreach pick in hero from BaseSkill where tagexpr
perform eachpick.assign[Helper.Proficient]
nexteach
endif
if (field[usrChosen2].ischosen + field[usrChosen2].chosen.tagis[Helper.Proficient] >= 2) then
tagexpr = field[usrChosen2].chosen.tagids[ProfSkill.?," | "]
foreach pick in hero from BaseSkill where tagexpr
perform eachpick.assign[Helper.ProfDouble]
nexteach
elseif (field[usrChosen2].ischosen <> 0) then
tagexpr = field[usrChosen2].chosen.tagids[ProfSkill.?," | "]
foreach pick in hero from BaseSkill where tagexpr
perform eachpick.assign[Helper.Proficient]
nexteach
endif
Doing this in a racial special for bootstrap to a feat. With two options set for all things.

Forum link for my content work:
Pathfinder Thread
Forum link for SU 5e content work:
5e Steven Universe Thread
This link is for my group, but feel free to play it with:
DMM 5e | "https://www.dropbox.com/s/vsd9w1eodlnwjq0/updatesDMM.xml?dl=1" Copy this link to your update manager to get updates when available.
This adds the Pisky subrace to elves from Berserk! and additional subraces for the Gem Race.
Please post comments in the provided threads above.

Last edited by DeltaMasterMind; December 23rd, 2018 at 09:26 AM.
DeltaMasterMind is offline   #1 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old December 23rd, 2018, 10:34 AM
You might want to take a look at the Unearthed Arcana Skill feats. The scripting there handles Double Proficiencies. It's not exactly what you asked for but it should point you in the right directions.

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #2 Reply With Quote
DeltaMasterMind
Senior Member
 
Join Date: Jul 2014
Posts: 412

Old December 23rd, 2018, 11:02 AM
Ok, I will check them out. Thanks.

Forum link for my content work:
Pathfinder Thread
Forum link for SU 5e content work:
5e Steven Universe Thread
This link is for my group, but feel free to play it with:
DMM 5e | "https://www.dropbox.com/s/vsd9w1eodlnwjq0/updatesDMM.xml?dl=1" Copy this link to your update manager to get updates when available.
This adds the Pisky subrace to elves from Berserk! and additional subraces for the Gem Race.
Please post comments in the provided threads above.
DeltaMasterMind is offline   #3 Reply With Quote
DeltaMasterMind
Senior Member
 
Join Date: Jul 2014
Posts: 412

Old December 23rd, 2018, 11:22 AM
Well one of them helps remove the foreach loop(s), but I still am having issues with doing if statements with obvious tags to get the double prof to work only if the skill has proficiency in the first place. It is either all or nothing with this game system's scripts.

Forum link for my content work:
Pathfinder Thread
Forum link for SU 5e content work:
5e Steven Universe Thread
This link is for my group, but feel free to play it with:
DMM 5e | "https://www.dropbox.com/s/vsd9w1eodlnwjq0/updatesDMM.xml?dl=1" Copy this link to your update manager to get updates when available.
This adds the Pisky subrace to elves from Berserk! and additional subraces for the Gem Race.
Please post comments in the provided threads above.
DeltaMasterMind is offline   #4 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old December 23rd, 2018, 12:20 PM
Strange.

In the file COM_5ePack_UA - Feats for Skills.user, The if/then is used much to that effect.

The skill feat scripts hunt for the skill of the designated tag. Then checks to see if the user is Proficient with the skill. If not, makes the user proficient; if he is proficient then grants double proficiency.

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #5 Reply With Quote
dungeonguru
Senior Member
 
Join Date: May 2016
Posts: 608

Old December 23rd, 2018, 12:35 PM
The UA - Feats for Skills and other like it are highly dependent on the timing - they have to happen at a precise time. If I remember correctly, we had to pick timing that was after most other scripts applied the Helper.Proficient tag but before the SkillCalc scripts run.

I found a note from some scripting fragments I had:

~ Must run after post-levels/15000 but before post-levels/20000

which means that the UA scripts running at 15500 are basically a timing hack where we picked to run after 15000 for some reason and before 20000 at post-levels.

Make sure your timing falls in that range of if you're looking at something that might depend on the UA, run between 15500 and 20000.
dungeonguru is offline   #6 Reply With Quote
RavenX
Senior Member
Volunteer Data File Contributor
 
Join Date: Jan 2011
Location: Nowhere, Virginia
Posts: 3,633

Old December 24th, 2018, 03:12 AM
Scripts in hero lab are rigged to run at specific times, to ensure they are properly calculated you have to work within specific timing ranges sometimes. Check how the rogue class feature Expertise works, that might help you.

RavenX Pronouns: She/Her

Please do not PM me to inquire about datafiles I coded "for personal use" such as Exalted, World of Darkness, AD&D, or Warhammer 40K Roleplaying. I appreciate your interest, but I do not own the Intellectual Property rights to these game systems. Nor do I have permission from any of the Publishers to distribute the data files. As such, I cannot distribute the work I have done with community on these files. They are "for personal use" only. Thank you.

I am far too busy these days to answer emails. If you message me here there is no guarantee I will get back to you at all.
RavenX is offline   #7 Reply With Quote
Mergon
Senior Member
 
Join Date: Sep 2012
Location: Ottawa, Canada
Posts: 788

Old December 24th, 2018, 05:55 AM
Yep. When I set up my version of Feats for skills I had all sorts of issues.

Someone else did the ones currently in the Community Pack. My issue was timing skills and someone else solved the issues ebfore I did, so I just scapped mine.

Watch your back, Conserve your ammo,
and NEVER cut a deal with a dragon!
Mergon is offline   #8 Reply With Quote
DeltaMasterMind
Senior Member
 
Join Date: Jul 2014
Posts: 412

Old December 24th, 2018, 06:10 AM
Ok so I have changed my script, however any timing after post-level 15000 causes it not to work. This includes 15001.
Quote:
doneif (tagis[Helper.Disable] <> 0)
if (field[usrChosen1].ischosen <> 0) then
if (field[usrChosen1].chosen.tagis[Hide.Statblock] = 0) then
perform field[usrChosen1].chosen.pulltags[ProfDouble.?]
perform hero.pushtags[ProfDouble.?]
else
perform field[usrChosen1].chosen.pulltags[ProfSkill.?]
perform hero.pushtags[ProfSkill.?]
endif
endif
if (field[usrChosen2].ischosen <> 0) then
if (field[usrChosen2].chosen.tagis[Hide.Statblock] = 0) then
perform field[usrChosen2].chosen.pulltags[ProfDouble.?]
perform hero.pushtags[ProfDouble.?]
else
perform field[usrChosen2].chosen.pulltags[ProfSkill.?]
perform hero.pushtags[ProfSkill.?]
endif
endif
From what I see I might be able to use
Quote:
doneif (tagis[Helper.ShowSpec] = 0)
doneif (tagis[Helper.Disable] <> 0)

foreach pick in hero from BaseSkill where "thingid.skArcana"
if (eachpick.tagis[Helper.Proficient] = 0) then
perform eachpick.assign[Helper.Proficient]
elseif (eachpick.tagis[Helper.Proficient] <> 0) then
perform eachpick.assign[Helper.ProfDouble]
endif
nexteach
however I need to make the expression check only the two usrChosens for my ability.

Forum link for my content work:
Pathfinder Thread
Forum link for SU 5e content work:
5e Steven Universe Thread
This link is for my group, but feel free to play it with:
DMM 5e | "https://www.dropbox.com/s/vsd9w1eodlnwjq0/updatesDMM.xml?dl=1" Copy this link to your update manager to get updates when available.
This adds the Pisky subrace to elves from Berserk! and additional subraces for the Gem Race.
Please post comments in the provided threads above.
DeltaMasterMind is offline   #9 Reply With Quote
DeltaMasterMind
Senior Member
 
Join Date: Jul 2014
Posts: 412

Old December 24th, 2018, 06:31 AM
SO using this script at post level 15500 worked (finally), but required some tweaking to get it going.
Quote:
var tagexpr as string
if (field[usrChosen1].ischosen <> 0) then
tagexpr = field[usrChosen1].chosen.tagids[NotProfSk.?," | "]
foreach pick in hero from BaseSkill where tagexpr
if (eachpick.tagis[Helper.Proficient] <> 0) then
perform eachpick.assign[Helper.ProfDouble]
endif
nexteach
endif
if (field[usrChosen1].ischosen <> 0) then
tagexpr = field[usrChosen1].chosen.tagids[NotProfSk.?," | "]
foreach pick in hero from BaseSkill where tagexpr
if (eachpick.tagis[Helper.Proficient] = 0) then
perform eachpick.assign[Helper.Proficient]
endif
nexteach
endif
I did this as two separate eval scripts, not sure if I needed to, but I am not going to complain at this point.

Forum link for my content work:
Pathfinder Thread
Forum link for SU 5e content work:
5e Steven Universe Thread
This link is for my group, but feel free to play it with:
DMM 5e | "https://www.dropbox.com/s/vsd9w1eodlnwjq0/updatesDMM.xml?dl=1" Copy this link to your update manager to get updates when available.
This adds the Pisky subrace to elves from Berserk! and additional subraces for the Gem Race.
Please post comments in the provided threads above.
DeltaMasterMind is offline   #10 Reply With Quote
Reply

Thread Tools
Display Modes

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 09:29 AM.


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