91.08 Pathfinder + D&D3.5 Framework
Moderators: dorpond, trevor, Azhrei, giliath, Gamerdude, jay, Mr.Ice, lmarkus001
Forum rules
Discussion regarding lmarkus001's framework only. Other posts deleted without notice!
Discussion regarding lmarkus001's framework only. Other posts deleted without notice!
Re: 91.08 Pathfinder + D&D3.5 Framework
I uploaded a fix for the Campaign and the Lib token. It can be found in this shared drive. The error was caused after the weapon was edited and it was the callback to refresh the frame that caused the error. So, it works as is, you just need to click the Weapons tab again to refresh.
The save was done in MT 1.8.3 but should work the same for previous versions.
https://drive.google.com/drive/folders/ ... sp=sharing
The save was done in MT 1.8.3 but should work the same for previous versions.
https://drive.google.com/drive/folders/ ... sp=sharing
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
- lmarkus001
- Great Wyrm
- Posts: 1867
- Joined: Sat Mar 29, 2008 12:30 am
- Location: Layfayette Hill, PA
Re: 91.08 Pathfinder + D&D3.5 Framework
Of note, these changes need to be applied in several macros:
charSkillCheck
CharSheetSkills
tblCSskills
buildSkillsDialog
charSkillCheck
CharSheetSkills
tblCSskills
buildSkillsDialog
aliasmask wrote: ↑Fri Aug 07, 2020 2:49 pmFixed a longtime "bug" which is more like error checking for bad data in the skills. Now if you leave a skill mod blank it will put a 0 there. This prevents funky output on skill checks.
This change is made in charSkillCheck
I moved skSize lines up from bottom so they are grouped with other skill mods. Doing the number(0 + var) trick saves me from having to check for blanks.Code: Select all
[H: sizeList = table("SysVars", json.get(table("SysVars", 0), "sizeList"))] [H: sizeID = listFind(sizeList, getSize())] [H: skSize = json.get(json.get(tSkill, "sizemod"), sizeID)] [H: skN = json.get(tSkill, "name")] [H: skR = number(0 + json.get(tSkill, "rank"))] [H: skRM = number(0 + json.get(tSkill, "racialmod"))] [H: skFeat = number(0 + json.get(tSkill, "feats"))] [H: skSyn = number(0 + json.get(tSkill, "synergy"))] [H: skEq = number(0 + json.get(tSkill, "equip"))] [H: skMisc = number(0 + json.get(tSkill, "misc"))] [H, IF(json.contains(tSkill, "speedmod")): skSpd = number(0 + json.get(tSkill, "speedmod")); skSpd = 0] [H: skDesc = json.get(tSkill, "desc")]
All these updates will be applied to "Compatible" version after I finish these posts. The GM Notes of Lib:libDnD35Pathfinder now shows the last update date on token, 8-7-2020.
- lmarkus001
- Great Wyrm
- Posts: 1867
- Joined: Sat Mar 29, 2008 12:30 am
- Location: Layfayette Hill, PA
Re: 91.08 Pathfinder + D&D3.5 Framework
This is better placed in the CharSheet macro on the library token so it is always applied.
aliasmask wrote: ↑Fri Aug 07, 2020 2:39 pmI did make a stealth update to the "Compatible" version a lit bit ago. Here is that change.
Sheet Macro in campaign window forces token type. Just copied code from Edit Char which does the same thing. Some people forget to change the token type from Basic and get errors. This prevents that.
Code: Select all
[H: ids = getSelected()] [H: abort(if(ids == "", 0, 1))] [H: tLib = "Lib:libDnD35Pathfinder" ] [H: tokenType = getPropertyType(ids)] [H: system = getLibProperty("system","Lib:GlobalsSRDPF")] [H, IF(system == "D&D3.5"): system = "DnD35"] [H, IF("Basic" == tokenType): setPropertyType(system,ids)] [H,MACRO("CharSheet@Lib:libDnD35Pathfinder"): "Page=Main"]
Re: 91.08 Pathfinder + D&D3.5 Framework
New Update version 6-16-21
OP has the campaign file, but for the lib token only, you can download here: Lib_libDnD35Pathfinder.rptok
OP has the campaign file, but for the lib token only, you can download here: Lib_libDnD35Pathfinder.rptok
Code: Select all
MT Version 1.8.3
Update 3-9-2021 (AM)
*Fixed editWeapon when called from character sheet. callback used macro.args which is changed by the time it reaches bottom of page with callback. Also fixed blank output in chat. Also updated editArmorLegacy for similar issue. I checked rest of the code callbacks and should be fine.
MT Version 1.8.5
Update 4-28-2021 (AM)
* Fixed editFeats and editTraits when called from the character sheet main page. A json object is passed but requires a string property.
MT Version 1.8.5
Update 5-10-2021 (AM)
* Added Crane Style and Crane Riposte to Feats. Updated Attack, AttackLib and AttackLib.sub and the Active Mods for Flurry of Blows, Fight Defensively and Total Defense.
* Reorganize attack dialog. Added Extra Attacks. Added apply Sneak and apply Favored Enemy. Flurry of Blows now calculates correctly and sets Full Attack and -2 Penalty. Fight Defensively and Total Defense now account for Crane Style and Crane Riposte.
MT Version 1.8.5
Update 6-16-21 (AM)
* Fix for decay after making change for flurry of blows.
* Fix for Attack Frame for sneak, favored enemy and flurry of blows
* Fix for Haste and multiple weapons. Only first weapon gets Haste.
* Macros affected: processAttack, Attack
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Hi,
I was preparing a pathfinder adventure with your framework ( updated for maptool 1.8 ) and i noticed that the calculations for combat maneuvers come out weird when you have a token that isn't medium sized. I'll have to check again which ones exactly, but I think the trip macro was called subTripPF or something and i saw that the size modifier list was hardcoded in there. Only i think it is the dnd 3.5 size modifier list, not the pathfinder one.
I think the other one was subDisarmPF where I changed the variable SizeM to SizeMod or sth, because it was giving my small creature +1 on cmb instead of -1. As i said, sorry for the weird description, I'll try and check later.
I was preparing a pathfinder adventure with your framework ( updated for maptool 1.8 ) and i noticed that the calculations for combat maneuvers come out weird when you have a token that isn't medium sized. I'll have to check again which ones exactly, but I think the trip macro was called subTripPF or something and i saw that the size modifier list was hardcoded in there. Only i think it is the dnd 3.5 size modifier list, not the pathfinder one.
I think the other one was subDisarmPF where I changed the variable SizeM to SizeMod or sth, because it was giving my small creature +1 on cmb instead of -1. As i said, sorry for the weird description, I'll try and check later.
Re: 91.08 Pathfinder + D&D3.5 Framework
You are correct. The chart in subTripPF is wrong. I went ahead and checked the other PF maneuvers and they seem correct. You can either manually update that macro changing this line
Or download my latest versions here: https://drive.google.com/drive/folders/ ... M5Wl_Me2kj
Choosing and replacing the lib token or the campaign file.
Code: Select all
[H: sizeModList = "-8,-4,-2,-1,0,1,2,4,8"]
Choosing and replacing the lib token or the campaign file.
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Hi again,
I replaced the lib token with the new one and the subTripPF macro now works as expected.
Please correct me if I'm wrong, I think the size modifier list in PF 1e is the same for all combat maneuvers. However when I try the disarm maneuver with a small creature, I still get 'Size Mod 1' in the tooltip. In the code of subDisarmPF I can see that you are using a variable called SizeM in the calculation, but I don't see where it is initiated.
I replaced the lib token with the new one and the subTripPF macro now works as expected.
Please correct me if I'm wrong, I think the size modifier list in PF 1e is the same for all combat maneuvers. However when I try the disarm maneuver with a small creature, I still get 'Size Mod 1' in the tooltip. In the code of subDisarmPF I can see that you are using a variable called SizeM in the calculation, but I don't see where it is initiated.
Re: 91.08 Pathfinder + D&D3.5 Framework
Code can be a bit of a maze. A lot of the variables are obfuscated by using references and table values. And then there is a lot of copy/pasted code so making a change in one spot may not fix it for all related changes. My goto macro to check for token changes because it leads to everything is editMain. You'll find this code there:
This should help you find what you're looking for. If not, go ahead and give me details especially if it involves something broken.
SizeM is a token property, a global variable, so you won't see it initialized.
PS generally speaking, the default sizeMod is related to change in AC. The maneuvers use the same name for their size mod in their macros but it could be a bonus or a penalty depending on what it is. I do see in subDisarmPF no updated modList is provided an it uses the SizeM modifier. I just put -SizeM where needed and updated. I'll upload the change.
But here is the specifics
Code: Select all
[H: sizeList = table( "SysVars", json.get( table( "SysVars", 0 ), "sizeList" + tgridType ) ) ]
[H: sizeModList = "8,4,2,1,0,-1,-2,-4,-8"]
SizeM is a token property, a global variable, so you won't see it initialized.
PS generally speaking, the default sizeMod is related to change in AC. The maneuvers use the same name for their size mod in their macros but it could be a bonus or a penalty depending on what it is. I do see in subDisarmPF no updated modList is provided an it uses the SizeM modifier. I just put -SizeM where needed and updated. I'll upload the change.
But here is the specifics
Code: Select all
[H: tAgileManeuvers = getStrProp(Feats, "AgileManeuvers")]
[H: tAgileManeuvers = if(tAgileManeuvers == "", 0, tAgileManeuvers)]
[H: statMod = if(tAgileManeuvers == 1, max(StrB, DexB), StrB)]
[H: statMod = if( SizeM > 1, DexB, statMod ) ]
[H: dieroll = 1d20]
[H: calcV = dieroll+BABc+statMod+ -SizeM+CMBMod+atkBonus+(tImprovedDisarm*2)+MiscATK+tempMod ]
[H, MACRO( "FormatToolTip@Lib:libDnD35Pathfinder" ): json.append("[]", json.set( "{}", "Die Roll (1d20)", dieroll, "BAB", BABc, "Stat Mod", statMod, "Size Mod", -SizeM, "CMB Mod", CMBMod, "Weapon Mod", atkBonus, "Imp. Disarm", (tImprovedDisarm*2), "Misc ATK", MiscATK, "Temp Mod", tempMod), calcV ) ]
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Update done. Visit https://drive.google.com/drive/folders/ ... sp=sharing to get the latest updates for the core lib token, campaign and properties.
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Amazing, thank you very much!
Re: 91.08 Pathfinder + D&D3.5 Framework
Hi sorry to bother you again,
i changed the token and now the small creature has a -1 size Modifier for combat maneuvers, but unfortunately all creatures of differing sizes show the same. It is only the disarm maneuver as far as i can see, trip for example uses the right token size.
i changed the token and now the small creature has a -1 size Modifier for combat maneuvers, but unfortunately all creatures of differing sizes show the same. It is only the disarm maneuver as far as i can see, trip for example uses the right token size.
Re: 91.08 Pathfinder + D&D3.5 Framework
You probably changed the size of the creature without updating it. If you hit Edit Char | Core, click "Okay" then token should be updated.Michucz wrote: ↑Tue Sep 07, 2021 5:41 amHi sorry to bother you again,
i changed the token and now the small creature has a -1 size Modifier for combat maneuvers, but unfortunately all creatures of differing sizes show the same. It is only the disarm maneuver as far as i can see, trip for example uses the right token size.
I only changed that one macro. If there are other macros with the wrong mods, let me know.
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Hi again,
it was a big derp on my side, sorry.
I was confused because when i change token size through the maptool ui it updates it for the other combat maneuvers but not for disarm. I forgot i should change creauture size through the macros.
Thank you for all your help.
it was a big derp on my side, sorry.
I was confused because when i change token size through the maptool ui it updates it for the other combat maneuvers but not for disarm. I forgot i should change creauture size through the macros.
Thank you for all your help.
Re: 91.08 Pathfinder + D&D3.5 Framework
Yeah, other macros include the updated sizeModList and looks at the token size, but not that one which goes by the SizeM value.
Downloads:
- Notepad++ MapTool addon
- RPEdit details (v1.3)
- Coding Tips: Modularity and Design
- Videos: Macro Writing Tools
Re: 91.08 Pathfinder + D&D3.5 Framework
Hi,
I have been using Maptools for some years now and have slowly been creating my own framework for my groups custom system.
I have used a number of the utilities from this framework (Whisper, Inventory, rpedit, SpeakForMe, ...).
I hope that this is alright with the authors?
I have been keen to utilise the spellbook. To do so, I will need to import my own spell list into the SpellDescriptions table.
Again I hope that this is alright with the authors?
The problem I have, is that I do not understand how the SpellListIndex table works.
I have tried to follow the code, but it is way above my ability (I am a self taught programmer and only use it for personal projects).
Is someone able to explain the structure of this table and how it is used?
Thank you.
I have been using Maptools for some years now and have slowly been creating my own framework for my groups custom system.
I have used a number of the utilities from this framework (Whisper, Inventory, rpedit, SpeakForMe, ...).
I hope that this is alright with the authors?
I have been keen to utilise the spellbook. To do so, I will need to import my own spell list into the SpellDescriptions table.
Again I hope that this is alright with the authors?
The problem I have, is that I do not understand how the SpellListIndex table works.
I have tried to follow the code, but it is way above my ability (I am a self taught programmer and only use it for personal projects).
Is someone able to explain the structure of this table and how it is used?
Thank you.
Templar