Vassal Userguide
Vassal Userguide
Credits
Development Team: Rodney Kinney, Joel Uckelman, Brent Easton, Michael Kiefte, Tim McCarron,
Brian Reynolds
1
Table of Contents
Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Getting Vassal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Vassal Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Game Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Troubleshooting Common Problems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Game Play . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Launching Vassal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Playing on the Vassal Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Playing Peer-to-Peer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Playing by Email (PBEM) or by Discord . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Playing Offline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Playing Solitaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Saving a Game . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Using Vassal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
The Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
The Chat Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
The Main Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Resizing Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Game Pieces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Sides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Setups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Cards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
The Help Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Updating Vassal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Enhancing Vassal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Module Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Helpful Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Finding Opponents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
The Vassal Community . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Frequently Asked Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2
Overview
Vassal is a free, open-source engine for playing board games by computer. Vassal supports many
types of games, including war games, hobby games, card games, miniatures games, and even
board-based role-playing games. You can play live on the Vassal Server or a peer-to-peer
connection, play by email, or play offline in hotseat or solitaire modes. There are currently several
hundred Vassal game modules available for free, and more are being created all the time.
Vassal is supported on Windows, MacOS, Linux, and other platforms. Thanks to Vassal’s Java
architecture, players on different platforms can play each other without regard to operating
system.
Vassal was originally created in 1999 by Rodney Kinney. The name Vassal comes from its original
incarnation as a tool to play online games of the classic Advanced Squad Leader, and was originally
called Virtual Advanced Squad Leader, or VASL. Vassal now extends play to much wider range of
games.
This Vassal User’s Guide explains general play procedures: how to download and install Vassal,
launch games, connect with other players and use the Vassal controls. It does not include any
instructions for the use or play of specific modules.
For information on designing and editing modules, consult the Vassal Module Designers’ Guide.
Getting Vassal
The latest version of Vassal is version 3.6.13, released on 2022-09-18.
System Requirements
• Other platforms: Vassal 3.6.13 is supported on any platform which has a suitable version of Java
installed. For example, Vassal could be installed on a memory stick and be used on multiple
platforms.
Downloading Vassal
You can freely download Vassal 3.6.13 from the Vassal GitHub project (https://github.com/
vassalengine/vassal). Vassal installation files are available for Windows, MacOS, Linux, as well as
other platforms which support Java. Select the correct download for your platform.
3
• MacOS: VASSAL-3.6.13-macos.dmg
• Linux: VASSAL-3.6.13-linux.tar.bz2
Installation
The installation procedure for Vassal depends on your platform.
To install on Windows:
1. Double-click VASSAL-3.6.13-windows.exe.
To install on MacOS:
1. Double-click VASSAL-3.6.13-macos.dmg.
To install on Linux:
1. Unzip VASSAL-3.6.13-other.zip.
Vassal Components
The Vassal 3.6.13 installer includes three components:
• The Module Manager is used to organize and maintain your Vassal modules. The Module
Library displays an alphabetical list of modules you have opened, including their version
numbers, and a brief description of each. It can also show any associated files, including
extensions, saved games, and log files. Click the arrow-shaped icon next to each module name to
expand the listing and view the module’s associated files.
• The Vassal Player runs game modules. When a module is loaded, it is displayed in a window
labeled with the module’s name, plus the word controls. For example, a game named World War
II would be shown in a window labeled World War II controls.
• The Editor enables the creation and editing of Vassal modules and extensions. The Editor is
discussed fully in the Vassal Module Designer’s Guide.
Separate from these components are the module files themselves, and extension files that provide
additional game play options for individual modules.
Game Modules
Once you have downloaded and installed Vassal, you can add modules for the games you wish to
4
play. There are several hundred game modules located at
https://vassalengine.org/wiki/Category:Modules. Individual creators have provided these modules
for you to play free of charge.
In addition, many board game publishers offer official Vassal modules to support their games,
either freely or for a small cost. A publisher may impose restrictions on the use of these modules.
Consult the publisher’s web sites for details.
A Vassal 3.6.13 module file usually has the suffix .vmod, although some older modules may have a
suffix of .mod or .zip.
Installing Modules
Modules do not require any installation and are not specific to any operating system. Simply
download the module file (which will usually have a .VMOD extension, and open it from the
Module Manager). Once you’ve opened a module successfully it will be displayed in the Module
Manager’s "Module Library", making it easier to find for subsequent games.
Modules made for older versions of Vassal are usually compatible with Vassal 3.6.13, although they
may be missing some graphics or functionality available in Vassal 3.6.13.
Are you running some antivirus software? We’ve had some reports of AV software swiping files
VASSAL needs to run.
In particular, please check the jre\bin directory under the directory in which VASSAL is installed.
Do you see files called javaw and java there? (Or, if your file browser isn’t hiding extensions for
known file types, javaw.exe and java.exe?) If those files are missing it means that your anti-virus
software has blocked or quarantined the bundled Java JVM that VASSAL uses to run. Open your
Anti-Virus program and white list those files.
Beginning with VASSAL 3.3.0, Java is "bundled" with VASSAL on Windows and Mac (not on Linux).
This means that on those platforms it no longer matters what version of VASSAL you have
installed—indeed you don’t have to separately install Java any more on Windows and Mac.
However, some antivirus software does not trust the Java JVM executables which we provide. Thus
it must be told to allow them.
If you run on Microsoft Windows and your map is not updating correctly (e.g. "tearing" or not fully
updating), go to Vassal’s preferences and check the box for Disable DirectX D3D Pipeline.
5
Map Tearing Example
Some combinations of video drivers and versions of Java don’t work well together. If you have
rendering problems with Direct3D turned on and they go away when you turn it off, then you have
one of those bad combinations. This preference (and potential problem) exists only on Windows
machines.
If you are having tearing on maps, and are not running on Windows (or if you have already tried
the Windows-specific solution above):
After the first time you run one of these builds, there will be a file called vassal.vmoptions in
VASSAL’s config directory where you can add VM flags for the Player, one per line.
• Linux: ~/.VASSAL/vassal.vmoptions
• Windows: C:\Users\<username>\AppData\Roaming\VASSAL\vassal.vmoptions
-Dsun.java2d.opengl=true
-Dsun.java2d.opengl=false
6
(Mac) Poor graphics performance
If you are having poor graphics performance (slow scrolling, e.g.) on a Mac, and particularly on an
Apple Silicon Mac, go to Vassal’s preferences and check the box for Disable OpenGL FBOs.
If you have the current or a recent version of MacOS, Gatekeeper is probably active—MacOS will
block VASSAL from running on the first attempt (because this isn’t what Apple considers a code-
signed app).
You’ll have to go into *System Preferences → Security & Privacy* to allow it to run. This only needs to
be done once.
7
Step 2: Unlock (if needed) and click Open Anyway
Alternatively you can open a Finder window, type VASSAL into the search field, and double click on
your new VASSAL install to open it for the first time - this will give you an "are you sure?" type
dialog, and once you are past that then you will be able to open VASSAL normally in the future.
8
Game Play
You can play games with Vassal in a number of ways:
It is important to remember that Vassal does not include any computer opponents, and in general,
does not enforce any game rules. Players are expected to know and follow the rules of a particular
game, just as they would if were playing at a tabletop, in person. Vassal is a simply a medium that
allows players to interact in order to play their favorite games.
However, many modules will perform some game functions automatically, such as marking moved
or fired units, sorting or totaling dice rolls, or reshuffling decks of cards. These automated functions
help streamline and speed game play.
Launching Vassal
To launch Vassal,
Figure 1: The Module Manager window, showing the Module Library and Server Status panes
Alternatively,if a module has .vmod as a suffix, on both Windows and MacOS, you can double-click
a module to launch Vassal.
9
The Module Manager
The Module Manager is a Vassal component that allows you to manage all of your game modules.
Your available modules are listed in the Module Library pane.
When you first launch Vassal after installation, the Module Library will be empty.
2. Browse to the location of your module and click Open. The Module will launch and will appear
in the Module Library from now on.
The Module Manager can run any number of modules at once, although depending on your
system’s RAM, you may suffer a performance impact if too many are open at the same time.
The Welcome Wizard, which launches when you first open a module, walks you through the steps
needed to start a game. The Wizard includes prompts for configuring your username and
password, selecting your play mode, picking a setup or game board, and choosing a side to play.
Depending on how the module is configured, you may not see some of the steps listed here in the
actual Wizard. For example, in a module with a single board assigned, you would not be prompted
to select a board, and that step would be skipped.
1. In Module Manager, in the Module Library window, double-click the module you want to play.
The Welcome Wizard opens.
2. User Name and Password: The first time each module is launched, you are prompted for a
name and password. Under Enter your name, type the name you will use in the game. Then,
enter a password and type in the password confirmation. Click Next.
Figure 2: The Welcome Wizard opens and prompts for a personal password
10
3. Select Play Mode: Under Select play mode, select one of the following:
a. Start a new game offline: choose this option for beginning an email game, playing
solitaire or hotseat, or to edit a module.
c. Load a saved game: to play a previously saved game, or to review an email game log.
4. Click Next.
a. If prompted to a select a setup, under Select Setup, pick a game setup from the drop-down
list. (A setup represents a preset game scenario, usually with maps and pieces already
placed in starting positions.)
b. If prompted to select a board, under Select Boards, choose a game board or an initial board
tile from the drop-down list. A board is built in rows and columns. Click Add Row to build
the board down, and or Add Column to build a board to the right. In each case, select a tile
from the drop-down list to fill in the row or column. Continue adding row and columns until
the board is complete.
6. Click Next.
7. Choose Side: If prompted to select a side, under Choose Side, select a side from the drop-down
list.
You can turn the wizard off by deselecting Preferences > General > Show wizard at startup.
About Passwords
However, the side you play in a game is locked to you using your Vassal password. In addition,
for email games, game logs are encrypted using a combination of username and password. As
a result, each player’s password must be unique.
When picking a password, take care to select a password that no other players in the game are
likely to use. Do not use a default password, nor should you use a common phrase that may
used by others, such as a variation of the module name.
11
Server, or you can join an existing game.
Rooms: Server games are played in “rooms”, where each room represents a different group of
players running the same module. A room is named by the player who starts it. Rooms can be
locked for privacy and players can be ejected from a room by the player who started it. Players in
the same room can communicate using the Chat window.
The Main Room is where players are placed who are running a particular module, but not joined to
any particular room. You cannot play in the Main Room—you must join a room in order to play a
game.
In Module Manager, in the Module Library window, double-click the module you want to play. The
Welcome Wizard opens. . In the Welcome Wizard, under Select play mode, choose Look for a
game online, and then follow the other Wizard steps as the module requires. . Click Finish. Upon
connection, the chat window will display Welcome to the Vassal Server, the name and version
number of your selected module, and any extensions loaded. . In the module window, click the
Connect button in the Toolbar. The Active Games window opens. . In the Active Games window,
in New Game, type the name of the game you want to start (for example, Monday Night Battle.) .
You are moved from the Main Room into the game room you just named. Other players can now
join this new room.
Figure 4: The Active Games window, showing a room called "My Game" with 1 current player.
In Module Manager, in the Module Library window, double-click the module you want to play. The
Welcome Wizard opens. . In the Welcome Wizard, under Select play mode, choose Look for a
game online, and then follow the other Wizard steps as the module requires. . On the Toolbar, click
Connect. . On the right side of the screen, the Active Games window opens. The Active Games
window displays the Main Room for the module, which is the default location for all players who
are not currently in a game, and any active game rooms under that. Only rooms running the
current module are displayed. The number of players is displayed in parentheses. . Double-click the
name of the game room you wish to join. . If prompted, enter the password for the room. (This
password is generally different from your Vassal password.) . Right-click on the name of a player
who has already begun a new game, then click Synchronize. You and the selected player will be
synchronized and the game play can begin.
Synchronization
Players in a Server game must be synchronized in order to see each other’s moves and interact.
Players should pick a single player to synchronize with, such as the player who initiated the game.
12
This will make sure that everyone’s game position is consistent.
When you synchronize, any side selection, piece movement and map selections you have
performed will be reset and replaced with the game information of the player you synchronized to.
In Module Manager, you can check the Server status for current games. (This is the same status
information as displayed on the Vassalengine.org home page.)
2. The Server Status window displays all current games played on the Server, as well as games
played in the past 24 hours, past week and past month.
Figure 5: The Server Status window, showing all current games and the number of players
Server Management
Once connected to the Server, you can perform a variety of tasks related to your connection.
Showing a Profile
A player’s profile includes name, IP address, game version and other useful information.
To invite another player running the module to a game, right-click a player’s name and select
Invite Player.
13
Sending a Private Message
You can send private messages to other players connected to the Server who are running the same
module.
1. In the Active Games window, find the player you wish to send a private message to.
3. Type your message in the popup window and press Enter. The recipient will see this message in
a private window.
You can send a public message to other players connected to the Server who are running the same
module, using a message board.
2. In the Message Composer window, enter the text of your public message.
4. To view a public message, click Message Board. The public messages are displayed.
If players are in the same room, they can also use the Chat window to communicate.
You can set your status for other players to see: either Looking for Game or Away from Keyboard.
Sending a Wake-Up
You can send a wake-up sound to a player who has been idle or unresponsive.
1. In the Active Games window, find the player you wish to wake up.
2. Right-click on the player’s name and choose Send Wake-Up. The selected player’s computer will
play the Wake-Up sound.
14
Checking the Server Status
2. The Server Status window displays all current games played on the Server, as well as games
played in the past 24 hours, past week and past month.
Room Management
If you have started a room, you can perform a number of management tasks, including locking a
room and ejecting players from it.
Locking a Room
You can lock a room to make it private. Players will need a password to enter a locked room. (Note
that a room password is different from a player’s personal password, which is used to log in to
Vassal itself.)
To lock a room,
1. In the Active Games window, right-click the name of the room you are in.
3. Enter a password for the locked room. To enter the room, players will need to submit this
password. You may wish to distribute this password by private message, instant messenger, or
email.
You can assign a new password to a locked room by unlocking and then relocking the room.
Ejecting a Player
1. In the Active Games window, under the name of the room you are in, right-click the name of
the player you want to eject.
2. Select Kick. The player is ejected from your room and moved to the Main Room.
3. You may wish to lock your room (or relock an already-locked room) with a new password in
order to keep the ejected player from reentering the room.
15
Playing Peer-to-Peer
With a peer-to-peer connection, you connect directly to another player’s computer without
connecting to the Vassal Server. In effect, each player’s becomes a private server. You may wish to
play peer-to-peer if you want a private game, or if the Vassal Server is unavailable.
Note: If you connect to the Internet through a router or firewall, you may need to configure your
device to allow direct connections to your system. Consult your device’s documentation for
instructions.
By default, Vassal is configured to connect to the Vassal Server for network games. The first time
each player connects by peer-to-peer, this setting will need to be reset. You will need to reset it
again if you wish to connect to the Vassal Server in the future.
2. Click File > Preferences, and then click Server (on MacOS, click Application > Preferences >
Server).
Launching a Game
After all players have reset their default connections, they can participate in a peer-to-peer game.
One player can start and the others can join the game started by the first player.
In order to connect to peer-to-peer, you will need to use the IP (Internet Protocol) address of each
player in the game. Vassal can determine and display your IP address for you.
1. In Module Manager, in the Module Library window, double-click the module you want to play.
The Welcome Wizard opens.
2. In the Welcome Wizard, under Select play mode, choose Look for a game online, and then
follow the other Wizard steps as the module requires.
6. In the Direct Connection dialog, enter another player’s IP address and port number and click
Invite. Then, continue this process for each of the other players.
16
Figure 6: The Direct Connection dialog, where you can enter IP addresses of other players
7. In the module window, click the Connect button in the Toolbar. The Active Games window
opens.
8. In the Active Games window, in New Game, type the name of the game you want to start (for
example, Battle Royale.). You are moved from the Main Room into the new, named game room.
Other players can now join this new room.
1. In Module Manager, in the Module Library window, double-click the module you want to play.
The Welcome Wizard opens.
2. In the Welcome Wizard, choose Look for a game online and follow the other steps as the
module requires.
7. In the Server controls, click Invite Players. The Direct Connect dialog displays your IP address.
You should supply this to the starting player (by email, instant messenger, or other means) so
you can be invited to the game.
8. When you receive an invitation from the starting player, click Accept.
9. On the right side of the screen, the Active Games window opens. The Active Games window
displays the Main Room for the module, which is the default location for all players who are not
currently in a game, and any active game rooms under that. Only the rooms running the
current module are displayed.
10. Double-click the name of the game room you wish to join.
12. Right-click on the name of the player who invited you, then click Synchronize. You and that
player will be synchronized and game play can begin.
Synchronization
Players in a peer-to-peer game must be synchronized in order to see each other’s moves and
interact. Players should pick a single player to synchronize with, such as the player who initiated
the game. This will make sure that everyone’s game position is consistent.
When you synchronize, any side selection, piece movement and map selections you have
performed will be reset and replaced with the game information of the player you synchronized to.
17
your opponents.
To play by email,
1. In Module Manager, in the Module Library window, double-click the module you want to
play. The Welcome Wizard opens.
2. In the Welcome Wizard, under Select play mode, choose Start a new game offline, and
then follow the other Wizard steps as the module requires.
5. Execute your turn as usual. Vassal records your moves and chat to an encrypted log.
8. Email the log file to your opponent as an attachment, using your computer’s email client.
(Vassal log files have the suffix .vlog.). Or, if you are playing via Discord, drag the log file into
your chat w/ your opponent to upload it.
1. When you receive your opponent’s email (or a new log via Discord or other means), save the
attached log file to your system. TIP: If you already have a window open with an earlier turn
of the same game, then if you have VASSAL 3.6.4 or higher you can simply drag the file or
link directly to your existing window (drag on top of the map or chat) — this will
automatically load the game straight into your existing window and you can skip straight to
step 6.
3. In the Welcome Wizard, under Select play mode, choose Load a Saved Game.
4. Under Load Saved Game, click Select and browse to the log file.
5. Click Next. If this is your first turn, you may be prompted for additional Wizard steps.
Follow the other steps as required. Otherwise, skip to step 6.
6. On the Toolbar, click the Step Through Logfile button, to review your opponent’s moves.
Each click of Step Through Logfile performs one move.
7. When complete, you are prompted to start a new log file. Click Yes.
9. In the Comments window, enter any comments you wish about the log file. This comment
will be displayed in the Module Manager.
10. Take your turn as usual. Vassal logs your moves and chat as you make them.
11. When done, click File > End Logfile. The logfile is saved.
18
Email Play with More Than 2 Players: If your email game includes 3 or more players, then you
will need to repeat steps 1-6 above for each player’s log as you receive it. Play back the logs in turn
order, exiting the module and restarting it after each log completes.
Game log files contain encrypted records of all piece movement and other steps performed by a
particular player. When playing by email, players should always exchange game logs (.vlog files),
rather than saved games (.vsav files), because logs contain a step-by-step record of player moves,
but saved games only contain a snapshot of the current game state.
Game logs are encrypted using each player’s password. As a result, all players in an email game
must have unique Vassal passwords.When playing by email, make sure your Vassal password is
uniquely chosen. Do not use a common phrase likely to be duplicated by other players, such as a
variation of the game name. You can set your password in Preferences > Personal.
You can save your game logs to a Saved Game folder, which can be displayed in Module Manager
with the module for easy organization. See Adding a Saved Game Folder for more information.
Playing Offline
You can play a Vassal module offline; for example, if you are playing ‘hotseat’ with another player.
(In hotseat play, two or more players play at a single computer, swapping their seat as they take
turns.)
To play offline:
1. In Module Manager, in the Module Library window, double-click the module you want to play.
The Welcome Wizard opens.
2. In the Welcome Wizard, under Select play mode, choose Start a new game offline, and then
follow the other Wizard steps as the module requires.
5. If sides are defined for the module, click Retire. You are prompted to quit your side and join the
game again as another side.
6. The next player selects another side and takes a turn, then clicks Retire.
Playing Solitaire
You can play Vassal games offline, in solitaire mode. Note, however, that Vassal does not include
any computer opponents. You must play all the sides in a solitaire game.
To play solitaire:
1. In Module Manager, in the Module Library window, double-click the module you want to play.
19
The Welcome Wizard opens.
2. In the Welcome Wizard, under Select play mode, choose Start a new game offline, and then
follow the other Wizard steps as the module requires.
4. Take the first turn of the side you joined the game as.
5. Click Retire. You are prompted to quit your side and join the game again as another side. (Not
all modules define sides. If there are no sides defined, then you will not need to retire after each
turn. In addition, some modules have a special Solitaire side that can control the pieces of all
sides in the game. If so, you will not need to click Retire either.
Saving a Game
You can save in-progress Vassal games for play later.
To save a game,
2. Browse to the location where you wish to save the game file.
3. Name the saved game file. (By default, saved games have the suffix .vsav.)
4. Click Save.
1. In Module Manager, in the Module Library window, double-click the module you want to play.
The Welcome Wizard opens.
2. In the Welcome Wizard, under Select play mode, choose Load a saved game.
3. Under Load Saved Game, click Select and browse to the saved game.
If playing in real time, you should start a room on the Server as usual, or connect peer-to-peer.
Players should synchronize to the player who initiated the game.
You can add a Saved Game folder to Module Manager. Saved games in this folder will be added to
the module listing in your Module Library, where you can track and manage them.
1. In Module Manager, right-click the module for which you wish to create a saved game folder.
20
2. Choose Add Saved Game Folder.
3. Browse to the folder you wish to add, and click OK. Files with the suffix .vsav will be displayed
under the module listing.
21
Using Vassal
Vassal is highly customizable.Different modules can have specialized controls and custom
functions, and can look very different from one another. As a result, a complete description of each
Vassal module is not possible here. However, all Vassal modules follow the same general guidelines.
The Toolbar
The Vassal window presents a Toolbar at the top that contains controls for major game functions in
the form of clickable buttons. Sometimes, the buttons include drop-down menus with additional
options.
Although the exact layout, button appearance, and sometimes button names, will vary from module
to module, the Toolbar in most games follows the same general arrangement:
The left side of the Toolbar always contains the standard Vassal controls. From left to right, these 4
buttons are:
• Undo: This button reverses the last action taken by anyone in the game. Click multiple times to
undo multiple actions.
• Step through Log: This button allows you to step through an email log to recap an opponent’s
moves. For more information, see Playing by Email (PBEM) or by Discord.
• Connect: The Connect button launches the Server controls and Active Games window, which
you use to connect to a Server-based or peer-to-peer game.
22
• Retire: The Retire button lets you to choose a new side to play. (Since not all games have
defined sides, this button may have no use in some games.)
The middle of the Toolbar contains the main module controls. The exact controls vary from module
to module, and largely depend on the game rules and game play requirements. Typically, this is
where you will find the game pieces palette, die roller buttons, and game charts. In addition, a
module may have other buttons and menus; for example, buttons to open new mapboard windows,
advance the current game turn, or reveal all hidden pieces. You should check your module’s toolbar
for details.
The right side of the Toolbar contains controls specific to your module’s main board. These controls
will only affect pieces on the main mapboard. Some of these controls can include:
• Zoom In, Zoom Out, Zoom Select: These controls rescale the main mapboard.
• Image Capture: This button creates a screen capture (in PNG format) of the map window.
• Mark as Moved: Click this button to mark any units that you moved this turn. This is helpful in
games with many pieces to track.
• Line of Sight (LOS) Thread: This button is used to draw a line between two pieces on the map
to determine line of sight between them. In addition, some LOS threads measure distance in
game units. Click on one unit on the board, then drag the thread to a target, and the distance
between them is displayed.
Toolbar buttons can be assigned hotkeys. Pressing the hotkey combination on your keyboard will
work exactly as if you clicked the button with the mouse cursor.
Toolbar buttons usually include tooltips that briefly explain each button’s function. Hold your
cursor over the button to view a tooltip. Hotkeys are displayed in brackets. For example, a button
that simulates the roll of two six-sided dice has a tooltip Rolls 2d6 [Ctrl+F5]. This indicates that
Ctrl+F5 is the hotkey for the dice button; you would hold down the Ctrl and F5 keys together to use
the button.
A module may also present game messages in the chat window, such as the results of die rolls,
reports on piece movement, turn updates, or other useful information.
Some maps include grids, which can be marked in hexes, squares or irregular zones. Depending on
the game, the grids may be clearly visible on the map, or may be invisible. If a map includes a grid,
then pieces will usually be restricted to movement on the grid, and distances between pieces will be
23
measured in grid units, such as a number of hexes.
Some games have multiple map windows. These map windows may display additional game maps
used in playing the game, and can contain their own controls similar to those in the main map,
such as a set of Zoom controls.
In some games, these additional map windows may used for other purposes, such as for storing
card decks or reinforcement units. A game may also include private windows where players can
keep items that belong to them, such as additional units, a hand of cards, or sums of game money.
In order to select pieces in a map window, the map window must be selected first.
Resizing Controls
You can resize many windows, such as the chat window, in relation to the main map. Click and drag
the border between two windows to resize them. Other windows are also resizable by clicking and
dragging, such as the divider between the pieces palette and the chat window, or the size of
individual map windows.
Typically, each map window will also have a set of zoom controls, usually resembling a magnifying
glass, which allows you to rescale the map in a window. This is helpful when you want to get a
closer look at a game board, or display an overall view of a strategic situation. Note that only the
map graphic rescales; the window size on your screen is unaffected.
Game Pieces
Most modules have at least one pieces palette, accessible from the Toolbar, which allows access to
game pieces. (Game pieces are also called counters, tokens, or units.) The palette is usually divided
into tabs, sorted by side or function; for example, in a World War II game, one tab might include all
Allied units, another tab include all German units, and a third tab could include game markers that
could be used by both sides. To move a piece to the game board, drag it from the palette into place.
Game pieces drawn from a palette are infinite and never run out. However, some games
deliberately limit the number of pieces in the game (such as a Monopoly box, which has a set
number of houses and hotels). In these cases, the Vassal module will usually have a finite number
of pieces in a separate window, not a palette, from which you can draw. In such games, when these
pieces are depleted, there are usually no more available.
Selecting Pieces
To select a piece, select the map window it is located on, and then click the piece with your mouse
cursor. A selected piece displays a border to spotlight it.
You can select multiple pieces by holding the mouse button down and dragging a box around the
desired pieces with your mouse cursor.
Alternatively, you can select individual pieces from a group by shift-clicking each desired piece with
24
your mouse. You can also deselect pieces from a group by holding down the ALT (or, on MacOS, the
Option key) while clicking on the pieces to be removed from selection.
Command Menus
Most pieces in a Vassal game are interactive: by right-clicking on a piece, you display a command
menu that lists commands specific to that piece.
Different pieces may have different command menus, depending on their function in the game. The
module designer chooses menu items based on the game rules. Check each module for the exact
command menu items for a given counter.
For example, to reflect damage done to a tank during combat, a tank counter can have a full-
strength version and a damaged version. When the tank takes damage during combat, a player
would right-click on the piece and choose Damage from the menu. This displays the damaged
version of the tank, with reduced combat strength. In the same game, a Mine counter only has a
single choice on its command menu: Explode. This action is selected when the mine is detonated
and removes the piece from the board
Use of the command menu will vary from module to module. In some modules, all piece control,
even movement, is performed by right-clicking and choosing a command. In some, the right-click
menu is more modest and contains only a few simple commands, such as to clone or delete the
piece.
Hotkeys: Each command menu item is assigned a hotkey combination, which appears next to the
command menu item. Pressing the combined hotkeys simultaneously on your keyboard will work
exactly as if you clicked the menu item with the mouse cursor. For example, if a command is listed
as Hide CTRL H, when the piece is selected, pressing Ctrl+H will hide the piece.
If all the pieces in a group share a command (and a hotkey), you can select the group, right-click to
see their command menu, and perform commands on all of the pieces in the group at once. For
example, if all pieces in a selected group had the command Delete CTRL X , then you could delete
all the pieces at once by selecting them all and choosing the Delete command.
Moving Pieces
In most modules, pieces are moved by dragging and dropping them to new places on the map with
the mouse cursor. You can drag pieces between map windows as well.
However, some modules include functions to move pieces using the command menu, in place of
25
dragging and dropping. For example, a piece can include a command to move a fixed distance, such
as one square to the left or right, or to move to a new location in the game, such as a discard pile. In
these cases, it is generally preferred to use the command menu than to simply drag and drop
pieces. Check the module for a list of such commands, if any.
Stacking
In many games, especially war games, you can form a stack by piling pieces on top of each other,
then double-clicking the pile. A stack can be selected and moved like an individual piece.
Most Vassal modules include a stack viewer. Hold your mouse cursor over the stack and the
component pieces in the stack will be displayed, left to right.
If you select a stack, and the selected pieces share a command (and the same hotkey), you can right-
click to see the shared commands, and select one to perform on all of the pieces in the stack at once.
To unstack pieces, double-click on a stack and the stack will expand, accordion-style. You can then
select and manipulate the individual pieces in the stack, to drag them away, use their command
menus, or otherwise act on them. In addition, you can use the arrow keys to move individually
selected pieces up and down in the stack.
In some modules, stacking for some or all pieces is disabled. These pieces will never be included in
stacks.
Sides
Many games have defined sides. Being on a particular side usually restricts the pieces that you can
control, which windows you can open, and sometimes which pieces are visible to you. You select a
side at the start of a game or scenario, and can change your side using the Retire button.
Depending on the game, modules may accommodate one, two or many players. The number of
sides in a game is determined by the game itself.
For example, in a module called World War II, there are six sides: the US, UK, Germany, Italy, Japan,
and the Soviet Union. For the most part, players can only move and execute commands on pieces
26
belonging to their own sides. However, the German player may move and command Italian pieces
as if they were German. In addition, there is a set of markers (to mark mines, smoke and grenades)
that can be used universally by all sides.
Password: Sides are locked to players using each player’s login password. As a result, you should
make sure your login password is uniquely chosen. Do not use the default password, or a phrase
that others are likely to use, such as a variation of the module name.
No other player may join a side until the player to whom the side is currently locked unlocks it by
clicking Retire.
Observer: In addition to any predefined sides, modules include a special side called Observer.
Joining a game as an observer is a good way to watch a game in progress without actually
competing. An observer can still chat and view gameplay but may not be able to access certain
game functions.
Setups
Many games include scenarios where different maps and pieces may be used to simulate different
situations. For example, a World War II game could have a scenario for the Battle of the Bulge and
another for the Battle of Midway. Each is played using the same module and rules, but would use
different maps and forces.
In Vassal, scenarios are represented by setups, which are preset configurations of maps and pieces.
The module designer configures the appropriate maps and forces in place when designing the
module.
In some modules, you may be asked to choose a setup upon launch, which will load the setup file
automatically. The game will begin with the correct maps (and, usually, units) already in their
starting positions.
Cards
In games that include cards, you draw cards by dragging them from a deck to their destination.
Some modules have separate, private windows that can be used to keep cards players have drawn,
like a player hand.
Check the command menu for a list of specific card options. For example, in some games, used
cards are deleted from the game, and in others, used cards are sent to a discard pile for possible
later use.
Like real cards, cards in a module usually have two sides, a front and back. You can usually reveal
the front of a card by using a command on the command menu. This is called unmasking a card.
A card that can be unmasked usually includes a Peek command. When you click Peek, only you can
see the card at which you are peeking. This is helpful if you need a quick reminder of the card face,
but don’t wish to reveal the card to others. As soon as you click away from a card that you are
peeking at, the card will revert to its face-down state. (Note that if you unmask the card, then
everyone can see it. Use Peek to keep your card secret until you are ready to reveal it.)
27
In addition, some card decks include additional features that allow you to act on the entire deck, to
select specific cards, shuffle the deck, or perform other functions. You perform these functions, if
any, by right-clicking on the card deck.
Typically, the menu will also include an About window to show the version number of the Vassal
engine and your current module, which can be useful for troubleshooting.
Preferences
You can set a variety of preferences for your Vassal game, both in the Module Manager and the
Vassal Player, to customize your Vassal experience.
Module Manager Preferences affect the appearance and behavior of the Module Manager and for
all modules launched.
1. In the Module Manager, on the File menu (or, on MacOS, the Application menu), click
Preferences.
General Preferences
• Language: Specifies a language in which to display the Module Manager interface. You must
restart Vassal for the language display to change.
• Show Wizard at Startup? If selected, when you launch a module, the login wizard will be
displayed.
Importer Preferences
• JVM Initial Heap Size (in MB): Initial heap size of the Java Virtual Machine in megabytes.
• JVM Maximum Heap Size (in MB): Maximum heap size of the Java Virtual Machine, in
megabytes.
Player Preferences
Vassal Player preferences affect the appearance and behavior of the current module.
28
To set your preferences in the Vassal Player,
2. On the File menu (or, on MacOS, the Application menu), click Preferences.
General
• Language: Specifies a language in which to display modules. Only generic menu items are
translated. Command menus and text strings appear in their original language unless the
module specifically includes the translation.
• Prefer Memory-Mapped files for Large Images? When checked, large images are decoded
and written to memory-mapped files, rather than being stored in RAM. Initial loading of large
images will be slower, but significantly less RAM will be used. This can be helpful for low-RAM
systems.
• High-quality Scaling: Toggles between using the slower, high-quality Lanczos3 scaler, and the
faster, low-quality bilinear scaler for scaling images.
• Show Wizard at Startup? If selected, when you launch the module, the Welcome Wizard will
be displayed. If the Wizard is not displayed, you are simply prompted for username and
password upon launch.
• Ask to Start Logging Before a Replay? If yes, before you replay an email log, you will be
prompted whether or not you wish to start logging.
• Ask to Ensure Logging After a Replay? If yes, after you replay an email log, you will be
prompted whether or not you wish to begin your own log.
• Prompt for Log File Comments? If yes, you will be prompted to add comments to an email log.
The comments will be visible in the Module Manager.
• Use Combined Application Window? If enabled, all game windows (such as maps) will open in
a single Vassal application. If disabled, all windows will open separately, allowing you to move
or resize them on your screen.
• JVM initial heap in MB: Initial heap size of the Java Virtual Machine, in megabytes.
• JVM maximum heap in MB: Maximum heap size of the Java Virtual Machine, in megabytes.
• Scroll Increment (pixels): If Use Arrow Keys to Scroll is selected, scroll increment determines
the number of pixels scrolled with each key press.
• Use Arrow Keys to Scroll? If selected, allows you to use the keyboard arrow keys to scroll
inside a window.
• Disable automatic stack display - use configured control key? If selected and the module has
a stack viewer enabled, the stack viewer will not be displayed on mouseover. Instead, you must
use the stack viewer hotkey defined in the module itself.
• Delay before automatic stack display (ms): Delay, in milliseconds, before a stack viewer
displays the contents of a stack.
• Delay scrolling when dragging at map edge (ms): Scrolling delay, in milliseconds, when you
have scrolled to a map edge.
29
• Moving stacks should pick up non-moving pieces: If selected, a moving stack that moves over
other pieces will add those pieces to the stack as it is moved.
Personal
Personal preferences allow you to set (or reset), your display name and login password.
In addition, in Personal Info, you can enter a brief description of yourself that will be displayed
when others view your Profile.
Server
Select whether your default connection will be to the Vassal Server, or a peer-to-peer connection. If
you are currently connected, you must disconnect before resetting this preference.
Chat Window
These preferences control the appearance (font, font size and color) of your chat window.
Turn Counter
Sounds
The Sounds preference allows you to specify a sound file to play when you are sent a Wake-Up. You
can keep the default sound, select a different sound file, or play the selected file.
Updating Vassal
Vassal is updated regularly with improvements, bug fixes, and other updates. New updates are
made available for download at vassalengine.org. You can determine if there is an update available
by clicking Help > Check for Updates. Vassal also automatically checks for application updates if
the last check was more than 10 days ago.
Updating Modules: Check the module’s page on Vassalengine.org for the latest version of a module
or its extensions.
30
Enhancing Vassal
This section lists a variety of ways to enhance your Vassal experience.
Module Extensions
Many modules have extensions, which are add-on files that provide additional game play options.
For example, an extension could include additional battle maps or optional units not included in
the regular game. Generally, an extension is associated with a specific module and is not useable
with other modules.
Like modules, extensions are not specific to any operating system. A module extension for Vassal
3.6.13 usually has the suffix .vmdx, although some older extensions have the suffix .mdx or even
.zip.
Extensions need to be activated in order to be loaded with a module. Once activated, an extension
will automatically load whenever you launch the base module.
To activate an extension:
1. In Module Manager, right-click on the module that the extension is for, and select Add
Extension.
2. Browse to the extension file and click Open. The extension is now listed in the Module Manager
under the name of the module. A copy of the extension file is automatically placed in a new
directory called <Module Name>_ext, in the same directory where the module is located. When
Vassal loads the module, any extensions in this directory are also loaded. (For example, for the
module WorldWarII, upon activating the extension IwoJima.vmdx, the extension is placed in the
directory WorldWarII_ext.)
You can deactivate an extension if you do not wish it to be loaded with the base module.
To deactivate an extension,
1. In Module Manager, double-click the name of the module. The module list expands.
2. Right-click on the extension and choose Deactivate Extension. The extension is deactivated.
(The actual extension file is moved to a subdirectory called inactive.)
3. You can reactivate an inactive extension later by selecting the extension in Module Manager,
right-clicking, and choosing Activate Extension.
Helpful Applications
There are many helpful third-party applications that can enhance your Vassal play experience.
• An email client that allows you to send attachments is required for playing games by email.
• Discord has become very popular for playing Vassal either live or "by email" — in the latter case
31
the chat room is often a more convenient place to exchange log files than traditional email.
Vassal’s "official" Discord server can be found at https://discord.gg/GzzHccRQpU, and there are
gamer-run discords specializing in PBEM and specific games.
• Voice chat applications may be helpful when playing Vassal live. Skype, Ventrilo or Teamspeak
are all effective and free, but other solutions may be appropriate for your players.
Finding Opponents
If you’re looking for opponents, you have several options:
• You can launch the Module Manager, select a module, connect to the Server, and set your status
to Looking for Game.
• Vassalengine.org has a Java applet that will display all currently running games on the Vassal
Server. On the Vassalengine.org site, click See who’s playing live right now to view all current
games. If you see your game being played currently, you can launch the module, log in to the
Server, and use private or public messaging to contact a potential opponent. You can also view
games played on the Server in the past 24 hours, the past week, and the past month. (In
addition, you can view this information using the Module Manager under Tools > Server
Status.)
• Vassalengine.org maintains an Opponents Wanted forum, where you can search for opponents
for your game. You should specify the game or games you want to play, whether you would like
to play real time or by email, and your time zone. Visit the Vassal forums for more information.
• Discord has become very popular for playing Vassal either live or "by email" — in the latter case
the chat room is often a more convenient place to exchange log files than traditional email.
Vassal’s "official" Discord server can be found at https://discord.gg/GzzHccRQpU, and there are
gamer-run discords specializing in PBEM and specific games.
32
good idea to pick one player, such as the person who initiated the game, and have everyone
synch to that player.
Synching is required for both Server and peer-to-peer games.
2. I want to play a game that was originally produced by Games Workshop, Avalanche Press, or
Sabertooth Games. Why don’t you have any modules for these games?
These publishers, or the current holders of their copyrights, have asked specifically that
Vassalengine.org neither host nor distribute modules based on their games. Vassalengine.org
always complies with such requests from copyright holders. Users who disagree with a
copyright holder’s policies are encouraged to discuss the issue with the copyright holder.
4. I downloaded a module, but when I go to run it, it keeps unzipping and the game won’t launch.
This may be an issue with the module package. A module is actually a ZIP file, a compressed file
containing all the necessary components for a particular game. Modules generally have the
suffix .vmod (for example, game.vmod.) However, some older modules use the suffix .mod or
even .zip.
File Associations: On Windows and MacOS with proper file associations, double-clicking on a
.vmod file will launch Vassal. Consult your system’s documentation for instructions on how to
set your file associations to associate .vmod files with Vassal.
• On some systems, the suffix .mod is sometimes associated with MP3 play lists or MPEG files.
Double-clicking on a .mod file may launch your MP3 player or similar application. You may
simply change a file’s suffix from .mod or .zip to .vmod and then should be able to launch it
in Vassal.
Zipped Files: The issue may be with a compressed file or your system’s compression utility.
• To save file size, some large or older modules are packaged inside a ZIP file and use .zip as a
suffix. If so, you will need to unzip the ZIP file before launch, using a decompression utility
like WinZip. Inside, you should find the module file, with a suffix of .vmod.
• On MacOS, the Archive Utility may decompress a zipped file and then decompress any
zipped files inside the first ZIP file. You may wish to use a compression utility like StuffIt
Expander when handling ZIP files.
• If after unzipping, you find a file labeled BuildFile, a folder labeled Images, and a group of
associated files, then the ZIP file itself is the module. There is no need to unzip it. Launch the
module using Module Manager by clicking File > Open Module and browse to the module
file.
Module Manager: Instead of double-clicking on a downloaded file, try launching the
downloaded module from within Module Manager (pick File > Open Module).
33