R20Exporter + Furnace update
Added 2020-01-14 00:52:03 +0000 UTCHi everyone and happy belated new year!
I've had a great couple of weeks in which I rested and enjoyed the time off. It allowed me to catch up a bit on my writing as well. Thank you very much for asking.
The long awaited update to R20Exporter is finally released! I've also released an update to Furnace, full details about that and a demo after the bit about R20Exporter.
The R20Exporter update has some major changes that I've been meaning to do for a while now. More specifically:
- The tool is now a Chrome Extension (yeay!) instead of being a Tampermonkey User script or a standalone script that you copy/paste into the terminal. That should make things so much easier, yeay!
- The second and another major change is that I basically 'rewrote' R20Exporter to be written in pure Javascript instead of being written in python that gets transpiled into Javascript. This means the script is now 47KB instead of 254KB of code and will be much easier to maintain. It also sets up the groundwork for eventually doing something similar for Beyond20.
- A third and yet another major change, which is what I spent most of my time working on in the past few days is that I added ZIP64 format support to the zip.js Javascript library. The ZIP64 format is necessary in order to have any files with a size larger than 4GB. Unfortunately, I couldn't find any JS library for the browser which supported it so I had to use some others as reference as well as the ZIP file format specification to add support for it in the zip.js library that R20Exporter uses.
- A smaller but just as important change is that R20Exporter will now ensure that all character sheets are loaded properly before doing the export. I've seen so many people complain that not all character sheets were being converted when using R20Converter and the issue was that Roll 20 is so slow that it takes sometimes a minute or two after the VTT appears before some of the PC or NPC character sheets get loaded, and if you tried to export before then, you would end up with an empty sheet for some of them. Now you can click right after the VTT loads and R20Exporter will check and wait for any slow to load sheets.
- In the same vein, I've changed the mandatory 5 second wait per archived page to finish loading and made it check things more dynamically so it doesn't wait as long as before and loads archived pages much faster when exporting.
- I've fixed a bug in the playlist handling which made it not export some audio tracks. Now all audio tracks are exported.
- Something I've been meaning to do for a while. When Roll 20 changed their 'log archive' page to be split into multiple pages, the exporter started exporting only the first page of the chat log, now the full chat log is exported.
That's it for this release. You can check the updated README and repository of R20Exporter on github.
You can download the extension from the Chrome Webstore here.
In other news, I am working on updating Furnace with some new Quality of Life Improvements, and updating all of my modules to work with the new FVTT 0.4.4 release. I was hoping to release it all today but things took longer than expected (as usual.. if you've been with me long enough, you'll know I absolutely suck at estimating how long things take to polish).
I am however releasing v1.1 of Furnace, which adds playlists/music control QoL and fixes a nasty little bug I had in previous versions where it could interfere with some other modules (EZ-Roller for example, thanks to @Tielc for reporting that bug). This release is for FVTT 0.4.3 only, and is my last release for that version of FVTT. I'll work on porting to 0.4.4 and release 1.2 for it once I'm done, along with an update to all my other modules so they can be used in 0.4.4.
Another cool feature is the ability to decide the exponential equation used by FVTT for approximation of the logarithmic nature of volume perception by human ears. In more simple terms, you can more easily fine tune low volumes of loud music so it doesn't overwhelm your SFX tracks. Especially useful if you've found yourself in the situation where some background music is so loud that you have to get the slider near 0 and it jumps from "too loud" to "too low" within a pixel.
I've set the value to 3 by default (FVTT uses 2) but you can configure it to your liking in the settings window (or set it to 2 if you liked the way volumes scaled with FVTT by default).

Here's a little demo of the QoL I added to Furnace where the music controls are hidden so we can see more of the sound's name, and where a "Now Playing" section helps keep track of which sound is playing so it can be adjusted or stopped without trying to find it in the playlist.

As usual, you can install Furnace using the module URL in the FVTT setup page : https://raw.githubusercontent.com/kakaroto/fvtt-module-furnace/master/module.json
Thanks,
KaKaRoTo