DICE PACKS BUNDLE
Page 2 of 3 First 123 Last
  1. #11
    Phystus's Avatar
    Join Date
    Aug 2008
    Location
    Central Indiana
    Posts
    451
    Blog Entries
    20
    GMK,
    To your question on what to look for when checking your xml with IE, IIRC you'll get a popup error window if there's a problem. Failing that, scroll to the bottom and see if you're seeing all of it (should be a bunch of closing tags at the end).

    There's also an xml validator here you can use.

    ~P

  2. #12
    Thanks, Phystus! I did not get any error messages from IE and the code did appear to be complete; at least, it looked the same as it did when I opened the file to edit it.

  3. #13
    A couple of further notes on this. FG experiences the same freeze-up if I attempt to manually drag a personality from a module encounter as if I try to populate all the NPCs using the button. Also, I had left PC entries in the CT after our last combat. I have since deleted those records 3 different times. Each time I've re-opened the CT after closing and re-opening FG, the records have been back; this may simply be because each time I've deleted them I've then crashed FG by attempting to populate module NPCs to the CT, but I figured it was worth mentioning, at least.

  4. #14
    Additional information. Today I attempted creating a campaign Encounter using NPCs from the game module, in hopes that I would be able to re-create the next couple encounters my party is going to come up against. I got the same result as attempting to populate the CT from one of the pre-genned encounters. Support for the NPC records being the source of the problem, I guess.

    Now I'm going to ask an ignorant question, because I just started learning XML specifically to deal with the issue of my NPCs not having powers. Does the level of indentation matter? For example, does the compiler see a difference between my first <item> tag being directly below my <Powers> tag and it being 5 spaces to the right of the <Powers> tag on the following line? IE did not give an error message when viewing the file, but I'm not clear on what constitutes "well-formed xml" as regards line indentation. When I copied the powers entries out of the MM.xml, they ended up with the same indentation as the <Powers> tags and I didn't change that, so that might be the issue.

    If indentation is not an issue, does the CT expect different formatting/arrangement than is provided by the MM entry? In other words, does FG do some translating of xml code when I populate a power from the MM to an NPC using the front end, versus copying and pasting the xml code for the same power on the backend? I ask, because this crash is not technically a crash - FG is *desperately* trying to do *some*thing when I populate the CT (it uses 99% of my CPU), but it can't.

    Just some food for thought. Thanks again for all your help, everyone!!!

  5. #15

    Join Date
    Mar 2006
    Location
    Arkansas
    Posts
    7,402
    Indentation is only for humans. FG's (and any other) XML parser could care less about indentation or line breaks.

    Well formed means the XML document conforms to XML standards. For FG's purposes this mostly means if you have an open tag you have have a close tag. IE if you have a <p> you have to have a </p> and the opening tags need to close in reverse opening order. IE <table> <tr> <td>Stuff</td> <td colspan="4">More Stuff</td> </tr> </table>

    As you can see this type of mess on one line is hard for a human to make out especially if not color coded like I did - hence most would write this as something like this:

    Code:
     
    <table>
      <tr>
        <td>Stuff</td>
        <td colspan="4">More Stuff</td>
      </tr>
    </table>
    Back to your specific problem. Most like the NPC/Monster either a) has a typo in it where a tag has been accidently deleted, moved or changed. Or b) the original entry on the monster manual has some problem. WotC was not perfect in their data layout and some monsters have stuff in the wrong order, ect.

    The other problem you could be having is that certain characters have a special purpose in XML and should not be used verbatium. They mostly deal with XML tags and attributes with the most common being <, >, ", =, &, #, /.

    If you used the parser then, using Tenian's sample data it would generate something like this for monster output:

    Code:
    		<wotciplawyer>
    			<name type="string">WOTC IP Lawyer</name>
    			<levelrole type="string">Level 5 Soldier (Leader)</levelrole>
    			<type type="string">Medium natural humanoid (vaguely)</type>
    			<xp type="number">175</xp>
    			<init type="number">2</init>
    			<senses type="string">Perception +4</senses>
    			<hp type="string">52; Bloodied 26</hp>
    			<ac type="number">17</ac>
    			<fortitude type="number">10</fortitude>
    			<reflex type="number">12</reflex>
    			<will type="number">13</will>
    			<speed type="string">5 </speed>
    			<powers>
    
    				<id-00001>
    					<name type="string">Cease and Desist</name>
    					<action type="string">Standard</action>
    					<recharge type="string">At-will</recharge>
    
    					<keywords type="string">Necrotic</keywords>
    					<shortdescription type="string">+15 vs. AC; 2d8 + 7 damage and the target is stunned until they file an appeal or they make a save.</shortdescription>
    					<icon type="string">circleM</icon>
    					<powertype type="string">m</powertype>
    				</id-00001>
    				<id-00002>
    					<name type="string">Empty their pockets!!</name>
    					<action type="string">Minor</action>
    					<recharge type="string">Recharge 6</recharge>
    					<range type="string">Close burst 2</range>
    
    					<shortdescription type="string">Steal 50,000 gp from every enemy in the burst.</shortdescription>
    					<icon type="string">B</icon>
    					<powertype type="string">C</powertype>
    				</id-00002>
    			</powers>
    			<alignment type="string">Evil</alignment>
    			<languages type="string">Common, Legalese</languages>
    			<skills type="string">Diplomacy -10, Intimidate +70</skills>
    
    			<strength type="number">18</strength>
    			<constitution type="number">14</constitution>
    			<dexterity type="number">13</dexterity>
    			<intelligence type="number">16</intelligence>
    			<wisdom type="number">12</wisdom>
    			<charisma type="number">16</charisma>
    			<equipment type="string">briefcase, legal documents</equipment>
    
    
    			<token type="token">tokens/Sample/wotc ip lawyer.png@Sample</token>
    		</wotciplawyer>
    After FG processes this data it gets rid of extraneous data and puts it in the format it stores the data in like this:

    Code:
    			<wotciplawyer>
    				<ac type="number">17</ac>
    				<alignment type="string">Evil</alignment>
    				<charisma type="number">16</charisma>
    				<constitution type="number">14</constitution>
    				<dexterity type="number">13</dexterity>
    				<equipment type="string">briefcase, legal documents</equipment>
    				<fortitude type="number">10</fortitude>
    				<hp type="string">52; Bloodied 26</hp>
    				<init type="number">2</init>
    				<intelligence type="number">16</intelligence>
    				<languages type="string">Common, Legalese</languages>
    				<levelrole type="string">Level 5 Soldier (Leader)</levelrole>
    				<name type="string">WOTC IP Lawyer</name>
    				<powers>
    					<id-00001>
    						<action type="string">Standard</action>
    						<icon type="string">circleM</icon>
    						<keywords type="string">Necrotic</keywords>
    						<name type="string">Cease and Desist</name>
    						<powertype type="string">m</powertype>
    						<recharge type="string">At-will</recharge>
    						<shortdescription type="string">+15 vs. AC; 2d8 + 7 damage and the target is stunned until they file an appeal or they make a save.</shortdescription>
    					</id-00001>
    					<id-00002>
    						<action type="string">Minor</action>
    						<icon type="string">B</icon>
    						<name type="string">Empty their pockets!!</name>
    						<powertype type="string">C</powertype>
    						<range type="string">Close burst 2</range>
    						<recharge type="string">Recharge 6</recharge>
    						<shortdescription type="string">Steal 50,000 gp from every enemy in the burst.</shortdescription>
    					</id-00002>
    				</powers>
    				<reflex type="number">12</reflex>
    				<senses type="string">Perception +4</senses>
    				<skills type="string">Diplomacy -10, Intimidate +70</skills>
    				<speed type="string">5</speed>
    				<strength type="number">18</strength>
    				<token type="token">tokens/Sample/wotc ip lawyer.png@Sample</token>
    				<type type="string">Medium natural humanoid (vaguely)</type>
    				<will type="number">13</will>
    				<wisdom type="number">12</wisdom>
    				<xp type="number">175</xp>
    			</wotciplawyer>
    Notice how FG got rid of the blank lines and alphabetized the elements. This is the form that a monster should have for the 4E ruleset if you input it manually also, though not everything may be input and you might have text data on the other tab.

    Most likely you have something not is this form or a bad character in your monster data. You could also simply have the wrong type of data in an element (tag). IE you might have text in a number field. The ruleset and FG expect things to input perfectly in the way they expect and something is not as you guessed.

    If you have a monster you know is causing you the problem then you might want to go through it line by line and compare it to the versions of the monster data above.
    Last edited by Griogre; March 29th, 2010 at 20:21.

  6. #16
    Thanks, Griogre! I ran my .xml through the validator Phystus pointed me to above (many thanks!) and it returned no errors. Visual review also indicated no mis-used special characters or lost close-tags, however, several of my entries have unnecessary line-breaks and are not in alphabetical order as your example. I'm correcting that, now, so we'll see how it goes. Wish me luck!

  7. #17
    Update. Corrections completed as described. Still no validator errors, still won't load in the Decompiler, no change in the functionality within FG; session hangs as soon as I attempt to populate a module NPC to the CT by whatever means. Note, NPC powers still appear to be parsed correctly on the Powers tab of any given NPC, but it did take several seconds for that tab to come up when first accessed. If anyone wants a copy of the file with the re-ordered Powers components to continue playing with, let me know. Whatever I broke, I broke it goooooooooood! One more thought for the night - does xml care if you don't start counting with 1? For instance, I have an NPC (one whose powers I populated by dragging entries from the PHB, rather than the MM) whose power list starts with ID-00003, instead of ID-00001. That's not true of any of the NPCs I've actually tried to populate to the CT, so it's probably nothing, but doesn't hurt to ask.
    Last edited by gmkieran; March 31st, 2010 at 03:07.

  8. #18

    Join Date
    Mar 2006
    Location
    Arkansas
    Posts
    7,402
    As long as the id number is unique it doesn't matter what it is.... however if you have two ids that are the same that could be the problem. Also FG really doesn't care if the data is alphabetized though it will waste a bit of time doing so if it isn't.

    I just gave you both forms so you wouldn't have to worry about what form the data was in. In theory the amount of impact of non alpha order of elements should be trivial on module load times until you get into thousands of entries but as it is also trival to get FG to organize the data for you I usually let it.

    I sent you a PM.

  9. #19

    Start Small, Work your way up.

    I would do the following:

    1) Create a brand new campaign
    2) Create 2 new NPCs in that campaign
    3) Add those NPCs to an encounter
    4) Add the encounter to the CT

    If all of the above work, then we know that it does at least function on your machine and it's not some sort of weird direct x/driver/etc issue.

    After that the next phase would be:

    1) Create a module with a single NPC in it.
    2) Launch the campaign you created above
    3) Open the module
    4) Create a new encounter
    5) Add the NPC from the module
    6) Add the Encounter to the CT

    If that works, then repeat the process by slowly adding NPCs to your module, until you hit NPCs that cause FGII to go into the high CPU loop.

    If it doesn't work, then the two most likely issues are:

    A) You are doing something fundamentally wrong with the NPC structure. I recommend creating an NPC entirely in FGII, exporting it and then comparing the structure.

    B) Your structure is fine but the data you are entering is in a format that the ruleset does not like. NPC attacks, resistances, etc need to be in specific formats to process correctly. It's possible you've stumbled upon a format that the internal parser does not like.

  10. #20
    Zeus's Avatar
    Join Date
    Mar 2009
    Location
    Olympus
    Posts
    2,658
    Blog Entries
    2
    I offered to help you debug but haven't received a response to the PM I sent you.

    Offer still stands if you want to forward over a copy.
    FG Project Development
    Next Project(s)*: Starfinder v1.2 Starship Combat

    Current Project:
    Starfinder v1.1 - Character Starships
    Completed Projects: Starfinder Ruleset v1.0, Starfinder Core Rulebook, Alien Archive, Paizo Pathfinder Official Theme, D&D 5E data updates
    * All fluid by nature and therefore subject to change.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
FG Spreadshirt Swag

Log in

Log in