The Roll20 Log Parser 2

What It Is

If you’re like me, and you play a bunch of tabletop roleplaying games online over Roll20.net, you have almost certainly noticed that a game’s chat log becomes increasingly unwieldy to work with as a game goes on. Past a certain point, it takes a beast of a computer to even open and navigate the log, and even for those who can, because it’s all one big page, it’s extremely difficult to find your place if you lose it. This makes rereading old logs and reliving your old tabletop memories a huge pain in the ass!

The Roll 20 Log Parser 2 exists to solve that problem. It’s a Java application which opens a Roll20 log file, parses it into sessions based on timestamps, and produces a series of .html files with navigation links and a corresponding table of contents page. Not only does this prevent files from ballooning out to unmanageable sizes, it also makes it much easier to keep track of your progress on rereads.

Downloads

Click here for the most current version of the application (0.02), hosted on Google Drive. It’s an executable .jar file.

Source code can be found here, on GitHub. It’s an eclipse project.

How Do I Use It?

First of all, you’ll need a roll20 log file to run it on. Open up a game’s chat log, and then save that webpage as a .html file somewhere on your hard drive. This will also save all the necessary files in a corresponding directory. Don’t separate the .html file from the accompanying directory.

The .jar file available above is executable, so on most platforms you should just be able to double-click the file and it’ll launch the application. If for whatever reason that isn’t working for you, open your operating system’s command-line interface, and run it with the command ‘java -jar <<file name>>’.

Once the application starts, it’ll pop up a GUI you can use to select your log file, choose the output destination, give your log a title, optionally select a custom .css stylesheet, and start the process. It’ll output a .zip file containing your parsed logs to the destination you chose.

Important note: currently, the application works by creating a bunch of temporary files in a temporary output directory, zipping them up, and then deleting the originals. I intend to change this in the future, but until I do: just put the application in its own directory to avoid any mishaps.

This application was written in Java 8. It should work on Windows, Mac, and Linux of all stripes…in theory.

Questions

‘Roll20 Log Parser 2’? Was there a Roll20 Log Parser 1?

Yes, there was. It was written in Node.js and it exploded when it was presented with a log file that was too large. I then abandoned the project for about six months, and when I came back to it I decided I didn’t care to wade back into the nightmare mess of Javascript I’d created, so I just wrote it again from scratch in Java. No regrets.

How do I write custom stylesheets?

This guide will probably be helpful for you.

It didn’t work for me/the program hanged forever without doing anything/there’s a problem with my output files!

This is very much still in development. Bugs are going to happen. If you run into them, please leave me a comment on this page or by contacting me through other means. Detail exactly what you did, what you expected to happen, and when actually happened. Include a link to the exact log file you were running it on, if applicable. If the problem is with incorrect output, include the number of the affected file and a screenshot of the corresponding part of the original log if possible.

It will also be helpful to see any console output. If you can, try running the program from your operating system’s command line interface, as outlined above, and include anything that outputs there with your bug report.