jbhaywood / 5e-statblock-importer

A module for FoundryVTT that creates a new actor from any 5e monster or NPC statblock.
MIT License
18 stars 12 forks source link

RPGTinker #14

Closed meta5by5 closed 9 months ago

meta5by5 commented 2 years ago

Any suggestions for importing NPCs generated from rpgtinker.com? A copy of the HTML creates this text below. It actually pulls in a lot, but not spells, and other content, like the Mace action doesn't parse well. Thoughts? BTW, You're importer is awesome. I'm looking forward to finding a NPC generator that produces the right format.

Carvin : Acolyte Male Lightfoot Halfling, any alignment Armor Class: 17 (Half plate, Shield)

Hit Points: 45 (6d8 +18)

Speed: 25ft (7,5m / 5 sqr)

Proficiency: +3

STR

13 (+1)

DEX

11 (+0)

CON

16 (+3)

INT

8 (-1)

WIS

17 (+3)

CHA

12 (+1)

Skills: Religion +2 Insight +6

Challenge: 3 (700 XP)

Actions Mace. Melee Weapon Attack +4 to hit, reach 5 ft, one target. Hit: 4 (1d6 +1 ) bludgeoning damage.

Properties: WOLOLO!,

Spells Spellcasting. the Acolyte is an 6th-level cleric. Its spellcasting ability is Wisdom (spell save DC 14, to hit with spell attacks +6)

Cantrips (at will): Chill Touch, Thorn Whip, Resistance, Spare the Dying,

1st level (4 slots): Detect Magic, Purify Food and Drink, Shield of Faith, Ray of Sickness, Bane, Divine Favor, Cure Wounds,

2nd level (3 slots): Find Traps, Continual Flame, Spike Growth,

3rd level (3 slots): Water Walk,

Click here to see spells descriptions (external tool)

Special Abilities Potion of Healing: The healer carries a potion of healing (2d4+2 healing as a action) and a Healer's Kit. Chosen of Gods: Once per week, as an act of incredible courage the acolyte can sacrifice himself to protect other. The DM can roll a d20 and add acolyte CR to this roll. If the check gets 20 or more the acolyte can receive one of the random bonuses: Regain one spell slot of his greater slot available; Maximize the healing of a spell, grant one target resitance/advantage against the next damage/saving throw. Racial Features Ability Modifiers: +2 Dex, +1 Cha

Small Size: small creatures should use d6 for hit dices

Lucky: When you roll a 1 on an attack roll, ability check, or saving throw, you can reroll the die and must use the new roll.

Brave: You have advantage on saving throws against being frightened.

Halfling Nimbleness: You can move through the space of any creature that is of a size larger than yours.

Naturally Stealthy: You can attempt to hide even when you are obscured only by a creature that is at least one size larger than you.

Languages: speaks Common and Halfling

jbhaywood commented 2 years ago

That's a tricky one. They use a lot of their own conventions for the statblock instead of following WotC's. Here are the ones that immediately stand out to me...

There might be other things. I can go through all the differences and see which can be supported without having to change the code too much. But at the end of the day I'm expecting the stats to conform to a certain standard because it would be impossible to support every possible way someone could organize this information. So if someone isn't following the standard, and it's too far off, you'll have to manually fix it up so that the importer will understand it.

One thing I can do is spell out the expectations in the help docs to make it easier to know how to fix up non-standard stats. I'll try to remember to do that soon.

meta5by5 commented 2 years ago

Agreed. In fact, I should send RPGTinker the request instead. I did some moving around and came up with a working format. Some of it was just location in the list. But removing the “:” was a big game changer.

I wouldn’t have even mentioned it as it isn’t too hard to do manually. But since the WOTC format is the standard, and is perfect for Foundry (the best VTT ever!) and YOUR tool (the best for DDB!), it would be a good selling point. Especially since DDB is the backbone of their online presence.

Anyway, just wondered is all. If I hear back from RPGTinker, I’ll let you know. Your products would pair up pretty well.

Benjamin

Aka meta5by5

From: James Haywood @.> Sent: Tuesday, January 11, 2022 12:26 PM To: jbhaywood/5e-statblock-importer @.> Cc: meta5by5 @.>; Author @.> Subject: Re: [jbhaywood/5e-statblock-importer] RPGTinker (Issue #14)

That's a tricky one. They use a lot of their own conventions for the statblock instead of following WotC's. Here are the ones that immediately stand out to me...

There might be other things. I can go through all the differences and see which can be supported without having to change the code too much. But at the end of the day I'm expecting the stats to conform to a certain standard because it would be impossible to support every possible way someone could organize this information. So if someone isn't following the standard, and it's too far off, you'll have to manually fix it up so that the importer will understand it.

One thing I can do is spell out the expectations in the help docs to make it easier to know how to fix up non-standard stats. I'll try to remember to do that soon.

— Reply to this email directly, view it on GitHub https://github.com/jbhaywood/5e-statblock-importer/issues/14#issuecomment-1010242192 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AXGPHCJVYWEBW44HUPJ2LQTUVRY3ZANCNFSM5LPYKN3A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub . You are receiving this because you authored the thread. https://github.com/notifications/beacon/AXGPHCKL66UAYSP6UZLNUVLUVRY3ZA5CNFSM5LPYKN3KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHQ3RFEA.gif Message ID: @. @.> >

jbhaywood commented 9 months ago

I'm closing this because I'm just not going to get around to adding the specs here. It actually changes as I add support for things that fall outside of the normal statblock format, so it would be hard to keep it up to date. The best bet for anyone wanting to make sure this module can parse their statblock is to take a look as the 5e SRD and make sure it follows the ones in there.