PDA

View Full Version : Add more damage types?



MaloModo
August 10th, 2020, 09:59
Is there a way to add a couple more damage types to the Pathfinder ruleset? I'd like water and earth along with the resistances to be auto calculated (like fire, cold, etc). I found this example: table.insert(DataCommon.dmgtypes, "obsidian") which seems like exactly what I want, but I can't figure out how to code it. I also tried editing the PFRPG.pak and added them into the tables where they had the similar types listed but it didn't seem to do anything. Anyone know if this can be done or am I just spinning my wheels on this? Any advice appreciated.

Kelrugem
August 10th, 2020, 17:37
Take a look at this extension: https://www.fantasygrounds.com/forums/showthread.php?53203-DR-bypass-extension :) You can edit it (delete all its scripts except datacommon3) :) I do not have so much time now, but I can answer more elaborated later :) there are different group of damage types doing different things :) but you found the most important one :)

EDIT: Maybe directly look at that extension: https://www.fantasygrounds.com/forums/showthread.php?53203-DR-bypass-extension&p=471426&viewfull=1#post471426 there only damage types are added and nothing else happens such that you do not need to delete anything :)

stephan_
August 10th, 2020, 20:58
There is also a paid extension on dmsguild (https://www.dmsguild.com/product/314489/Fantasy-Grounds-Custom-Damage-Manager) - which might work also with Pathfinder.

dellanx
August 11th, 2020, 12:51
Take a look at this extension: https://www.fantasygrounds.com/forums/showthread.php?53203-DR-bypass-extension :) You can edit it (delete all its scripts except datacommon3) :) I do not have so much time now, but I can answer more elaborated later :) there are different group of damage types doing different things :) but you found the most important one :)

EDIT: Maybe directly look at that extension: https://www.fantasygrounds.com/forums/showthread.php?53203-DR-bypass-extension&p=471426&viewfull=1#post471426 there only damage types are added and nothing else happens such that you do not need to delete anything :)

I did not realize there was a such a thing as a "Mythic" creature subtype. Love it!

Kelrugem
August 12th, 2020, 01:24
As a follow-up, here the types of tables in regards of automation where you can add the new damagetype as string with that table.insert approach you already mentioned :) (think about adding DataCommon in front, e.g. DataCommon.energytypes):

energytypes := These are the damage types overvoming DR, also used for parsing RESIST and VULN effects for NPCs (that damage type will also be listed/used in the hardness parsing); the automatic parsing of such effects would otherwise ignore such damage types when not listed there.
immunetypes := (Mainly) for the automatic parsing of IMMUNE effects. Add it there when you want that the automatic parser recognizes that damage type for IMMUNE effects. Especially for informational effects of immunities against things which should not be recognized as damage type (see dmgtypes)
dmgtypes := All damage types should be added which should be recognized as damage type in damage die strings and damage actions, also used in many parsing stuff: DR, REGEN, IMMUNE, and spell damage actions (not for RESIST and VULN, for this you need to add it to energytypes)
basicdmgtypes := There you should only list damage types when they are fluid. A weapon with slashing and piercing damage type can overcome IMMUNE: slashing effects for example, because the weapon is then assumed to be piercing. In order to be immune against a basic damage type, one needs to be immune against all incoming basic damage types. When you do not need such a behaviour, then do not list it here
specialdmgtypes := These are damage types with certain special properties, the native ones are nonlethal, spell, critical, and precision. They have some special code (which then needs to be added to the scripts), but all of them have in common that they are added to existing damage types (for this you just need to add the damage type to that list). That means that e.g. DMGTYPE: precision and DMG: d6 precision will also use existing damage types of the damage roll (the d6 will then not only have precision as damage type, while DMG: d6 fire would be only fire damage). Also used for the parsing of IMMUNE effects

(parsing here is often about the parsing of NPC effects)

So, just use the extension from the second link I have linked above as a template and add table.insert(DataCommon.[any of these lists], "[your damage type]"); :) (but beware that it is incompatible with the other extension from above, but I can quickly make them compatible if you want. That is just due to how the script is named) Once you got the idea it is pretty easy to use that template :)

I would not suggest using the extension from the DMSguild because 3.5e/PF1 damage types are more complex than 5e (I do not see why it should cater all these mentioned lists of damage types) and it is really not difficult to add own damage types :)

dellanx
August 12th, 2020, 03:32
As a follow-up, here the types of tables in regards of automation where you can add the new damagetype as string with that table.insert approach you already mentioned :) (think about adding DataCommon in front, e.g. DataCommon.energytypes):

energytypes := These are the damage types overvoming DR, also used for parsing RESIST and VULN effects for NPCs (that damage type will also be listed/used in the hardness parsing); the automatic parsing of such effects would otherwise ignore such damage types when not listed there.
immunetypes := (Mainly) for the automatic parsing of IMMUNE effects. Add it there when you want that the automatic parser recognizes that damage type for IMMUNE effects. Especially for informational effects of immunities against things which should not be recognized as damage type (see dmgtypes)
dmgtypes := All damage types should be added which should be recognized as damage type in damage die strings and damage actions, also used in many parsing stuff: DR, REGEN, IMMUNE, and spell damage actions (not for RESIST and VULN, for this you need to add it to energytypes)
basicdmgtypes := There you should only list damage types when they are fluid. A weapon with slashing and piercing damage type can overcome IMMUNE: slashing effects for example, because the weapon is then assumed to be piercing. In order to be immune against a basic damage type, one needs to be immune against all incoming basic damage types. When you do not need such a behaviour, then do not list it here
specialdmgtypes := These are damage types with certain special properties, the native ones are nonlethal, spell, critical, and precision. They have some special code (which then needs to be added to the scripts), but all of them have in common that they are added to existing damage types (for this you just need to add the damage type to that list). That means that e.g. DMGTYPE: precision and DMG: d6 precision will also use existing damage types of the damage roll (the d6 will then not only have precision as damage type, while DMG: d6 fire would be only fire damage). Also used for the parsing of IMMUNE effects

