Starfinder Playlist
Page 1 of 4 123 ... Last
  1. #1

    Extension Loading Issue

    Hello,

    Over the last week, I developed an extension for use in my campaign that was using Classic. Today, I decided to upgrade to Unity. I copied my campaign over and everything works fine, except that my extension does not appear in the list to load it! I have the extension copied over correctly, and it worked in Classic just fine with the same settings. I am using PFRPG ruleset.

    Here is the ruleset tag for the XML in my extension.xml

    Code:
    <ruleset>
        <name>
    	  PFRPG
        </name>
        <minrelease>
    	  1
        </minrelease>
    </ruleset>
    What am I missing here? I can't even load it to see if it causes an issue. (And yes, I have restarted Fantasy Grounds multiple times.)

    Thanks in advance for any help!

    Also, while I am at it, where do I report a bug? The launcher shows the wrong IP address for my internal address. I have multiple adapters (most are virtual for VMs), and it is displaying one of them. Can I change this without disabling those adapters? I am not yet sure if this will cause an issue as I have not yet tried to connect since I do know the correct address.

  2. #2
    damned's Avatar
    Join Date
    Mar 2011
    Location
    Australia
    Posts
    26,649
    Blog Entries
    1
    Quote Originally Posted by jdunlap View Post
    Hello,

    Over the last week, I developed an extension for use in my campaign that was using Classic. Today, I decided to upgrade to Unity. I copied my campaign over and everything works fine, except that my extension does not appear in the list to load it! I have the extension copied over correctly, and it worked in Classic just fine with the same settings. I am using PFRPG ruleset.

    Here is the ruleset tag for the XML in my extension.xml

    Code:
    <ruleset>
        <name>
    	  PFRPG
        </name>
        <minrelease>
    	  1
        </minrelease>
    </ruleset>
    What am I missing here? I can't even load it to see if it causes an issue. (And yes, I have restarted Fantasy Grounds multiple times.)

    Thanks in advance for any help!

    Also, while I am at it, where do I report a bug? The launcher shows the wrong IP address for my internal address. I have multiple adapters (most are virtual for VMs), and it is displaying one of them. Can I change this without disabling those adapters? I am not yet sure if this will cause an issue as I have not yet tried to connect since I do know the correct address.
    FGU is more insistent on proper XML. Somewhere your XML is probably not compliant.

    Change the binding order of your adapters - or disable them...

  3. #3
    First, changing the binding order (I had never done that, thanks!) did not fix the issue. The desired one I set to 5. The vm one was already set to 5000. Only disabling it (the less preferred method) fixed the problem. Again, I'm still not sure that Unity only binds to the IP listed instead of to all IPs. I will have to test that separately, but one thing at a time.

    For the original issue, do you know how much of the XML it actually reads to populate the extensions list. If I had written it, I would only read the extension.xml file because all I need in the launcher is the <properties></properties> node to display the name and check the ruleset being used in the campaign. All of my tags are properly opened and closed, and I have no special characters or "--" in my extension.xml file. (I did search the forums first. I have answered many questions that way in the past week.) I also write it using Visual Studio Code which does a pretty good job of pointing out errors (with some exceptions which were always caught when I loaded the extension in Classic.)

    Maybe I will write a quick tool to go through all of the XML files in a directory and its subdirectories and parse them using the .NET parser and have it report errors. I will try that unless anyone else has any ideas.

    Here is my extension.xml for the extension in case anyone can spot the problem:

    Code:
    <?xml version="1.0" encoding="iso-8859-1"?>
    <root version="3.0" logo="logo.png">
    	<announcement text="Hell's Rebels Rebellion Sheet Extension\nBy James Dunlap\nThis extension creates a better rebellion tracking sheet for the Hell's Rebels campaign." icon="extensionicon" font="systemfont" />
    	<properties>
    		<name>
    			Hell's Rebels Rebellion Sheet
    		</name>
    		<version>
    			1.0
    		</version>
    		<description>
    			An extension to add a more automated Rebellion Sheet for the Hell's Rebels campaign arc
    		</description>
    		<ruleset>
    			<name>
    				PFRPG
    			</name>
    			<minrelease>
    				1
    			</minrelease>
    		</ruleset>
    	</properties>
    	<base>
    
    		<script name="RebManager" file="scripts/data_rebellion.lua" />
    		<font name="rebelsheettitle">
    			<ttf file="graphics/fonts/Noto_Sans/NotoSans-Bold.ttf" name="Noto Sans Bold" size="24" />
    		</font>		
    		<includefile source="strings.xml" />
    		<includefile source="graphics/graphics_tabs.xml" />
    		<includefile source="graphics/graphics_frames.xml" />
    		<includefile source="graphics/graphics_buttons.xml" />
    		<includefile source="graphics/graphics_icons.xml" />
    		<includefile source="common/template.xml" />
    		<includefile source="campaign/campaign.xml" />
    		<includefile source="common/record_rebelteam.xml" />
    		<includefile source="common/record_ally.xml" />
    		<script name="DesktopManagerRebel" file="scripts/data_library.lua" />
    		<script name="Desktop" file="scripts/data_desktop.lua" />		
    		<script name="TeamManager" file="scripts/manager_team.lua" />	
    		<script name="AllyManager" file="scripts/manager_ally.lua" />
    		<script name="ActionRebellion" file="scripts/manager_action_rebellion.lua" />
    		<script name="Actions" file="scripts/manager_rebelactions.lua" />
    	</base>
    </root>

  4. #4

  5. #5
    Nice try, but nope. Also, CreatureGen shows up in the list and has the version="3.0" in it. I even tried deleting the .ext and leaving the directory after the change and then repacking and trying it again. No dice.

    I wrote my verifier, and .NET is able to read and parse every XML file in the directory and its subdirectories. In this picture, the number in the upper left indicates the number of errors found. You can see that it output all information attributes, nodes, and values of each file.

    XmlVerified.png

  6. #6
    Quote Originally Posted by jdunlap View Post
    Nice try, but nope. Also, CreatureGen shows up in the list and has the version="3.0" in it. I even tried deleting the .ext and leaving the directory after the change and then repacking and trying it again. No dice.

    I wrote my verifier, and .NET is able to read and parse every XML file in the directory and its subdirectories. In this picture, the number in the upper left indicates the number of errors found. You can see that it output all information attributes, nodes, and values of each file.

    XmlVerified.png
    Could you try deleting the <minrelease> section in the ruleset stuff? I remember that I once had to delete that to fix some issue, not sure whether it was that issue

  7. #7
    That didn't work either, but that gave me the idea to delete the ruleset node altogether. Once I did that, it shows up. This isn't really a big deal for me as it is only usable with one Adventure Path anyway. Once we finish it, I can just store the extension away in case I ever run it again.

    One thing I did notice, though, that is a small issue, is that a bunch of my checkboxes disappeared. They are still clickable, though. There is only one that was extremely important, and I will track that down. The only error that appears in the console is a Warning. "Frame tabs contains out-of-range values in BottomLeft".

    I guess I will have to track that down, but at least it is playable for this weekend.

    Thank you damned and Kelrugem.

  8. #8
    Quote Originally Posted by jdunlap View Post
    That didn't work either, but that gave me the idea to delete the ruleset node altogether. Once I did that, it shows up. This isn't really a big deal for me as it is only usable with one Adventure Path anyway. Once we finish it, I can just store the extension away in case I ever run it again.

    One thing I did notice, though, that is a small issue, is that a bunch of my checkboxes disappeared. They are still clickable, though. There is only one that was extremely important, and I will track that down. The only error that appears in the console is a Warning. "Frame tabs contains out-of-range values in BottomLeft".

    I guess I will have to track that down, but at least it is playable for this weekend.

    Thank you damned and Kelrugem.
    Cool and much success in tracking that other thing down

    Just out of curiosity, would
    Code:
    <ruleset>
      <name>PFRPG</name>
    </ruleset>
    work? Maybe you had some additional space in the name of the ruleset or so? (at least the line break is there in your original code) Maybe FGU takes it very serious and really takes everything into account when checking the ruleset name, so even such linebreaks etc

  9. #9
    Okay, figured it out! (Now that I knew where to look.)

    Before, I had:

    Code:
    		<ruleset>
    			<name>
    				PFRPG
    			</name>
    		</ruleset>
    However, if I change that to:

    Code:
                    <ruleset>
    			<name>PFRPG</name>
    		</ruleset>
    It recognizes everything. This, I believe is truly a bug since in XML, the extra linefeed should be stripped. (As well as the tabs.) Additionally, I noticed that the name for the extension in the list appears as " Hell's Rebels Rebellion Sheet" likely due to the same reason. I figure that the code is comparing " FPRPG" to "FPRPG" for the ruleset and not finding a match. Likely, the newline is being stripped, but not the tabs. Of course, what I had was completely valid XML, so was read correctly. It just isn't translated correctly in the engine.

  10. #10
    Quote Originally Posted by jdunlap View Post
    Okay, figured it out! (Now that I knew where to look.)

    Before, I had:

    Code:
            <ruleset>
                <name>
                    PFRPG
                </name>
            </ruleset>
    However, if I change that to:

    Code:
                    <ruleset>
                <name>PFRPG</name>
            </ruleset>
    It recognizes everything. This, I believe is truly a bug since in XML, the extra linefeed should be stripped. (As well as the tabs.) Additionally, I noticed that the name for the extension in the list appears as " Hell's Rebels Rebellion Sheet" likely due to the same reason. I figure that the code is comparing " FPRPG" to "FPRPG" for the ruleset and not finding a match. Likely, the newline is being stripped, but not the tabs. Of course, what I had was completely valid XML, so was read correctly. It just isn't translated correctly in the engine.
    Lol, we had exactly the same idea at the same time (see my answer above yours ) EDIT: And good catch, I hope Moon Wizard sees this (and so it is the space/tab, not the linebreak seemingly)

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
  •  
STAR TREK 2d20

Log in

Log in