phantomwhale
January 11th, 2011, 10:30
An oldie but goldie bug often found in XML-data programs seems to also manifest in Fantasy Grounds I'm sorry to say.
If you export a module, in my case "Abracadabra & an Arab Cadavar" then, well... firstly it's actually too long ! If you export with that name, you'll have no "open module" icon in your campaign, the long name just pushes if off the screen.
So, after a quick edit I created my module as "Abracadabra & an Arab". The exports the module fine, and within the definition.xml file I can see :
<?xml version="1.0" encoding="iso-8859-1"?>
<root version="2.07">
<name>Abracadabra & An Arab</name>
<ruleset>SavageWorlds3</ruleset>
<author>Ben Turner</author>
</root>
So I open my campaign, open up the module and start using the elements. No problem. Then I close the campaign, and later on reopen it... and the module has closed itself ! How rude...
Of course, the reason for this is within the campaign, the following has been saved into the modulestate.xml file :
<module name="Abracadabra & An Arab">
<loaded />
<disallow />
</module>
This is invalid XML - the & should be replaced by &. But not only that, the fact it's saved in this fashion means it does not find the module when the campaign is reopened.
One workaround would be to manually adjust the modulestate.xml file, but you need to do this every time - FGII overwrites this file with the invalid ampersand each time the campaign is saved.
So the only realistic workaround for now is one often employed with XML-data apps; stay clear of ampersands !!!
But whilst this is only a minor thing, it would I presume only be a minor fix, so worth flagging up.
If you export a module, in my case "Abracadabra & an Arab Cadavar" then, well... firstly it's actually too long ! If you export with that name, you'll have no "open module" icon in your campaign, the long name just pushes if off the screen.
So, after a quick edit I created my module as "Abracadabra & an Arab". The exports the module fine, and within the definition.xml file I can see :
<?xml version="1.0" encoding="iso-8859-1"?>
<root version="2.07">
<name>Abracadabra & An Arab</name>
<ruleset>SavageWorlds3</ruleset>
<author>Ben Turner</author>
</root>
So I open my campaign, open up the module and start using the elements. No problem. Then I close the campaign, and later on reopen it... and the module has closed itself ! How rude...
Of course, the reason for this is within the campaign, the following has been saved into the modulestate.xml file :
<module name="Abracadabra & An Arab">
<loaded />
<disallow />
</module>
This is invalid XML - the & should be replaced by &. But not only that, the fact it's saved in this fashion means it does not find the module when the campaign is reopened.
One workaround would be to manually adjust the modulestate.xml file, but you need to do this every time - FGII overwrites this file with the invalid ampersand each time the campaign is saved.
So the only realistic workaround for now is one often employed with XML-data apps; stay clear of ampersands !!!
But whilst this is only a minor thing, it would I presume only be a minor fix, so worth flagging up.