(parsing here is often about the parsing of NPC effects)

So, just use the extension from the second link I have linked above as a template and add table.insert(DataCommon.[any of these lists], "[your damage type]"); :) (but beware that it is incompatible with the other extension from above, but I can quickly make them compatible if you want. That is just due to how the script is named) Once you got the idea it is pretty easy to use that template :)

I would not suggest using the extension from the DMSguild because 3.5e/PF1 damage types are more complex than 5e (I do not see why it should cater all these mentioned lists of damage types) and it is really not difficult to add own damage types :)

So like this?


table.insert(DataCommon.dmgtypes, "ancestral steel");
table.insert(DataCommon.energytypes, "brilliant");

Kelrugem
August 12th, 2020, 05:58
So like this?

yes :) You can add these lines in the script contained in the extension :) When you want that a damage type has multiple properties, then add it to more than one damage type group :)

Phixation
August 14th, 2020, 19:26
mythic subtype is normally only for mythic games :D but yes there is a mythic subtype that isnt included normally in FG.... Kel was nice enough to put bypass into his extensions so i just have the extension adding the types of dmg to my game that aren't normally there.

dellanx
August 14th, 2020, 21:40
Thank you Kelrugem!

dellanx
August 27th, 2020, 01:58
Kelrugem,

How does one express:

fast healing 20 (epic)

Can't get this to work.

Thanks,

p.s. getting a new error 38847

dellanx
August 27th, 2020, 02:53
Kelrugem,

How does one express:

fast healing 20 (epic)

Can't get this to work.

Thanks,

p.s. getting a new error 38847

bmos once I filled in the HD HP for the con extension the error went away. This NPC was undead and uses Charisma. Was able to enter the hitpoints once. Later could not enter the hipoints again. Edited the NPC from base to Cha, and was able to enter the Hitpoints. Abil. Hp. not entered. Most undead are immune to ability damage and drain?

Kelrugem
August 27th, 2020, 09:16
Kelrugem,

How does one express:

fast healing 20 (epic)

Can't get this to work.

Thanks,

p.s. getting a new error 38847

What do you mean? You could use FHEAL: 20 :) I am not sure what the epic here means (but following your response afterwards it seems to be connected to an extension? Then rather write in the thread there, for better visibility :) )

dellanx
August 27th, 2020, 10:36
What do you mean? You could use FHEAL: 20 :) I am not sure what the epic here means (but following your response afterwards it seems to be connected to an extension? Then rather write in the thread there, for better visibility :) )

Here is a goof example (https://www.d20pfsrd.com/bestiary/monster-listings/aberrations/drakainia).
The line:

hp 642 (25d8+530); regeneration 10 (negative energy) (negative) represents the damage type that the creature can't regenerate. In this case "fast heal" or "regeneration" are interchangeable.

Kelrugem
August 27th, 2020, 10:43
Here is a goof example (https://www.d20pfsrd.com/bestiary/monster-listings/aberrations/drakainia).
The line:
(negative) represents the damage type that the creature can't regenerate. In this case "fast heal" or "regeneration" are interchangeable.

Yes, that is for regeneration, I was just confused why that holds for fast healing, too :) Because then it is basically regeneration at that point (in most of the points at least I think) :)

Then I'd say REGEN: 20 epic as effect :)

bmos
August 27th, 2020, 16:24
Those errors are definitely from my Live HP extension.
I don't have access to that monster in a module, so I tested with Troll which also has REGEN and am not seeing an issue.

Can you send me a screenshot of the NPC's sheet?
Because I'm trying to extract information from text fields, it doesn't like when info gets put there that deviates from the format I have designed it around (that of the official Pathfinder modules).
I'm assuming something about how the HD are entered is causing the error. If so, once I know what it is, I can code around it.

EDIT: also just as a heads up, there isn't a 'mention' notification system so I only saw that by chance :)

dellanx
August 27th, 2020, 21:39
Those errors are definitely from my Live HP extension.
I don't have access to that monster in a module, so I tested with Troll which also has REGEN and am not seeing an issue.

Can you send me a screenshot of the NPC's sheet?
Because I'm trying to extract information from text fields, it doesn't like when info gets put there that deviates from the format I have designed it around (that of the official Pathfinder modules).
I'm assuming something about how the HD are entered is causing the error. If so, once I know what it is, I can code around it.

EDIT: also just as a heads up, there isn't a 'mention' notification system so I only saw that by chance :)

I realized that, was a busy morning. Thanks bmos.

dellanx
August 27th, 2020, 22:15
bmos - message sent with screenshots and NPC. ;)

bmos
August 27th, 2020, 22:43
bmos - message sent with screenshots and NPC. ;)It wouldn't let me respond with attachment via message.
Regarding your alternate approach to entering the HD, try this. If it works, I'll include it in Tuesday's update.

dellanx
August 28th, 2020, 04:08
It wouldn't let me respond with attachment via message.
Regarding your alternate approach to entering the HP, try this. If it works, I'll include it in Tuesday's update.

Success! Thank you bmos!