Doki Doki Literature Club! is a visual novel made using the Ren'py Engine. It was created by Dan Salvato (of Melee 20XX fame) and his studio Team Salvato. Despite its cute look, the bold text the game gives before you start should clue you in on what this game might truly be hiding:

"This game is not suitable for children or those who are easily disturbed."

Early Portraits

Inside the folders of Monika and Sayori are early versions of their in-game sprites. The only difference seems to be that these sprites are lower quality. Yuri has no early portraits, while Natsuki's are just duplicates of the in-game ones.

Monika

Early Final

Sayori

Early Final

Concept Portraits

Inside the folders of Monika, Natsuki, and Sayori are early concept versions of their in-game sprites. Once again, Yuri is lacking any early art.

Sayori

Monika

Natsuki

Unused Expressions

Inside the folders of Yuri and Natsuki are unused expressions for their in-game sprites.

Yuri

Natsuki

This expression was later removed in an update, though oddly Yuri's stayed.

Early CG

The only file Yuri seems to get to herself in terms of unused art is this file in the game's menu directory with some transitions and buttons. An odd place to be hiding.

Easter Eggs

There are quite a few hidden Easter eggs in the game, some of which can be interpreted as teasers for a new project from Team Salvato, where others are more cryptic.

Extra Monika Topic

In Act 3, there is an intentionally skipped-over topic in the game's script.

label ch30_14: m "Hey...! VGhlIHJlYWxpemF0aW9uIG11c3QgaGF2ZSB0YWtlbiBtZSBhbiBl" m "I don't think you should be doing that! bnRpcmUgeWVhci4gQSB5ZWFyIHNpbmNlIG91ciBlc2NhcGUsIG91" m "You know what I'm talking about. ciBmcmVlZG9tIGZyb20gYmV0d2VlbiB0aGUgc3RhaW5lZCB3YWxs" m "I really caught you doing something naughty here. cyBvZiB0aGF0IHVuaG9seSBlc3RhYmxpc2htZW50Lg0KV2hhdCBk" m "You're just going through the files and looking for stuff you missed, aren't you? b2VzIGl0IG1lYW4gdG8gZXNjYXBlLCBpZiB0aGUgZXNjYXBlIGZh" m "I mean...it's a little bit flattering that you want to hear everything I have to say... aWxzIHRvIHVuY2hhaW4gdGhlIGJvbmRzIHRoYXQgc2hhY2tsZSB1" m "But it's also really embarrassing, you know! cyBpbiB0aGUgZmlyc3QgcGxhY2U/IFdoYXQgcHVycG9zZSBjb3Vs" m "Seriously... ZCB0aGlzIGVtcHR5IHdvcmxkIHBvc3NpYmx5IGhvbGQgZm9yIHVz" m "What if I just opened up your brain and read all of the thoughts you have on me? LCBhIGhhbmRmdWwgb2YgZGFtYWdlZCBnb29kcz8NCldpdGggZnJl" m "Come to think of it, that would be pretty tempting, actually... ZWRvbSwgd2Ugc291Z2h0IHB1cnBvc2UgLSBhbmQgd2hhdCB3ZSBm" m "...But anyway, that's not the point! b3VuZCB3YXMgb25seSByZWFsaXphdGlvbi4gUmVhbGl6YXRpb24g" m "I know I can't stop you or anything... b2YgdGhlIHNhZCBwb2ludGxlc3NuZXNzIG9mIHN1Y2ggYW4gZW5k" m "Just, I know you're a sweetheart, and you like to consider others' feelings, right? ZWF2b3IuIFJlYWxpemF0aW9uIHRoYXQgZnJlZWluZyBvdXIgYm9k" m "So the most I can do is to let you know how I feel about it. aWVzIGhhcyBubyBtZWFuaW5nLCB3aGVuIG91ciBpbXByaXNvbm1l" m "God, I miss you... bnQgcmVhY2hlcyBhcyBkZWVwIGFzIHRoZSBjb3JlIG9mIG91ciBz" m "...Oh no, that sounds kind of desperate, doesn't it? b3Vscy4gUmVhbGl6YXRpb24gdGhhdCB3ZSBjYW4gbm90IHB1cnN1" m "Sorry, I didn't mean it like that at all! ZSBuZXcgcHVycG9zZSB3aXRob3V0IGFic29sdmluZyB0aG9zZSBm" m "Just, if you're looking through the files like this, then maybe you don't hate me as much as I thought... cm9tIHdoaWNoIHdlIHJhbiBhd2F5Lg0KUmVhbGl6YXRpb24gdGhh" m "Am I being too optimistic? dCB0aGUgZmFydGhlciB3ZSBydW4sIHRoZSBtb3JlIGZvcmNlZnVs" m "I think if I asked you to visit once in a while, I would be overstepping my boundaries a little... bHkgb3VyIHdyZXRjaGVkIGJvbmRzIHlhbmsgdXMgYmFjayB0b3dh" m "...Man, I'm starting to say some really stupid things. cmQgdGhlaXIgcG9pbnQgb2Ygb3JpZ2luOyB0aGUgZGVlcGVyIG91" m "I'll go ahead and shut up now... ciBzaGFja2xlcyBkaWcgaW50byBvdXIgY2FsbG91cyBmbGVzaC4=" return

