Starfinder Playlist
  1. #1

    Conversion of rulesets to use string resources in v3.0

    As I was converting some of the SmiteWorks generated rulesets to use string resources for the written text, I came up with a checklist to use during the conversion of each ruleset. There are probably a few remaining portions of the ruleset that could use string resources which don't right now in the SmiteWorks supported rulesets, but we'll iron out any hiccups once localizations start occurring.

    For community rulesets, you may need to review custom template controls within each ruleset as needed to make sure that all strings are moved to resource references.

    Also, you will need a good multi-file search tool to search over all the XML and LUA files within the ruleset. I use Notepad++.

    Here's is my check list:
    • Search "<static>" (stringcontrol)
      • <static>TEXT</static> --> <static textres="RESOURCE" />
    • Search "<empty>" (stringcontrol)
      • <empty>TEXT</empty> --> <empty textres="RESOURCE" />
    • Search "<default>" (stringcontrol)
      • <default>TEXT</default> --> <default textres="RESOURCE" />
    • Search text= (numbercontrol, windowclass, windowcontrol, windowreferencecontrol)
      • <description text="TEXT" /> --> <description textres="RESOURCE" />
      • <tooltip text="TEXT" /> --> <tooltip textres="RESOURCE" />
    • Search (" (Used for lots of Lua functions (regsiterMenuItem, setValue, setText) and more
      • (Not all matches will need to be updated, only those which set static string values.)
      • "TEXT" --> Interface.getString("RESOURCE")
    • Search DesktopManager.
      • (Requires new DesktopManager script from CoreRPG ruleset)
      • registerStackShortcut(BUTTON, BUTTON, TEXT, WINDOWCLASS) --> registerStackShortcut2(BUTTON, BUTTON, RESOURCE, WINDOWCLASS)
      • registerDockShortcut(BUTTON, BUTTON, TEXT, WINDOWCLASS) --> registerDockShortcut2(BUTTON, BUTTON, RESOURCE, WINDOWCLASS)
    • Search OptionsManager.
      • (Requires new OptionsManager script from CoreRPG ruleset)
      • registerOption(OPTION, BOOL, HEADER TEXT, LABEL TEXT, WINDOWCLASS, { labels="TEXT|TEXT|...", values="VALUE|VALUE|...", baselabel="TEXT", baseval="VALUE", default="VALUE" }) --> registerOption2(OPTION, BOOL, HEADER RESOURCE, LABEL RESOURCE, WINDOWCLASS, { labels="RESOURCE|RESOURCE|...", values="VALUE|VALUE|...", baselabel="RESOURCE", baseval="VALUE", default="VALUE" })


    If migrating to use the CoreRPG ruleset as the base layer, you can also look for these:
    • Search "<string_labeled" (custom template control used in many rulesets)
      • <label>TEXT</label> --> <labelres>RESOURCE<labelres>
    • Search "<button_iconcycler" (custom template control used in rulesets based off of 3.5E or 4E)
      • <tooltips>TEXT|TEXT|...</tooltips> --> <tooltipsres>RESOURCE|RESOURCE|...<tooltipsres>
      • <labels>TEXT|TEXT|...</labels> --> <labelsres>RESOURCE|RESOURCE|...<labelsres>
      • <defaulttooltip>TEXT</defaulttooltip> --> <defaulttooltipres>RESOURCE<defaulttooltipres>


    Regards,
    JPG

  2. #2

    Join Date
    Apr 2008
    Location
    Virginia Beach
    Posts
    3,096
    I nominate this for the new Wiki

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
  •  
DICE PACKS BUNDLE

Log in

Log in