Marvel Heroic RPG – MapTool Framework – Second Draft

The blog post about my first draft can be found here. You can download the new framework right here!

Over the weekend, I had some time to improve my MapTool framework for the Marvel Heroic Roleplaying game. @MattHawke provided the key assistance: He showed me how to use custom frames to create a very, very useful character sheet.

Frames in MapTool include the Selection frame (which holds the buttons with various macros for each token), the Chat frame (which shows the output of the chat window and macros), and the Campaign frame (which holds macros common to everyone in the campaign). You can also create your own frame to hold whatever you want.

The syntax for doing this is surprisingly simple: You just use the frame roll option, followed by the name you want to give this new frame (held inside quotation marks inside parentheses). You then fill up your new frame, largely using HTML. Since I wanted to create a frame called DataFile (the Marvel RPG name for a character sheet), I used the following code:

[frame("DataFile") : {

From there, I used a bunch of HTML to fill the frame:

 <title>[r:getProperty("Name", MyToken)] ([r: getProperty("RealName", MyToken)])</title>

The other awesome MapTool function that @MattHawke showed me is the macroLink function. This lets you create a link to a macro within your HTML frame. The macroLink function lets you provide the linked text, the function that’s linked to, and the people to whom the output of the function should be displayed.

This allowed me to make the DataFile frame into the entire character interface. My goal is to make it so that players will never have to use the Selection window except at the very beginning of the session, to open the DataFile frame. After that, all of the stuff they can do can be done via links in the Data File itself.

I also decided it would make my life easier if I created a library token to hold all of the macros, and then simply call those macros from the Data File.

I know that other MapTool frameworks already do a lot of cool stuff with custom frames; I never really understood them until now. This is a much better way to use a character sheet, rather than looking at the pop-up window that MapTool uses by default. I’d love to re-work my D&D 4e framework to take advantage of this, but man, that would be a lot of work at this point! For now, the Marvel RPG fans are the ones who will benefit.

Please check out this updated framework. It’s light-years better than what I started with in the first draft. Feedback is invited!

– Note that you’ll need to set your stack size in MapTool to at least 4 in order for this framework to work properly. I personally set mine to 10. This is an option in the pop-up window that opens when MapTool first starts. The default stack size of 2 doesn’t cut it.

– Michael the Online Dungeon Master

16 thoughts on “Marvel Heroic RPG – MapTool Framework – Second Draft

  1. Looks great! Good job.

    I tried running it with a stack size of 2 and got the error suggesting I up the stack size. Worked fine with 4, but wanted to mention it for others who might be giving frameworks a try for the first time.

  2. Pingback: Online DM Presents Marvel Heroic Framework for MapTool « Plot Points

  3. Pingback: Marvel Heroic Roleplaying: Collected Miscellanies | Exploring Infinity

    • Hmm, I thought this was a solved problem. Did you download the campaign file recently or when it first went up?

      There’s apparently an option in MapTool that affects how output is displayed by default. When I have code such as “The name of the power is [PowerName]” and PowerName is equal to “Awesome Sauce” it shows up on my MapTool screen as “The name of the power is Awesome Sauce” with Awesome Sauce being shaded gray, and mousing over that shading will reveal “PowerName=Awesome Sauce”. Other people have the option set such that they see “The name of the power is PowerName=AwesomeSauce”. Apparently you’re in this group, and I’m not positive of what setting needs to change (it’s about ToolTips) – I’m away from my MapTool computer at the moment.

      The solution to this problem is for me to instead write the code as “The name of the power is [r: AwesomeSauce]”. That r: means “return the value of the following variable” which is what I want. And I did ultimately make exactly that change to this framework, putting the r: roll option everywhere (someone else had this same problem).

      Are you getting this problem on a recently-downloaded version of the framework? If so, I’ve missed something. If not, try re-downloading it (I updated the file about a week after it went live). And if something’s still not working, please let me know!

  4. ok, I have downloaded maptool and installed it, and then downloaded this tool to give it a try. I cannot for the life of me figure out how to use this tool within that program, anyone care to share how I am to use this?

    • Dallas,

      First, when you start MapTool you need to increase your stack size. I use 10, but I believe it works with 4 or more.

      Once you have the campaign file open, click on one of the character tokens, then click the Show Data File button in the Selection window. This will bring up a window with the character’s data file. Click on the various links in that window to add dice to your dice pool, and click the displayed dice in the pool to roll the pool itself. There’s also a link in there to edit the character data file so that you can put in your own power sets and such.

      Michael the OnlineDM

      • Ok, I set the settings as I was supposed to. What I am failing to understand is how do I open the campaign that you created? Which file in the directory that I downloaded here is the file that I open in maptool?

        • Dallas,

          You should have downloaded a file called MarvelFramework_OnlineDM.cmpgn. You can open it by opening MapTool, going to File – Open Campaign, navigating to the folder where you’ve saved the downloaded file, clicking on it the file, and then clicking Open.

          Michael the OnlineDM

          • I will check again to make sure, but i am not seeing a file with the name you mention. I see a folder with that name full of other files, none of which show up in the file slector that comes up in maptool when I click file—>open campaign as you say. Like I said, I’ll check again to make sure I am not missing anything. Now, I am using the most current version of maptool, should I go back to the earlier version that you used?

          • Dallas,

            I’m very confused. Did you download the file from my site above? If not, click this link. Save the file somewhere you can find it in MapTool.


  5. Ok. I downloaded the file again. I got a zipped folder called “”. Maptool would not open this file as it sits, so I extracted it. The resulting folder is now called “MarvelFramework_OnlineDM”. Nowhere in this folder is the file you mentioned. There is a “content.xml” and a “properties.xml” along with an “assets” folder. What am I missing?

    • Dallas,

      I am tremendously confused. When I download the file, I get MarvelFramework_OnlineDM.cmpgn, not .zip. You might try renaming the .zip to .cmpgn and seeing if MapTool will open it then. I have no idea how it became a .zip on your computer, though, since I have absolutely no zip files in the download section of my web site.

      This is quite baffling.


      • Ok, that did it. Forwhatever reason, the file was defaulting to a .zip instead of a .cmpgn. Once I changed the file to a cmpgn, it worked like a charm. Sorry for being so dense, but I just could not see what was going on. Thanks for working me through it.

Leave a Reply