javalent / fantasy-statblocks

Create Dungeons and Dragons style statblocks for Obsidian.md
MIT License
352 stars 71 forks source link

🐞 Stat block shows dice formula instead of dice icon. #391

Closed Snohild closed 5 months ago

Snohild commented 5 months ago

Check for existing bug reports before submitting.

Expected Behavior

It should show a dice icon which I can click to roll attacks, damage etc.

Current behaviour

image image image

This happens only when I include monsters via the CLI-prosess. If I do not include monsters, and only use the included monsters in Fantasy Statblock, then it works fine.

Reproduction

When I first add the plugin (Fantasy Statblock + Dice Roller) everything works fine, and the stat block got its dice icon to click on. When I do the CLI-prosess to add content og and monsters, and after the index prosess, the dice icon just disappears, and it shows the dice formula text instead.

Which Operating Systems are you using?

Obsidian Version Check

1.5.12

Plugin Version

4.1.7

Confirmation

Possible solution

I got no idea. I have tried different config files, done the entire CLI-prosess from start to finnish numerous times, and nothing works.

valentine195 commented 5 months ago

Can you show me the note text?

Snohild commented 5 months ago

From the Stat Block inside Obsidian? Or the Json.file? Or the template?

Snohild commented 5 months ago

image

"name": "Goblin"
"size": "Small"
"type": "humanoid"
"subtype": "goblinoid"
"alignment": "Neutral Evil"
"ac": !!int "15"
"ac_class": "[leather armor](/3-Mechanics/CLI/items/leather-armor.md), [shield](/3-Mechanics/CLI/items/shield.md)"
"hp": !!int "7"
"hit_dice": "2d6"
"stats":
- !!int "8"
- !!int "14"
- !!int "10"
- !!int "10"
- !!int "8"
- !!int "8"
"speed": "30 ft."
"skillsaves":
  "Stealth": !!int "6"
"senses": "darkvision 60 ft., passive Perception 9"
"languages": "Common, Goblin"
"cr": "1/4"
"traits":
- "desc": "The goblin can take the Disengage or Hide action as a bonus action on each\
    \ of its turns."
  "name": "Nimble Escape"
"actions":
- "desc": "Melee Weapon Attack: dice: d20+4 (+4) to hit, reach 5 ft., one target.\
    \ Hit: dice:1d6 + 2|text(5) (1d6 + 2) slashing damage."
  "name": "Scimitar"
- "desc": "Ranged Weapon Attack: dice: d20+4 (+4) to hit, range 80/320 ft.,\
    \ one target. Hit: dice:1d6 + 2|text(5) (1d6 + 2) piercing damage."
  "name": "Shortbow"
"source":
- "MM"
- "LMoP"
- "PotA"
- "SKT"
- "TftYP"
- "ToA"
- "WDH"
- "WDMM"
- "GoS"
- "BGDIA"
- "ERLW"
- "RMBRE"
- "EGW"
- "IDRotF"
- "TCE"
- "WBtW"
- "CRCotN"
- "DSotDQ"
- "HftT"
- "PaBTSO"
- "SatO"
- "BMT"
- "GHLoE"
"image": "/3-Mechanics/CLI/bestiary/humanoid/token/goblin.webp"

^statblock

Snohild commented 5 months ago

This is by using the: monster2md-yamlStatblock-body.txt template.

Snohild commented 5 months ago

When I remove the entire CLI-folder from by Obsidian vault, the Fantasy Statblock Plugin works perfectly well with its prelist of monsters which comes with the PlugIn. But I want to add my own monsters from my own books as well.

image

YAML:

name: Kobold source: 5e SRD size: Small type: humanoid subtype: kobold alignment: lawful evil ac: 12 hp: 5 hit_dice: 2d6 + -2 speed: 30 ft. stats:

valentine195 commented 5 months ago

This text is formatted to be parsed using the “Render as Markdown” setting in the layout.

I have been discussing with @ebullient the best way to handle this, and I plan to just make Statblocks always render markdown (it’s confusing that it doesn’t).

Snohild commented 5 months ago

Is there a way for me to fix this now?

Snohild commented 5 months ago

Considering not everyone else is having this issue.

valentine195 commented 5 months ago

Go into the layout in settings and edit the Basic 5e Layout.

In the blocks, find all the trait type blocks, and click edit on them.

Turn on the render as markdown setting.

Snohild commented 5 months ago

Hmm, did not work:

image image

I restarted Obsidian, also tried to reload.

Snohild commented 5 months ago

image

"name": "Gnoll"
"size": "Medium"
"type": "humanoid"
"subtype": "gnoll"
"alignment": "Chaotic Evil"
"ac": !!int "15"
"ac_class": "[hide armor](/3-Mechanics/CLI/items/hide-armor.md), [shield](/3-Mechanics/CLI/items/shield.md)"
"hp": !!int "22"
"hit_dice": "5d8"
"stats":
- !!int "14"
- !!int "12"
- !!int "11"
- !!int "6"
- !!int "10"
- !!int "7"
"speed": "30 ft."
"senses": "darkvision 60 ft., passive Perception 10"
"languages": "Gnoll"
"cr": "1/2"
"traits":
- "desc": "When the gnoll reduces a creature to 0 hit points with a melee attack on\
    \ its turn, the gnoll can take a bonus action to move up to half its speed and\
    \ make a bite attack."
  "name": "Rampage"
