ttrpg-convert-cli
ttrpg-convert-cli copied to clipboard
🐛 Homebrew subraces aren't included
If a homebrew race includes subraces as well, those subraces don't get included in the resulting files even if they work on 5eTools. I tested this with both separate subrace definition JSON files and by including the subraces in the same file as the main race. I also tested this with a race from the 5eTools homebrew repository called Middle Finger of Vecna; Archon, which includes subraces defined in the same file. Only the base race is included in all cases. I'm considering this a bug because I'm at a point where all other homebrews I'm including work as expected except subraces.
Homebrew subrace parsing should work the same as core subraces, generating files such as elf.md, elf-high.md, and elf-wood.md. This should happen for any homebrew race that works as expected on 5eTools, where subraces are generated in the format Base (Sub), e.g. Elf (High).
Instead, in the case of the Archon example file, a single file called archon-mfov-archon.md is generated with no info on the subraces.
Configuration
- OS: Windows 10
- CLI version:
- ttrpg-convert version 2.3.18
- Git commit: ed56f76
- Build time: 2024-07-27T02:01:31Z
- CLI type:
ttrpg-convert-cli-2.3.18-windows-x86_64
Config: This is the config that reproduces the issues with the example from the 5eTools homebrew repository.
{
"from": ["HAT-LMI", "MCV2DC", "TCE", "XGE"],
"paths": {
"compendium": "/z_Reference/compendium/",
"rules": "/z_Reference/rules/"
},
"template": {
"background": "../examples/templates/tools5e/images-background2md.txt",
"monster": "../examples/templates/tools5e/monster2md-yamlStatblock-body.txt",
"object": "../examples/templates/tools5e/object2md-yamlStatblock-body.txt",
"item": "../examples/templates/tools5e/images-item2md.txt",
"race": "../examples/templates/tools5e/images-race2md.txt",
"spell": "../examples/templates/tools5e/images-spell2md.txt",
"vehicle": "../examples/templates/tools5e/images-vehicle2md.txt"
},
"useDiceRoller": true,
"yamlStatblocks": true,
"tagPrefix": "reference",
"full-source": {
"book": ["DMG", "MM", "PHB"],
"homebrew": [
"C:/Users/sampp/OneDrive/Tiedostot/Dungeons and Dragons/Homebrew/Middle Finger of Vecna; Archon.json"
]
}
}
Log
This seems to also affect homebrew subraces for not-homebrew races as well. The subraces from Kobold Press' Book of Ebon Tides do not get generated at all, and this includes both subraces for BoET races and standard races (Human, Elf, etc.).
I think I found the cause of this bug and a fix. I have not tested extensively, but it does fix both the original bug and mine, and does not seem to negatively impact subraces from not-homebrew sources.
https://github.com/ebullient/ttrpg-convert-cli/compare/2.3.18...philippewarren:ttrpg-convert-cli:fix_missing_subclasses_for_homebrew
It is a simple fix. I can't really make a PR, as the fix is against 2.3.18, which is a tag and therefore not a valid base point for a PR. There is a good chance that it is already fixed in main, as the change I did seems to be already done in main. This would be a request to create a 2.3.19 or something with this fix, until the 2024 work is done and a new major release is done.
can that fix be applied to the latest version 3 then? Cause that version is not generating sub-races for the homebrew stuff.
There are other bugs for v3 that I also need to sort first. patience, please.