Select Character


Copy this code

Paste your log here



Pesterlog Formatter

Pesterlog Formatter is a web app designed to make it easier for you to format pesterlogs (or dialoglogs, or spritelogs, or whatever), in terms of both character quirks and color encoding. For example, suppose that you want to copy a pesterlog from Homestuck and paste it somewhere in the MSPA Forums to illustrate some point you are making about Nepeta or Vriska. Normally this is a tedious process because of all the color formatting, but Pesterlog Formatter can handle that for you. Click the "Import Log" button in the bottom right of the main screen, and copy the section of the pesterlog that you want to quote. Select "Typing quirks are already applied," because they are. Then click "Import Log!"

Depending on which characters you chose, you may receive one or more warnings telling you that Pesterlog Formatter was unable to unambiguously match the speaker of a line with one particular character. For example, if a line is from "TT", it might reasonably belong to Rose, to Dirk, or to the Autoresponder. In these cases, you will be required to clarify the speaking character from a list of possibilities, which by default includes the eight kids, the twenty-four trolls, the two cherubs, Doc Scratch, Her Imperious Condescension, and Serenity. (That's only about half the full list of characters pre-included in Pesterlog Formatter, but the others are disabled by default because you're less likely to be looking for them. More on that later.)

Once Pesterlog Formatter has figured out the author of every line in the log, it will fill up the main window with the pasted log, with each character's name and lines getting his or her own distinctive color scheme. Next click the "Export Log" button at the bottom middle of the main window, choose "BBCode" for the MSPA forums—each of the six exporting options has a more detailed explanation of itself as its title text, if you hover the mouse over it for a couple seconds—and click "Export Log!" again. The resulting window will give you a fully-color-coded reproduction of the original pesterlog quote, ready for copying and pasting into your forum post.

Composing Logs

Pesterlog Formatter also allows you to compose your own original logs, rather than copying them entirely from existing sources, in case you're writing a fanfiction or your own adventure or something like that. The quickest method is probably again to use the "Import Log" button, and type your new log in there or else copy and paste it from a Word document or other source. Alternatively, you may type your log directly into the big white box in the main window. While you're editing an individual line of dialog, the text will be written in black, and no quirks will be applied. Lines that you are not editing will appear in the color of their speaker, and will have that speaker's typing quirks applied to them. To disable the typing quirk for an individual line, mouse over that line, select the "+" sign that appears immediately to the left of the speaker's name, and click it. The "+" will turn to a "-", the line will get a gray background, and that line will not receive any special formatting for typing quirks.

Pesterlogs normally involve more than one speaker, of course. To change the speaker of a line, click on the speaker, and you will be presented with a "SELECT CHARACTER" window with a whole bunch of options. Select one, and the line will be converted to that speaker, with their name, color, and (unless disabled) typing quirk. The no-typing-quirk-appplied original text of each line is always saved, so don't worry about (for example) writing a line in Eridan's quirk, changing the speaker to Cronus, and having a single "w" morph (under Eridan's quirk) into "ww" and then (under Cronus's quirk) into "vwvw". Cronus's quirk will be applied to the original line, not to the Eridan version, so only a single "vw" will be produced.

Normally, pressing Enter/Return will create a new line in the log, belonging to the same speaker. If you hold down the Ctrl key while pressing Enter/Return, though, the line will belong to the previous speaker instead. So if your log consists of four lines by Karkat, followed by seven lines by Terezi, pressing Ctrl+Enter at the bottom will create a new Karkat line. Pressing Ctrl+Enter again from there will create a new Terezi line, and so on. Additionally, while you have a specific line selected, holding down Ctrl and clicking on any other line will take that other line's character and apply it to the line you originally had selected. There is no limit on how many different characters may appear in a single log, though of course the fewer you have, the easier it is to write.

By clicking the button in the top middle of the main window, the log will change style from a PESTERLOG to a DIALOGLOG or back again. The only effect this has is on the speakers' names, which will try to be their chathandle initials in the first case (e.g. EB, uu) and their actual names in the second (e.g. John, Caliborn). Note that not all characters have chathandles (e.g. the Beforus trolls), and not all characters have names (e.g. the Serious Business users), so in such cases Pesterlog Formatter will have to default to using the same name for both log styles.

The button in the top right of the main window, "-14pt+" by default, adjusts the font size of the log while you work on it. This option has no effect on the formatting code produced by the Export Log button, and is purely for your own personal convenience.

All the characters' typing quirks are designed to assume that you are writing their lines with regular punctuation and capitalization. Some characters (e.g. Vriska, Caliborn) will take any sequence of three identical characters and replace it with a series of eight or eleven of those characters instead. Various characters will make alterations to standard emoticons like ":)". Some characters appear to type exclusively in lowercase, but if you type a single word in all caps, Pesterlog Formatter will maintain its capitalization, e.g. "Damn" will be rendered as "damn" but "DAMN" will stay capitalized. Likewise the Serious Business characters tend to use lowercase or uppercase exclusively, unless they are addressing one another with the @ symbol, e.g. "@FineryFiend" will not be changed to "@fineryfiend". Various characters (e.g. Nepeta, Meenah) use a lot of puns in their dialog, and Pesterlog Formatter will try to include some of those for you, but you're mostly on your own. Likewise Pesterlog Formatter is unequipped to create Japanese translations for Damara or animated censor images for Arquiusprite, Meulin's prefixes are always changing and are thus up to you, and Tavrisprite is far too irregular for any set of regular expression rules to capture.

