PDA

View Full Version : Help - my spells don't parse



Zacchaeus
September 29th, 2015, 19:14
So, someone in this (https://www.fantasygrounds.com/forums/showthread.php?26231-Let-s-Create-A-character) post suggested that a list of spells that didn’t parse when dragged into the actions tab would be useful – so here are all of the Cleric spells that either don’t parse at all or don’t parse completely. I’ve also given the effect that is missing. I am assuming here that the reader knows how to create an effect and how to edit one and how to use them.

NOTE: Test version 3.1.3 negates much of this


I have to say that I don’t think there is value in a complete list like this since by the time your character gets to level 4 or 5 you should be getting pretty familiar with how effects work and how to create them – you’ll have been playing for weeks.

At any rate here’s the list; if you spot errors or there is something that isn’t clear do please post.

Bane: Bane; ATK: -1d4; SAVE: -1d4
Bless: Bless; ATK: 1d4; SAVE: 1d4
Guiding Bolt: Parses the damage but not the next part, add another effect: GRANTADVATK: and set the duration to 1 and ‘Expend?’ to ‘Once per modifier’. To use drag onto the target.
Protection from Good and Evil: IFT: type(aberration); GRANTDISATK: You’ll need separate effects for celestial, elemental, fey, fiends and undead
Sanctuary: No way to create an effect to force a save before an attack roll so all we can do is create a ‘dummy’ effect as a reminder that the character has the spell on him.
Shield of Faith: AC:2
Aid: Can’t be done properly but could set up a heal of 5 temporary hp.
Blindness/Deafness: Add a cast with CON saving throw and 2 effects one for deafness and one for blindness.
Enhance Ability: Bear’s endurance - add another effect ADVSAV: constitution, for the others add effects on separate lines ADVSAV: dexterity, ADVSAV: wisdom etc
Protection from poison: RESIST: poison; ADVSAV: poison
Warding Bond: AC: 1; SAVE: 1 Resist: all. There’s no way to automate the caster taking damage so that would have to be done manually.
Beacon of Hope: ADVSAV: wisdom; ADVDEATH – no way to automate gaining max hp
Bestow Curse:Bestow Curse: This depends on the curse. For the first option create a new effect DISSAV: ability; DISCHK: ability where ability is the ability you want (i.e. strength, dexterity etc). You can create all six of these if you want, all on separate lines.
For the second option create an effect DISATK: Set the targeting to SELF and shift drag the effect onto the target NPC. This will give the NPC disadvantage only against you.
Feign Death: Edit the existing effect to read blinded; incapacitated; RESIST: all, !psychic
Glyph of Warding: For explosive runes you can add a damage effect for each damage type eg 5d8 acid , 5d8 fire etc. Can’t automate the spell glyph
Magic Circle: Add a cast to deal with the saving throw. The disadvantage on the attack can’t really be automated since it could apply to any number of creatures and not others.
Protection from energy: You’ll need several effects each resisting a particular type of damage eg RESIST: acid
Death Ward: No automation but could have a dummy effect just to show that the spell has been cast on the recipient.
Guardian of Faith: The line which parses doing 60 damage can be deleted.
Contagion: There’s a whole host of effects you could create for this but the questions are (a) is this spell of any real use and (b) even if it was would you use it? Certainly not a combat spell really.
Dispel Evil and Good. Remove the charmed effect, this is incorrect. Add in several effects one for each of the creature types e.g. IFT: TYPE(celestial); GRANTDISATK etc
Geas: there is corrupted text in this spell which prevents it parsing correctly. The damage should be 5d10 rather than 1d10. Also can add in an effect for charmed – although not strictly needed since we can get that from the built in modifiers.
Hallow: You can set up a cast to force the Charisma saving throw and also set up a whole list of possible resistances (eg RESIST: bludgeoning) and/or vulnerabilities (eg VULN: slashing). So much of this spell is situational that it’s probably better to create the effects on the fly rather than clutter the Action tab with countless possibilities.
Insect plague: Again there is corrupted text preventing the spell from parsing correctly; the damage should be 4d10 rather than 1d10.
Blade Barrier: And another that doesn’t parse correctly, damage should be 6d10.
Forbiddance: Create two damage effects one for each damage type. It isn’t worth going the whole hog and creating effects to determine the creature type; you’d end up with over 10 effects.
Heroes’ Feast: ADVSAV: wisdom; IMMUNE: poison No way to deal with the hp part but you could set up temp heal.
Divine Word: You could set up effects for the various conditions but all of them are available from the built in list.
Symbol: Another spell with just too many possibilities to really sit down and create all the effects for it. I’d suggest doing them on the fly.
Holy Aura: ADVSAV:all; GRANTDISATK:

Zacchaeus
September 29th, 2015, 21:12
Here’s a few from the level 0-3 Wizard spell list.

Blade Ward: RESIST: bludgeoning, piercing, slashing
Chill Touch: For an undead target GRANTDISATK: Set the target to ‘SELF’ and shift-drag onto the undead creature. This creature will now have disadvantage to attack only against you. Do it any other way and the beastie will have disadvantage against anyone.
Friends: Can’t automate advantage on a save against a specific creature so can’t automate this.
True Strike: ADVATK: set duration to 2 RND, the target to self and the Expend? to once per modifier and shift-drag onto the target. Next round you’ll get advantage on the first to hit roll against that creature only and the effect will expire.
Chromatic Orb: You choose the damage type so the spell doesn’t parse a damage type. You could set up effects for every damage type (that’s six altogether) but I suggest that you limit yourself to one or two. So, edit the existing effect to add a type and then add another effect with another damage type.
Colour Spray: The spell has a duration of 0 rounds. Edit to make it 1 round.
Grease: Add a new effect ‘prone’ (or just use the one from the built in list)
Mage Armour: AC:3 and set duration to 8 hours.
Protection from Evil and Good – see Cleric list
Shield: AC:5 set to 1 round. Note this won’t automate Magic Missiles. You could add IMMUNE: force but this would also make you immune to all force damage.
Tasha’s Hideous Laughter: Add an unconscious effect or just use the built in one on the list.
Blindness/Deafness: Create a cast to handle the saving throw and either use the built in effects or create a blindness and a deafness effect.
Blur: GRANTDISATK: Note, this will give disadvantage to all attacks. The exceptions in the spell cannot be determined within the effect so it’s probably better to do this one manually. i.e. using the DIS button and just having a ‘reminder’ effect on the target.
Crown of Madness: Create a charmed effect or just use the built in one.
Enlarge/Reduce: For enlarge ADVCHK: strength; ADVSAV: strength; DMG:1d4 For reduce; DISSAV: strength; DISCHK: strength; DMG: -1d4
Magic Weapon: ATK: 1; DMG: 1; DMGTYPE: magic. Note if cast at higher levels substitute the bonus with 2 or 3.
Ray of enfeeblement: We can’t create an effect to half damage so use the built in modifier. As a reminder create a dummy ray of enfeeblement effect to place on the target.
Bestow curse: See Cleric list
Gaseous Form: RESIST: all, !magic; ADVSAV: strength; ADVSAV: dexterity; ADVSAV: constitution
Haste: AC:2; ADVSAV: dexterity
Magic Circle: see Cleric list
Protection from energy: See Cleric list
Slow: AC:-2; SAVE: -2 dexterity. Note can’t automate the other bits of the spell.

Ok, that’s about it. This and the Cleric spells mentioned above should be enough to get you started but if there’s one you are stuck on post here and we’ll try and sort you out.

lambchopsil
September 29th, 2015, 21:33
Shouldn't Smiteworks fix some of these like Bless or Shield of Faith? Were they ever reported to the Bug thread?

Zacchaeus
September 29th, 2015, 21:44
Shouldn't Smiteworks fix some of these like Bless or Shield of Faith? Were they ever reported to the Bug thread?

They aren't bugs. The internal parser does it's best to pick out key phrases from monster stat blocks, spells etc and puts them into a form which FG can then use to automate stuff. For example the parser will recognise a phrase such as "regains hit points equal to 1d4 + your spellcasting ability modifier" from the Healing word spell and translates that into HEAL:1d4+x where x is you modifier. WotC when they wrote such spells tended to use the same kind of language for all of them so you can write a parser to pick out such phrases. In theory you could write a parser which would parse every spell but that would be impractical. In order to parse Bless the parser would need to understand "Whenever a target makes an attack roll or a saving throw before the spell ends, the target can roll a d4 and add the number rolled to the attack roll or saving throw". This phrasing is unique to this spell and it would be a fabulous amount of work to write enough code to get that spell to automatically parse. Hence the reason not everything parses and so we need to do it ourselves.

lambchopsil
September 29th, 2015, 21:58
But can't they make a fix to the module after parsing it and then save the change so that it takes precedence over the parsed version?

Zacchaeus
September 29th, 2015, 22:14
You are misunderstanding how the parser works. We are not talking about the tool which is used to parse things like the Players Handbook from the paper version into an electronic form which we can use within Fantasy Grounds. We are taking about the parser which exists in the code within Fantasy Grounds itself. This works when a spell is dragged into the character sheet,or when an NPC is dragged into the Combat Tracker. The words in the Players Handbook are immutable unless WotC change them so the wording of the electronic version of the PHB are the same as the paper version. So the wording on the Bless spell will forever remain as written now. So the parser within FG has to work with those words, and as I said unless specific code is written into Fantasy Grounds which would enable that spell to be parsed it will never parse.

Moon Wizard
September 29th, 2015, 22:34
It was a design choice made in the past (before we were able to get the license to distribute 5E content) that allowed anyone to be able to enter spell data into the system, and the ruleset framework code would be able to pull effects and rolls directly from the text. The benefit to this approach becomes apparent when you realize that we assumed that the data would be entered directly.

I'm still working through whether it is more work in the long run to fix and update all the data modules, or improve the parser. Either way, it's being prioritized in line with other fixes and features ongoing. It will most likely be incremental fixes. (For example, next version will fix all the paladin Smite spells.)

Cheers,
JPG

Zacchaeus
September 29th, 2015, 22:41
Especially with spells since there are so many variations and so many things which are unique.

Moon Wizard
October 8th, 2015, 01:00
The version in the Test channel (i.e. beta) has built-in overrides for the parsing of the spells noted by Zacchaeus above, in addition to better base parsing of spells in general (including duration).

Regards,
JPG

rob2e
December 17th, 2015, 22:22
Regarding Bestow Curse -


For the second option create an effect DISATK: Set the targeting to SELF and shift drag the effect onto the target NPC. This will give the NPC disadvantage only against you.

Shouldn't that be GRANTDISATK ?

Zacchaeus
December 17th, 2015, 22:38
Regarding Bestow Curse -



Shouldn't that be GRANTDISATK ?

Yes, it should. :)

The updated spell parsing introduced after the above article was written has made this obsolete and the correct syntax shows correctly in the actions tab now by drag/dropping.