DLC Guidelines

From Fantasy Grounds Wiki
Revision as of 16:51, 28 March 2017 by Moon Wizard (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


These guidelines are only relevant to those DLC developers that work with the FG team to produce content.

Content Guidelines

  • DLC Data Module Packaging
    • All DLC that contains game data should be divided up into up to 3 modules based on these guidelines:
      • Adventure data (including sample adventures and pregenerated characters) should be packaged into a separate GM module using editable data paths.
      • GM data (such as Core Rules, Bestiary, Settings, etc.) should be packaged as a GM module using read only data paths.
      • Player data (such as Classes, Feats, Powers, etc.) should be packaged as a player module using read only data paths.
  • DLC Module Access
    • To specify a GM module, data should be included as a db.xml file.
    • To specify a player module, data should be included as a client.xml file.

Coding Guidelines

  • XML and Lua File Formatting (for maximum compatibility across FG team and developers)
    • Use tabs for indenting (not spaces)
    • Use Windows style line breaks.
  • Other Notes
    • Use comments in LUA to explain the purpose of code functions and large or complex sections of code

SVN Guidelines

  • SVN Tools
    • Here are some software suggestions for SVN access depending on your desktop OS: Tortoise SVN (Windows), RapidSVN (Linux), and SmartSVN (Mac).
  • Committing and Updating DLC
    • Only the following sub folders will be published for each product: docs, extensions, modules, portraits, rulesets, tokens
    • At least one copy of all rulesets, extensions and data modules should be exploded (i.e. not zipped up) to allow global search across multiple DLC products.
    • Token only and map only modules should be checked in as .mod files.
    • If a source campaign is used to build data module, then include in a "campaign" directory.
    • If a parse tool is used to build a data module, include any input/output of parse tool in a "parse" directory.
    • Any files needed for the store details (i.e. description, image, screenshots, etc. ) should be included in a "store" directory.
    • Any other auxiliary files (i.e. graphics, testing, etc. ) should be included in a "support" directory.
    • If a source campaign or parse output is included already, data modules can be stored as .mod files. (Since the XML is already searchable in campaign/parse sub folders)


If you have any questions or suggestions, please send a message to [email protected]