View Full Version : 4E Module Maker - yet another Portable Compendium parser
skelekon
May 14th, 2022, 12:44
Inspired by the original 4E Module Generator by VegaFontana, plus some more recent work by Valkyrion, I have created a new application that can create 'proper' indexed Library Modules from the Portable Compendium data (similar to the original DDI parser by Tenian and EugeneZ).
It comes as an .exe to put in the Portable Compendium directory, and runs it from a command line to tell it what the filename and Library name should be, and which objects you want exported to the new Module. (If you put a 'thumbnail.png' in the same directory it will include that as the module thumbnail.)
If you would prefer to keep it separate from the Portable Compendium files, you just need to copy the 'sql' subdirectory containing the Portable Compendium .sql files into the directory containing module_maker.exe (the entire directory, not just the .sql files).
Usage: module_maker.exe [options]
Options:
-h, --help show this help message and exit
--filename=FILE create library at FILE
--library=LIBRARY Fantasy Grounds' internal name for the Library
--min=MIN export items of this level and above. Applies to NPCs,
Alchemical Items, Rituals, Martial Practices and Powers.
--max=MAX export items of this level and below. Applies to NPCs,
Alchemical Items, Rituals, Martial Practices and Powers.
-s, --static adds "static="true" clause to make objects locked
-t, --tiers divide Magic Armor, Implements and Weapons, NPCs into
Tiers
-n, --npcs export NPCs (Monsters)
-T, --traps export Traps and Hazards
-e, --terrain export Terrain information
-d, --diseases export Disease tracks
-R, --races export Races information
-C, --classes export Classes information
-B, --backgrounds export PC Background information
-H, --heroic export Heroic Themes
-P, --paragon export Paragon Paths
-E, --epic export Epic Destinies
-F, --familiars export Familiars information
-D, --deities export Deity information
-f, --feats export Feats
-p, --powers export PC Powers
-b, --basic include Basic Attacks in Power export
-a, --alchemy export Alchemical Formulas and Items
-r, --rituals export Rituals
-m, --martial export Martial Practices
-o, --poisons export Poisons
-i, --items export all item types (= --mundane & --magic)
--mundane export all mundane items
--magic export all magic items
If you would prefer to not mess about with command lines I have included a run_all.bat file that will export everything into 3 modules:
NPCs/Monsters
Traps, Terrain & Diseases
PC options (Races, Classes, Powers & Feats)
Mundane and Magical Items (including Rituals, Martial Practices & Alchemical Formulas)
module_maker.exe --filename 4E_Monsters --library "4E Monsters" -n -t -s
module_maker.exe --filename 4E_Traps_Terrain_Diseases --library "4E Traps, Terrain and Diseases" -T -e -d -s
module_maker.exe --filename 4E_PC_Options --library "4E PC Options" -R -C -B -H -P -E -F -D -f -p -b -s
module_maker.exe --filename 4E_Items --library "4E Items" -a -r -m -o -i -t -s
Looking at each option in turn:
--filename=FILE
This is simply the filename of the exported module. Copy this to your Fantasy Grounds\modules directory.
--library=LIBRARY
This is the internal name of the FG module. In theory it permits you to have links that go from from one module to another module provided you know the library name, but in practice I'm not really using it for anything.
It can be somewhat relevant for things like Feats and Rituals, as when you drag and drop them onto a PC sheet, it just adds a link to the Library entry.
--min=MIN
--max=MAX
These provide high level filters that will apply to NPCs/Monsters, Alchemical Formulas, Rituals, Martial Practices and Powers.
Doesn't apply to Feats as they don't have a level as such.
Note that some NPCs, Items and Powers are considered level 0, so use --min=0 instead of --min=1 to export these.
-t, --tiers
Use this to split the top level library menus for Magic Armor, Magic Weapons, Magic Implements and NPCs/Monsters into Heroic, Paragon and Epic.
Note that unlike --min & --max this isn't applying a filter to the module contents, this is simply to reduce the size of the second-level menus to try and prevent lagging/crashing of FG.
If it is not enabled there will be over 1500 items under Magic Armor, over 2000 Magic Weapons and over 2500 Magic Implements.
Also over 5000 NPCs/Monsters (although the NPC tables seem to struggle less with a large number of entries).
-n, --npcs
Use this to include NPCs/Monsters in the export.
If this option is enabled then the data file will be called 'db.xml' instead of 'client.xml' so it is not Player-loadable by default.
It creates 4 different top-level menus: by Level, by Name, by Level & Role, by Role & Level. I'm not sure how useful the last 2 are, so I'm open to suggestions to improve the usability.
I recommend using the -t --tiers option if doing a full NPC export to split the lists into three tiers.
-r, --races
Use this to include Races in the export, so that Racial Features can be drag & dropped onto the Abilities PC tab. Any linked Racial Powers will be included in the export, even if the --powers option is not used.
-c, --classes
Use this to include Classes in the export, so that Class Features can be drag & dropped onto the Abilities PC tab. Any linked Class Powers will be included in the export, even if the --powers option is not used.
-f, --feats
Use this to include Feats in the export. At the top level of the library they will be divided into Heroic, Paragon, Epic and Other, as per how they were listed in the Portable Compendium.
If a feat grants a power, and this library also contains --powers export, the relevant power will be listed and linked under 'Linked Powers' section of the feat.
For this reason I recommend exporting Feats and Powers into the same module.
(It's possible that this link will be broken if you do something like export a subset of powers using --min & --max, and the linked power is then filtered out of the export - that's on you.)
-p, --powers
Use this to include Powers in the export.
At the top level, powers are divided into the various Classes, Races, Paragon Paths, etc. Then within each individual list they are sorted by level and AEDU.
If a power entry contains more than one power, such as Monk Full Disciplines (and various other powers), all powers spawned from the same Portable Compendium entry will be listed and linked under 'Linked Powers' in each power entry.
(Sorcerer D29 Wyrm Form includes 4 powers - this is the only power I could find with more than 2.)
-b, --basic
Use this to include MBA, RBA, Bull Rush and Grab in the exported powers.
Only works if also using the -p, --powers option.
-a, --alchemy
Use this to include Alchemical Formulas in the export (the ones that appear as Rituals in the Portable Compendium, not the ones under Items).
You can add them to a PC by dragging them onto the 'Abilities' tab.
There's a bit to unpack here, because each Alchemical Formula creates one or more Alchemical Items or varying levels, and most Alchemical Items have Alchemical Item Powers.
e.g. the Acidic Fire alchemical formula lets you create Acidic Fire magic items of levels 5, 10, 15, 20, 25 & 30. And each of those magic items has a different Consumable power with varying attack bonuses and damage expressions.
-u, --rituals
Use this to include Rituals in the export.
You can add them to a PC by dragging them onto the 'Abilities' tab.
-m, --martial
Use this to include Martial Practices in the export. I split them out from Rituals, because why not.
You can add them to a PC by dragging them onto the 'Abilities' tab.
-i, --items
Use this to include all Mundane and Magic Items in the export.
I recommend using the -t --tiers option if doing a full Magic Items export to split Armor, Weapons and Implements into three tiers.
--mundane
Use this to include all Mundane in the export.
This creates entries for Armor, Weapons and Equipment. Basic Implements are listed under Equipment as they have no combat effect. Superior Implements are listed under Weapons as they have Properties like Weapons do.
Mundane Armor and Weapons are created in such a way that they can be applied to a Magic Armor or Magic Weapon template to create an item with the correct type and powers, as per this (https://www.youtube.com/watch?v=NzvU0DQhZkA&ab_channel=Braincain007) video by Braincain007.
--magic
Use this to include all Magic Items in the export.
Note that there is also a 'Magic Items - Alchemical Items' menu that has some crossover with the Alchemical Formulas option. I was going to exclude the option from here and just go with the Alchemical Formulas as the parsing works out better, but I realized there are some items here that are not under the formulas, like Aboleth Slime.
I recommend using the -t --tiers option if doing a full Magic Items export to split Armor, Weapons and Implements into three tiers.
You can grab module_maker.exe & run_all.bat from here (https://github.com/skelekon/4e-portable-compendium-module-maker) at the project github - this is all that is required to create the modules.
Also any suggestions for things to add or improve.
skelekon
May 14th, 2022, 12:59
Here's an example of an Alchemical Formulas chain.
This is the main list of Alchemical Formulas:
52781
Which leads to one Ritual entry that can be dragged & dropped onto a PC sheet:
52782
That contains links to 6 different Alchemical Items of varying level - these can also be reached directly from the 'Alchemical Items' top-level menu:
52783
Each Alchemical Item links to a Power with the appropriate attack bonus, damage expression, etc.:
52784
skelekon
May 14th, 2022, 13:08
Here's an example of a Feat with linked Power.
The Feat appears under the 'Feats - Heroic' top-level menu:
52785
Which leads to a Feat that can be dragged & dropped onto a PC sheet:
52786
The associated power is linked under the 'Linked Powers' section:
52787
The power can also be found under the 'Powers - Feat Power' top-level menu:
52788
RRFG
May 16th, 2022, 07:30
Thanks! Amazing work.
One issue I'm seeing is that some html code is being generated in the description box when Powers are dragged to character sheets. Specifically, the paragraph "p". I don't see that issue with Feats or Items though.
The combat tracker HP issue seems resolved as well.
Edit: I also found that NPC sorted by level is actually sorted by letter.
52802
skelekon
May 16th, 2022, 10:53
Thanks! Amazing work.
One issue I'm seeing is that some html code is being generated in the description box when Powers are dragged to character sheets. Specifically, the paragraph "p". I don't see that issue with Feats or Items though.
The combat tracker HP issue seems resolved as well.
Thanks for the feedback - do you have an example of the issue with the Powers description? (Just the power name should suffice.)
I ran a regex over the Powers module and couldn't find any angle brackets inside a shortdescription field.
I know it was an issue I encountered fairly early on that any tags in the shortdescription field cause it to be truncated where the tag commences - this is because it is a string and not formattedtext.
The description field contains the formatted version, but this is only visible when you view the library copy of the Power, and not when you open the copy on the PC sheet.
When you copy a power to a PC sheet it appears to parse it to get the power actions, and also copy a subset of the power's library fields to the character data.
Oddly, even though it keeps a reference to the source library power on the PC sheet, it never seems to access the original version, or even care whether the library is loaded. (This is in contrast to Feats and Special Abilities that only store a link to the library source if it came from one, and require the library to be loaded.)
RRFG
May 16th, 2022, 11:56
I misspoke. I meant to say the flavor text area. I did notice that when I disable the "4E Power Card Flavor Text" extension, the flavor text is not visible when the power is on the sheet - which I'm guessing is why the extension was made.
Here is an example.
52803
skelekon
May 16th, 2022, 13:08
I misspoke. I meant to say the flavor text area. I did notice that when I disable the "4E Power Card Flavor Text" extension, the flavor text is not visible when the power is on the sheet - which I'm guessing is why the extension was made.
Here is an example.
52803
OK I think I've fixed it - I changed the flavor nodes from formattedtext to string and it stopped displaying the <p> tags.
The italics must be inherent to flavor boxes and they don't actually require any text formatting - I checked some of the scraped DDI modules and they had the same problem, which was probably where I got the idea to make them formattedtext in the first place.
Have released a new version on github - unfortunately you will need to rebuild the module and re-add the powers to PCs (or edit your campaign file).
RRFG
May 17th, 2022, 00:34
Yup. Fixed on my end. Great job.
One question - the feats are populated in the powers section of the side bar, while the npcs aren't populated at all. Is this intended?
skelekon
May 17th, 2022, 00:55
Yup. Fixed on my end. Great job.
One question - the feats are populated in the powers section of the side bar, while the npcs aren't populated at all. Is this intended?
Funny you should mention that - I just noticed the same thing last night.
I have loaded up all the DDI modules, and I can see that some of them correctly populate Feats & Monsters into the Feats & NPCs lists (and some of them don't).
So it should just be a matter of analysing the XML in the 'good' modules and working out what triggers them to be listed correctly.
skelekon
May 17th, 2022, 07:39
New version is up on github (https://github.com/skelekon/4e-portable-compendium-module-maker) that fixes the issue with Items, NPCs and Feats not appearing under the correct sidebar menu.
Edit: Items only includes mundane items. Looking into adding magic items also.
RRFG
May 17th, 2022, 23:25
....
skelekon
May 19th, 2022, 07:17
New version is up (https://github.com/skelekon/4e-portable-compendium-module-maker/tree/v1.3.3) that adds Magic Items to Items sidebar menu.
qunitvineu
June 9th, 2022, 02:49
This looks fantastic!! I'm really excited to try it out :D There's just one thing I'm a little confused on, probably because I'm a dum dum lol. The 1st step in the readme says "Copy `module_maker.exe` into the unzipped Portable Compendium directory (default will be `/Portable Compendium New`. It will use the data files in the `/sql` subdirectory to create modules."
I'm not sure what you mean here by unzipped Portable Compendium directory. My Portable Compendium has been unzipped since I downloaded and used it for Valkyrion's thing, do I need to rezip it to make it work with yours? Or maybe I'm just missing something?
skelekon
June 9th, 2022, 03:18
This looks fantastic!! I'm really excited to try it out :D There's just one thing I'm a little confused on, probably because I'm a dum dum lol. The 1st step in the readme says "Copy `module_maker.exe` into the unzipped Portable Compendium directory (default will be `/Portable Compendium New`. It will use the data files in the `/sql` subdirectory to create modules."
I'm not sure what you mean here by unzipped Portable Compendium directory. My Portable Compendium has been unzipped since I downloaded and used it for Valkyrion's thing, do I need to rezip it to make it work with yours? Or maybe I'm just missing something?
No I just meant to drop the module_maker.exe (and optionally the run_all.bat) into the same directory as the Portable Compendium exe file as it looks for the 'sql' subdirectory to read the data files.
skelekon
June 9th, 2022, 10:02
Have added Races and Classes options so you can drag & drop e.g. Racial Features to the 'Abilities' tab (or even the entire Race or Class rules element).
I don't think the parser parses these during play, so it maybe of limited use in terms of automation.
If Races or Classes are being exported, any Powers associated with that Race or Class will also be included in that export to avoid broken links, even if the --powers option is not used.
Because -r is now used to export Races, Rituals option is now -u, so use the updated 'run_all.bat' if you are using the supplied one.
Also fixed a bug where the 'NPCs by Level/Role' was instead displaying monsters alphabetically, and also improved Magic Item parsing.
Will edit the first post with details of the new options.
Braincain007
June 15th, 2022, 21:03
Hey, I just noticed this thread. I can confirm that Skelekon has massively improved this over other FG module parsers.
Wink182
June 29th, 2022, 04:27
First of all, this is incredible and I can't thank you enough.
One thing I noticed was whenever I tried to drag a full discipline power onto a character sheet, FG would go into a Not Responding state and I ended up having to force quit it. It seems this is because of the linked powers as when I remove them, it's fine.
I'm not sure if this necessarily has anything to do with this tool, but wanted to bring it up.
Thanks again!
skelekon
June 29th, 2022, 12:37
First of all, this is incredible and I can't thank you enough.
One thing I noticed was whenever I tried to drag a full discipline power onto a character sheet, FG would go into a Not Responding state and I ended up having to force quit it. It seems this is because of the linked powers as when I remove them, it's fine.
I'm not sure if this necessarily has anything to do with this tool, but wanted to bring it up.
Thanks again!
Oops, I never noticed that was happening.
I think because the powers were linked to one another FG was going into an infinite loop, as when you add a power to a PC it also adds any linked powers to that PC.
So adding the Attack Technique makes it add the Movement Technique, which makes it add the Attack Technique, which makes it add the Movement Technique, etc
Solution was to only add linked powers to the first power in any given Compendium entry.
So adding an Attack Technique will now add the Movement Technique, but not vice versa.
Also adding e.g. 'Grease' will also add the 'Grease Attack Power', etc.
This also works for Feats that grant Powers, so adding e.g. a Channel Divinity feat to the Feats Ability tab will automatically add any granted power to the Powers tab.
You should just need to download the new module_maker.exe and rebuild the library containing the Powers to implement the fix.
Wink182
June 29th, 2022, 13:21
Thanks!
One more thing I noticed. When dragging a magic weapon or implement onto a character that has additional critical damage, the crit die isn't populated on the combat tab.
My solution for this in the past was to format the "Critical" line of the weapon as "1dX critical damage" or "1dX cold critical damage" instead of "1dX damage" or "1dX cold damage". However, I'm not sure this is the correct solution. Just what I've done in the past.
skelekon
June 29th, 2022, 14:19
Thanks!
One more thing I noticed. When dragging a magic weapon or implement onto a character that has additional critical damage, the crit die isn't populated on the combat tab.
My solution for this in the past was to format the "Critical" line of the weapon as "1dX critical damage" or "1dX cold critical damage" instead of "1dX damage" or "1dX cold damage". However, I'm not sure this is the correct solution. Just what I've done in the past.
Thanks for the advice - some preliminary testing shows that replacing the 'damage' literal with 'critical damage' indeed does the job.
I'll push out a new release tomorrow after I make a new build and do a bit more testing.
Wink182
June 29th, 2022, 14:23
Sorry don't mean to flood you with items. I have another question.
When I'm looking at magic items through the module, and click the icon to look at the details I get a console error. Same for rituals, alchemical formulas, and it seems everything else in the 4E_Items module. Is this something I'm missing?
skelekon
June 30th, 2022, 00:57
Sorry don't mean to flood you with items. I have another question.
When I'm looking at magic items through the module, and click the icon to look at the details I get a console error. Same for rituals, alchemical formulas, and it seems everything else in the 4E_Items module. Is this something I'm missing?
Hi I haven't been able to reproduce this issue, so I'm not sure what's going on.
53370
Do the item properties appear if you use the Items sidebar menu (the sack icon)? They may look a bit different because it uses a different window type to display things from that menu (it's like an inventory item rather than the a library item).
53371
And feel free to post any issues you may have like this, as the community can find issues more quickly than I ever could, given the number of things that are in the libraries.
Wink182
June 30th, 2022, 00:59
Hi I haven't been able to reproduce this issue, so I'm not sure what's going on.
53370
Do the item properties appear if you use the Items sidebar menu (the sack icon)? They may look a bit different because it uses a different window type to display things from that menu (it's like an inventory item rather than the a library item).
53371
And feel free to post any issues you may have like this, as the community can find issues more quickly than I ever could, given the number of things that are in the libraries.
Yep the sidebar menu seems to work just fine. I'll poke around and see if I can figure anything out.
skelekon
June 30th, 2022, 11:28
Yep the sidebar menu seems to work just fine. I'll poke around and see if I can figure anything out.
If you want to post the command line you used to generate the Items library I can see if I can reproduce the issue, although if it was the default one from run_all.bat then that is what I have been testing with already.
Also, new version is on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/tree/v1.4.3) that correctly adds critical dice to the Combat tab when weapliments are dropped into the Inventory tab.
Wink182
June 30th, 2022, 12:15
If you want to post the command line you used to generate the Items library I can see if I can reproduce the issue, although if it was the default one from run_all.bat then that is what I have been testing with already.
Also, new version is on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/tree/v1.4.3) that correctly adds critical dice to the Combat tab when weapliments are dropped into the Inventory tab.
I did use the run_all.bat. I recreated with your latest version in the hopes it would solve the problem but no dice. The other modules work fine doing a similar thing. Looking at feats and races in PC Options for example, which I assume uses a similar/same control?
Wink182
June 30th, 2022, 12:19
I did use the run_all.bat. I recreated with your latest version in the hopes it would solve the problem but no dice. The other modules work fine doing a similar thing. Looking at feats and races in PC Options for example, which I assume uses a similar/same control?
Well I was able to figure it out, but I'm not sure what to do about it. It seems to be a conflict with the Player Agency extension. When I disable that, everything works fine.
skelekon
July 1st, 2022, 08:42
Well I was able to figure it out, but I'm not sure what to do about it. It seems to be a conflict with the Player Agency extension. When I disable that, everything works fine.
Yes I enabled Player Agency extension and confirmed the same issue.
Looks like it is to do with Player Agency breaking certain window classes (referencearmor, referenceweapon, referenceequipment, referencemagicitem & reference_ritual).
The windows that open from the Items sidebar I think have window classes of item_stats_weapon, item_stats_armor & item_stats_other, which are still working.
It seems that you can still drag & drop the library reference items onto PC sheets correctly, though you can't look into the details until it is on the character sheet and converted to one of the item_stats_* windows.
I might post something in the Player Agency extension thread to see if this can be fixed - I'm not sure if there is anything I can do on my side to mitigate this.
damned
July 11th, 2022, 10:16
Hi Guys,
Sorry I missed this. I dont use the 4E ruleset so hadnt seen this before.
Right now Im snowed under but I will try and look into it at a later date.
Valkyrion
July 11th, 2022, 15:56
As someone who previously worked on a Portable Compendium parser, I wanted to chime in and say that I love the work that skelekon has done with theirs! I'm glad that someone else was able to expand upon the work VegaFontana and I performed; I simply did not have the time to actively maintain a project like this. I've archived my own GitHub repo and directed newcomers to use skelekon's instead; I know it's what I'll be using :D
Wink182
August 3rd, 2022, 22:57
Agree with Valkyrion. Been using this for a while and it's fantastic.
I found one more small bug. For NPC, statblocks, if they have an encounter power, there seems to always be a space before "Encounter" in the recharge box of the power card which prevents the combat tracker from tracking if it's been used. Very minor and easy to fix on my end but just wanted to bring it up.
Thanks again!
skelekon
August 4th, 2022, 23:29
Agree with Valkyrion. Been using this for a while and it's fantastic.
I found one more small bug. For NPC, statblocks, if they have an encounter power, there seems to always be a space before "Encounter" in the recharge box of the power card which prevents the combat tracker from tracking if it's been used. Very minor and easy to fix on my end but just wanted to bring it up.
Thanks again!
Thanks for that - can you give an example of one of the NPCs + Powers and I'll take a look in the next day or two?
Wink182
August 5th, 2022, 00:54
Thanks for that - can you give an example of one of the NPCs + Powers and I'll take a look in the next day or two?
Absolutely.
Feasting Zombie: Clamping Bite Death Chomp power
Hobgoblin Commander: Hobgoblin Resilience power
skelekon
August 8th, 2022, 01:01
Absolutely.
Feasting Zombie: Clamping Bite Death Chomp power
Hobgoblin Commander: Hobgoblin Resilience power
v1.4.4 is up on Github (https://github.com/skelekon/4e-portable-compendium-module-maker)
Added a .strip() to Recharge keywords to fix the issue with spaces impacting Encounter powers.
edwardK
October 7th, 2022, 05:03
This parser has worked very well for me, thanks for all of your hard work making and maintaining it! The only issue I have encountered is that adding basic weapons and armor from the sidebar does not automatically update the players stats, but adding the items from Assets -> Items Module worked perfectly.
Do you have plans to parse traps or terrain?
skelekon
October 8th, 2022, 05:10
This parser has worked very well for me, thanks for all of your hard work making and maintaining it! The only issue I have encountered is that adding basic weapons and armor from the sidebar does not automatically update the players stats, but adding the items from Assets -> Items Module worked perfectly.
I think this is inherent to FG, and probably to do with the different window classes that items can be displayed in.
From the modules menu, the module creator can specify that mundane armor has class referencearmor, whereas the Items sidebar seems to be populated automatically by FG, and all everything appears in a magic item-type window (item).
My assumption is that the PC window knows to parse the referencearmor window for 'heaviness' and speed & skill penalties when an item is dropped on it, but not the plain item window.
Mundane weapons seem OK when added from either modules or Items, in that they populate the Proficiency bonus, Damage dice, know to reroll Brutal dice, etc.
Also there is a way of combining magic item templates with mundane items in order to craft specific magic items (e.g. Armor of Escape +1 plus mundane Chainmail gives Chainmail of Escape +1). There's a youtube linked from this thread (https://www.fantasygrounds.com/forums/showthread.php?73379-Fixing-4e-magic-item-creation) by the user that made the video.
Do you have plans to parse traps or terrain?
Traps are probably doable, as they are a type of NPC template. They can be dropped onto the Combat Tracker and then onto the map, giving access to targeting, attack & damage rolls, etc.
I don't think there's any template for Terrain items - I had a look in some of the DDI-imported modules, and they either don't import Terrain, or import it as plain text for reference. This lets you drop them on the map as a reference pin, but with no other interactions.
I have noticed a bug this week, where Augment X headings are not displaying on Psionic powers, so I intend to fix that in the next day or two - I might look at the Traps stuff once I've done that. I haven't made any updates for a couple of months.
skelekon
October 10th, 2022, 00:16
v.1.4.5 is up on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/tree/v1.4.5)- fixes missing 'Augment X' heading on augmentable powers.
Should be fully backwards-compatible if you are already using a Powers module - just download the updated module_maker.exe, recreate the module containing PC Powers ('4E PC Options' by default) and replace the .mod file in FG /modules.
Will have a look at exporting Traps next.
Wink182
October 14th, 2022, 15:06
v.1.4.5 is up on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/tree/v1.4.5)- fixes missing 'Augment X' heading on augmentable powers.
Should be fully backwards-compatible if you are already using a Powers module - just download the updated module_maker.exe, recreate the module containing PC Powers ('4E PC Options' by default) and replace the .mod file in FG /modules.
Will have a look at exporting Traps next.
Thanks for this! Just ran into this week.
Keep up the great work. I really appreciate it.
skelekon
October 15th, 2022, 06:54
Thanks for this! Just ran into this week.
Keep up the great work. I really appreciate it.
Thanks.
Have added new -T option to export Traps and Hazards.
New version 1.5.0 is up on Github (https://github.com/skelekon/4e-portable-compendium-module-maker).
Also new run_all.bat which has the command to export traps to a separate library.
It seems to be pretty solid - report any issues here, no matter how trivial.
(I have removed the static="true" reference from the <library> tags, which means that Monsters, Traps and Items can be unlocked and edited - I don't know if there are any adverse impacts from doing this.)
You can also find me on the Fantasy Grounds & D&D 4e Discord servers.
edwardK
November 1st, 2022, 03:24
The new version is working great for me! The -T flag export worked and the traps are all working for me in game, I really appreciate you adding those. I also like unlocking the NPCs, makes it easier for me to add art to the base NPC.
skelekon
November 1st, 2022, 03:41
The new version is working great for me! The -T flag export worked and the traps are all working for me in game, I really appreciate you adding those. I also like unlocking the NPCs, makes it easier for me to add art to the base NPC.
Thanks.
I'm working on a new update to include Backgrounds/Heroic Themes/Paragon Paths/Epic Destinies. It's mostly done - just need to do the Backgrounds.
I found out while working on this that the static="true" clause supresses the empty description boxes that appear on Races/Classes/Heroic/Paragon/Epic description cards.
So I will probably reinstate that clause just because it looks cleaner - I can add a new command line switch to suppress it if you like.
Otherwise you can open the .mod file with any zip utility and edit the <reference> tag to add & remove that clause as desired.
After that I think all that's left are Diseases, Poisons, Mounts and Familiars and that should be everything that was in the original DDI extract mods.
(The actual Mounts are listed under "Items - Equipment" but there's a special list type just for mounts that lists travel speeds and stuff I would like to try out.)
skelekon
November 6th, 2022, 07:44
New major update is available on GitHub v1.6.0 (https://github.com/skelekon/4e-portable-compendium-module-maker)
On the player side added export options for:
Backgrounds
Heroic Themes
Paragon Paths
Epic Destinies
Familiars
Added Diseases on the DM side.
You will need the new module_maker.exe and run_all.bat
NOTE THAT I HAVE RESTUCTURED THE XML TO MAKE IT MORE CONSISTENT, BUT THIS COULD BREAK LINKS TO RULES ELEMENTS FROM EARLIER VERSIONS.
If you are heavily invested in the existing modules you might want to hold off on upgrading, or at least backup your existing modules.
This is the structure I will be using for the foreseeable future, though, so you will need to upgrade eventually to get the new goodies.
As always, report any issues or suggestions here, or on FG Discord.
Still remaining elements from the Portable Compendium: Terrain (145), Deities (134), Companions (11), Mounts (38?), Poisons (19), Glossary (546!)
skelekon
November 7th, 2022, 06:19
Just realised there are bugs in the Traps and Magic Items export parts - will drop a new version shortly that also includes Terrain, Deities & Poisons.
skelekon
November 7th, 2022, 10:01
New version is on Github (https://github.com/skelekon/4e-portable-compendium-module-maker)
Added Deities and Poisons on the player side, and Terrain on the DM side.
Fixed some bugs introduced in the previous update.
Have changed one or two of the command line switches, so will need the latest version of run_all.bat unless you roll your own commands.
lbw
December 31st, 2022, 19:47
has anyone done a step by step video on this? this seems so far above my head, sorry
skelekon
January 1st, 2023, 06:59
has anyone done a step by step video on this? this seems so far above my head, sorry
There's no video (that I'm aware of) - this is just a community/hobby project and not anything official.
Best bet for assistance is probably the "D&D 4E" Discord server - there are channels for both resources and for vtts.
First thing is that you need the "Portable Compendium" resource as that contains the data to be put into FG modules.
lbw
January 6th, 2023, 02:34
ok thanks Ive recruited my son to help me this is way above my head LOL
skelekon
October 30th, 2024, 03:45
Bumping this thread as I released a v2.0 on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/releases/tag/v2.0.0) in June.
There were extensive changes to the xml tag structure, so would advise to not switching mid-campaign. Not anticipating making any further changes in that regard.
Otherwise improved the parsing for a number of things, and made some changes for compatibility with the updates to FGU Core earlier this year.
Xander StarFire
November 2nd, 2024, 17:39
Bumping this thread as I released a v2.0 on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/releases/tag/v2.0.0) in June.
There were extensive changes to the xml tag structure, so would advise to not switching mid-campaign. Not anticipating making any further changes in that regard.
Otherwise improved the parsing for a number of things, and made some changes for compatibility with the updates to FGU Core earlier this year.
Ciao ho scaricato tutti i file, ma non capisco come fare ad installare ed utilizzare il compendio. Grazie mille
SieferSeesSomething
October 30th, 2025, 22:19
Bumping this thread as I released a v2.0 on Github (https://github.com/skelekon/4e-portable-compendium-module-maker/releases/tag/v2.0.0) in June.
There were extensive changes to the xml tag structure, so would advise to not switching mid-campaign. Not anticipating making any further changes in that regard.
Otherwise improved the parsing for a number of things, and made some changes for compatibility with the updates to FGU Core earlier this year.
Hey skelekon, not sure if you've checked here in awhile, but in case you do, I think I found a bug while working on my class extension for 4e on fantasy grounds. The weaponmaster fighter is missing their last class feature, two-handed weapon talent. It's in the original compendium, it's in the generated library files, so I think it must have something to do with the way it's being parsed.
skelekon
November 4th, 2025, 23:12
Hey skelekon, not sure if you've checked here in awhile, but in case you do, I think I found a bug while working on my class extension for 4e on fantasy grounds. The weaponmaster fighter is missing their last class feature, two-handed weapon talent. It's in the original compendium, it's in the generated library files, so I think it must have something to do with the way it's being parsed.
Hi I have found the issue with this and designed a fix - will release a new version in a day or two.
It impacted a few other classes as well, so they'll all be fixed.
Will take a look at your changes to races as well.
SieferSeesSomething
November 11th, 2025, 20:01
Yay! And thanks for taking a look at my pull request, too!
SieferSeesSomething
December 4th, 2025, 03:49
Hi I have found the issue with this and designed a fix - will release a new version in a day or two.
It impacted a few other classes as well, so they'll all be fixed.
Will take a look at your changes to races as well.
Think I found one more small, little bug :). The Hunter's Quarry power for the Ranger isn't appearing for me. Not in the class entry, it's blank when I open the link, or in the list of powers. (I'm guessing the first part is because of the second.) Once again, thanks for all the work you do on this!
EDIT: Found a couple other entries like this as well, since I'm going through and testing all the class powers for my other Class extension. Not sure if these will get fixed with the other fixes you're doing, but I can let you know them as I find them just for more complete re-testing. So far, in addition to Hunter's Quarry, I've seen it with Warlock's Curse, the Warlock Vestige Pact boons, and a bunch of the Wizard (Arcanist) Arcane Implement Mastery powers (Orb of Deception, Orb of Imposition, Staff of Defense, Wand of Accuracy). In PHB2, with the Invoker's Preserver's Rebuke and Armor of Wrath.
skelekon
December 10th, 2025, 00:33
Hi I've published a new version new version (https://github.com/skelekon/4e-portable-compendium-module-maker/releases/tag/v2.0.1) to fix the missing class features.
This includes Armor of Wrath and Preserver's Rebuke, as they were caused by the same issue (class parsing ending too early).
The other ones listed are caused by the fact that they are not included in the actual ddiPower.sql compendium file - whenever the parser hits a power entry in a class, race, paragon path, etc it presumes there will be a Power entry and generates the expected link.
This works for the vast majority of powers except for the few that are not in the powers file.
I raised this an as issue with the compendium maintainer, but they didn't seem keen to add them as powers.
The alternate fix is for me to add them directly in the powers source code as I did for the four basic attacks - I can see I started to do it for Hunter's Quarry but it's commented out. I'll take a look at it now.
Powered by vBulletin® Version 4.2.1 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.