Editing Characters

The simplest use of the "Edit Characters" button (bottom right of the main window) is to enable some of the 30+ characters who are disabled by default, so that they too may be assigned to lines with your log in progress. The list of initially disabled characters includes all nine sprites (counting Calsprite), all the Serious Business users (Earth and Derse both), and various alternate colors or quirks for existing characters, such as Karkat in red, godtier Aradia, or trickster alpha kids. The disabled speakers have gray backgrounds; select one, toggle the "Enabled" checkbox in the upper right corner of the resulting window, and then click "Save Changes" in the bottom middle. That speaker will now be available for selection in the usual way, by clicking the name of a speaker in the log in progress.

You may, if you so choose, edit all other aspects of an individual character. The only required field is "unique-class-name" at the very top of the window. If this has the same value as an existing character (e.g. "dave"), the bottom button will read "Save Changes" and any changes made will be applied to that existing character. If you alter the field to read something else (e.g. "crabdad"), the bottom button will read "Add Character" and clicking it will add your all-new character to the bottom of the list. Just remember to check the "Enabled" box!

The next two rows of options are pretty understandable, and have tooltips/hover text to explain themselves. The first row is for the character's name (e.g. "John"), chathandle (e.g. "ectoBiologist"), and chathandle initials (e.g. "EB"). The second row lets you specify what color the character uses, whether their text is mixed case or all uppercase or all lowercase, and what prefix to apply to each line (if any).

The big dark gray box below that is where you edit the character's typing quirks, and it can be intimidating. For the best results, you will want to have at least a working understanding of Regular Expressions, particularly as used by Javascript. You are also encouraged to study the typing quirks of existing characters and see how they work. To take a very simple example, Sollux replaces all instances of the letter "s" with the number "2". Thus the first field in one quirk—"pattern"—is simply "s". The second field—"replacement"—is simply "2". Because Sollux has a value of "-" for "Capitalize", meaning all of his letters are written in lowercase, you don't need to worry about case sensitivity. If Sollux was able to type in mixed case, you'd want to change "Case In" from "/g" to "/gi", where the "i" stands for "Insensitive" to case. Thus either "s" or "S" would both be changed to "2".

Eridan is somewhat more complicated, including a quirk changing "v" into "vv" and "w" into "ww". This would be trivial to write as two separate quirks, but it can more directly be represented by the pattern "([wv])" and the replacement "$1$1", which uses three distinct bits of Regular Expression syntax. A pair of square brackets [] mean that the pattern can match any one of the characters between the brackets, in this case either "w" or "v". The parentheses mean that their contents are a group, and "$1" is a group reference, meaning that the text will be replaced with the contents of group 1. Thus "v" changes to "vv" and "w" into "ww".

The "Case Out" quirk option is left blank by default, and if set to "-" or "+", will try to change the case of the replacement text. In the above example, setting Case Out to "+" would turn "v" into "VV", "w" into "WW", "V" (if Eridan could type in mixed case—the Capitalize option takes precedence over every single quirk) into "VV", and "W" into "WW". The final two quirk fields, "(prefix)" and "(suffix)", are optional and are only of use when "Case Out" is non-blank. They append text before or after the text of the "replacement" field, but are not affected by "Case Out". For example, a quirk "pattern=b, replacement=$1, Case In=/gi, Case Out=+, (prefix)=a, (suffix)=c" would take every instance of "b" or "B" and replace it with "aBc", capitalizing "$1" (matching "b" or "B" because of case insensitivity) but leaving "a" and "c" uncapitalized.

Quirks are applied in linear order, starting with the topmost quirk for every individual line and going down until there are no more quirks to apply to that line. Quirks may be ordered by dragging and dropping them with the mouse, in case you have two or more quirks whose respective order is important. Quirks may be deleted by clicking the red and white X icon in their upper right, and new quirks may be added to the list by clicking the green and white + icon in the bottom right of the whole window.

Saving Characters

If you've made a custom character that you anticipate wanting to reuse (e.g. your fantroll), the character-editing window has a button "Save to Disk" in the bottom right that will save your character and all its name/color/quirk details to your harddrive as a .pesterchar file. On subsequent visits to Pesterlog Formatter, click "Edit Characters" from the main window and then "Load Character" to open an Open File dialog, which you may use to select your saved .pesterchar file and use it in a new browsing session. There is no limit on how many characters you may export and import in such a fashion.


Homestuck and MS Paint Adventures are creations of Andrew Hussie. Pesterlog Formatter is written by Violet CLM, making use of the Javascript libraries jQuery, jss, DragSort, and ColPick.