Log in

View Full Version : Nagging question for Revert Changes status on Lost Mine of Phandelver



cwsoots
December 10th, 2022, 00:10
For several months now, regardless of which campaign I load, the Lost Mine of Phandelver module always shows Revert Changes even in campaigns where I've never accessed that module or its assets. This issue appeared some time ago and didn't occur before that--I know because of my file backup methodology. I've tried to locate every asset in that module (Encounters, Images, NPCs, etc.) and ensure that nothing has been modified by verifying the small icon to the right of the entry. I've also reverted changes with every launch. However, as soon as I relaunch FGU with any campaign that has that module loaded, it immediately shows Revert Changes. I like to leave that module loaded to access its assets if needed (e.g. spider staff), but I would like to understand why it always is modified upon loading even when untouched. None of the other modules that I have loaded exhibit this behavior. Anyone have any ideas that I haven't tried yet?

Zacchaeus
December 10th, 2022, 09:00
I don't know the answer. I can see that it is the case that LMoP does show revert changes although I can't see anything with the book and pen icon in the data, I suspect it may be something to do with the pregenerated characters. LMoP was the first adventure created and it was created using the internal tool par5e. However par5e was not very robust at creating pregenerted characters and so at some point in the past I created the characters inside of FG and then pasted the xml code for these characters into the output for the rest of the adventure created by par5e. Since xml code produced by par5e and fantasy grounds database code differ when the module is loaded FG probably thinks there have been changes somewhere in the code.

I can't see any downside to this (since reverting changes doesn't seem to do anything) and the module works just fine. So it's safe to ignore that little glitch.

cwsoots
December 10th, 2022, 17:13
I don't know the answer. I can see that it is the case that LMoP does show revert changes although I can't see anything with the book and pen icon in the data, I suspect it may be something to do with the pregenerated characters. LMoP was the first adventure created and it was created using the internal tool par5e. However par5e was not very robust at creating pregenerted characters and so at some point in the past I created the characters inside of FG and then pasted the xml code for these characters into the output for the rest of the adventure created by par5e. Since xml code produced by par5e and fantasy grounds database code differ when the module is loaded FG probably thinks there have been changes somewhere in the code.

I can't see any downside to this (since reverting changes doesn't seem to do anything) and the module works just fine. So it's safe to ignore that little glitch.

Thanks for taking a look, Zacchaeus! I hadn’t thought of pre-gens. That’s probably it. I’ll see if I can confirm that. I couldn’t find anything else, and it un-reverts itself even in a new campaign. If you happen to resolve that someday, all of us OCD fans will thank you. :) If not, I’ve lived with it this long—I’ll keep pointlessly reverting it as I have been doing.

Trenloe
December 11th, 2022, 10:57
Doing some testing: Reverting changes, then reloading the campaign and exiting without doing anything results in a small DD Lost Mine of Phandelver.xml moduledb file - which only has the following:


<?xml version="1.0" encoding="utf-8"?>
<root version="4.3" dataversion="20220901">
<pregencharsheet>
<id-00002>
<powers>
<id-00009>
<actions>
<id-00001>
<savemagic type="number">1</savemagic>
</id-00001>
</actions>
</id-00009>
<id-00011>
<actions>
<id-00001>
<savemagic type="number">1</savemagic>
</id-00001>
</actions>
</id-00011>
<id-00012>
<actions>
<id-00003>
<savemagic type="number">1</savemagic>
</id-00003>
</actions>
</id-00012>
</powers>
</id-00002>
<id-00004>
<powers>
<id-00005>
<actions>
<id-00001>
<savemagic type="number">1</savemagic>
</id-00001>
</actions>
</id-00005>
<id-00006>
<actions>
<id-00001>
<savemagic type="number">1</savemagic>
</id-00001>
</actions>
</id-00006>
</powers>
</id-00004>
</pregencharsheet>
</root>

So, yes, this is related to the pregen characters. There's version checking code in FG that runs whenever a campaign is loaded and updates older data. The "savemagic" update is added to power actions with a type of "cast" - this code runs if the major version of the module database is less than 8, and it makes the update even if the "savemagic" field is already there.

@Zacchaeus - you can probably work out which entries need to be updated based on the above XML, if the "Savemagic" field isn't already there. Then you'll also probably need to ensure that the major version of the module data is current to stop the update occurring as the update code runs even if the savemagic field is already there.

Moon Wizard
December 11th, 2022, 20:45
It's definitely the pregens. The data is being migrated with some minor changes that occurred over 5E versions when the module is imported.

Regards,
JPG

cwsoots
December 11th, 2022, 22:43
Thank you for confirming, Trenloe and Moon Wizard! At least I know why it's happening now, and that it's not something that I did. :o