"actions":
- "desc": "Melee Weapon Attack: dice: d20+4 (+4) to hit, reach 5 ft., one creature.\
    \ Hit: dice:1d4 + 2|text(4) (1d4 + 2) piercing damage."
  "name": "Bite"
- "desc": "Melee or Ranged Weapon Attack: dice: d20+4 (+4) to hit, reach 5 ft.\
    \ or range 20/60 ft., one target. Hit: dice:1d6 + 2|text(5) (1d6 + 2) piercing\
    \ damage, or dice:1d8 + 2|text(6) (1d8 + 2) piercing damage if used with two\
    \ hands to make a melee attack."
  "name": "Spear"
- "desc": "Ranged Weapon Attack: dice: d20+3 (+3) to hit, range 150/600 ft.,\
    \ one target. Hit: dice:1d8 + 1|text(5) (1d8 + 1) piercing damage."
  "name": "Longbow"
"source":
- "MM"
- "PotA"
- "TftYP"
- "GoS"
- "BGDIA"
- "ERLW"
- "EGW"
- "IDRotF"
- "SatO"
- "ToFW"
- "BMT"
- "DoDk"
"image": "/3-Mechanics/CLI/bestiary/humanoid/token/gnoll.webp"

^statblock

valentine195 commented 5 months ago

Actually, looking at it again, it doesn’t look like the CLI emitted the code block ticks around the dice roll. So yeah, these will never render.

Snohild commented 5 months ago

Is there a way for me to manually fix this? I'm a bit new to this area.

ebullient commented 5 months ago

https://www.ebullient.dev/projects/ttrpg-convert-cli/docs/configuration.html#render-with-fantasy-statblocks

Always check the docs. Configuration doc has a note about using the dice roller plugin and using the dice roller with fantasy statblock rendering.

Snohild commented 5 months ago

Okey, I feel so stupid .. It worked 😅

Snohild commented 5 months ago

Thank you SO much! I need to learn to read more through the docs.

ebullient commented 5 months ago

Suggestions for improvement are welcome. =)

Snohild commented 5 months ago

Suggestions for improvement are welcome. =)

It makes everything work, except for the Spell Hit Modifier.

image

ebullient commented 5 months ago

grumble grumble. ;)

valentine195 commented 5 months ago

Reluctantly welcome?

ebullient commented 5 months ago

https://github.com/ebullient/ttrpg-convert-cli/pull/416

Snohild commented 5 months ago

No worries if there is no solution to it yet. It just looks a bit silly with the dice formula in the Stat Block.

Snohild commented 5 months ago

@ebullient With the new update, I get an error:

C:\Users\nordm\Desktop\NY CLI\CLI-Oppdatert\5eTools\bin>ttrpg-convert.exe --index -o dm-100 -c source.json 5etools-mirror-2.github.io/data [ Ô£à OK] Finished reading config. ÔÅ▒´©Å Reading C:\Users\nordm\Desktop\NY CLI\CLI-Oppdatert\5eTools\bin\5etools-mirror-2.github.io\data [ Ô£à OK] Finished reading data. ­ƒÆí Writing files to C:\Users\nordm\Desktop\NY CLI\CLI-Oppdatert\5eTools\bin\dm-100 [ ­ƒû╝´©Å OK] Using C:\Users\nordm\Desktop\NY CLI\CLI-Oppdatert\5eTools\bin\5etools-img/ as the source for remote images (copyInternal=true) [ ­ƒøæ ERR] Unable to find template for for tools5e/hazard2md.txt [ ­ƒøæ ERR] An error occurred: Unable to render content.

ebullient commented 5 months ago

That's a different issue. Will re-release to address that (I'd hoped the latest Quarkus release would fix it, but it didn't).

ebullient commented 5 months ago

Should be fixed: https://github.com/ebullient/ttrpg-convert-cli/releases/tag/2.3.9

BlueUser18 commented 5 months ago

I am having the same issue. It was working before version 4.2.2, but now it is not. I also just updated CLI to version 2.3.9 and I am still not showing dice in the statblocks. They show up in the blocks for spells but the dice do not render across the screen. blight nezz

valentine195 commented 5 months ago

If you want dice to render, you need to either:

  1. Globally turn it on in DR settings
  2. Shift click the dice
  3. have the CLI output the |render flag
ebullient commented 5 months ago

Make sure you have both of these set:

In your picture, I still see dice formulas in your statblock, which suggests you're missing the latter of those two.

BlueUser18 commented 5 months ago

My current CLI config

{ "from": [ "PHB", "DMG", "MM", "LMoP", "DIP", "KftGV", "VGM", "XGE" ], "paths": { "compendium": "6. Mechanics/CLI/", "rules": "6. Mechanics/CLI/rules" }, "template": { "background": "ttrpg-convert-cli-main/examples/templates/tools5e/images-background2md.txt", "monster": "ttrpg-convert-cli-main/examples/templates/tools5e/monster2md-yamlStatblock-body.txt" }, "useDiceRoller" : true, "yamlStatblocks" : true, "full-source": { "adventure": [ "LMoP", "DIP", "KftGV" ], "book": [ "PHB", "DMG", "MM", "VGM", "XGE"
] } }

BlueUser18 commented 5 months ago

If you want dice to render, you need to either:

  1. Globally turn it on in DR settings
  2. Shift click the dice
  3. have the CLI output the |render flag

Shift click works for anything where the dice are available.