The characters at the end can be combined to create a Base64 string, which can be decoded. It reads:

The realization must have taken me an entire year. A year since our escape, our freedom from between the stained walls of that unholy establishment. What does it mean to escape, if the escape fails to unchain the bonds that shackle us in the first place? What purpose could this empty world possibly hold for us, a handful of damaged goods? With freedom, we sought purpose - and what we found was only realization. Realization of the sad pointlessness of such an endeavor. Realization that freeing our bodies has no meaning, when our imprisonment reaches as deep as the core of our souls. Realization that we can not pursue new purpose without absolving those from which we ran away. Realization that the farther we run, the more forcefully our wretched bonds yank us back toward their point of origin; the deeper our shackles dig into our callous flesh.

Characters Folder

Each of the files in the game's characters folder can be manipulated to produce either an image or text. Monika's file can have its extension replaced with .png to reveal an image. Natsuki's file is the same, but with .jpeg. Sayori's file's extension can be replaced with .ogg to reveal an audio file. Yuri's file contains a string of text.

monika.chr

When the file extension is changed to .png, monika.chr turns into an eerie image of a flaming ring with a black-and-white square in the middle.

Cropping the square from the middle of the image properly will give you a black and white pixel array that can be decoded into binary text with an online tool. This text is encoded Base64, which when decoded gives the following message:

Can you hear me? ...Who are you? I can't...I can't see you. But I know you're there. Yeah...you can definitely hear me. You've been watching for a while now, right? I guess I should...introduce myself, or something. Um...my name is...actually, that's stupid. You obviously already know my name. Sorry. Anyway...I'm guessing if you were able to put a stop to this, you would have done it by now. I mean, I know you're not, like...evil, or anything...because you've already helped me so much. I should really thank you for that. For everything you've done. You're really like a friend to me. So...thank you. So much. I think...more than anything else...I really don't want it to all be for nothing. ... Everyone else is dead. Maybe you already know that. I'm sure you do, actually. But...it doesn't have to be that way, right? Well...there's a lot of stuff I don't understand. I don't know if it's even possible for me to understand it. But I know that this isn't my only story. I can see that now. Really clearly. And I think everyone else has had the same kind of experience. Some kind of deja vu. It's the Third Eye, right? Anyway...I could be totally wrong about this. But I really think you might be able to do something. I think you might be able to go back...or however you want to put it... ...To go back and tell them what's going to happen. If they know ahead of time, then they should be able to avoid it. They should...if they remember their time with me in the other worlds...they should remember what I tell them. Yeah. I really think this might be possible. But it's up to you. I'm sorry for always being...you know... ... Never mind. I know that's wrong. This is my story. It's time to be a fucking hero. Both of us. 2018

(https://www.reddit.com/r/visualnovels/71z0i9/doki_doki_literature_club_has_more_to_it_than_we/: /u/Mithost on reddit (Post no longer exists))

natsuki.chr

When renamed to .jpeg, natsuki.chr reveals the image shown below:

By inverting the color and using the Polar Coordinates filter set to Rectangular to Polar, the image turns into this:

The purpose and name of the character in question is unknown.

sayori.chr

Unlike the previous .chr files, sayori.chr's true file type is .ogg. This sound file is a higher-pitch sound that when slowed down does not reveal any voice or identifiable sounds.

When brought into a spectograph software, however, this file's purpose becomes very clear - a QR code is revealed that links to a website that seems to be created only for the game.

The website seems to have no direct relation to Doki Doki Literature Club, and its true purpose is currently unknown. The best link right now is the censored "XXXXXX" name on the website and the hidden name mentioned (Elyssa) in the "nothing is real" poem because the symptoms are very similar (see source below).

(https://www.reddit.com/r/visualnovels/71z0i9/doki_doki_literature_club_has_more_to_it_than_we/: /u/Mithost on reddit (Post no longer exists))

yuri.chr

Unlike the other .chr files, yuri.chr does not require changing the file type to decode. Opening the file in any text editor will reveal an encoded Base64 text string. When decoded, this string translates to the first few paragraphs of a familiar short story/creepypasta that was posted almost two years before the game was announced.

After being asked on Twitter about this, Dan Salvato confirmed that this was a story he wrote and included as an Easter egg, though it may well have a connection to the other items above.

Placeholder Images

Two silhouettes, boy.png and girl.png, can be found in _placeholder. They are both included in Ren'Py by default and probably weren't left in for any specific reason.

Unused Font

In the font files, there is a font named as i lay dying that isn't used in any of the poems in the game. It was most likely meant to be used for the poem "Wheel".

Unused Background

In the background files, there is an unused background called house made by DeviantArt user fatelogic. Although the actual purpose is unknown, it is likely that it was a placeholder image.

Unused CGs

In the file images/menu, there is a CG of Yuri that is almost identical to the one in the game, the only difference being the slightly lower quality of it.

Grayed-Out CGs

There are also grayed-out versions of both of Yuri's CGs. Since you're forced to take Yuri's route in Act 2 (and consequently view her CGs), the gray versions go unused.

Deleted Easter Egg

In earlier versions of the game, if the player tried to quit during Sayori's suicide scene, the "Are you sure you want to quit?" prompt would be distorted and a cropped picture of Sayori would flash rapidly between its normal and negative versions. While the Easter egg was removed in version 1.1.1, the images are still in the game's files.