View Single Post
Daphne Pfister
Member
 
Join Date: Oct 2011
Posts: 66

Old March 29th, 2014, 12:40 PM
This is my framework to support themes in HeroLab 5. Please do not post themes to this thread. I would like to keep this thread clean of any 4e product data and just focus on the implementation of the framework here.

This set of changes just adds a background tab, support for Theme Features and Powers as well as the editor changes necessary to add such. A bare minimum sample theme is included. This framework does not yet have support to grab theme data from the compendium, and it is unlikely that I will release such support. See information below for information about how to manually add themes, and for links of other projects that have implemented some themes.

Installation:

Easy way - Replace files from the zip file.
  1. Grab the 4e_themes_4.0.zip file from this attachment.
  2. Start HeroLab, launch in 4e. Choose the menu Tools -> Explore Folders -> Game System Data Folder. ( Might say directory under windows not sure )
  3. Unpack the zip file and place the files in the folder/directory that just opened.
  4. Restart HeroLab, it should recompile the files and you should now be able to add themes.

Hard way - Patch files ( Windows might require cygwin or Microsoft's Unix tools )
  1. Grab the 4e_themes_4.0_patch.txt file from this attachment.
  2. Open a terminal window.
  3. Change to the 4e data directory. You can find the path using Tools -> Explore Folders -> Game System Data Folder menu mentioned in the easy way. On Mac's this will be ~/Library/Application\ Support/Hero\ Lab/Data/4e.
    Code:
    cd ~/Library/Application\ Support/Hero\ Lab/Data/4e
  4. Apply the patch
    Code:
    patch -p1 < ~/Downloads/4e_themes_4.0_patch.txt

I've also attached a patch dump set from my local git repository so the individual changes I've made can be seen. See 4e_themes_4.0.patch.zip.

I'm giving up all my rights to any of the changes I made, so if Lone Wolf wishes they can just borrow what ever they want from them, especially since they are heavily based on what already exists.

To add a new theme.
  • Pick a go 6 letter id for the them, e.g. PacOut
  • Launch the editor in HeroLab using Tools -> Launch Editor menu.
  • Create a new user data file. File -> New Data File
  • Create the starter theme features. It's best to create the theme features before the theme itself so that you can bootstrap them easily. Most themes have a level 1, level 5 and level 10 feature.
    • Select the "Theme Feature" tab in the editor.
    • Click the "New (Blank)" button to start a new feature.
    • Give it an id such as "ftPacOut1".
    • Set Level requirement to 1.
    • Use name to the theme name followed by "Starting Feature" for the name of the feature.
    • If the feature provides a power create the power like normal, but leave the Level Requirement blank and set the power class to "Theme Power". Then add the power to the bootstrap for that feature.
    • Add the rest of the details about the feature as needed then save the feature.
    • Click the "Test Now!" button so that you can add this feature through the "Choose" buttons for the bootstraps later.
  • Now create the level 5 and level 10 theme features.
    • Click the "New (Blank)" button to start a new feature.
    • Give it an id such as "ftPacOut5".
    • Set Level requirement to 5 or 10
    • Use name to the theme name followed by "Level 5 Feature" or "Level 10 Feature" for the name of the feature.
    • Add powers similar to how they were added for the Starter Feature.
    • Add the rest of the details about the feature as needed then save the feature.
    • Click the "Test Now!" button so that you can add this feature through the "Choose" buttons for the bootstraps later.
    • Repeat for the level 10 feature.
  • For the theme itself, go to the new "Theme" tab and add a theme. You can take a look at the "Sample Theme" here if you wish by copying it.
  • Open the bootstraps window and add the id's for the three theme features there. ( No need for conditions to handle levels, the system will take care of that automatically. ) Assuming that you compiled the data files with the features in them already or used "Test Now!" on each one the name of the feature should appear in the bootstrap list along with the thing id.
  • Add any other background details as necessary and the save the theme.
  • Again click "Test Now!" to make it easier to add dependencies on this theme to the utility powers.
  • Add the optional utility powers.
    • Create these as if they were normal powers, but use the "Power Theme" field to make the powers as requiring the new theme.
    • Add the Level Requirement to the level, and set the Power Type to "Utility Power".
    • Save and repeat for each utility power giving them unique ids. Example "pwPacOut2".
    • Then "Test Now!"
    • repeat for each of the available utility powers.
  • Then just save the data file into a user file and it should be available to characters.

Where to find themes ported by other users.
  • cryptoknight's forum: cryptoknight has forum with a large number of theme user files and other 4e fixes.
  • My original theme tweaks thread: If you have questions about specific theme implementations and so forth please use that thread to keep this one clean of 4e propriety details.
  • MagicSN's .user files: MagicSN has implement several themes you can find them in the thread as well as cryptoknight's forums. In order to keep the thread clean, please keep discussion in one of the places listed above.
Attached Files
File Type: zip 4e_themes_4.0.zip (122.9 KB, 42 views)
File Type: txt 4e_themes_4.0.patch.txt (46.6 KB, 9 views)
File Type: zip 4e_themes_4.0.patch.zip (22.4 KB, 8 views)

Last edited by Daphne Pfister; March 30th, 2014 at 07:43 PM. Reason: tweak
Daphne Pfister is offline   #1 Reply With Quote