Latest version | 0.3.7 |
---|---|
Minimum Core | 11 |
Compatible Core | 11 |
Last updated | 5 days ago |
Created | 4 months ago |
Authors |
|
Languages |
English |
Systems | All systems |
Project source | Project URL |
Tools for painting grid cells with terrain heights.
Designed for LANCER, Terrain Height Tools takes inspiration from the way painting tiles works in the Political Map Overlay module by cirrahn; and augments it with some line of sight calculation functionality and the ability to render the heights on the token layer.
Once installed, the first thing you need to do is configure the paintable terrain types for your world. You can think of terrain types like colours of paint for your paintbrush. This can be done either by:
See below for more details about configuring terrain types.
Once at least one type of terrain has been configured, you can then use the tools in the 'Terrain Height Tools' menu to paint terrain onto the map. To do this, you need to click the type of terrain you want to paint in the 'Terrain Palette' window and choose a height for the terrain. You can also optionally enter an elevation. Adjacent grid cells will merge together if their terrain types, their heights, and their elevations are the same.
Terrain Height Tools provides two tools for testing line of sight (LoS) against the terrain that has been drawn to the scene. Both of them can be found under the tokens menu.
The first, is the humble 'Line of Sight Ruler'. The ruler behaves similarlly to the standard ruler built in to Foundry. You can click and drag between two points, and it will test the line of sight along this line, and highlight any intersections with the terrain. You will also see a 'H' number next to either end of the ruler. This represents the height of that endpoint. You can change this either by using the +
and -
keys on your keyboard, or typing values into the config window that appears.
The second tool is the 'Token Line of Sight' tool. When you click this tool, you will see a config window appear. Click on the bullseye icon and then click on a token on the scene, for both the boxes that appear. Terrain Height Tools will then draw 3 LoS rays: one from the centre of the first token to the centre of the second; one between the left-most edges of the tokens; and one between the right-most edges. The H value of these lines depends on how the LoS is configured, but it is based on the token's elevation + a modifier multiplied by the token's width (there is no 'vertical height' field for tokens in Foundry, so tokens are assumed to be as tall as they are wide); For example in the default configuration a token with an elevation of 3 and a size of 2, the H would be 5; This represents the top of the token. The tool can instead draw the LoS from the middle or the bottom of a token.
When the LoS rays are drawn to the scene, you will see a line drawn from the source point to the target point. This line is formatted depending on what state it is in at that point:
It's also worth noting that the ray is calculated in 3D space, so if you see it abruptly stop intersecting a shape part way through, it has likely impacted the top or bottom of the shape.
To add a new terrain type simply:
%h%
and/or a %e%
placeholder to be used. These will be replaced with the height or elevation value of the painted terrain respectively. For example, if you create a type with a label of H%h%
, when painted on the scene at height 2, it will have a label of H2
. If painted at height 4, it will have a label of H4
, etc. Likewise, a label of H%h%+%e%
would show H3+4
if it was a height 3 terrain at an elevation of 4.There are some other useful buttons:
Here is a quick reference of the settings module presents in the 'Configure Settings' button of Foundry:
Terrain Height Map Visibility Radius
- If not zero, the terrain height map will only be shown in a radius of that many grid cells around the mouse cursor. If zero, the entire map will be visible.Other User's LoS Ruler Opacity
- How opaque/transparent other user's line of sight rulers will appear to you.Token LoS: Auto-populate Primary Token
- If true, when selecting the Token Line of Sight tool, THT will attempt to populate the first token for LoS measurement. It will prioritise a selected token on the scene if you have one, or if there isn't one it'll attempt to fallback to the token that represents the actor you have configured as your character.Token LoS: Auto-populate Secondary Token
- If true, when selecting the Token Line of Sight tool, THT will attempt to populate the second token for LoS measurement. It will use the first targeted token on the scene, if there is one.Terrain Types
- Button to open the terrain type configuration (see above)Terrain Height Map Above Tiles
- This determines whether or not the terrain height map is shown above or below ground-level tiles. The height map is ALWAYS shown below overhead tiles. This can also be configured on a per-scene basis using the 'Terrain Height Map Layer' option on the 'Grid' tab of the scene config settings.Display Line of Sight Ruler (GM)
- If true, the GM's Line of Sight measurements will be shown to other players.Display Line of Sight Ruler (Player)
- If true, players' Line of Sight measurements will be shown to other players.Terrain Height Tools exposes an API that can be used by macros, scripts or, other modules. Please see the API documentation for more.
To install this package, open your Foundry Setup screen and navigate to your Module tab and click the Install Module button.
From there, you can either search for the package unique name: terrain-height-tools or copy its manifest URL:
And paste it to the input box at the bottom of your window.
You can install this package directly to your Forge account.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Advertisement cookies are used to deliver visitors with customized advertisements based on the pages they visited before and analyze the effectiveness of the ad campaign.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.