Spolier Alert

WARNING: Posts addressing individual campaigns contain spoilers, including: Lost Mine of Phandelver, Horde of the Dragon Queen, The Rise of Tiamat, Yawning Portal, Princes of the Apocalypse, and home-brew content.

Friday, October 1, 2021

Installing and Initial Learnings with Foundry VTT

I received Foundry VTT for my birthday.  So, of course, I just have to mess with it.  I am in the process of installing it on my Mac and will be taking notes into this posting of things that I encounter that peak my interest.  No overarching organization, just things as I learn them.

Before getting into the process, I'll take a stab at why I am looking at transitioning from Roll20 to a different VTT.  Following are my major issues that I hope Foundry will alleviate without introducing a new set of issues:

  • Speed - Roll20 is not fast, changing maps is a significant delay.
  • Search - The ability to search inside the journal is just bizarre.  It helpfully most of the tabs that don't contain matches, leaving me with a bunch of folders that may or may not contain hits.  This results in exploration of the file tree by the Colombus method (blindly clicking things until I happen upon something)
  • UI Consistency - The click an ability displays it to the player while clicking a spell displays in chat (or maybe the other way around).  This and similar features make learning Roll20 difficult.
  • Text Formatting - OMG there are multiple ways to do this, with location of the text changing the method.  Making it all worse, the formatting tools work sometimes and rarely in the way that I would predict.
  • Monthly subscription - I don't like paying a sub fee for this service
  • Speed - Did I mention that the game can be slooooooow?
Ok, so on with the show...

Admin Password

Since the software runs locally, the admin password is significant.  Somehow mine got set on install to an unknown value.  I managed to fix this by deleting the password file and restarting everything.  The password is stored in encrypted form in the fie (I use a Mac): 

~/Library/Application Support/FoundryVTT/Config/admin.txt

On restart, I was able to enter a new admin password using the Configuration on the initial screen. Which appeared as shown below:



Game Paused

When I loaded my first game, a preconfigured module offered at no cost, I was frustrated for a few minutes because I couldn't get things to happen.  Then I noticed a Game Paused message in the bottom middle of the map. 

A bit of searching revealed that, by default, the GM can pause/unpause the game by tapping his/her space bar.

Apparently, this freezes the game for the players, allowing the GM to stop movement, for example when a player stumbles upon an encounter or needs to do some setup and doesn't want the players moving about the world.

This initially annoying feature addresses one of my Roll20 annoyances that I hadn't bothered to put on my list of issues, figuring it was just the way it is.

Moving the Viewed Area of the Map

Moving the viewed area on the screen is a critical function for large maps and for the GM.  Doing this in Foundry is as easy as holding a Right Click on the mouse and dragging it across the screen.  Super speedy. 

The mouse wheel can be used to zoom the map in/out as needed. 

General Navigation Controls

Foundry has posted a web page showing some basic keyboard controls on their website

Moving a Token

Tokens can be moved using the up/down/left/right arrows, of course.  They can also be dragged and dropped with the mouse. 

What I much more often want to do is map out a measured path, so I know where a token is moving and that how much of its movement it has used up.  There is a method in vanilla Foundry to accomplish this involving the ruler and cmd/left-clicks and perhaps some other voodoo that I have yet to be able to puzzle out. 

I ran across a mod, DRag Ruler, that seems to address my frustration, so, time to digress into installing my first mod.

Adding My First Mod

My first step was creating a spreadsheet where I can track the modules that I investigate and perhaps use.  I'll put this on Google Sheets and make it publicly readable, HERE

Adding Drag Ruler

Since I was running the game, I needed to use the following steps:
  1. Esc and select Return to Setup,
  2. Select Add On Modules from the menu along the top of the top up window,
  3. Click Install Module button on the lower left,
  4. Filter Packages looking for ruler using the search box (gotta love working search features),
  5. Click Install button to the right of the Drag Ruler Module,
  6. Read popup stating that a prereq module, Socketlib is not installed,
  7. Click button to install both modules,
  8. Close the install window and check out the listed Add-on Modules.

Activating Drag Ruler

To make it actually work within a given game world, the following steps seem necessary:
  1. Launch the game world,
  2. Click the Game Settings (tiny triple gear symbol in the top right part of the screen),
  3. Select Manage Modules button from the menu that appears down the right side of the screen,
  4. Click on the desired modules (image below shows screen at this step),
  5. Click Save Module Settings.

What Drag Ruler Does

The module author described the function:
This module shows a ruler when you drag a token or measurement template to infrom you how far you've dragged it from it's start point. Additionally, if you're using a grid, the spaces the token will travel though will be colored depending on your tokens speed. By default three colors are being used: green for spaces that your token can reach by walking normally are colored green, spaces that can only be reached by dashing will be colored red and spaces that cannot be reached with the token's speed will be colored red. If you're using a gridless map the ruler color will change to convey this information.
It seems pretty awesome in use.  Here's what the three-color paths look like in my playpen:



Setting up Trouble in Dessarian Valley

A key part of my transition is being able to move existing campaigns from Roll20 into Foundry.  My first test subject is my completed campaign titled Trouble in Dessarian Valley. 

My first step was to use kakaroto's R20Exporter. I actually did this first and can't recall all the steps, but they were clearly outlined in Kakaroto's documentation.  The only thing I want to emphasize is that it works as an extension of Chrome (not Safari, not Firefox).  I didn't try it with Edge, I suspect that would be fine, but not a current issue.

The next step is to convert it to Foundry and load it up. This time, I need to use kakaroto's R20Coverter.  That tool sits behind a Patreon paywall, so I will be signing up and then nabbing it. 

The actual process of importing it is surprisingly straightforward.  I made what felt like pretty obvious choices and it was all good in a matter of 10 minutes.  

Updating Name and Bar Visibility

It wasn't long till I ended up unhappy with health bars always hidden and names always visible, which seems to be the only option after an import.  I ran into a Macro point at by a Reddit thread. The macro it references is embedded below:
// Update all tokens on the map so that the name shows on hover and the bars always show.
// Display Modes: ALWAYS, CONTROL, HOVER, NONE, OWNER, OWNER_HOVER
const tokens = canvas.tokens.placeables.map(token => {
  return {
    _id: token.id,
    "bar1.attribute": "attributes.hp",
    "bar2.attribute": "attributes.ac.value",
    "displayName": CONST.TOKEN_DISPLAY_MODES.OWNER_HOVER,
    "displayBars": CONST.TOKEN_DISPLAY_MODES.OWNER
  };
});

canvas.scene.updateEmbeddedEntity('Token', tokens)
The above would have to be edited to set different values. The options are the same as in the pull-down menu on the Token/Prototype Token Settings: OWNER,  ALWAYS, HOVER, OWNER_HOVER.  

Since I want the global setting to be hover for "anyone," I changed the OWNER_HOVER to HOVER and it worked.  

I still can't actually understand the above in its entirety. but it is handy that it worked.  I will, of course, want to understand what is happening so I can generalize things.  More in future posts.




No comments:

Post a Comment