Foundry Virtual Tabletop is available cross-platform, so users of Windows, macOS, and various linux distributions can all host servers for their GMs and Players to use conveniently and easily. This article will instruct you on the installation of Foundry VTT for your operating system, some of the more common pitfalls users face when trying to install and set up the software for the first time, and introduce some more advanced topics like:
The Foundry Virtual Tabletop Application
The Foundry VTT application is the recommended installation path for most users: it bundles the the Foundry game server software with a built-in chromium web browser to serve as a client view, allowing you to interact with the server directly and conveniently. If you are planning to host a dedicated server instead, you will want to install the Node.js version described later in this article.
To download Foundry Virtual Tabletop you must be a software license owner, if you have purchased a license the links to download the latest stable release of the software are available on your user profile by clicking on the Purchased Licenses button in the lower left-hand corner.
Installation - Windows
If you are using the Windows version of Foundry VTT there is an installation process necessary once you have downloaded the installer. To install the software, run the setup executable file that you downloaded.
In rare cases you may see a warning message from Microsoft Defender SmartScreen.
To allow Foundry Virtual Tabletop to pass the Defender SmartScreen, click More Info and then click Run Anyway Alternatively, if you have stronger security settings applied, you may need to right click the file, click Properties, and mark the checkbox Unblock in the Security section.
During the installation process you will be asked for an installation location. Despite being the default path for installation, it is recommended to install Foundry VTT in a location not contained within the Program Files directory, as this can result in some permission issues when updating the software.
Once installation is complete, you can launch Foundry VTT using either the shortcut in the start menu, on your desktop, or by running the FoundryVTT.exe file located within your installation location.
Installation - macOS
If you are using the macOS version of Foundry VTT, there are some steps which are required to allow you to run the app. As the macOS copy of Foundry VTT is not code-signed through Apple's developer process, you may see a notification when you try to run the app, advising you that the application cannot be opened "because it was not downloaded from the app store" or "because the developer cannot be verified." (More information on this security process from Apple here.)
To install Foundry VTT and allow the app to launch, do the following:
- Open the downloaded .dmg file.
- Drag the Foundry VTT app icon to the Applications folder.
- Open your Applications folder, and right-click on the Foundry VTT app. Choose "Open".
- A prompt will appear: macOS cannot verify the developer of "FoundryVTT". Are you sure you want to open it?
- Click "Open".
- The app will launch, and can now be opened in the future by double-clicking it or launching it from the Dock.
Installation - Linux
For Linux users, Foundry Virtual Tabletop is currently distributed as a simple;.zip archive. All you need to do to "install" it is extract the zip file in a location of your choosing. Feel free to choose whatever installation location is best for you, a simple option would be to use a folder named foundryvtt in your user home directory.
unzip foundryvtt.zip -d $HOME/foundryvtt
Once you have extracted the archive, locate the
foundryvtt file in the directory and set the permission on it to allow execution as a program. This will allow you to execute it from the terminal with
./foundryvtt. Alternatively, on some Linux distributions (Deb/Ubuntu) you can rename the
foundryvtt file to add a .sh extension. This will allow you to quickly launch it by double-clicking. At this time there is no Linux .desktop packaged with FVTT.
Configuring the Application
When you have launched the application you will initially be greeted by a window prompting you to enter your Software License Key. Enter your purchased Software License key and click Submit.
After entering your license key you will be prompted to sign the End User License Agreement, agreeing to the terms of the software will contact the Foundry web server to validate and sign your license so, for this step of the process an internet connection is required.
That's it, you're ready! Now it's time to get started by checking out the Tutorial - Gamemaster Part One and for a guide on ensuring your players are able to connect be sure to take any necessary steps to set up Port Forwarding.
Hosting a Dedicated Server with NodeJS
If you are planning to host and run Foundry Virtual Tabletop as a dedicated server rather than a client application, FVTT is also available as a NodeJS package. The NodeJS version of the package is available from the Purchased Licenses page mentioned above.
In order to use the NodeJS package it is necessary to install NodeJS for whichever operating system you intend to use to host your server. As this process varies greatly depending on OS, it is recommended you see the installation documentation available from NodeJS.org.
Note that a relatively modern version of Node.js is required in order to support various security features which are required by the application. Please use Node.js version 14.x or newer.
For Red Hat / Amazon Linux package manager
sudo yum install -y openssl-devel curl --silent --location https://rpm.nodesource.com/setup_14.x | sudo bash - sudo yum install -y nodejs
Debian / Ubuntu package manager
sudo apt install -y libssl-dev curl -sL https://deb.nodesource.com/setup_14.x | sudo bash - sudo apt install -y nodejs
Downloading via Terminal
You may have noticed a small 'chain' link icon next to the download links on the download page. Clicking this chain icon generates a temporary link which can be used to download Foundry VTT via a terminal or shell interface using wget.
When downloading the link using a command line utility such as
wget it's important to wrap the link in double-quotes. This ensures that the link is read correctly by the command. For example:
~/:$ wget -O foundryvtt.zip "https://your-download-link-from-foundry-vtt.com-here/"
Please be aware that the download links provided via the purchased licenses page expire every 5 minutes.
Extracting and Launching the Server Using NodeJS
Now that you have downloaded both the Foundry VTT NodeJS package and installed NodeJS, it's time to extract the zip and create your data directory.
# Create application and user data directories cd $HOME mkdir foundryvtt mkdir foundrydata # Install the software cd foundryvtt wget -O foundryvtt.zip "<foundry-website-download-url>" unzip foundryvtt.zip # Start running the server node resources/app/main.js --dataPath=$HOME/foundrydata
Foundry VTT is also supported as a native application on macOS using Electron, however if you wish to host the software using Node.js directly, this is also an option in the macOS environment. Simply visit https://nodejs.org/en/download/ and download the macOS installer. Node is installed on your system, you can run the server using the instructions in the below section via your Mac terminal.
# create a user data directory cd $HOME mkdir foundrydata # access the application directory cd ~/Library/Application Support/FoundryVTT # Start running the server node resources/app/main.js --dataPath=$HOME/foundrydata
Note that you can run a dedicated server from Windows also, for Windows you should download and install node.js from https://nodejs.org/en/download/.
# create a user data directory cd %userprofile% mkdir foundrydata # access the application directory cd C:\Program Files\FoundryVTT\ # Start running the server node resources/app/main.js --dataPath=%userprofile%/foundrydata
Now that you are running Foundry VTT via node, open any modern web browser and connect to http://127.0.0.1:30000 to access your Foundry VTT server. If you wish to keep the server running perpetually, you can find relevant documentation for maintaining background processes with a package manager such as PM2 here, or otherwise review the relevant documentation for crontab or the equivalent for your operating system.