[![Discord](https://img.shields.io/discord/1479823526813892790?style=for-the-badge)](https://discord.gg/AyaGmYPfx) ![Downloads](https://img.shields.io/github/downloads/Larkinabout/fvtt-change-log/latest/module.zip?color=2b82fc&label=DOWNLOADS&style=for-the-badge) [![Forge Installs](https://img.shields.io/badge/dynamic/json?label=Forge%20Installs&query=package.installs&suffix=%25&url=https%3A%2F%2Fforge-vtt.com%2Fapi%2Fbazaar%2Fpackage%2Fchange-log&colorB=448d34&style=for-the-badge)](https://forge-vtt.com/bazaar#package=change-log) # Change Log A Foundry VTT module to log changes to the chat log. ![Change Log Chat Log](./.github/readme/change-log-chat-log.png) ![Change Log Journal](./.github/readme/change-log-journal.png) ![Change Log Changes for GM Form](./.github/readme/change-log-changes-for-gm-form.png) ## Licence & Usage This module references Font Awesome Pro icons under a personal licence. The code in this repository is not licensed for redistribution. This module is designed for use with Foundry VTT V13 and V14 only. For full attribution and licensing details, see [ATTRIBUTION.md](ATTRIBUTION.md). # Features - Log changes per property and actor type. - Show specific changes to the GM, player or everyone. - Log changes to chat, a journal entry, or both. - Undo changes by right-clicking the chat message. # Installation ## Method 1 1. In Foundry VTT's **Configuration and Setup** screen, click **Add-on Modules** 2. Click **Install Module** 3. Search for **Change Log** 4. Click **Install** next to the module listing ## Method 2 1. In Foundry VTT's **Configuration and Setup** screen, click **Add-on Modules** 2. Click **Install Module** 3. In the Manifest URL field, paste: `https://github.com/Larkinabout/fvtt-change-log/releases/latest/download/module.json` 4. Click **Install** next to the pasted Manifest URL # Recommended Modules ## [Custom Chat Tabs](https://foundryvtt.com/packages/custom-chat-tabs) Adds a dedicated Change Log chat tab so change messages can be filtered or shown exclusively in their own tab. # Supported Systems Change Log is intended to be system-agnostic, however only the systems listed are currently supported with pre-populated lists and friendly property names: - [Archmage / 13th Age](https://foundryvtt.com/packages/archmage) - [Call of Cthulhu 7th Edition](https://foundryvtt.com/packages/CoC7) - [Cypher System](https://foundryvtt.com/packages/cyphersystem) - [D&D 5e](https://foundryvtt.com/packages/dnd5e) - [Old-School Essentials (OSE)](https://foundryvtt.com/packages/ose) - [Pathfinder 1](https://foundryvtt.com/packages/pf1) - [Pathfinder Second Edition](https://foundryvtt.com/packages/pf2e) - [Savage Worlds Adventure Edition](https://foundryvtt.com/packages/swade/) If you would like your system to be supported or a property is not listed for a supported system, please raise a feature request or, better yet, create a pull request. # How to Use ## For supported systems 1. Open **Configure Settings** and navigate to the **Change Log** settings. 2. Open **Changes for GM**. 3. Click into the **Available Properties** box. 4. Click the properties in **Available Properties** to add them to the **Selected Properties**. 5. Click **Accept**. 6. Open **Actor Types for GM**. 7. Click the types in **Available Types** to add them to the **Selected Types**. 8. Click **Accept**. 9. Click **Save Changes** ## For unsupported systems _Please note that unsupported systems have not been tested and the Change Log module may not function as expected._ 1. Open **Configure Settings** and navigate to the **Change Log** settings. 2. Open **Changes for GM**. 3. Click into **Selected Properties**. 4. Type the path of the property in dot notation format starting with the type: `actor`, `item` or `activeEffect`. For example, the D&D 5e system has a property for an actor's current HP and the path would be: `actor.system.attributes.hp.value`. 5. Press `;` to add the property to the list. 6. Repeat steps 4 and 5 for each property. 7. Click **Accept**. 8. Open **Actor Types for GM**. 9. Click into **Selected Types**. 10. Type the id of the actor type. For example, the D&D 5e system has the following actor types: `character`, `npc`, `vehicle`, `group`. 11. Press `;` to add the type to the list. 12. Repeat steps 10 and 11 for each type. 13. Click **Accept**. 14. Click **Save Changes**