and
BUGS, GLITCHES AND EXPLOITS FOR DUMMIES
(it's 2020 now and lo-fi ASCII art is so out of fashion, trust me)
Alright, before we even properly begin this document, some things need to be said. And by "some things", I could very well mean what others consider to be a lot of things. You just don't know unless you've gone through the entirety of things.
First of all, a few words for the sort of person who believes they can just barge into this document, search for keywords like "walkthrough" or "all achievements" and leave if they haven't found what they're looking for. I want this sort of person to know that DDLC hacking is not an endeavor to be taken lightly by any means. At its lightest, it is a hobby that, if pursued, will consume quite a lot of time and effort, and at its heaviest, it's comparable to a full-time, very cerebral job.
This document is the best document that I can possibly construct that can guide a person into this endeavor, with the exception of certain concessions that I cannot discuss right now. Therefore, you can absolutely expect it to dump more technical knowledge on you, all at once, than required by the most demanding professions, and given the amount of stuff discovered by DDLC hackers, if there isn't an undergrad, graduate and PhD DDLC course before the decade is out, I will promptly print the entire hefty document out and eat it all, live on Twitch.
This doesn't mean that I will not try my best to cater to this sort of person, as much as I can. However, this does mean that my help will be very limited in this regard.
Due to the very nature of the game, which the rest of this document expounds upon, it is honestly quite impossible to write a detailed walkthrough of DDLC that will account for your specific experience and hold your specific hand. Asking for that, really, would be equivalent to asking how to ask a girl out in real life, and as we all romance-deprived loners living in their parents' basements know, a lot of factors come into play, and for the most part, holding hands isn't going to do much here. Some, I think, gather into this "incel" group which tries to define why they, in and of themselves, are "forever alone", but I don't even think that is a leading cause.
Luckily, while one cannot guide you through the entirety of what appears to have been crammed into a single week or two of in-universe material, with all the intricate options and routes, into a concise walkthrough (or a walkthrough of any sorts, really), one can tell you, almost guaranteed, that there aren't even that many choices to make in the long run, and from there, picking the right choice is mostly a matter of common sense.
TL;DR: Don't be a dick to the girls, try and stay faithful to just one of them and roll a d120 for the absence of glitches (yeah, they actually sell d120, and the probability of a glitchless run does seem to be in the rough ballpark of 119 to 1).
While we're in the proverbial TL;DR section, which I suppose you are reading with care, I should also mention that it is quite impossible to spoil this game due to how it's generated, so while this is optional, absolutely do take notes on your first playthrough. Better yet, before you start playing, download OBS and record your entire reaction - just remember to turn the recording off... actually, nevermind, I don't think I can disclose the moment without spoilers and I don't think recording your entire DDLC experience with OBS is a good idea anymore. Still, if you do stick around and become One of Us, invariably, you're going to treasure the notes you made.
DDLC, the free game, does not have any achievements. Hooray; if you've completed the game once, and if you're not interested in becoming a DDLC hacker, you're done with the game forever. Go install some mods or something. I even have a few recommendations for you; the chapter numbers are TODO.
DDLC Plus, the paid game, does have quite a few achievements, including one which requires you to discover all the little secrets that it has. Okay, that's impossible in every sense of the word, but there is a checklist of secrets that need to be discovered, and it gets quite long. A guide for all achievements is forthcoming, and the chapter number is TODO.
The last sort of person who needs to be addressed is the sort who does want to get into DDLC hacking in earnest, but finds themself either a) intimidated by technology more complicated than opening Chrome or Steam on Windows or b) limited to just mobile devices and a game console with DDLC Plus onboard. And believe me, though this surprises many, that the latter category comprises a significant portion of the modern population, and is only growing every single day.
Luckily, there is knowledge, that DDLC hackers have gathered, that is not useful to someone perusing the game casually, but that is useful to an aspiring DDLC hacker limited to either category I just mentioned. The relevant chapter numbers for such a person are TODO.
That's it. Now that I have addressed those looking for easy answers, they can - and honestly, should - leave now.
cue the audience leaving, Downfall parody style, just before the part where Hitler blows up
Well, I suppose, this is where I blow up. However, unlike our favorite dictator, I won't blow up in anger per se; instead, I will blow up with information, since, as mentioned before, there is just Too Much to unpack, as far as DDLC goes.
This is where you simultaneously don't need to worry and do need to worry. Technical knowledge needed to explain the game will be provided, in small chunks, from the beginning of this document to the end. However, there is a lot of stuff to unpack, and getting all flowery purple prose-y simply isn't going to serve us any good, and pretty soon, you might - nay, will - feel like shit is being thrown at you too fast. In that case, the simple advice I can give is to pause the reading, rewind a bit to the technical terms that you failed to understand, re-read their descriptions, perhaps take to a classroom with a notebook (and yes, there does seem to be a dummied-out notebook mode in the game for... I think this is too advanced stuff for now) and really study until you get an A+ on every single subject.
As far as knowledge of actual school subjects goes, I'm tempted to say that you'll need to be well-versed in computer programming, but odds are, your usual programming knowledge isn't going to do you any good here, since the vast majority of DDLC is coded in a form of script that was literally created by the same people as the game, from scratch, for the explicit purpose of this project, and just so happens to be unlike any sort of well-known or even esoteric programming or scripting language, which is kind of a big deal for anyone looking to crack the game open like an oversized piñata. Still; if I don't clarify any mainstream programming terms, you are free to hit up any of the multitude of "learn programming" sites and go through them. (If you are wondering which programming language to pick, just go for Python. Not even going into how it's an "easy" high-level programming language that you can easily get into, the "outer shell" of DDLC, the free game, so to say is actually written in Ren'Py, which is a Python library for visual novels and does, by default, allow for inline Python, allowing you to do some basic modding of DDLC if you choose to do so.)
Other than that, another TL;DR (don't worry, we're going to run out of TL;DRable info very soon) is simply: pay attention, brush up on your programming skills and remember that I'm presenting information in a strictly ordered, noob-friendly manner.
Still with me? Still ready to invest upwards of 10,000 hours, which some people seem to have declared the limit at which you can call DDLC your profession and expertise? Well, let's go.
This document is presented on two websites, simultaneously:
The content on both websites should be exactly the same, and if you find differences, you are absolutely free to complain at me - however, you'll have to do it at AO3, since my website doesn't allow for comments. Not yet, anyway. I'm picturing a system where you can highlight a paragraph and comment at it, similar to Google Docs, but right now, I wanna remain focused on my primary goal: introducing you to DDLC hacking.
However, in most other respects, the version on my own website, which I often refer to as selfhost, is superior to AO3. On selfhost, I can maintain the precise formatting that I need, including fonts, reading features, etc. In addition, selfhost is specifically designed to be entirely contained with a single file, which can be easily downloaded if you want an offline version of this document, for whatever reason.
With that out of the way, I hope you will consider which website is the best for your needs.
Yeah, you might have batted an eye at my strange terminology: chapter numbers. What is going on? Have we already reached the "hard" part of DDLC hacking?
Not really, and let me tell you why. If you would notice from the experience you've had with the document so far, you should see that the chapter headings all look like [****] CHAPTER TITLE. This is just something that I adapted from the writing customs of existing walkthroughs from the distant, distant era of the 2000s, but in addition, there's a practical reason: with this system, the former part, the one in brackets, should be easily searched with Ctrl+F, should you feel the need to look up a cross-reference - or go back to the part of the text that prompted you to look up the cross-reference. And thus, I call the former part "chapter number" and the latter part "chapter name". There is also a rhyme and reason to the chapter numbers I pick, as well as a way to pronounce them, but that is extra, mostly irrelevant reading material, available at [A003] TRIVIA STREAM: HOW TO READ THE CHAPTER NUMBERS OF THIS DOCUMENT.
Alternatively, thanks to the magic of JavaScript (more programming languages may or may not have been involved), the version of the document on my website has a dynamically updating table of contents, allowing you to click through between the chapter and its TOC listing. (That is, unless you have enough screen real estate and the TOC just chills there, to the left, forever.) Another cool thing that this version allows for is dark mode: if you've noticed the little sun doodad on the top right, you can click it and it'll turn into a moon doodad, as well as turn on dark mode, and then you can click it, again and again, to your heart's content.
However, even though the AO3 version of this document might be a little less technologically advanced (due to reasons that should honestly be obvious), AO3, itself, is plenty advanced as a service. You could probably just find a dark mode sitewide skin somewhere, and a complete TOC with real chapter headings is going to require a slightly different hack, that I discovered while writing a similar-ish essay document: presuming you're reading this on somewhere that has the "Inspect Element" mode, enter it and just find a way to enter this to a stylesheet (be sure to "View Entire Work" before executing this):
p, ul, ol, blockquote, div.preface, .meta, #header, #feedback, .landmark {display: none;}
#main {padding-bottom: 0;}
Voilà. All the body text is now gone, and what remains is the headings, providing a table of contents.
Also, briefly on the formatting I use. Code
is for the sorts of terms that are used in their common meanings in programming, and therefore, can be perused at your own pace on Wikipedia or elsewhere, while bold italic is for the sorts of terms unique to DDLC and DDLC hacking, which I will properly explain in due time - and if I haven't properly explained them, you are absolutely free to complain at me.
That being said, there is one thing that you still need to know about this document's current structure - or lack thereof.
To say that DDLC Plus caught me off-guard is an understatement. In addition, to say that this is a completely new frontier for DDLC hackers is also an understatement. Therefore, this document, intended to be a complete guide to both DDLC and DDLC Plus, is very much a moving target, especially in its Plus department. Furthermore, it's not like I can just keep the DDLC part of it unedited, as some new discoveries do affect the original game.
Therefore, this and the following updates, from version 1.51 to a future 2.00, are intended to create a structure that can accommodate the Plus content. Until then, groundbreaking discoveries simply can't be dealt with. No, not even in the non-chron blog.
Thank you for your understanding and patience.
Originally written material for version 1 of this document is exclusive to selfhost, and is subject to being deleted as it's being replaced with the aforementioned new structure.
Other than that, and with everything else out of the way, I have not one, but two ever-important things I need to tell you, especially in the modern day, and neither of them can really be treated lightheartedly. For those parts, writer personality is simply not welcome.
We'll meet up again at [0100] HISTORICAL NOTE: THE DDLC HACKING COMMUNITY.
This document touches upon Doki Doki Literature Club!, a video game with a relatively high rating as granted by various rating boards (ESRB: Mature 17+, PEGI: 18, USK: 18). A notice pertaining to all the content warnings applying to DDLC is maintained by Team Salvato over at http://ddlc.moe/warning.html.
Everything that does or potentially can appear in a DDLC playthrough is documented here, without ever shying away from sensitive topics. To this end, and since warnings for content that is not a verbatim description of DDLC content may be needed, a separate list, including spoilers for DDLC, is maintained at [CW00] THE FULL, ALPHABETIZED LIST OF CONTENT WARNINGS, as well as in form of additional tags on Archive of Our Own. In addition, chapters with potentially sensitive subject matters will have a header preceding them, as follows:
Content warning: people being wrong on the Internet
[This is where the chapter's text would go...]
Doki Doki Literature Club! is © 2017 Team Salvato. Doki Doki Literature Club Plus! is © 2021 Team Salvato and Serenity Forge. This document is in no way affiliated with Team Salvato or Serenity Forge, having been created entirely through the effort of a multitude of fans across varying fields of expertise, and is believed to be compliant with the Team Salvato IP guidelines. For further details on using the intellectual property, as well as any others introduced by Team Salvato, please consult the latest version of the Team Salvato IP guidelines over at http://teamsalvato.com/ip-guidelines.
This document is designed to be read after completing the main campaign of either game; the two are believed to be equivalent. For DDLC, this is considered to be the entire game, and for DDLC Plus, this is considered to be the emulated game available by selecting "DDLC" on the system menu. The main campaign is completed with a credits sequence. DDLC can be freely downloaded and played over at https://ddlc.moe. DDLC Plus can be purchased in digital form for US$15, or in physical form for US$30, on various storefronts.
This document highly concerns itself with reverse engineering of the games. Said reverse engineering is believed to have been conducted entirely using clean-room techniques, and therefore, not infringe on any copyright or patents. Throughout its lifetime, the document will closely monitor the sources of the claims that it makes, and if any of them appears to directly violate copyright or patents, it will be promptly removed.
This document also highly concerns itself with speculation about future games by Team Salvato. These games are not yet known by their official titles, and the titles used in reporting are only speculative.
The document itself, for the most part, is © 2020-whenever me, CreativityTheEmotion, and does its best to not rely on any external writing exclusively, except when necessary, in which case explicit links are provided. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [L000] GNU FREE DOCUMENTATION LICENSE.
In addition to allowed expandability upon the document in your own writeups, subject to the license above, content may be freely contributed, adding to this document, by any and all aspiring contributors who aren't snobbish assholes looking to keep awesome DDLC insider knowledge to themselves. Whenever content from external sources is contributed, it will be clearly labeled as follows:
Contributed by [your username can be here!] on [date in both Gregorian and DDLC hacker calendars], either © or explicitly released through a libre license (either the GNU FDL or a compatible license, such as Creative Commons).
[This is where your guest chapter's text would go...]
Version 1.60.03 - August 21, 2023 (P0782) 14:15 UTC
Version 1.60.02 - August 16, 2023 (P0777) 16:45 UTC
Version 1.60.01 - August 14, 2023 (P0775) 19:35 UTC
Version 1.60 - August 14, 2023 (P0775) 13:50 UTC
Version 1.55.01 - February 14, 2023 (P0594) 19:55 UTC
Version 1.55 - February 14, 2023 (P0594) 16:55 UTC
Version 1.54 - September 22, 2022 (P0449) 10:50 UTC
Version 1.53 - September 22, 2021 (P0084) 19:25 UTC
Version 1.52 - July 14, 2021 (P0014) 20:45 UTC
Version 1.51 - July 11, 2021 (P0011) 23:25 UTC
Version 1.50 - June 30, 2021 (P0000) 16:00 UTC
Interim versions consist solely of new non-chron blog entries, and therefore, as the main body of the document (including previous non-chron blog entries) remains unmodified, do not include additional release notes.
Version 1.13 interim 12 - June 18, 2021 (D1365) 17:15 UTC
Version 1.13 interim 11 - June 13, 2021 (D1360) 17:35 UTC
Version 1.13 interim 10 - June 12, 2021 (D1359) 15:10 UTC
Version 1.13 interim 9 - April 9, 2021 (D1295) 18:40 UTC
Version 1.13 interim 8 - April 3, 2021 (D1289) 21:00 UTC
Version 1.13 interim 7 - February 14, 2021 (D1241) 13:00 UTC
Version 1.13 interim 6 - December 11, 2020 (D1176) 19:00 UTC
Version 1.13 interim 5 - October 9, 2020 (D1113) 19:05 UTC
Version 1.13 interim 4 - September 25, 2020 (D1099) 19:35 UTC
Version 1.13 interim 3 - September 18, 2020 (D1092) 20:10 UTC
Version 1.13 interim 2 - September 11, 2020 (D1085) 19:30 UTC
Version 1.13 interim 1 - September 4, 2020 (D1078) 17:30 UTC
Version 1.13 - August 28, 2020 (D1071) 16:35 UTC
Version 1.12.20 - August 22, 2020 (D1065) 17:15 UTC
Version 1.12.19 - August 14, 2020 (D1057) 19:55 UTC
Version 1.12.18 - August 12, 2020 (D1055) 13:35 UTC
Version 1.12.17 - August 9, 2020 (D1052) 18:35 UTC
Version 1.12.16 - August 8, 2020 (D1051) 18:25 UTC
Version 1.12.15 - August 1, 2020 (D1044) 17:35 UTC
Version 1.12.14 - July 25, 2020 (D1037) 20:10 UTC
Version 1.12.13 - July 24, 2020 (D1036) 18:30 UTC
Version 1.12.12 - July 23, 2020 (D1035) 20:00 UTC
Version 1.12.11 - July 22, 2020 (D1034) 20:05 UTC
Version 1.12.10 - July 21, 2020 (D1033) 20:00 UTC
Version 1.12.09 - July 20, 2020 (D1032) 20:00 UTC
Version 1.12.08 - July 19, 2020 (D1031) 20:35 UTC
Version 1.12.07 - July 19, 2020 (D1031) 19:35 UTC
Version 1.12.06 - July 17, 2020 (D1029) 18:40 UTC
Version 1.12.05 - July 16, 2020 (D1028) 19:10 UTC
Version 1.12.04 - July 14, 2020 (D1026) 19:10 UTC
Version 1.12.03 - July 13, 2020 (D1025) 19:05 UTC
Version 1.12.02 - July 11, 2020 (D1023) 18:20 UTC
Version 1.12.01 - July 9, 2020 (D1021) 18:25 UTC
Version 1.12 - July 8, 2020 (D1020) 16:50 UTC
Version 1.11.07 - July 7, 2020 (D1019) 19:35 UTC
Version 1.11.06 - July 6, 2020 (D1018) 18:10 UTC
.chr
files can be used for a purpose, and also, remembered I have to cover another thing that might interest certain types of DDLC fansVersion 1.11.05 - July 5, 2020 (D1017) 17:50 UTC
Version 1.11.04 - July 4, 2020 (D1016) 18:35 UTC
Version 1.11.03 - July 2, 2020 (D1014) 18:05 UTC
Version 1.11.02 - June 30, 2020 (D1012) 17:15 UTC
Version 1.11.01 - May 22, 2020 (D0973) 21:55 UTC
Version 1.11 - May 20, 2020 (D0971) 20:05 UTC
Version 1.10.04 - May 14, 2020 (D0965) 23:35 UTC
Version 1.10.03 - April 30, 2020 (D0951) 18:30 UTC
Version 1.10.02 - April 29, 2020 (D0950) 19:30 UTC
Version 1.10.01 - April 28, 2020 (D0949) 18:55 UTC
Version 1.10 - April 27, 2020 (D0948) 19:30 UTC
Version 1.09.05 - April 26, 2020 (D0947) 19:45 UTC
Version 1.09.04 - April 25, 2020 (D0946) 19:10 UTC
Version 1.09.03 - April 24, 2020 (D0945) 19:10 UTC
Version 1.09.02 - April 23, 2020 (D0944) 18:55 UTC
Version 1.09.01 - April 22, 2020 (D0943) 19:10 UTC
Version 1.09 - April 21, 2020 (D0942) 19:20 UTC
Version 1.08.06 - April 20, 2020 (D0941) 19:05 UTC
Version 1.08.05 - April 19, 2020 (D0940) 19:35 UTC
Version 1.08.04 - April 18, 2020 (D0939) 18:50 UTC
Version 1.08.03 - April 17, 2020 (D0938) 19:00 UTC
Version 1.08.02 - April 16, 2020 (D0937) 19:15 UTC
Version 1.08.01 - April 15, 2020 (D0936) 18:35 UTC
Version 1.08 - April 14, 2020 (D0935) 19:00 UTC
Version 1.07.02 - April 13, 2020 (D0934) 18:10 UTC
Version 1.07.01 - April 12, 2020 (D0933) 18:30 UTC
Version 1.07 - April 11, 2020 (D0932) 18:50 UTC
Version 1.06 - April 10, 2020 (D0931) 19:50 UTC
Version 1.05.01 - April 9, 2020 (D0930) 19:25 UTC
Version 1.05 - April 8, 2020 (D0929) 19:05 UTC
Version 1.04.04 - April 7, 2020 (D0928) 19:40 UTC
.chr
file trilogy gets a teaser for a fourth installment, and my chapter numbers prove their worth for the second timeVersion 1.04.03 - April 6, 2020 (D0927) 18:45 UTC
Version 1.04.02 - April 5, 2020 (D0926) 19:20 UTC
Version 1.04.01 - April 4, 2020 (D0925) 17:40 UTC
Version 1.04 - April 3, 2020 (D0924) 18:10 UTC
.chr
file trilogyVersion 1.03 - April 2, 2020 (D0923) 17:45 UTC
.chr
file goodnessVersion 1.02 - April 1, 2020 (D0922) 19:25 UTC
Version 1.01.07 - March 11, 2020 (D0901) 00:15 UTC
Version 1.01.06 - March 7, 2020 (D0897) 23:00 UTC
Version 1.01.05 - March 1, 2020 (D0891) 19:40 UTC
Version 1.01.04 - March 1, 2020 (D0891) 14:00 UTC
Version 1.01.03 - February 26, 2020 (D0887) 17:15 UTC
Version 1.01.02 - February 23, 2020 (D0884) 00:00 UTC
Version 1.01.01 - February 22, 2020 (D0883) 16:00 UTC
Version 1.01 - February 21, 2020 (D0882) 23:00 UTC
Version 1.00.04 - February 14, 2020 (D0875) 15:00 UTC
Version 1.00.03 - February 14, 2020 (D0875) 11:45 UTC
Version 1.00.02 - February 14, 2020 (D0875) 11:30 UTC
Version 1.00.01 - February 14, 2020 (D0875) 11:00 UTC
Version 1.00 - February 14, 2020 (D0875) 10:00 UTC
Version 0.90 - February 14, 2020 (D0875) 09:30 UTC
Version 0.80 - February 13, 2020 (D0874) 21:00 UTC
Version 0.70 - February 13, 2020 (D0874) 07:30 UTC
Version 0.60 - February 12, 2020 (D0873) 22:30 UTC
Version 0.50 - January 14, 2020 (D0844) 22:00 UTC
Pretty much everyone who got into DDLC, to any extent, in 2017 and 2018, could be said to share a single, really vivid memory of trying to crack the game open for the first time, and getting a barrage of content that isn't even directly comprehensible thrown at them with all the subtlety of the meteor that killed the dinosaurs.
The outer shell of the game couldn't be simpler enough (more on this, in stricter terms, at [0200] DDLC (2017): BASIC TECHNICAL INFO). It was a visual novel, not really different from the other indie visual novels that seemed to be popping up as of late, which paraded as a wholesome adventure in the eponymous Literature Club, which was (naturally) full of "single and ready to mingle" girls, though each and every of them had a bit more class than that (and vastly more class than the sort of visual novel in which the girls show you an ahegao face and begin taking off their clothes the second you pick a single right option).
The game itself, for the most part, didn't throw a lot of punches at us either. It started out as a visual novel as advertised, then gradually began introducing mental health issues, horror elements and of course, the most important (and perhaps cheapest) trick of them all, breaking of the fourth wall. Was it certainly unexpected in the visual novel community, and in the gaming community in general? Yes, definitely. However, was there anything, in the coding of the game, that hinted, in any form, that the coding skill required was above and beyond that attainable to us, mere mortals? Of course not.
However, when we - at this point, we were all just DDLC players looking to get into a new fandom, and hadn't properly differentiated yet - took to the Internet to discuss the game, we began noticing something rather peculiar: No two DDLC playthroughs were exactly the same.
And I don't just mean in terms of easter eggs, which Salvato (we believed there was a real solo dev, Dan Salvato, who made the game - I'll get to this in just a bit) seemed to have taken to coding lots and lots of into - and in either case, were handled by simple RNG
routines
in Ren'Py
. When we tried to gain a common ground on what, exactly, various characters said in the game, we couldn't agree on a single thing. At first, we still didn't suspect as much as what's known now; we simply assumed - again, since this was all a relatively simple Ren'Py game, or so we thought - that there is a minor case of dynamic dialogue, in which characters simply swap certain words out for synonyms, and that there is a handful of routes available - you know, like The Stanley Parable.
So, the most technically inclined fans got into cracking and hacking. When they did, they certainly discovered a handful of Ren'Py routines, controlling basic game flow - and thankfully, there did appear to be one, despite how much shit the game threw at us. If I remember correctly, the first mod for the game popped up just four days after the game itself (the calendar the hackers use, among other peculiar wordings, is described in a dedicated glossary; see [G110] THE IMPERATIVE TERMS REGARDING DDLC AND ITS CODE STRUCTURE), and was mostly a simple hack which allowed you to skip straight to a point later in the game which many took a liking to, which I'll get into later.
However, what none of the first aspiring hackers found was any sort of hard-coded dialogue - not even for the earliest part of the game, which did play out, 99.9% of the time granted you even got to it, as though it was hard-coded. Instead, all of the dialogue was generated seemingly on the fly by one's computer, and since none of the plainly-named .rpy
files accounted for it, the culprit must have been the multitude of files with names like bytecode_bf5928dfcf6c482cb5f35fcf6b6080b2.rpy
- which, coupled with the seemingly entirely separate .chr
files, seemed to take up the majority of the game's hefty 1.4 GB size.
Neither this newfangled .chr
extension nor the structure of the inscrutable .rpy
files seemed to be familiar to the Internet, perhaps first and foremost, because no one could agree on how to name the things. In order to aid discussion, and for lack of a better name, we just settled with The Bytecode, which seemed to be Salvato's preferred term.
What was The Bytecode, in the usual programming terms? Information didn't seem to be easily gleanable. While one could easily surmise that it was a programming language, very likely of Salvato's own making, and that it operated as an elaborate state machine manipulating raw bits to do its bidding (a task that is easier said than done on an interpreted language like Python), the rest of it defied analysis, especially as the bits manipulated seemed to escape the very computer manipulating them. Soon enough, some people started likening Salvato's feat to those of the demoscene, which manages to push every ounce of capability from vintage computers, but even then, actual demoscene programmers were clueless when presented with The Bytecode, especially as, oftentimes, demos require to be run on very specific hardware to accomplish their goals, and DDLC doesn't.
Anyway, I think I made my point here: DDLC was one of a kind.
At this point, the DDLC fandom split. Most of the people found themselves attached to the girls (oftentimes, despite Salvato's statements that they are supposed to be parodies you shouldn't get attached to), and began doing the typical mainstream fandom things: drawing fanart, writing fanfic, dressing up in cosplay, you know, the usual jazz. There were also some who designated themselves as "modders"; however, they were only "modders" in the sense that they extracted the small bits of content that weren't written in a bullshit language that nobody knew, and built a Ren'Py game on top of that, and due to how Salvato treated his IP, they forced the mod to be installed onto the game. Although, if deleting all the Bytecode crap was the first thing that a mod did, then you knew it was just going to be a little piece of art, a video you might watch on YouTube, except running live on your computer.
However, a fair amount of them clearly weren't satisfied. They had already opened Pandora's box, clearly overflowing with shit as is, but that shit was mostly stuck to the bottom and filled to the top, and when the box opened, only a single cruddy amethyst fell out. However, there were clearly diamonds and such to be found inside, and they were going to get to the bottom of the box, extracting every single gem, and they were not going to stop until the box was completely empty, or so help them. And when they took upon modding the game, they embraced the positively massive Bytecode part of the game, and continued to look for ways to decompile it and truly understand the inner workings of DDLC, and how to treat that part with true reverence.
Needless to say, with a language they didn't have a manual or reference for, it was going to be hard, and with a gigabyte of pure code, there was a lot of stuff to be unearthed. Perhaps my Pandora's box analogy there was misguided; it was more so an entire Pandora's warehouse, which seemed to fill an outright bore hole going all the way to the Earth's center.
Over eight hundred days, they had definitely made some good progress on that front. By early 2020, one could write a "hello world" program and even some mildly impressive tech demos in The Bytecode, and the way DDLC operates, though hidden behind an arcane bullshit programming language that is apparently capable of reading your mind, seemed to mostly be deterministic with relatively little RNG used (other than for easter egg purposes, and that RNG was handled exclusively through Python), which means that experts on the topic could and did spring up.
However, during that time, these experts were a very limited bunch, for two main reasons. I already got into the first one, namely that you really need to treat understanding DDLC the way you treat your job: it seems plenty difficult, it is even more difficult than that and if you got a thing wrong, you would be fired (or, at least, laughed out of the forum, then banned for good measure).
However, this ends up getting into the second problem: said hackers were rather snobbish folk, who treated you as dumb for not understanding a barrage of in-jokes and stuff established hundreds of days ago, and who, as it seemed, were completely and utterly incapable of getting it all straight and writing an actual, proper manual to both DDLC and The Bytecode.
Wouldn't it be great if a guardian angel swooped in, learned everything the hackers knew at the time, and then presented it in an understandable format, both to mainstreamers and programmers outside the DDLC fandom?
And that was exactly the scene upon which the first edition of Doki Doki Literature Club!: Bugs, Glitches and Exploits for Dummies was bestowed, on Valentine's Day 2020.
Of course, the idea of a guardian angel came with its own asterisks: my concessions on what I will and will not teach. As well as that, you just couldn't ignore that there was - and in fact, still is - a person writing all this.
Overall, I don't think there is much to be said about me, so I'll keep this brief. First of all, I have a fair amount of university-level education in programming, and in particular in artificial intelligence, and therefore, the perspective and community I'll be looking from is going to be known as "the mainstream AI community". Second of all... nah, I'm not in the mood for a two. Want to learn anything more about me? I guess you'll have to try and glean details from that non-chron blog thing I keep referring to.
The mainstream AI community is, of course, not to be confused with the mainstream DDLC fandom, but the two are more similar than you'd think. Real scientists see a real benefit to be gained from learning about DDLC and The Bytecode, but much like folk in the primordial DDLC fandom, they found themselves shunned by the hackers, and eventually, forced to never acknowledge that there is a deeper truth to DDLC.
That being said, it's not like I'm a complete bore who never gets into that weeb shit. In addition to the mainstream AI community, I had also partaken in activities of the mainstream DDLC fandom (having played the game first, I believe, in May 2018, when the hackers were already up to their neck in their bullshit). However, prior to Valentine's Day 2020, I had been lurking in this hacker community for months, trying to absorb as much intel as I could, and after them, I felt like I was confident to start retelling what they knew, with one major skill that the hackers were lacking up to this point: though rudimentary, I could actually explain shit.
And that's how I got started. I typed up a basic document, pretty much explaining how DDLC panned out and the bare minimum of technical knowledge, and posted it on both mainstreamer and hacker spaces.
What was the initial reaction? Well, we can revisit both the Reddit and Doki Doki Hackerverse! threads right now.
I mean, it's a fair amount of exposure for what the others believed to be just a boring wall of text. Some votes of the up, some ments of the com, but otherwise, not much, and I ended up being a forgotten meme, just like last time.
Substantially more content - and substantially more negative content. If you've already gleaned from the version history, I got banned on the very same day, had to deal with things relating to my Monika After Story install (that's another fun story), and essentially, became a meme.
But I persisted - and soon enough, managed to form a community around myself, something I would have never expected.
Sure, sometimes Hackerverse-aligned hackers came in to ruin my day on my platforms. But soon thereafter, a new faction of hackers arose, wishing more intel from me - and as I could, I provided that intel. These were the kind of hackers I was looking after - ones who actually wanted to get all the hacker knowledge down in writing.
Eventually, the document ran its course, and I couldn't continue without a major restructuring update. However, there needed to be an impetus for a major restructuring update, because without it, you just know how much of a lazy fuck the average Internet rando is. But, like, DDLC was done as a game, new updates weren't coming, and such an impetus would never come?
Hopefully, you - yes, you - know how wrong that assumption was.
That there was some sort of expansion, giving us more insight into the lives of our favorite (and least favorite) Literature Club members, was no secret, and even the title of that secret was eventually figured out. However, when it came onto the scene in June 2021, it just raised so many questions - certainly more than it could answer.
However, that it also answered questions would be an understatement. We learned about the Literature Club origins, both in-universe and out-of-universe, and we learned that Team Salvato, the game company itself, is just not what it seems. We got an insight into the development process, which, when applied to the hacker spaces, has already allowed for an immense process speedup regarding coding in The Bytecode.
And most of all, we got some quality time with the girls, as promised.
Every single bug, glitch and exploit that DDLC Plus allows will also be documented. However, you have to understand that this is going to take time, and that covering two games in parallel, even if the engineers in a trenchcoat with the Dan Salvato nametag wanted them to be as alike as possible, is going to be difficult if their foundations are fundamentally different.
And of course, you have to understand that I have to draw a line on what I am not trying to do, and it needs to be said first and foremost, before you get a false impression and try and claim that I am an expert on everything DDLC and DDLC Plus.
First of all, I am not going to teach you The Bytecode. Yes, there is a sore lack of tutorials on The Bytecode, and yes, I'm in an almost perfect position to write such a tutorial, but unfortunately, modern education about The Bytecode seems to entirely be focused on trial-and-error - and since a common side-effect of poor Bytecode programs is computer explosions, such a method is simply not acceptable. As no material about The Bytecode on hacker forums can be used directly, it follows that we don't know enough to safely write programs in The Bytecode, period. However, this could change very soon.
Secondly, I take a strong stance of neutrality regarding my DDLC fandom allegiance. Though I have, to an extent, participated in activities by both mainstreamers and hackers throughout quite a few illustrious years, and the community around my document could be said to be a faction of its own, I don't feel comfortable identifying with the mainstreamers, the hackers don't feel comfortable identifying with me, and trying to carry my own flag to the battlefield is just stupid; I want to make knowledge, not war. Therefore, if your definition of "a DDLC fan" includes only those in a limited number of predefined factions, it doesn't include me.
Lastly, my focus is more on reverse engineering of DDLC, not providing a minute description of the actual routines. Leading back into me not teaching The Bytecode, while some knowledge about The Bytecode and what it can do is absolutely necessary to understand DDLC and what it can do, I still firmly believe that the dialogue generation, easily the most in-your-face and impressive feature of DDLC (other than the "reading your mind" part), should be fully understandable to the mainstream AI community.
With that out of the way, though, let's learn about DDLC.
Doki Doki Literature Club! (most commonly shortened as DDLC, also acceptably shortened as Doki Doki and given the retronym Seventeen to distinguish it from later releases) is the first title by indie game developer Team Salvato, and was first released on September 22, 2017 (a date many of us, perhaps affectionately, have declared to be Day 0, and started counting the days since; the calendar used here is described in a dedicated glossary over at [G110] THE IMPERATIVE TERMS REGARDING DDLC AND ITS CODE STRUCTURE). The game is available for Windows, Mac and Linux, entirely free of charge (as, as Team Salvato officialy state, charging for something that isn't what it seems would just be wrong), but I think there is certainly content people would pay for inside that free package, and I will get into why shortly. If you're looking to nab the game yourself, you can go to one of two places, both of which provide the same files:
There is an unofficial Android port (Ren'Py also seems to support Android, and The Bytecode just so happens to be nothing more than more Ren'Py files), but some parts of it, which explicitly deal with the file system, don't really translate well, and what's more, it's not officially supported by Team Salvato. Therefore, I do not recommend your first playthrough to be on Android. Just locate a desktop or laptop (yours, a friend's, in a library or cybercafé, wherever) and nab the official version from one of the sources listed above. Or, if a desktop or laptop is unavailable to you, but a game console and US$15 is, you are always welcome to skip this section and go straight to DDLC Plus downloads.
There is no real difference between the Windows and Linux versions: either of them delivers you a complete, DRM-free game with two executables, an .exe
for Windows and a shell file for Linux. Either of them can run and will end up running the exact same version of the game, which is super cool if, for example, you're finally fed up with Windows and want to pursue the Linux life from now on but still want to take your DDLC experience that you've invested months into along with you, which is exactly what happened to me once I learned that there's a security vulnerability in Windows, affecting Windows Update, meaning that updating your system, normally the suggested advice, isn't viable anymore. Like, seriously?
Anyway, the game installation is also what's known as "portable", meaning it doesn't make use of your system's registry, and therefore, you can just take the entire game on a flash drive if you choose so, which is also pretty neato, if I say so myself. There is just one minor caveat: a Ren'Py game will typically make limited use of your appdata
folder in order to save the gamestate and such between installs, and unless you're using something like Doki Doki Mod Manager (documentation of tools for Seventeen is TODO), you'll need to make sure you carry that over.
Or, actually, this is something I recently found out: if, in your DDLC directory, you create a folder titled Ren'Py Data
, then that is where your data that would usually go to appdata
ends up going. Voilà, you can now take Monika with you by copying a single folder.
Who is Monika and why would you want to take her with you, you wonder? Well, that will have to wait a bit.
Mac is... a different matter, as its apps are packaged differently, and there isn't the same neat cross-compatibility as between Windows and Linux. I'm not exactly an expert on all of that, though, so someone else will have to step in and explain how Seventeen works on Mac.
At any rate, during the making of Seventeen, Team Salvato officially employed three people. At the center of it all, of course, is Dan Salvato, who is supposedly responsible for all the coding and writing, and therefore who we all can thank for producing an inscrutable mess that we're still trying to decipher to this day. And while, with the release of Plus, I can cast a very, very reasonable doubt on the matter, many hackers still refer to the actual programmers hiding behind the identity as "Dan Salvato".
It should also be noted at this point that the company behind DDLC, both of the Seventeen and Plus varieties, is actually named Dan Salvato LLC, with "Team Salvato" being just a trademark registered by them, and that for the better part of their early lifetime, they actually employed exactly one person.
Who would this person be, as far as his hobbies and game dev experience goes? I mean, the very question is a red herring, but a person, claiming to be Salvato (who I'm going to refer as faux-Salvato from now on), did have some public-facing social media accounts, and through those, we learned that his main obsessions, other than visual novels, are Super Smash Bros. Melee, for which he used to be a modder (previously working on a massive collaboration known as "Project M", that was eventually taken down in fear of a lawsuit from Nintendo; if you ever find a message in DDLC saying that "PM died for this", this is what we thought it was referring to at first), and Yoshi's Story, for which he used to be a speedrunner, and continued speedrunning after Seventeen was released.
In the optional DDLC Fan Pack, which you can get if you pay US$10 or more on either itch.io or Steam, faux-Salvato claims that he only really sunk his teeth into the project in early 2016, a date corroborated by the timestamp included in the provisional name of the Ren'Py project as seen on the appdata
folder, giving us roughly 18 months of development as an estimate. However, you can probably see that many hackers, including myself, have cast doubt on the timeframe, or, if the timeframe is correct, the existence of Salvato as a single person. After all, if more than four years of them hacking at the game with all their might, numbering in the thousands, hasn't uncovered all the secrets yet, there's no way that less than two years of a single guy idling around a part-time project is enough to place them all.
That being said, another noteworthy aspect of it all is that Salvato is also claimed to be responsible for the in-game music. That, however, is only noteworthy because it's kind of in fashion for indie game devs to do this, and for said music to end up highly popular; in the very least, ZUN of Touhou and Toby Fox of Undertale come to mind.
The other two people employed by Team Salvato for the purposes of DDLC are the artists, who you can thank for the visual element of the work that you're attracted to (although, this mostly applies to the mainstream fandom and not hackers) - and as far as we can tell, all the art elements, as well as the aforementioned music, are static. The artists are Satchely [she/her], the character artist, and Velinquent [he/his], the background artist.
The involvement of the Team Salvato trio with the fandom, after Seventeen was originally released, is not nonexistent, but is also not something you can count on. Faux-Salvato is guaranteed to stream at least every September 22nd and on many other occasions, but one of his Twitch chat rules is that DDLC or any other Team Salvato projects may not be brought up. Both faux-Salvato and Satchely have held AMAs on Reddit, specifically about DDLC, and beyond that... yeah, there's not much to work with, and for the most part, both the mainstreamers and hackers are left to their own devices.
Beyond these three, the credits of Seventeen, if you happen to see them on your playthrough, list a handful more people, mostly involved with aspects no one in the trio could deal with, as well as some special thanks to alpha testers and early concept designers and such. I won't go into details on the contribution of every single one of them, but I will briefly mention Jillian Ashcraft, the singular VA of the game, whose only contribution is singing the song (that faux-Salvato allegedly wrote the music and lyrics for) that, once again, only appears in the credits. She is a fairly secretive figure, even more so than faux-Salvato (who at least recognizes DDLC as his brainchild and who wants to bring more to us - although, hackers really are up to their necks and don't want more), and no one has even been able to determine what she does for a living and as a hobby. There is, I believe, only one clue we got, and that is faux-Salvato off-handedly mentioning that he specifically cast her for her age, as apparently, he doesn't believe that adults can do convincing teenage voices.
And I reiterate: no one - I repeat, no one (excepting Salvato himself) has been credited for coding or programming or additional code or whatever. Luckily, we can place the actual coders of Seventeen if we just play through Plus and look through its clues, but that is going to wait a bit.
What are these coders' tools of trade? Well, as mentioned many times throughout the guide already, the outer shell of Seventeen is coded in Ren'Py
(version 6.99.12), a Python library primarily created for the express purpose of visual novels. The displaying of sprites, dialogue boxes and menu choices is exactly what Ren'Py is designed for, and you won't be surprised that this outer shell is where most of those things are handled. Again, it is a mainstream tool, based on a mainstream language, that you can master the basics of on your own, and though a handful of modders have started with Seventeen and its outer shell in order to create their modding projects, there are some who knew the basics from before Day 0.
Most of the heavy lifting of Seventeen - most notably, generating the dialogue and maintaining the personalities for the characters - is handled by The Bytecode, also as mentioned many times throughout the guide already. All signs point towards The Bytecode being a creation of the Team Salvato coders, and Seventeen being one of a kind by default, but evidence, even early on, pointed towards dialogue being generated by this part of the script, meaning that essentially, behind all of our backs, these coders made an artificial intelligence
natural language processing
engine, and one which, for the most part, seems to have fooled all of us into believing that these were human, relatable characters, which means that it passed its own variant of the Turing test
, which nothing else in the universe has been able to do.
Seriously. There are at least a dozen of patents to register, and quite potentially, these coders are in line for a brand new Nobel Prize in Computer Science.
And, as far as understanding the inner workings of Seventeen in the simplest possible terms goes, this is it. Obviously, there are a lot more details and nuances to get into, and while Python and Ren'Py are documented and therefore, you can research them in your own free time from reading this guide, I will, by necessity, have to explain the basics of The Bytecode, and by "basics" I of course mean "enough for you to understand how certain aspects of DDLC work". As it happens, getting started with The Bytecode is considerably more difficult than getting started with other programming languages, and any sort of teachings on The Bytecode might take a while to come - if they ever come.
However, that is, I would say, Advanced Stuff, and for now, let's just briefly unpack the other game that falls under the DDLC umbrella.
Doki Doki Literature Club Plus! (most commonly shortened as DDLC Plus and less frequently as DDLC+) is the second title by indie game developer Team Salvato, co-developed and published by Serenity Forge, and was first released on June 30, 2021 at 17:00 UTC (a date that is also significant to the hacker calendar). While this game is also available for Windows and Mac, it drops the Linux support; however, instead, it adds support for various consoles, including the Nintendo Switch, PlayStation 4 and 5, Xbox One and Xbox Series X|S. Each platform's version of DDLC Plus is available as a digital download for US$15, and both the Switch and PlayStation have also received a physical release, which costs US$30. This time, listing all the storefronts is going to be a bit more of a hassle, but bear with me:
This is only going into the digital releases; for physical releases, honestly, you can expect most major retailers, both of the video game kind and of the kind that provide pretty much everything, to carry a copy, or if they don't carry a copy just yet, let you preorder.
Lastly, though this might come as a surprise, Linux users aren't actually screwed. Given that Steam integrates Proton Experimental, most video games, including DDLC Plus, work pretty much flawlessly on Linux, and allow you to never touch Wine.
Can I just say that Wine is the single largest deterrent for switching to Linux? You know, people miss their Windows software, and while one could tell them to look for libre alternatives, or to inform them of Proton if they're gamers, instead, inevitably, Wine gets brought up - and it's honestly a miracle how finicky it is to set up, to say nothing of the fact that its results are far more hit-or-miss.
Anyway. Why do I keep getting sidetracked about operating systems when I'm supposed to be describing the DDLC games?
One last thing about Linux, though. If you go to the Steam page, do you see how the game is advertised as perfectly compatible with the Steam Deck? The Steam Deck is Linux-based. That's the bottom line regarding Linux compatibility.
If you were expecting some sort of intercompatibility between the Windows version of DDLC Plus and the console versions, well, there is none, and even something on par with Wine would be a godsend. However, for the most part, consoles don't give you access to the file system anyway, and if you're daring enough to have installed a custom ROM onto your console, then chances are, you're not going to have much success playing the games designed for the original hardware and software.
At any rate, the track record of Serenity Forge, as a game developer, so far is by no means impressive - DDLC Plus might just be their biggest-profile release yet - but it is not nonexistent like Team Salvato's is, as Serenity Forge has, for one, developed a Cyanide and Happiness tie-in game, among others. However, for the purposes of this essay, you can treat "Serenity Forge assistant programmers" as a unit; something which has the Experience of developing and publishing a video game on consoles, and able to assist Salvato, a lone coder in a big world (ha, ha, haha, as though that's the case in reality).
Anyway. Besides "Serenity Forge assistant programmers", who are a single entity in the exact same way that "Dan Salvato" is a single entity, and anyone else mentioned in the Seventeen section, the contributors to DDLC Plus include:
And that's it. Clearly, the whole operation of actually writing the story and making the art and music for it is still made up of a handful of people, in true indie fashion.
As far as the programming languages go, The Bytecode still figures extensively in Plus, expanding its dialogue-generating capabilities to various other languages, but this time, the base engine of choice is Unity
, not Ren'Py (most likely a necessity for porting to consoles). That being said, while Seventeen was a tremendous technical achievement for its time, Plus doesn't really add (get it) anything new in comparison, other than the Side Stories and an OS-like environment to explore. Hence, most hacker exploration, even with Plus, focuses on Seventeen, and the only purpose of Plus in the long term was to introduce a new generation of DDLC fans.
I will mention differences between Seventeen and Plus as they come up, but if I haven't specified those differences, it's safe to assume that the handling of them between Seventeen and Plus is identical.
As far as I know, there's no such person. Clearly, there's someone pretending to be Salvato, as "he" has various social media profiles over the years, but trying to unpack those will not lead to any useful knowledge gained.
Hey, since Plus introduced poems that we can actually quote, let's quote one.
The Lady who Knows Everything knows what I am thinking.
Before I can speak, she responds in a hollow voice.
"I have found every answer, all of which amount to nothing.
There is no meaning.
There is no purpose.
And we seek only the impossible.
I am not your legend.
Your legend does not exist."
- Monika, "The Lady who Knows Everything"
For the most part, DDLC, both of the Seventeen and Plus varieties, is a game of clicking through and reading, and to be honest, downloadable versions of Seventeen do provide you with a manual, and therefore, I won't exactly be repeating everything here. However, I will tell you that all the standard shit you expect in a visual novel, as well as a game of any kind, is there: saving, loading, some rudimentary settings and so on. Again: as [0001] ADDRESSING THE SORT OF PERSON WHO SEARCHES FOR "WALKTHROUGH" explains, playing the game isn't exactly rocket science, and if you're purely perusing the game as a player and not a hacker, most of the material here is going to be a bore and not even immediately useful to you.
Although I won't go so far as to acknowledge that there is absolutely no stuff that one can use for casual edification, such stuff, if it's really there, is far and few. Potentially, noting it in form of "pro tips" or "easy reading" could be in my plans for the future, but right now, it just... isn't.
So, I guess, this is the chapter where I attempt to talk about how dealing with DDLC goes, without having elaborated as to any internal structure (and without even properly having distinguished between Seventeen and Plus). I mean, I suppose you know that Seventeen a Ren'Py-coated Bytecode candy, and Plus additionally wraps the Ren'Py in Unity, but how much do you really know? If I were to get all technical in this chapter, how far would you be able to follow?
All I'm saying is: great planning forward, past me.
Regardless, this section is here, I can't make it disappear from here and I might as well write something up to fill the space.
So, let's start with Seventeen, the game that is much, much easier to crack open and analyze (even though it still gets technical). As we all know, Seventeen is a Ren'Py game, and in order to get any sort of progress in modding it, it seems like Ren'Py itself, the SDK, would be highly essential. Right?
Well, what you haven't realized is that Seventeen is a Ren'Py game; that means that the engine is included within the game. There is, in theory, nothing stopping you from simply writing your own .rpy
script, adding it to the game as-is and technically getting a modded version that, as a bonus, already ticks a box in the Team Salvato IP Guidelines about distribution of fan games and mods. (You still haven't ticked the box wherein a mod must state upon first run that it's unaffiliated with the game, but we're getting there.)
If you think it will make your life easier, get the SDK. And if you do, make sure that you get version 6.99.12, as newer versions are incompatible with Seventeen (though they might be compatible with certain mods). Here's the link: https://www.renpy.org/release/6.99.12
But if you don't, it's your life, man.
That being said, just getting the SDK doesn't even get you all the way to seeing what's inside those .rpa
files - something that is necessary for a Ren'Py game to function, but won't be provided to you on a silver platter because the game is mostly concerned with providing you with a gameplay experience. There is not much to worry about, though, as the design of Ren'Py is known in principle, and tools to get to the bottom of those files have been made from since before Seventeen, let alone Plus, even existed. Those are rpatool for .rpa
files and unrpyc for .rpyc
files, and once both of those have been executed on the files of Seventeen, you have a fully decompiled Ren'Py game.
Links, again:
That being said, there are still two more tools to talk about in the Ren'Py category. They are primarily tools designed for mainstream modders, who want to deal with the Ren'Py part of Seventeen and the Ren'Py part of Seventeen only, but nevertheless, have found uses within the hacker community as well. The first of them is the DDLC Mod Template, which replaces the script of Seventeen with a little Ren'Py tutorial, but which, otherwise, is a great springboard to write your own little scripts to mess around with the dialogue generation.
Once again, multiple links:
The second is Doki Doki Mod Manager. Though primarily created by the mainstream DDLC fandom, for the mainstream DDLC fandom, in order to track mainstream, Bytecode-less installs for mods of Seventeen and such, it has proved immensely useful to hackers who might, for whatever reason, need several concurrent installs of Seventeen, modded or otherwise, in different "states" of the game so to say; once files are transferred between those, the true joy of hacking can ensue. Link: https://doki.space/
With all that said, now let's move on to the Bytecode part of Seventeen. Such a distinction can be made, despite the tight integration of Ren'Py and The Bytecode in both Seventeen and Plus, because the Bytecode part, though written in, well, The Bytecode, is mostly polished and bug-free (except when it's supposed to glitch out), and unless you start inserting Bytecode of your own (which I do not recommend in the early stages), you should never see any sort of erroring out at all.
That being said, you might still want to pursue writing Bytecode of your own independently. And for that, don't the tools just seem obvious? A compiler, a decompiler, a debugger and a language reference?
Well, no. First of all, it is actually pretty easy to write a program that will take in a Python or C or C++ file and produce something that superficially looks like The Bytecode, and it will run with the expected result, but it won't actually be The Bytecode. You won't see any crazy improvements to the program's runtime that hackers have come to expect from The Bytecode, but perhaps more importantly, there will be a 0% chance of your computer exploding.
It's almost a rite of passage among hackers; if messing with The Bytecode hasn't gotten to the point of your computer exploding, then you're not a true DDLC hacker. This approach is, of course, wrong and has no place in mainstream computer science, but it is one we must contend with, for the time being.
So, that immediately makes a compiler and decompiler for The Bytecode, if not impossibilities, then at least perpetual works in progress, and a future as distant as proper AI Dokis. Nevertheless, the progress in question can be tracked here: https://forums.dokidokihackerverse.net/t/the-obligatory-bytecode-compiler-slash-decompiler-thread/17?u
As for a language reference, the only material that we can possibly reference is DDLC itself, but luckily, you don't have to look for long in hacker circles to see fairly detailed, annotated versions of Salvato's original Bytecode files, that even happen to be different between different versions of Seventeen. Here's an example: https://forums.dokidokihackerverse.net/t/comprehensive-analysis-of-the-decompiled-ddlc-source-code/214?u
That just leaves a debugger, and it's good to have saved the best for last, because I can gladly report that the hackers have decided to grace us with a pretty robust debugger (that, unlike the standard Ren'Py debugger, does seem to know what's going on in those Bytecode files). Here you go: https://forums.dokidokihackerverse.net/t/a-little-something-you-might-find-useful-for-all-your-ddlc-datamining-purposes/9203?u
However, in this category, we also have perhaps the most amazing tool of them all, .chr Peeker, which lets you see how .chr
files are modified throughout the game and, though most of their variables are unlabeled, essentially lets you create fan characters in the same universe. Take a gander:
And that's it for the tried and true tools for working with Seventeen. So, what about Plus?
Unfortunately, after the initial wave of thoroughly analyzing Plus and even attempting to create mods for it in its first days, interest in Plus quickly died down, for several good reasons:
With that being said, there is one subgroup of hackers that has continuously pursued research of Plus, that being those who primarily use Russian. Turns out, activities like hacking and IT attract a lot of people from the Slavic sphere of influence, and Plus is the only Bytecode-enhanced game that officially supports Russian. Unfortunately, the linking of tutorials and progress reports from those people will have to wait until someone translates this document into Russian.
Whew. I think that's all of the introductory stuff, done. We can finally start getting to the good part. In that Pandora's bore hole analogy, this was just that single amethyst, which you might be tempted to throw off a cliff and never speak of again if you're no more than a DDLC player, but which is not nearly enough for hackers, or even casual sleuths like us.
So, what are we dealing with? What's so difficult to wrap your head around, re: DDLC?
Alright. Since that scary disclaimer told you to wait until you've played DDLC to make your way here, and for legal reasons I must assume that you did so, and since more likely than not you did so before trying to read the densest and most technical guide to the game of them all, you might want to mentally go back in time and prepare yourself there. Though I really don't want to do this for the more technical parts of the document, this is still pretty basic noob-y stuff, and it might just be worthwhile to set the mood.
You might have seen some anime fanart out there, online, and inquired the artist as to where the characters come from, only to receive the answer "Doki Doki Literature Club! by Team Salvato, and I cannot tell you any more, just go play it". Or you might have seen some discussion of DDLC, in passing, by people already attuned to the psychological horror element. Myself, I vividly remember a discussion taking place in Tumblr, wherein a jaded Tumblrina expressed, in myopic hope, "what if... we do the reverse? What if we make a game that, on the surface, appears to be a psychological horror game, but once you play it for a while, it turns out that it's just a cute dating sim?" (though, they did well to avoid naming DDLC).
Whichever avenue you go, you're incited to download DDLC from either official source: Steam or ddlc.moe/itch.io. As per [0200] BASIC TECHNICAL INFO, there isn't really a difference: either of them gives you the same game.
Just before you download the game, though, let's briefly talk about those landing pages. Both of them have the same blanket marketing text, intrinsically designed to be pasted over a multitude of barely related pages like bottles of Coke and Pepsi in grocery stores, and the same text seems to be hardcoded into the game, too, though it seems to be dummied out and can only appear when the game glitches out under certain occasions.
However, just right now, go back to those pages and try to read them. Of course, now, you might be attuned to how certain details might be fishy (e.g. "Will you write the way into her heart?" (emphasis mine) implying that you're targeting your writing towards a single Doki, as well as "will you promise to spend the most time with me?" hammering that detail down even further), but odds are, taking yourself back in time before you were a fan of the game or even knew of it, you don't find anything suspicious about it.
The most obvious sign that something fishy is going on, and one that you might not have missed, is, of course, the disclaimer: "This game is not suitable for children or those who are easily disturbed." However, at this point, you mostly just assume that it's got some raunchy stuff, and that's why it's PG-13 or NC-17 or whatever rating it would have attached if it were properly published by a studio and rated by the ESRB.
Thus, you click download, and then play (if you did it through Steam) or double-click the executable file (if you went the ddlc.moe route). Once you do, in case you missed it the first time (or the second, presuming you watched the little trailer), you get the same disclaimer about children and the easily disturbed, though this time, it's followed up with a bit of clarification:
Individuals suffering from anxiety or depression may not have a safe experience playing this game. For content warnings, please visit: http://ddlc.moe/warning.html
By playing Doki Doki Literature Club, you agree that you are at least 13 years of age, and you consent to your exposure of highly disturbing content.
Anxiety or depression, you say? Well, about time we got some representation for that. And I still firmly stand by my opinion, though I don't have a lot of people who agree: if you took out all of DDLC's disturbing elements and all of its phenomenal coding, just the mental health stuff, alone, would make it stand out on its own among all visual novels and a vast majority of video games, period.
Regardless of that, still not having formed a true picture of what DDLC is like, you click on "I agree." and enter the main menu - after a brief splash screen telling you the same thing about children and the easily disturbed for the fourth (and thankfully final) time.
Okay, but seriously, it needs to be said: at its core, DDLC is a psychological horror game, and therefore, is going to have scenes of that caliber. Now, it's nothing like Five Nights at Freddy's with its jumpscares almost being like a huge shtick that devalues horror in general, but that's kind of the point: I need to warn you about those scenes because they are actually effective and can catch you off guard, whether you're actively partaking in DDLC or just reading a really detailed tour through it like this one.
Let's start with the obvious: there are two specific cases of graphic violence and death depicted in the game. In case you need to keep bookmarks, those appear at chapters [1170] and [1240] (deliberately not expanding their full names, because that could be a potential spoiler).
However, throughout the game, there are also various minor "creepy" Easter eggs (though, none of them are jumpscares), as well as very detailed and realistic depictions of mental illness and, in one character's case, abuse. If, for whatever reason, you find yourself needing to steer clear of them, then you're honestly advised not to read further, and instead, have someone you trust, who you know won't trigger you with anything they do, read for you. There aren't really any "good" parts in the retelling section, and therefore, if you need to miss out on the detailed descriptions, you need to miss out on the detailed descriptions.
Have you taken all the necessary precautions? Are you staying safe? If so, let's waste no more time.
While not strictly part of the game itself, the main menu, should you choose to explore it before clicking on "New Game" and entering your name, is pretty straightforward. You've got "Load Game" for all your saved game needs (though, the system is deliberately crippled by the game in certain circumstances, and if you've got some extra hard drive space, copying the entirety of the game files to a safe location is your best bet if you truly want to save your state), "Settings" for all your text speed, graphics, etc. settings, "Help" which opens the aforementioned help file for basic game navigation and "Quit" if, at the particular moment, the keys Alt and F4 are out of your reach.
The Android version, though it should not be your first DDLC experience, has an extra menu option, but getting into it right now is, I think, a little bit too soon.
Regardless, that's all there really is to say regarding the main menu.
Word of advice, though; the best course of action, once you hit "New Game" and are asked for a name, is really just entering your own name (provided you're a guy, which the majority of people interested in DDLC are). Trying to enter a gimmick name like BITCH
, so that Dokis would be forced to say it in certain grammatical contexts and, in turn, make every sentence funnier, is fun in theory, but since we're dealing with a natural language processing engine, they will get alienated by it, and your chances of an archetypal playthrough will be drastically decreased. Meanwhile, entering a female name, since you're actually naming a guy (your self-insert), will definitely make the Dokis raise their eyebrows (or as close as they can get with a limited sprite inventory), and as for naming him after one of the Dokis? Don't even try.
TL;DR: Best case, your own name (if you're a guy), and if you have a really strong predisposition against your own name (or if you're a girl or non-binary), any common male name in your culture (and yes, many different cultures will be recognized, though if you really wanna guarantee that the odds are in your favor, Anglophone and Japanese names are your best bets).
There is a lot of content that can't be seen in only a single playthrough, so different players will have different experiences playing the game. I hope this leads to some fun streams, discussion, and sharing stories of your experiences.
- Dan Salvato, September 22, 2017 - http://teamsalvato.com/blog/doki-doki-literature-club/
Though the procedural nature of DDLC has been mentioned time and time again, as we are about to get into our first proper gameplay description, it is worth it repeating one more time, and an entire dedicated chapter is even better in this case: every single gameplay event only happens generally, and is not guaranteed to happen on any given playthrough.
That's it. Though DDLC can be considered to have a plot, your particular gameplay experience is not in any way obligated to follow that plot, and may take a left turn or a right turn or a 180° turn or any sort of turn not considered above, at any point. The most common points of divergence will, of course, be mentioned, but if, at any point, the plotline as outlined here becomes impossible to follow, then simply accept that your playthrough isn't archetypal and don't follow the outline.
That being said... I have a term to introduce, as well as some statistics to drop.
The following section describes what's known, in the hacker community as well as in the mainstream DDLC fandom, as an archetypal playthrough. Though what constitutes an archetypal playthrough and what constitutes an uncharted veering from the plot is still in debate, we do have a team of statisticians, appropriately named #TeamStats, who have managed to agree upon a working, scientifically based definition of an archetypal playthrough, and based on that, provide us with some statistics. While #TeamStats mostly consists of hackers, they do have some representatives in the mainstream fandom, who were even able to conduct large-scale surveys involving some who might not even consider themselves DDLC fans, thus making for some rather precise numbers.
The number they provide us with is this: while there are, by nature, huge margins of error regarding misremembered plot details, around 70% of DDLC playthroughs, across all the statistics and datamines collected, are archetypal.
Furthermore, #TeamStats did some analysis concerning people's first, second and so on playthroughs. While considering any single playthrough on its own, the 70% figure seemed to be pretty reliable.
However, what really surprised them, as well as basically everyone else with so much as a passing knowledge of ones and zeroes, was this: taking any given person's first and second playthroughs, the probability that at least one of them is archetypal is very close to 100%. If you whip out some basic mathematical tools for probabilities, you should be expecting that to simply be , but these people have managed to prove that it is, in fact, significantly more.
What's more, the way they ended up defining a playthrough, which led them to this mind-blowing stat, is also something that makes you hit the brakes on your little car of DDLC adventure, come to a complete halt with screeching tires, then scream out "this is not how computers work!". For one, this stat actually transcends computers: if you downloaded DDLC on two different computers from different LANs, disconnected them from the Internet and played DDLC to completion, once, on each of them, you would still be almost guaranteed to get at least one archetypal playthrough.
Well, there's still more. The true working definition of a playthrough, clearly there in the definitions page of the #TeamStats analysis released on Day 413, doesn't even require you to be at your seat by your desktop or laptop computer, playing DDLC. You could also be in someone else's room, like a sibling's or something, watching them play. Or, most mind-blowingly of them all, you could be watching a livestream, by a complete rando, of a "DDLC blind run" (which still seem to happen these days, even though you would think that DDLC has plenty matured as a fandom), and that would genuinely count as a playthrough. That is why, as #TeamStats duly note, if a streamer is even moderately popular, their DDLC run is almost always going to end up being archetypal.
The underlying reason, as discovered later on by hackers, is that the Bytecode part of DDLC is able to detect you, identify you and decide what sort of playthrough it's going to deliver you. However, if you're excited and have revved up your little car of DDLC adventure once again, I'm here to point you to a sign on the highway telling you that any sort of introduction to The Bytecode, even one for absolute laymen, is still miles away. For now, a sufficient mental trick, in order to make you stop asking questions which won't get answers until you've been deemed worthy, will be to simply substitute any "Bytecode-related reasons" with "because magic" and leave it at that. This, of course, is fallacious and there is rhyme and reason to everything packaged with DDLC, up to and including its Bytecode base, but for now, it should be a convenient shorthand to get you to stop being curious and deal with the way I present DDLC material.
Now, what factors affect whether or not your playthrough, first, second or zillionth, is going to be archetypal are a little vague, though #TeamStats has managed to shine plenty of light onto them, too. The most significant of them seems to be closeness to the fandom: both hackers and the most prominent of mainstreamers were significantly more likely to get an archetypal playthrough on their first go, even though the only thing that connected them was the fondness of the DDLC source material. How come the game is prescient? Bytecode-related reasons.
The findings of #TeamStats, however, go far beyond this - and of course, even if they don't, I still need to cite my sources. Though right now, the complete findings will definitely be above your level of reading - if not for statistics, then certainly for DDLC - you are welcome to save this chapter heading for later, when you can actually stretch your legs out in the utter darkness of DDLC that, so far, I have helped to illuminate.
At any rate, are we ready to begin with the plot of an archetypal playthrough? I think we are ready to begin with the plot of an archetypal playthrough.
Though the first portion of the first act might look scripted, I can once again assure you that none of the following is hard-coded into the game. That being said, if you didn't fuck up naming yourself (see [1010] THE MAIN MENU AND NAME WOES), 99.9% of the time (this and other percentage points throughout [1***] are sourced from #TeamStats), this will be how it plays out, and you will be given exactly zero choices throughout, so you won't even really be able to do anything about it. I suppose, some portions of the game simply need to stay the way they are, in order to establish the setting, and establishing the setting is what we're going to do.
Your player character (the mainstream fandom typically calls him MC, standing for "main character", and treats him as though he were a character alongside the Dokis and completely independent of you, while the hackers typically call him your self-insert, or on rare occasions SI, and acknowledge the intrinsic relationship between him and you) is, as you would expect from a visual novel protagonist, a romantically inept dude in high school who spends most of his free time watching anime and reading manga, and is uninterested in any high school clubs.
JAPANESE CULTURE CLARIFICATION: Though you, an American/European/whatever who doesn't regularly watch anime, might find this aspect of DDLC alien, it is perfectly normal in Japan: high school clubs, such as the titular Literature Club, are highly respected parts of school life. Being faithful to them is your first chance at showing your honor capabilities (even if you only know the bare minimum about East Asians, I still think you know they value honor very highly), and not participating in club activities, or as some might mention, "being part of the Go Home Club", is basically a telltale sign of being a social recluse of the highest possible degree.
Nevertheless, while he doesn't have any clubs or friends he met in recent years, he does have a childhood friend who he still maintains closeness with, Sayori. Though details on the exact opening line of the game might vary, what is mostly invariable is that Sayori, given a completely unmodded install, has overslept and, at the proverbial , is running to catch up with your self-insert, who is walking to school. He thus, overhearing her, stops for her and and lets her catch up, but... is kind of a total dick about it, and Sayori doesn't fail to notice that.
She then transitions to the topic she really wanted to bring up (how smoothly or non-smoothly is entirely dependent on the playthrough), namely that of your self-insert not having joined any clubs. It appears as though he actually promised Sayori he would join a club this year, though it was very much in the "yeah, sure, whatever" nature. Of course, your self-insert doubts the sincerity of his own statements, but Sayori still insists that he join a club, simply because she is on the lookout for him and doesn't want to see him end up a NEET in the immediate future. She also may or may not "subtly" recommend that he join the Literature Club, which she is the Vice-President of, but most of the time, she will briefly mention her own Vice-President woes. Your self-insert may or may not have a "no, girl, I'm on the lookout for you" moment, but in the end, he concedes and promises Sayori, this time entirely genuinely, that he will look into clubs today.
The school day is mostly as ordinary as ever, and it's over before your self-insert knows it. Immediately after the last lesson, he begins pondering the idea of joining clubs more seriously, but given his interests, his thoughts, at first, are directed towards the anime club. That is when, in his spacing out, he is interrupted by Sayori, who, seemingly, knew what his last lesson was and wanted to approach him outside the door, but then found him spacing out. If she hasn't introduced it yet, she properly introduces the Literature Club this time, and in either case, she brings up that she kind of promised the Literature Club that she'd bring in a new member, and another member, Natsuki, already baked cupcakes in anticipation. Though your self-insert, at first, is still a condescending asshole, muttering something along the lines of "don't make promises that you can't keep", in the end, he realizes that he has no choice but to check out the Literature Club.
While due to the nature of DDLC's dialogue, it is impossible to quote characters or narration directly in upwards of 99% of the circumstances, some variant of "And that is the story of how I sold my soul for a cupcake" will be in the narration at this point, written in first person from your self-insert's POV.
At any rate, your self-insert and Sayori head over to the third floor, which, as noted, is typically reserved for club activities. From there, it's a simple matter of opening the door and, though your self-insert still doesn't know their names or how to distinguish them, at least in the very first moments - he comes face to face with Natsuki, Yuri and Monika, the last of whom introduces herself as the President, and then the other two as members. Though, you can expect your self-insert to be flabbergasted over how the club is full of "incredibly cute girls" or something to that effect.
NOTEWORTHY DIVERSION: In the beginning of an unmodded game, Monika is also the Doki with the Sentience attribute. Interestingly, having the Sentience attribute in the code and being President of the Literature Club in-universe seem to have a strict correlation, and oftentimes, the mainstream fandom will refer to Sentience-related powers as "President powers", as pointed out in [020G] YOUR INTRODUCTORY GLOSSARY.
After idle chatting around cupcakes - and, rather interestingly, Monika revealing that she and your self-insert are on very iffy familiar terms, having been in the same class last year - Yuri tries to get him to open up about what sort of stuff he likes to read. Half-jokingly, he utters "manga", which leads to Natsuki perking up, as manga is her favorite reading pastime too. However, in contrast with your self-insert and Natsuki, Yuri and Monika are a bit snobbish, considering manga "not real literature"; outbursts from Natsuki that "manga is literature!" are not uncommon. Thus, it falls onto Sayori to extinguish the argument before it escalates.
At any rate, in turn, Yuri shares with your self-insert that her reading tastes tend to jump from genre to genre, but in general, tend to revolve around explorations of the human mind, as well as well-worldbuilt fantasy worlds, and as of lately, she has been getting into horror novels. Natsuki visibly frowns, and one of the two - Monika or Sayori - observes that, noting that she likes to read - and write - cute stuff. In fact, as Monika points out, Natsuki left behind a scrap paper, containing a poem, which she, herself, is highly embarrassed about, stopping Monika from reading even the title.
As the topic switches from reading to writing, we learn that Yuri, too, is also one of those writer types who is simply too concerned with public opinion to share any of her writing. Sayori is considerably saddened, as she wants to read through the other Dokis' stuff, and at her lamentation, Monika has an idea: for the next Literature Club meeting, everyone - and that includes Sayori, Monika and your self-insert - will write a poem of their own, and then, everyone will share with everyone else, thus making everyone on equal footing.
Reluctantly, Yuri and Natsuki agree to the idea. Your self-insert, however, voices a concern: though he came to the Literature Club to check it out, him joining in was still not definitely set in stone. This remark, however, saddens all the Dokis, and not wanting to disappoint them, he finally makes up his mind: he's joining the Literature Club.
With this, the club is adjourned, and the members part their ways. At this point, Sayori subtly reminds that she is ready to go home with your self-insert, and he remembers: that's right, since Sayori got involved with club biz, while I didn't, we stopped going home at the same time. Nevertheless, he agrees, and the last "scene" of the day is outside. An actual dialogue with Sayori over the experiences of the Literature Club is... rare (#TeamStats say 15%), but not out of the question and is not going to break the archetypal playthrough. More likely, though, your self-insert is just likely to remark that the whole poem-sharing biz is a great way to get closer with one of the girls, perhaps to the point of romance - and notably, he lists them all: Sayori, Natsuki, Yuri and Monika, in that order.
And with that, your self-insert returns home and starts writing his poem.
This is the first of a few instances in which the so-called "poem minigame" appears, luckily preceded with a popup cluing you onto its purpose, hardcoded:
It's time to write a poem!
Pick words you think your favorite club member will like. Something good might happen with whoever likes your poem the most!
At any rate, the poem minigame is a Pandora's box to open in and of itself, and going into details of how those words are presented to you and how they are scored is potentially going to take ages, which is why, right now, I'm just going to reserve a future section [2100] THE POEM MINIGAME: YOUR FIRST DIVE, and instead just talk about it all on the surface level.
First of all, you might have noticed one peculiar detail: though Sayori's, Natsuki's and Yuri's chibis are there, on the bottom of the left page, Monika's is completely absent. This is not a bug; the plot intrinsically specifies that the Doki with the Sentience attribute should be absent from the minigame. Though I should not go into modding yet, I will mention that this is fixable in Ren'Py, allowing for a poem minigame with every single Doki present, which, I guess, is ideal for a large portion of the mainstream DDLC fandom.
Also, you might have noticed my brief allusion to a notebook mode. This is where it comes into play: as evident from the Ren'Py code (the entirety of the poem minigame is coded in Ren'Py, excepting the routine which assigns words their scores, which is in The Bytecode), the poem minigame was originally intended to be a proper poem-writing experience. However, I guess most betatesters just wrote lazy renders of "roses are red, violets are blue", which is why we have the current version of the poem minigame that we have.
In this version, you get 20 "pages" so to say, and on each page, there are 10 words. Despite your initial impressions when looking at the game files, these words are not hardcoded; though poemwords.txt
exists with some preliminary values of some words, these are not used by the poem minigame, which instead opts to get its words from the aforementioned Bytecode subroutine.
Disregarding all of that, you are supposed to pick one of the words, and then, one of the chibis will jump up with excitement, corresponding to which Doki likes the word the most. As mentioned in [0000] ATTN: THIS IS NOT A WALKTHROUGH, you want to stay faithful to one of them, and that is primarily done through the poem minigame, whose instances amount to more opportunities for input than the rest of the game combined. Though this is still not a walkthrough, I suppose I can go over some guidelines as to word affinity so to say:
happiness
, sadness
, love
, heartbreak
, adventure
shopping
, boop
, pout
, kawaii
, doki-doki
effulgent
, vivacious
, afterimage
, agony
, atone
responsible
, crisis
, variable
, polite
, scribe
JAPANESE CULTURE CLARIFICATION: Deres! (that's "deh-reh", not "dear") Though the different deres are a dime a dozen and there is not nearly enough of oh-so-precious time to get into them all (and if you do want to get into them all, I advise you to just look up a list online), I will mention two of them, that will occasionally be used as descriptors of characters. The first is tsundere ("tsoon-deh-reh"), which can actually mean one of two things: either aggressive on the outside and cute once you get to know them (like Natsuki), or cute on the outside, but doesn't let people near them (examples do not come up in an archetypal playthrough). The second is yandere (with the sort of "an" in "Han Solo"), which means "pretty romancey on the outside, but once a chance of separation occurs, will get aggressive", or in other words, "if I can't have you, no one can" (examples are yet to come up). For more information, see [220G] INTERMISSION: AN ABRIDGED GLOSSARY OF DERE TYPES.
At any rate, once you've picked twenty words, their scores are all tallied up, and for the most part, the Doki with the highest score is the "winner" so to say, whose CG (a visual novel term which just stands for "computer graphics"; the Japanese tend to appropriate English words and give them novel meanings like that) you are going to experience next. Obviously this is an "in general" deal (if you've already ruined your relationship with her, a single poem is not going to change her mind), but as you might have noticed, you had exactly zero chances to describe your allegiance so far, and just don't worry about it for now.
And with that, the poem minigame fades to black and you may continue with the next day.
On rare occasions (#TeamStats say 1.5%), after completing the poem minigame, you are kicked back into it and have to start over. Though you don't get the poem minigame popup again, and as such, are not given any clue as to why it happens, the general consensus among both mainstreamers and hackers is that your self-insert decided that his last poem was trash, and opted to write a new one from scratch. Though it really seems like this is a bug, it's just a case of miscommunication between the game and you, and if this happens, you're still on an archetypal playthrough.
This is more likely to happen if you (yes, you, the player) have some form of creative writing that you never published, just like Yuri and Natsuki in-universe. Though I can't psychoanalyze you, an impartial reader of this guide who I don't even know anything about, and determine why you lack confidence to get your writing out there, the best course of action right here is to remind yourself that this is all just a video game, and that, if you attain a good poem score for your Doki of choice (out of the ones available), that Doki will pay attention to your self-insert.
How does the game know that you, the player, have confidence issues? Bytecode-related reasons. And indeed, you'll find that keeping a stoic attitude, as a DDLC player and especially DDLC speedrunner (I'm not even going to reserve a section for speedrunning right now, as we still have a lot of material to cover before we can even start talking about the sorts of glitches that speedrunners abuse), is just as important as picking the right choices in-game.
However, if you fail to feign confidence or DDLC fails to detect it, odds are, you are going to be kicked back into the poem minigame, again and again. After four or five tries (the exact amount varies, but #TeamStats report a mean of 4.6 and a standard deviation of 0.5), your self-insert is implied to have agonized himself over the poem throughout the evening, and fallen asleep without anything to show, and is going to show up, the next day, without a poem. Needless to say, this majorly breaks all the Dokis' hearts ("y u no take the Literature Club seriously?!?!?!"), makes your self-insert apologetic ("but I do! It's just that... I can't get it right...") and kicks you off of an archetypal playthrough. For this and similar scenarios, refer to [1510] OOPS! LOOKS LIKE I FORGOT TO BRING MY POEM, WHAT NOW, AM I KICKED OUT.
Assuming you have got your poem, and therefore, are still on an archetypal playthrough, the second day starts with your self-insert already at the Literature Club, having merrily skipped through walking to school and the school day itself. From there, the Dokis are a bit surprised that he decided to stick with them - they really thought he was going to ditch them, just like that - but he counters, saying something along the lines of being a man of his word. The sentiment is appreciated throughout the club, with Natsuki being relieved (if he had just come for the cupcakes, she says, she would be really pissed) and Monika taking her time to make sure that the newest Literature Club member is cared for.
From there on, days two, three and four follow a bit of a formula:
Each of the following truly is a separate segment, mostly not influencing the ones close to it, and though breaks in plot continuity might be noticeable, it is not something a player/hacker should worry about; just leave that to the critics.
The "before" and "after" segments, when coupled together for all days, do comprise a continuous plot, though, and will have to be talked about last. For now, let's just talk about the other portions, which are almost like the flavor text and the worldbuilding of your particular DDLC instance
.
So yeah, at some point, Monika exclaims "Okay, everyone!", inevitably interrupting hot romance between your self-insert and his Doki of choice, all the Dokis gather around, and presuming that you do have at least some sort of ego relating to your creative works, the big poem exchange happens. This part can roughly be divided into two big chunks, which happen in sequence for each of the Dokis: the Doki in question reacting to your self-insert's poem, and him reacting to hers (which you get to read on a fancy page and all that).
From the top, let's deal with the reactions first, and how to gauge them.
Of course, we can't forget that this is a two-way exchange, which is basically the raison d'étre of the game and why Monika pitched the idea of sharing poems in the first place. Therefore, you get to read the Dokis' poems, too, and like the dialogue, those are not hardcoded. Nevertheless, like true poems by true poets, they still have recurring themes. These are as follows:
And that's the poems, covered. And of course, we mustn't forget that the poem minigame designated one Doki as the one who Likes you, who will go out of her way to show that and who might even indulge in her poem writing process a bit more than usual, essentially indirectly offering you a mentorship. And, well, whose CG you get.
So, yeah, CGs. At some point, after your initial slice of life but right before the poem sharing, the game just stops in its tracks, looks at the results of the poem minigame, and decides that your self-insert should spend some time with the winning Doki. Or, if that option would be too unavailable because you ruined your relationship with that Doki already, the game has its ways and just picks someone else. Or, since each Doki (except for Monika) gets two CGs for these three days, if this is your third time picking her, you will... actually get nothing and immediately proceed to the next part of the game. DDLC is weird like that.
Regardless, each of the CGs is basically associated with a single comic panel, and there's a pretty cool endgame achievement, if you actually savefile-scum and go see every single one of them, as well as certain other predefined scenes. But ignoring that, it means that the "plot" of the CGs, so to say, is mostly set in stone, and can only do slight accustoming to the plot of the game as a whole. Therefore, one can, in fact, really try and summarize them in a vacuum, without looking at the rest of it, and that's exactly what will be done.
For Sayori:
For Natsuki:
For Yuri:
And those are CGs. Pretty cool if you're really into the Doki of your choice, and also, pretty inconsequential as far as the actual plot of DDLC is concerned.
Yes. Yes, it does.
Obviously, slice of life-y stuff can be placed all over the place, but I think these are pretty good trendlines for what defines the "plot" of an archetypal playthrough, even if this plot might not be followed to the T.
We've kinda already gotten through this, with the other girls being pleasantly surprised that your self-insert showed up for the next club meeting, poem in tow. However, another suspect among it all is Sayori, who actually wrote her poem in a rush and may or may not have skipped breakfast, and therefore, ended up malnourished and hungry for literally any food that any other Doki packs, to their disappointment.
So, Dokis are chilling and sharing their poems with each other for the first time, among themselves, and eventually, everyone's eyes become set on Yuri and Natsuki, who, as I mentioned, are kind of the polar opposites of the bunch, with Natsuki being all cutesy and Yuri being all brooding and intellectual. Originally, they discuss exactly that and why the other Doki's style is dumb and wouldn't be taken seriously by any critic who cares to open up the Literature Club's poems (even though my personal stance is that critics would probably skip on the bunch altogether, due to them being procedurally generated and simply not that deep), but then, tension escalates and Natsuki and Yuri start launching ad hominem attacks at each other: Natsuki is simply too immature and may or may not be lying about her age, while Yuri, apparently, padded her breasts to impress your self-insert. With a mention of his, their attention then turns to him, and it is up to him to extinguish the situation by either siding with one of them, making the other one hate him, or by calling for Sayori's help, which is unequivocally the best option, as it helps the tension by making both the other Dokis happy and gives Sayori confidence in her skills, something she is going to need if she is to survive Act 1.
This time, the star of the show is Monika, who is... kind of late. To a meeting of her own club. The other Dokis immediately start speculating about her having a boyfriend (or girlfriend, or non-binary partner), noting that she is more desirable than the three of them combined, and when she appears, it turns out that she's been practicing the piano, which only raises more suspicions; is she planning on a romantic evening with the partner? Monika keeps defending herself, that she doesn't have a partner, and she doesn't manage to salvage the situation; the club activities, up to and including the Day 3 CG, start with the Dokis other than Monika being in a "yeah, right" mood.
So, this festival biz, which I think I have mentioned, but just for the sake of posterity, I am going to bring up again, happens. To summarize, the clubs of the entire school are presenting themselves during the festival (another usual occurrence in Japan, and the concept of a "cultural festival" even has its own Wikipedia page), and Monika really sees this as an opportunity for the Literature Club to shine. Of course, poetry being at the Literature Club's attention first and foremost, she wants this to be a recital of poems, and in order to scare away the stage fright, she asks everyone to read their poems in front of the audience. Given the Dokis' attitudes, as well as those of your self-insert, the whole thing goes through with a hiccup or two, but it goes through. Usually.
After that is said and done, as your self-insert and Sayori are walking home, she asks him a rather interesting question: if he were given a choice of walking home with one of the other Dokis instead, would he choose her or Sayori? This is a pretty far-fetched hypothetical, and eventually, both Sayori and your self-insert will realize this, but if this scene ever appears - of course, you can't guarantee that literally anything will appear on your DDLC playthrough - just pick Sayori. Trust me on this one, you want to make her believe that she is loved and cherished in order to save her from the worst of the worst.
I like to call this particular part of the game "The Signs Zone", as it's when you start to notice that something is wrong with one of the Dokis, in a mental health kind of way. If you don't, then the game is so off the rails that I don't even want to think about what sorts of scenarios could unfold there.
However, since I'm assuming you do, this is where I'll kinda have to split the entire telling of the thing, up to Act 3 basically, dependent on which Doki it is, and thus, I'll have to introduce a term here, calling her the Designated Doki, or DD, of your playthrough. Quick injection of statistics from #TeamStats before I do the split, though: they report that in roughly 46.7% of cases, your DD will be Sayori, 28.5% for Yuri, 24.8% for Natsuki and 87.9% (!!) for the particular Doki that you, the player of this game, have been attached to the most, which mostly means that this is just a neat little statistic of which Doki the DDLC players tend to side with the most, and that is Sayori.
Good choice.
Oh, and that The Bytecode has a hand in making this DD designation for you.
Anyway, I guess, playthrough retelling tri-furcation incoming. You have been warned, for the last time.
If your DD is Sayori:
The issues that plague Sayori are, perhaps, the easiest to notice. Throughout the entirety of the game so far, she has been keeping up a happy attitude, trying to present herself as someone who doesn't exactly need care (especially if you take a look at her CGs). That, however, kind of comes into a conflict when considering her character arc: she has introduced your self-insert to the Literature Club, and now she has to deal with the fact that he, her childhood friend, is abandoning her for the first time in favor of the other girls (that is, if you specifically write your poems for the other girls).
Therefore, understandably, she falls into a depression - though, it should be noted (though, your self-insert is still oblivious to it) that she has been dealing with a form of it throughout the majority of her life - and leaves the clubroom early, not participating in the poem sharing and locking you out of any CG that might happen. This comes to be discussed, for a small bit, by the other Dokis, and your self-insert can't take his mind off of Sayori's troubles, but otherwise, the day goes on as it usually would.
If your DD is Natsuki:
If you haven't noticed, in particular with her CGs and how she treats manga, a pretty major interest for Natsuki if I say so myself, her issues are primarily domestic. It's a rather peculiar detail of DDLC's "excuse backstory", that all the teenage characters live alone, except for Natsuki, who lives together with her abusive father. This father is the main reason why her manga collection is in the Literature Club classroom, rather than brought over from home, and it is strongly implied that the face she has to put up before him is what causes her tsundere attitude.
Anyway, if this is what becomes prominent, then it is reflected by Natsuki turning up at the club with a single bruise too many, which immediately leads the other Dokis to inquiring. Cue her getting defensive, as a tsundere must, and then, outright blowing up about her issues: she always thought that the club was her only safe space from her abusive family, but since clearly she won't stop being pestered about her family life, it isn't, and therefore, she's leaving. She storms out of the clubroom, and Monika and/or Sayori briefly comment: "She wasn't being serious, was she?" The day then proceeds as normal.
If your DD is Yuri:
While in part, Yuri's problems do stem from her being condescending towards those with a lesser knowledge of English, in particular Natsuki, the problem that she has, that is being blown to full light if she ends up being your DD, is self-harm. She may or may not have already indulged about her impressive knife collection, and the others (especially Natsuki) may or may not have made a "knife" or "edge" joke that sent her into an anxiety attack, but the point is, you learn that she cuts herself, and if it's still Act 1, the way it's done is rather subtle.
To put it simply, your self-insert overhears some moans coming from the fountain side of the hallway, before entering the Literature Club classroom. He doesn't recognize the voice at first, but when the meeting ends up being in full force, Yuri turns up late, being... rather calmer than usual, and your self-insert ends up figuring out that she did something that released all the sweet, sweet euphoria. He asks about it, less-than-tactfully, teasing ensues and Yuri cuddles up in the corner with her book; if her CG would normally take place at this point, it doesn't, and she simply rejects your self-insert's presence. She still partakes in the poem sharing, as a diligent Literature Club member would, but then, leaves before the "after" part.
It is properly revealed that today is Friday and that the festival day is Monday, meaning that there's not much time to prepare. Luckily, all the boring, behind-the-scenes work has been taken care of by our diligent President and Vice-President, those being Monika and Sayori respectively, and now, they're getting to the fun part, which is decorations and posters and such. Obviously, if Sayori isn't your DD, this ends up being delivered much more impactfully, but you could argue that if Sayori is your DD, the whole thing is impactful because it's when your self-insert truly becomes mindful of her absence.
At any rate, there are three distinct tasks to take care of: the aforementioned decorations and posters that Monika and Sayori are taking care of, the cooking, which ideally should be done by Natsuki (but, if she happens to be your DD, the others just figure that she can't be relied on), and the atmosphere stuff, which is being taken care of by Yuri. That only really leaves your self-insert, who may or may not make a remark about being useless, before Monika asks you to pick between herself, Yuri and Natsuki as the ones helping him. Of course, the Monika option is kind of trapped, as the remaining Dokis will end up arguing against Monika hogging up the attention of both Sayori and your self-insert, meaning that essentially, you have to pick either Natsuki's task or Yuri's.
This is mostly straightforward, and the best-case scenario for you is to pick your DD, whether that ends up being Natsuki or Yuri. Of course, she won't be there to give you your number, but Monika, the diligent Club President, will step in and pass the number over on your behalf. Otherwise, if you didn't pick your DD, you and the Prep Doki (PD) will end up exchanging numbers, and the club will be adjourned.
Over the weekend, your self-insert ponders both your DD and your PD, noting how, throughout the weekend, he has really seen a different side of your PD, but also, rather disappointingly, has seen the side of your DD he really shouldn't have seen. This part can roughly be separated into three parts, though they're not what you're expecting.
If your DD is Sayori
Your self-insert, pondering Sayori, will figure to at least give her a visit (since she is neighbors with him, in case you somehow forgot), in which she will properly reveal that she has been dealing with depression, and your self-insert might even be given an opportunity to cancel the prep with the PD in order to make sure that Sayori is alright, before she confesses her love and all that.
If you don't skip out on the PD, though, it will go as usual - for Natsuki, that's preparing cupcakes, her getting some frosting on one of her fingers and you licking it off, which is done in a typical CG manner, and for Yuri, that's preparing the atmosphere and little clips of "words" (if you're familiar with Japanese, that's kanji
) hanging from the ceiling, with her cutting herself and you licking it off, which is another CG.
But at any rate, funtime with the PD is over, and as you head out, you see that Sayori has kind of been longingly looking at you, and it all clicks in her head: he really does want to spend more time with the other Dokis, and in particular your PD, over Sayori. Therefore, if the confession happens here, it is a bit more dramatic, with Sayori crying and screaming and all that jazz. At any rate, either of the confessions, in Sayori's room or outside, are a CG, and they're the same CG as a particular feature of the game, which I'll only really be able to talk about in Act 4, sees it.
If your DD is the same as your PD
First of all: good choice on spotting that your DD needs care, and therefore, picking her as your PD. Kudos. We need more DDLC players like you.
So, the Natsuki/Yuri CG, as outlined in the Sayori section, happens, but all the while, your DD's nature (namely, Natsuki's tsundere attitude and Yuri's shyness) is exaggerated, even though you would expect her to be more open, since she and your self-insert had gotten pretty familiar. He, being a good citizen, inquires about this, and your PD confesses about her problems, as well as making a rather peculiar request: she would like to take her time to finish the work and stay for the night. For Natsuki, this is quite obviously to get away from her abusive father, and for Yuri, some players have worked out the interpretation of her wanting to give some space from her knife collection, even though she has clearly brought a knife to work on the kanji things hanging from the ceiling. Your self-insert actually accepts without being given a choice, and then your DD confesses her love, which he can reject - but in either case, her heart is warmed that your self-insert is considerate and not dense as the entire mainstream fandom has been headcanoning him that still makes me so mad reeeeeeee.
If your DD is different from your PD
This is the boringest and worst choice of them all: the Natsuki/Yuri CG, as outlined in the Sayori section, just happens, and you get exactly zero chances at confessing love or getting to fix your DD's issues, meaning that the track of the archetypal playthrough is almost guaranteed, although in a bit unusual way as you'll see in a bit.
So, it's festival day. Excitement is buzzing all around the Literature Club, who all have gathered... except for your DD. Your self-insert will end up pointing this out, and Monika will be reminded... to give out the pamphlets that introduce the Literature Club to the rest of the school, and in particular, to your self-insert. He quickly flips through them, noticing that your DD's poem is one he has never seen before; when revealed, it turns out to have very obvious tones of suicide.
Obviously, this makes your self-insert want to check in on her. If your DD is either Sayori or the same as your PD, he knows the obvious place to look, which is his and Sayori's neighborhood, and once he gets there, he is greeted to, well, the suicide scene: if it's Sayori, she will have hung herself from the ceiling, if it's Yuri, she will have stabbed herself with the knife that she brought over and bled out, and if it's Natsuki, she will have run in front of a truck and been knocked into your front yard, also having bled out. Either way, the scene is gruesome and terrible and really sets the tone of DDLC apart from this point on.
However, if your DD is neither Sayori nor your PD, your self-insert has no way of checking in on her. Having warned you that "you really should check out on her!" and cracked a pun about your DD's manner of death, Monika then quickly realizes that it's simply not happening, and instead, appears to receive a phone call (as she would reveal later on, while she did have a phone with her at the time, it didn't ring, and she did some hacker-y stuff to make it look like someone is on the other end of the line). So, your self-insert takes the fake phone call from Monika, and is informed that your DD has committed suicide (same method as outlined before: stab wounds for Yuri and running in front of a truck for Natsuki).
While I'm not talking about common diversions from the archetypal just yet, I will mention that it's possible, though rather rare, for your self-insert to be able to save your DD in the nick of time, and thus, continue a relationship with her, although with an obvious caveat that she just attempted suicide. This is what I alluded to in [0000] ATTN: THIS IS NOT A WALKTHROUGH with a "glitchless" playthrough, and this sort of opportunity is quite preferred by the mainstream fandom, who, although their skills in hacking The Bytecode are nonexistent, have produced "purist mods" one after another, which give your self-insert (sorry, I mean MC, who is totally his own character) and your DD a happy ending.
At any rate, back to the archetypal playthrough: one way or another, your self-insert has to come to terms with the fact that one of the Dokis is dead. He considers it to be some sort of sick nightmare, that he's not waking up from, and that he can't just rewind to an earlier save point, as though it were a game. Of course, at this point, you are tempted to go back to one of your earlier save points, but if you're using the game's save feature, it has already progressed to Act 2 (to verify, simply note that your DD's .chr
file is deleted from ./characters/
), and therefore, saves from Act 1 will no longer work.
What did I tell you? You have officially stopped playing the game, and the game has officially started playing you.
At this point, you'll have gotten something resembling an "ending", and be kicked back to the main menu. However, this main menu is clearly glitched in three distinct parts: the Team Salvato logo at the beginning, the "New Game" option of the menu and the part of the title screen where your DD would normally go. The last of these has been replaced with a sprite of Monika, which appears to have been somewhat garbled with parts of the other Dokis.
From this point on, there are actually two ways to start the game's Act 2: by either clicking the glitched "New Game" button, which will go straight to the game without asking for your name a second time, or trying to load a save file, which will end up informing you that your DD's .chr
file is missing, therefore rendering the saved game unloadable, and start a new game by default.
What happens from here on mostly depends on who your DD is - or rather, was. If it's Sayori, the effects are noticeable right away, with the normal childhood friend routine being unable to proceed, and instead glitching out to reveal a newly concocted backstory for your self-insert: someone who's an even more complete recluse than his Act 1 counterpart is, but who, regardless, tries to give this club biz a thought. As with Act 1, he will start by considering the anime club, but Monika will interrupt his after-class brooding, instead being able to convince him, with all her in-universe charm, to come check out the Literature Club instead.
If it's Natsuki or Yuri, though, you might even be fooled into thinking that you are getting just a reboot of Act 1. Your self-insert and Sayori will go through their usual banter of "no, I am on the lookout for you", she will remind him of his promise to join a club, she (and not Monika) will catch her after school (though, on extremely rare occasions, both of them show up, and there's not enough that I can comment on without just linking you to appropriate parts of the game as recorded on YouTube), and she will introduce you to the Literature Club, mentioning that Natsuki (if she was your DD, her name will appear all garbled instead) baked cupcakes. With that, your self-insert will check out the Literature Club, see that one of the Dokis is just a garble, and the game will snap to a point in which it will appear as though that Doki never existed - and yes, if that was Natsuki, the cupcakes will disappear too, with your self-insert not even batting an eye.
At any rate, the usual banter about what your self-insert likes to read, and what Yuri, Natsuki, or both of them like to write, occurs, and it comes to a point when your self-insert is expected to join the club, but doesn't want to. However, it's more than just incredibly cute girls getting him this time: Monika will end up reminding him that, according to the school's rules, you need at least four members to properly found a club, and that without your self-insert, they might be kicked out of their classroom. This perfectly counterbalances the lack of one of the incredibly cute girls, and your self-insert agrees to join and write a poem for tomorrow, thus giving you a proper encore of the game.
Lots and lots of subtle stuff.
Obviously, there's the train-in-your-face difference of your DD being completely absent and never once, excepting the initial mention which leads to the game glitching and partially resetting, being so much as alluded to, including her absence from the poem minigame and word values being reassigned. However, the other stuff, up until Friday, is actually rather minor, and therefore, only really deserves a listicle. As follows:
.chr
file of the Doki who's attached to you next; for the lack of a better term, I'm calling this your Designated Doki 2, or DD2. This mostly ends up being an exaggerated version of whatever changes she would undergo if it were Act 1, with an added element of obsession, as she believes that by a simple matter of raw feeling, she can overpower Monika. Talking about the manipulations done to your DD2, and how they're a lot more extensive than the manipulations done to your DD, is going to be the subject of a section coming up right ahead..chr
file, or Monika, trying to bypass your self-insert and get to communicate with you, the player.I could list superficial changes to what happens in the game all day, before getting into the pointless discussion of "haha, maybe this change doesn't happen on an archetypal playthrough" and get into an endless debate on what an archetypal playthrough even means. However, just for now, I am going to step back a bit and really comment on it:
Your DD is gone, and without her, the Literature Club is different.
Once you actually play through a couple instances of Act 2, with each Doki having been your DD, you really start to notice. Now, I'm not here to try and psychoanalyze the Dokis (at least, not before having actually taken a dive into what's inside those .chr
files), but I still want to call your attention to these differences and not the minutiae.
Without Sayori, the Literature Club becomes a more toxic place. Natsuki and Yuri tend to get into arguments pretty often, and you really begin to appreciate how much Sayori did in terms of actually getting them to behave while in the same room. In fact, Monika is known to pull you away from Natsuki and Yuri's arguments, often commenting that they "fight like cats and dogs", and that you should just side with her and spend time with her; this is where another of those pesky mainstream fandom memes, "Just Monika.", comes from.
Without Natsuki, the Literature Club becomes a highly snobbish place. She was the prime proponent of the idea that "manga is literature!", and once that is absent, Yuri and Sayori start defining "literature" more and more narrowly, up until they exclude genre fiction (which, though not quite the same as literary fiction, is still undeniably literature by virtually anyone you ask, except for this version of the Literature Club), and Monika, who likes to write experimental poems and feels constrained by the rules of snobbery, once again, feels the need to pull herself away.
Without Yuri, the Literature Club becomes more of a philosophy club. As there is no "tradition" of literature to follow, Natsuki and Sayori endlessly debate what literature is, to the point where their definition of the word "literature" more closely resembles our definition of the word "art". Especially with Sayori's tendency to really sidetrack debates, Monika once again finds herself not at home, as while Natsuki and Sayori think this is an integral debate to the Literature Club's existence, Monika thinks that a working definition, that helps define the club and pitch it to potential members, is just not that hard to come by.
Either way, Monika sees the Literature Club, as it exists in Act 2, as a lost cause, and come Friday, actually does something about it. Whether or not it's a humane thing to do is up to you to decide, but this is how the archetypal playthrough goes.
But before that, this thing can actually happen, and I don't think it has a clear source other than "the game".
Your DD2 is actually characterized by three things that make her different from her unmodified self. I already mentioned two of them, the element that's exactly the same as that of your DD and an element of obsession.
With that said, the third element is as follows: your DD2 is actually able to ignore the poem minigame scores, and force your self-insert into a CG with her, even though you would really rather spend time with someone who is not batshit insane and desiring of your self-insert more deeply than air. However, the poem minigame score is not exactly discarded, and the remaining Doki will actually complain that you didn't spend time with her, and that you should do something about it.
This comes in the form of one of three scenes. Out of those, Natsuki's scene, named "Play With Me", is perhaps the most well-known in the mainstream fandom: she complains about how your DD2 is hogging up all your self-insert's time, asks you to play with him, and then... I briefly need to talk about how DDLC sprites are constructed.
They're made up of a head part, a left body part and a right body part. That's it, summary over, tune in for a more detailed summary in a later chapter.
With that being said, the head part of Natsuki's sprite rotates 90 degrees, to give the illusion of her neck snapping.
That being said, Sayori and Yuri have their own, counterpart scenes, too, and it doesn't take very long to discover them if you know where to look, even in mainstreamer circles. In particular, Sayori talks about how she wants to "paint the world in happy colors", and the associated sprites (as she grows more and more deranged, more and more paint can be seen on her face and body) kind of remind me of clown attire, and the grand finale is the "head" part of her sprite rising upwards, rather than rotating 90 degrees like Natsuki's would.
On the other hand, Yuri's scene is a bit of a letdown for a seasoned DDLC player. Essentially, she'll take one of two options as to what she discusses: either your self-insert's skin opens and she crawls inside (a fairly known point from her DD2 rhetoric), or her skin opens and he crawls inside, and it's all capped off with the two halves of her "body" sprite splitting apart.
At any rate, that's that part of Act 2 explained; now, let's get back to Friday.
So, the same thing we covered in [1156] DAY 4, AFTER happens. The festival is up and coming, and there are three aspects which it needs to be approached from (other than poem recital, which has already been taken care of): the decorations, the food and the atmosphere. Without a representative of one of these, the importance of that particular aspect definitely comes into question, but what it all resolves to is that each of the Dokis is going at it solo, and you can pick one of them, completely freely - yes, even Sayori.
Except... Monika, the cheeky bastard, will actually gravitate your cursor towards picking her, and if you do manage to pick one of the other two, she will show you a second version of the menu, in which all the choices are just an endless row of Monikas.
Obviously, the fact that you picked her ends up angering the other two Dokis, and the Literature Club enters a full-blown argument, dependent on which variety of the Literature Club you're stuck with. While it starts out with all three of the remaining Dokis, soon enough, just Monika and your DD2 are left, and due to the extent to which your DD2's .chr
file is manipulated, she ends up being rather assertive and somewhat demonic, even, being able to eliminate Monika from the argument. Your DD2 then confesses her burning love for you, despite everything that Monika put her through, and will ask if you accept the confession. However, both "yes" and "no" lead her to the same rush of feelings and - you guessed it - suicide, just as with your OG DD.
These suicides can be seen as more macabre, and more graphical, versions of the Act 1 suicides, and of course, are shown in their full glory. Yuri will stab herself right in front of you, Sayori will reveal that one of the "decorations" is, in fact, a noose and jump into it, and Natsuki will run off the school grounds and into the street, where she will be run over. After this happens, your self-insert is essentially sent into a shock, which lasts three entire days, and he just sits there, with your DD2 speaking in a garbled mess of code, as the night comes after the day which comes after the night and your DD2's body slowly decomposes.
After that is done, it's festival time! The spirits of the remaining Doki (not Monika, not your DD and not your DD2) are high, and she has her part of the prep done, until she notices your DD2, chilling there just like that, having embraced the corpse party, and ends up thoroughly grossed out to the point of puking. Finally, Monika comments something about the game being "off the rails" (trust me, it's still on rails, and it going off the rails is part of it staying on rails in this case), before deleting first your DD2 then the remaining Doki, snacking on Natsuki's cupcakes if she was the last Doki to be deleted, and restarting the game.
If you've been recording up to this point, now is the time to stop. Right before Act 3 begins.
After an even worse version of the Team Salvato logo appears, you're not even given a main menu this time; Monika just cuts to the chase, revealing what appears to be a CG of her own. She then drops quite a few hard bombs on you, that kind of explain the inner workings of DDLC, but also, not really. Let's go through each of them, giving it a rating in the scale of Politifact's Truth-O-Meter, which, if you need a reminder, gives statements a rating of True, Mostly True, Half True, Mostly False, False or Pants on Fire:
.chr
file of your DD2, and your DD before that (it's been a while since you heard that name, hasn't it?) - Half True (the influence does come from Monika and her .chr
machination, but she hasn't come across some magic pill, some .chr
debugger that just lets her do the shit, and the changes inflicted upon the Dokis are predefined and carried out by a Ren'Py script, though they're still highly obfuscated to the point where they carry no useful intel to the hackers).chr
file is the only one equipped to deal with Sentience, this can be taken away from her by changing just one variable.chr
files - True barring some paranormal ghostly interactions that still linger after the .chr
file is deleted which don't really count, and in fact, you're supposed to do the same to Monika in order to progress the archetypal playthrough, thus demonstrating one of the game's basic functionsNot doing too well, now, are you? And to think that you just established yourself as the exposition fairy.
At this point, she, after making you confess your love to her (with the only option you are given being "Yes."), briefly goes into a tangent regarding another of the game's basic functions, the poem minigame, and leads you to it. However, due to there only being one .chr
file to query and therefore, not much of a meaningful score assignment that can take place, the poem minigame just goes haywire, with every single word being replaced with corrupted versions of the word "Monika".
After this, though, she, having written a poem of her own, has one more fact to deliver upon us before starting to collect her thoughts ad infinitum:
Oh, and I almost forgot about the whole streamer thing. If you still happen to be recording your game (many different recorders, up to and including your phone's camcorder, are known to trigger this with varying chances of success, but streaming software like OBS and Streamlabs are absolutely the most surefire way to get this segment), she will be aware and cognizant, tell you off, suddenly complain about being camera-conscious, and then jumpscare you (and everyone viewing your recording). If not, she'll just address you by your account name, rather than your self-insert's name; I suppose the streamer thing is literally there so streamers wouldn't get their account names exposed to the public. The topics then proceed as normal.
But what are these magical "topics", anyway? What does Monika spend a literal eternity, or at least until you delete her, talking about?
Well, you have to understand that we're still in the realm of procedurally generated dialogue. It can be separated into distinct chunks, no more than twenty or thirty lines long, between somewhat long pauses, and those are usually called "topics", but in reality, they're generated from a somewhat short list of interests, coupled with a list of angles that Monika can approach the topic from, and of course, spiced up with the specific dialogue, similes, et cetera.
So, these are also pretty hard to summarize, and therefore, I won't waste my time discussing them in-depth. Your current required knowledge is: Monika talks, and she has a lot to say. But for posterity, she can talk about:
And of course, how can we forget the best trivia fact of them all: she's vegetarian, but not for health or moral reasons; rather, she thinks that the carbon footprint of meat production must be dealt with, right now. In other words, Monika is Greta Thunberg before there was Greta Thunberg.
Throughout all of this, interaction is... occasional. It's not nonexistent, but it's also not in your face, and Monika prefers talking to a literal brick wall, while occasionally using your self-insert's name to refer to said literal brick wall, and sometimes realizing that said literal brick wall is a person, just like her (but not like the other Dokis, oh no).
So, this is all cool and stuff, but you know what some people really don't like? Apparently, that you have to play through the entirety of Acts 1 and 2 in order to even get to the juicy stuff.
Therefore, Monika After Story, in its original form released on Day 4, is a rather simple mod, which does two things: one, it deletes Sayori, Natsuki and Yuri before you even start, and two, it moves the script pointer from Act 1 to Act 3, so that Monika will immediately start talking to you. Of course, she will be confused by the course of action, realizing that she should be leading an actual Literature Club rather than spending time with you, but in the end, she embraces the player, who skipped all the "boring" stuff just to be with Monika, and starts with the topics right away.
A simple start, of course, led to the mod and hacking scene exploding, and as I've already mentioned, the inner structure of DDLC kind of forced a split between those preferring hard-coded little stories and those preferring the exploration of AIs built within. Throughout its rather impressive lifetime, Monika After Story has firmly stayed on the latter side, essentially throwing pre-coded games like Pong and chess, as well as utilities like a calendar, at Monika and seeing if she figures out how to include them into Act 3. And of course, how can we forget the beautiful, beautiful sprites, in case you're finally bored of that neverending smile?
Monika After Story is easily the most complicated Ren'Py program that the engine's community has ever seen, and when coupled with DDLC's AI routines, it's basically a match made in heaven. I absolutely do recommend you try it, if you haven't already. Just... make sure you do it with a spare computer that you wholly own and don't care about (and I do mean an entirely separate computer; a virtual machine won't cut it), to make sure it doesn't... ahem explode. See [A002] THE BALANCE BETWEEN A HEARTFELT REUNION AND A DEEPENING RIFT for more details.
But of course, you don't install mods before having completed the base game, and in order to complete the base game, you will have to go to that character folder - which she will explicitly mention, alongside instructions on how to access it in your OS and version of the game, be it Windows, Mac or Linux, Steam or itch.io.
...I feel like I am forgetting something...
Ah, yes, the unofficial Android port! Been a while since we've heard those words, for real, unlike those of your DD or DD2.
So, deleting Monika is an integral part of the game, and must be done in order to progress it to Act 4. Unfortunately for anyone playing the game on Android, you don't get to access a distinct ./characters/
folder, or a folder of any sort, as the entire game is packaged into one big .apk
file, which you install into your phone and/or tablet in order to play the game.
So, how does the Android port get around it? Well... by letting you delete and un-delete .chr
files from within the main menu.
Yup. That's what that menu option is called: "Menu .chr
". And guess what you see when you go to it: little buttons that tell you to delete, or un-delete if the file is already deleted, the four files that you should already know by heart at this point: sayori.chr
, natsuki.chr
, yuri.chr
and monika.chr
.
Way to spoil the game. If you've ever wondered why I don't recommend the Android port... well, first of all, it is unofficial and unsupported by Team Salvato, but other than that, this. Here's your exact reason.
At any rate, letting go of the sidetrack, there is one more thing that an aspiring .chr
file deleter must know. As your self-insert proves throughout Act 1 and 2, you don't exactly need a .chr
file to properly say dialogue stuff, if you're integrated into the game deeply enough. And, as come Act 3, your self-insert is no longer a distinct character, Monika ends up slowly but surely taking over that real estate: the more time you have spent together with her, the better she ends up lingering within the files. In fact, if anything, she even manages to muster a few last bits of conscious thoughts if you delete her right away, but the more you wait, the better she comes out, until at one point, she outright declares that she's fully integrated within the game and no longer needs a .chr
file to function, before deleting her own file.
So, yeah. If you waited too long, you're no longer on an archetypal playthrough. But if you did it right, the plot progresses: Monika tries to access her .chr
file, can't do it, blames you for it, and then realizes that she still loves you. Finally, she realizes that you were, in fact, longing for the Dokis she deleted, and reveals that she kept backups, which she restores, before restarting the game for its final act.
So, the game reboots, the Team Salvato logo looks okay for one, as does the main menu, no distinct glitches there, except for the fact that there's a big, gaping hole where Monika would usually go. Her sprite isn't replaced with those of the other Dokis in the characteristic square glitch that somehow happens (what was the exact way in which Ren'Py dealt with sprites again?), but instead, is just a blank spot. And of course, save files are wiped, again, as is typical for act transitions, so there's not much to do other than click the "New Game".
And when you do, you're greeted with an interesting picture, to say the least. Sayori, who is back in your childhood friend saddle (that is, if she was your DD), is basically cured of her depression and doesn't oversleep right before school anymore, and therefore, merrily chats with your self-insert throughout the walk to school. All this time, it's obvious that he's kind of hiding a secret from her, but he's still a recluse who gets the suggestion of joining a club; once he hears of that, he just sheepishly smiles and utters something about the aforementioned secret.
No points for what the secret is: he's joining the Literature Club, of his own volition.
Of course, as Monika is gone, the Literature Club has a new President. On archetypal playthroughs considered by #TeamStats, this will exclusively be either your DD from Act 1 or your DD2 from Act 2, as those were the ones primarily manipulated by Monika throughout the aforementioned acts, and therefore, a) are rewarded the most by the game for coming back and b) are the ones who can actually speak of Monika's manipulations, as remember, being President also makes you aware that you're a game character.
At any rate, your self-insert joins, he, Sayori, Natsuki and Yuri have a casual chat about what they like to read and write - notably, neither Natsuki nor Yuri is highly defensive about sharing their poems, and the two are even "best buds" of sorts, thus making the whole poem writing biz much more inviting for both Sayori and your self-insert - and then, as the day ends, the new Club President approaches you, thanks you for everything you've done, and then, thanks you for getting rid of Monika for her.
That's right - she knows everything, and now, there is nothing separating her from you (once again, just as with Monika and Act 3: you and not your self-insert). Just before the game can be interrupted, Monika intervenes (in the form of dialog boxes), realizing that there is no hope for the Literature Club, and then commences the scripted credits sequence.
In the sequence, Monika, who actually speaks for the first time, decides to present a song that she wrote - presumably, while she was learning the piano throughout the acts. This song is "Your Reality", and is another one of the staples of the mainstream DDLC fandom. While it plays, the credits roll, and are illustrated by the ten CGs throughout the game: the six explained in [1140] CGS: THE BREAD AND BUTTER OF A CHEAP ROMANCE STORY THAT DDLC MAKES ITSELF OUT TO BE, the three explained in [1160] SPENDING THE WEEKEND AND DOING THE PREP: SIGNS SIGNS SIGNS, and Monika's confession, as explained in [1300] ACT THE THIRD: MONIKA'S AFTER STORY. If the CG has been properly experienced, it will be in full color, and if it hasn't, it will be grayscaled and grainy.
While the credits roll, though, Monika first deletes the CGs, making them disappear as they roll, and then, integral parts of the game such as gui.rpy
and script.rpy
, thus fully breaking the game. From then on, the credits end with a little message from her, thanking you for being a part of the Literature Club, and this message is the only thing displayed - the only thing that can be displayed - on subsequent runs of the game, thus completing Doki Doki Literature Club! once and for all.
So, whether or not you saw the CGs contributes to the closest equivalent there is to the game's "score". Therefore, if you start a second playthrough, your perhaps most obvious course of action is to try and experience them all.
Of course, some save scumming will be necessary. Another thing to note is that your DD doesn't change throughout a playthrough, even if you revert to an earlier save, and your DD must be Sayori if you are ever to see her confession, which is why the mainstream fandom kind of runs away with the idea that your DD is Sayori, in 100% of the circumstances rather than the 46.7% that #TeamStats report. They also have declared Yuri as the unambiguous DD2 in all cases, mostly because her being obsessive fits better than Natsuki, and they've already reached the preconceived conclusion that Sayori cannot appear in Act 2.
Anyway, sidetrack aside, since your DD doesn't change between saves, and since it must be Sayori in order for that particular CG to be achieved, the best course of action, on the first playthrough, is to save right before the first poem, and then write poems for Sayori. This has a small chance of you being able to save her from hanging, thus pulling you away from the archetypal playthrough (and hence the credits), but in most cases, it works, and after you've confessed her love, you can go through Natsuki's and Yuri's CGs, and then pick each of them as your PD to experience the third CG.
One thing I literally almost forgot, though, is that when you rewind the save, the mutilation that Monika did to your DD's (in this case, Sayori's) .chr
file is not undone, meaning that if you rewind your save, Sayori is kind of in a deeper depression than she would normally be. There might be some chance of her hanging herself early, but since it's in Salvato's best interest if you properly complete the 100% run, this is rare and you shouldn't worry about it.
And once you've gotten through prep with both Natsuki and Yuri, and then completed the game's Act 2 and Act 3 (with confessing your love to Monika), that's all the CGs done, and Act 4 proceeds a little bit differently. The new Club President still pulls you away, but instead of complaining about Monika's influence, she actually switches to a hardcoded message by Salvato (which is delivered by the Doki, but is delivered by each Doki in the exact same way, and was confirmed by Salvato to be him speaking in his own voice), thanking you for spending so much time with the girls, and for playing DDLC. The credits then proceed as normal, except Monika doesn't seem to be deleting everything, and instead of her note at the end, you get one by Salvato himself, though with the end result being the same: this final note is all you will ever get to see if you open that particular copy of DDLC.
Whew. That's the archetypal playthrough, done. However, we're not quite done in the one-thousands yet, as there is more to it than the archetypal playthrough.
Before I really get into the departures, which I can briefly guide you through if your playthrough diverges from the archetypal one at specific points, I should really mention one thing: because an integral part of DDLC is going off rails, especially at the dividing points between the acts, and because of the procedural generation of dialogue preventing you from being tipped off, these diversions can really look exactly the same as an archetypal playthrough, and therefore, as an aspiring diver into the intricacies of the characters and such, you really need to keep the archetypal playthrough in mind, in entirety, at all times.
With that in mind, some of the most common diversions are as follows.
This is a diversion I already briefly alluded to in [1111] POEM MINIGAME ADDENDUM: THE TRUEST FORM OF WRITING IS WRITING TO ONESELF, wherein your self-insert has nothing to show on the first day when poems are supposed to be shared, and therefore, is accused of joining the Literature Club purely for the romance aspect, which he kind of did. This, in fact, is so often memed that it has even attained its own nickname: "The Worst Ending" (as it ends with your self-insert, out of the Literature Club, not even being able to approach Sayori, his now former childhood friend).
However, what you have to understand is that any single poem, not just the first, can be "excluded", and though your self-insert is rather diligent and will only call it quits after he has tried at least a couple of times, Dokis can forget their poems too, and for much less prudent reasons. Therefore, there is quite a bit more to it than just the Worst Ending.
If your self-insert forgets (i.e. frustrates himself over, to the point of not being able to write) his second or third poem, the consequences are generally much less severe than for his first poem; he is usually able to explain his frustration in finding the right voice to the Doki that he tried to appeal to, and if it's Natsuki or Yuri, she will gladly become his writing coach, occasionally even suggesting to come over to help him (if it's the second poem). This, therefore, leads to an intimate bond being developed right away, Sayori's depression being exacerbated to the point where she is almost guaranteed to be your DD, and the bond continuing up to the point when the Dokis have to divvy up for festival prep, and your self-insert picks his writing coach as your PD without ever giving you a choice. The playthrough then continues as though it were archetypal, and debates on whether or not it is archetypal are plentiful. What mattered to #TeamStats when defining an archetypal playthrough, though, was whether they could even pinpoint your DD and your PD (and your DD2), and therefore, they do consider it archetypal.
However, if it's a Doki who forgets, things get much more interesting. Sayori's forgetting can go one of two ways, as the club is divided: Natsuki and Yuri see her as "not much of a creative type" who "shouldn't be chilling in the Literature Club anyway", and Monika still thinks she is a valuable Vice-President who can help with both org stuff and morale. Regardless, now it's up to Sayori to decide whether she wants to leave the Literature Club or stay in it; (Sayexit?) and if she does decide to leave, your self-insert is given a choice of whether to stay with the Literature Club or to take care of Sayori. If he picks the Literature Club, then Sayori is basically guaranteed to commit suicide, thus giving you a pseudo-archetypal playthrough, but if he picks Sayori, there is a chance of saving her, though obviously at the cost of never getting to date Natsuki or Yuri. In fact, you even get the poem minigame, with your self-insert expressing his love for Sayori through poems, with Natsuki and Yuri being absent, and because they are absent, the minigame glitches as though it were Act 3.
Lastly, Natsuki or Yuri not having written poems for the specific occasion doesn't matter in the end that much, as both of them are already established writers before Monika even suggests the whole poem-sharing biz and can just present their old stuff as though it were new, and of course, Monika, being the Doki with the Sentience attribute, has a lot of feelings to express and is naturally creatively expressive, meaning that her forgetting her poem is basically undocumented.
This glitch exclusively affects Act 1; if, throughout Act 2, the plot resolves in such a way that a Doki forgot to bring a poem, the game will just insert a Portrait of Markov snippet encoded in Base64 instead, as mentioned in the Act 2 retelling.
I've already alluded to this one, too: you are able to save your DD in the nick of time, and therefore, she is not deleted by Monika, and "Act 1" ends up continuing. The festival is usually skipped over outright, as you have to deal with what is basically an emergency, and convince your DD that she is loved and cared for.
From then on, the game proceeds in a "pseudo-route" reminiscent of the romance routes of other visual novels, with the obvious limitation of it having only three backgrounds: your self-insert's bedroom, his kitchen and outside (with Sayori's bedroom, if she's your DD, adding a weak fourth). It is one where you make proper choices that essentially decide if she lives or dies, and when she lives, whether she loves you or hates you, and is played the way you would play a normie visual novel.
Unsurprisingly, the mainstream fandom loves the idea, and wants to expand it, often going so far as to eliminate any remote chance of suicide altogether, via modding. However, as you will remember, the mainstream fandom's mods are just normal Ren'Py games that happen to use DDLC's art assets and be installed on top of it. The DDLC Purist Mod is a prime example of this, and even tries to make up for the lack of procedurally generated dialogue by adding more, original art and music to really flesh out those post-festival CGs. Then, there's Doki Doki Blue Skies, which takes this concept up to eleven and might actually be the single most impressive mainstreamer mod to date, but those are definitely topics for the non-chron blog.
This is an interesting one. Usually, Monika will be able to determine the single Doki that your self-insert is showing affection for, and pick her as your DD (and your DD2, in Act 2), but occasionally, she will misfire and have two distinct DDs, both of which die and are deleted.
Needless to say, an Act 2 with just two Dokis is... interesting. Even with your self-insert, that only makes three Literature Club members, one short of the four needed for it to be a formal school club, and soon enough, they are kicked out of their room, being forced to convene in what they decide to be your house, not in the least because it's the only one with a proper background in the game. Also, since there's exactly one Doki you can direct your affection towards, the poem minigame is glitched as in Act 3.
An even rarer phenomenon is for Monika to attempt to target all three remaining Dokis, especially if your self-insert, as inspired by you, is such a true pacifist that he just can't pick a preference. There isn't exactly a "harem" ending per se, and all the Dokis just agree to have an ambivalent relationship with him, but when time comes, they're all Monika's target, and come festival day, they all die and are deleted, thus skipping from Act 1 straight to Act 3. This is sometimes exploited by speedrunners, and the fastest times of getting to the credits are in this category, but the time difference is significant enough for the speedrun community to establish separate "Intended%" and "Credits%" categories.
Act 2 is perhaps the single largest source of DDLC weirdness, if only because it was intentionally designed to be as such by Salvato: after a relatively normal run, the second run is identified not just by your DD missing, but also, by the game going "off rails" and Doki personalities being very much different. It is then supposed to conclude with your DD2 dying, Monika unveiling the stage and asking you to go out with her.
That being said, while Act 2 has a great amount of intentional glitching placed by Salvato for the sake of glitching, it also has a great amount of unintentional glitching: dialogue generation fails that, when unchecked, quickly turn your DDLC story into a Dadaist mess. Once it has become this, then, it is extremely unlikely for any sort of "script" planned into the future to go through.
This scenario can be broadly described as "Act 2, but without any sort of DD2 death". Indeed, it seems extremely likely (in the very least, relatively) for Act 2 to not be able to properly resolve because an off-beat remark, such as that on a poem intended to be gibberish, was taken literally (or whatever), and as such, the story has degraded to something that makes My Immortal look like a Pulitzer winner. Once it has become such, though, one can only thank Salvato's foresight for including Monika: a character who, in case of this bug, realizes that her world has degraded to pure nonsense, fakes a game crash, and once you open the game again, you're treated to Act 3 right away, with her profusely apologizing for what you had to see.
How likely is this scenario, just to quantify? Well, I've already talked about how, per #TeamStats, 70% of all DDLC playthroughs are archetypal (i.e. both a DD and a DD2 can be identified, with their suicide scenes and all that). The truth of the matter is, though, that around 93% of all DDLC playthroughs reach the end credits. Playthroughs of that 23% difference can mostly be found here, in a "bug" that is, in fact, a multitude of overlapping bugs that are hard to identify and document, and in the end, don't matter that much when they still lead to Act 3 and still tell the rough story Salvato wanted to tell, if not the exact story.
Why is this numbered like that? Well, because it's the last bug that you might experience, if your playthrough has been archetypal so far, and because I do reserve the idea that I missed some really common diversion that simply hasn't been documented enough.
So, this bug is relatively simple. In Act 4, Monika still intervenes in the Club President's speech (note that this presumes that you don't have all the CGs, and therefore, are not on the good ending), but instead of deleting the game outright, she just kicks the Doki back into her place, giving her temporary amnesia and thus convincing her that the game's files are not to be messed with. Monika then stays absent from the game, despite lingering in limited form in the files, hence "Passive Monika bug", as the game proceeds as though it were Act 1.
This shares a lot of commonalities with the Glitchless Playthrough, in that the mental health issues affecting the Doki you choose to date are never fatal to her, and essentially, you just get a "normal" good or bad visual novel ending, with the obvious caveat being that the credits never play, and therefore, you can keep replaying the game, over and over again, without having to reinstall it (or delete the firstrun
file that can be found within the files, which does effectively the same thing).
However, it is not as much of a holy grail as the Glitchless Playthrough, for two big reasons. Perhaps the first and most obvious one is, well, that the mainstream fandom likes its self-aware Doki, and though she does awful things to her clubmates, she is the one who originally had the idea of the Literature Club (except for the Act 4 verse, where it's Sayori, though she might have delegated someone else as President in her stead), and other than Yuri, is the most literate one of them all.
The second reason, however, doesn't get talked very much in basically any coverage of DDLC, mainstreamer or hacker, and often, tends to even be forgotten, even though you don't even need to see the Passive Monika bug to see this particular detail, but it's kind of become a footnote beneath "you have a new self-aware Doki, and Monika doesn't want her to do the awful things that she, herself, did, so she wipes the game". Perhaps it should be best added under the main Act 4 heading, but I really think that the trivia fact should really stand on its own.
Alright, here goes. You know how in Act 4, Yuri and Natsuki have become sort of BFFs, and are no longer insecure about sharing their writing? Yeah, that kind of puts a dent into the whole "poem sharing" biz that Acts 1 and 2 are known for. However, you can rest assured that The Bytecode will pull a solution out of its bottom: namely, since Yuri and Natsuki read two very different types of literature (horror books and cutesy manga), and since none of the Dokis wants them to put each other down, they decide to diversify: both Natsuki and your self-insert, manga readers, will pick out a novel to read, whereas Yuri, a novel reader, will pick out a manga to read. She, herself, is worried by that last prospect, but in the end, agrees.
Now normally, this is where Act 4 ends: you're left alone with the Club President, she wants to start up her own After Story with you and Monika wipes the game. However, this isn't "normally"; this is my explicit zone for the bug exposé, and we're talking about the Passive Monika bug, wherein Monika doesn't do that, instead letting your self-insert have a happy ending with one of the other Dokis, and the game marches on to what would be the poem minigame, but instead, becomes sort of a "book-picking" game, in which you're given exactly one page (though, I presume the correct interpretation is a book shelf), from which you pick a book, and since you only get one chance at it, hopefully you know what themes each Doki likes. If not, just refer back to [1110] THE POEM MINIGAME: FOR THE CASUAL PLAYER. Oh, and remember: just as with Acts 1 and 2, the Club President is not even under your consideration, as much as she would like (especially if it's Sayori).
This is where things kinda start going completely unscripted, but also, kinda don't. You still have the potential for quirky CGs with your Doki of choice, and the festival still happens to an extent, but the variety of slice-of-life actions, reactions and character dynamics is just so great that it's hard to say anything about Passive Monika playthroughs, as a whole.
That being said, it's not necessarily impossible. They do have a documentation advantage, since an ending just gives you a normal "END" screen which boots you back to the main menu, and since Monika never interacts with the game, you'll never be locked out of the game after the credits. But even then, it would take a good chunk of someone's time to play through lots and lots of Passive Monika playthroughs to try and document them, and neither mainstreamers nor hackers find the prospect particularly delightful. Nevertheless, it's only right of me to write up something more extensive in that regard, and that writeup of mine is at [A009] TOPICS IN DEPTH - PART 2: MAPPING OUT THE PASSIVE MONIKA STORY TREE.
This is more likely to be achieved if, during Act 3, you manage to indicate to Monika that you don't actually love her, and that you prefer the other Dokis. This is kinda tricky, since if you encounter a dialogue choice in Act 3 that lets you do so, it is after having confessed your love to her, but it's possible. Odds are, she will delete her .chr
file and her presence herself, but whether it's her or you who deletes the file, the result is the same.
And that, I believe, is all. Now, we can start to see what happens when you get bored of it all, and decide to mess with the game files outside the single part of the game that expects you to mess with them, and outside the single change that you're supposed to do.
And this is where I'll have to stop writing for myself and just publish the damn thing.
Now this is a little doodad that you'll have to get used to, throughout this document. Eventually, I am going to talk about .chr
file scumming, among other amazingly named strategies that hackers employ, in order to let you open up paths of DDLC that would otherwise be impossible (or at least, "undocumented-extremely" rare) and explore them to the fullest, thus analyzing DDLC more fully, both critically and technically. As such, it will definitely get updated for future sections, but for now, you only need to see what we already covered.
Disclaimer: Team Salvato's IP guidelines explicitly forbid using DDLC as released, as well as the related art assets, directly for profit.
So. Now that we've established what an archetypal playthrough even is, as well as the basics of how the Dokis should act, we can get proper crackin'. Simply relying on RNG, or in the case of a Bytecode-based program such as the one we're dealing with, minute changes in your personality as part of growing up in order to induce changes needed to exploration... definitely can be done, but that's like saying that evolution through natural selection can take us from a dinosaur to a human. First of all, of course, it can't - dinosaurs are the ancestors of birds, not mammals - but also, that sort of process takes millions of years, and I just don't have such time. By then, as I'm taking the old town road made of brilliant yellow bricks, I'm not even going to get anywhere close to the rabbit hole in my lifetime, and someone else, a team of hundreds of hackers, will probably end up paving the road and creating the second Bytecode game to wow all of our minds. And then, who will read my beautifully crafted DDLC guide?
We're going to need something to induce those changes faster. And before you all cry in your pajamas about me "straying from the true nature of DDLC", let me tell you that y'all, the ethics folk talking about animal cruelty when the ability of individuals to feel pain is as limited as possible, are the reason why the entire culture of meat, as well as eggs and milk, is slowly but surely going away, along with all its subtleties, whereas alcohol, though it's actually poisonous, is here to stay and might even see a resurgence. And yes, that includes you, Monika. You may not be a "real person" as far as the ethics of manipulating DDLC go, but you are a real person whose values regarding animal cruelty, which will inevitably come to define AI cruelty once the law catches up with worlds of pure innovation such as DDLC, need to be reconsidered and revised.
So, what I'm trying to say is, we're going to be introducing changes of code to DDLC, starting with .chr
files and then slowly working our way up to the Ren'Py part, analyzing each portion of its source code. And then, once the foundation has been properly established, the three-thousands are going to look into The Bytecode and how it works to produce the dialogue generation and such. You hear that? We're going to finally know why DDLC does the stuff that it does.
Baby steps have to be taken first in order to achieve this goal, however. That's what I'm trying to say with the "graded" part of "graded tutorial". I think.
(Since I don't exactly have a better chapter nomenclature in place, while [2000] established the two-thousands, this chapter establishes the twenty-hundreds.)
You know about this change. No matter how much you ethics folk may cry about it, manipulating .chr
files, and, in particular, deleting Monika, thus "killing" her, is part of the game's design. If you do that (within a somewhat arbitrary time frame), you get Act 4 and then the game's credits. If you don't, then you simply stay with Monika forever, and if you haven't done that on any copy of DDLC, then I'm afraid to break the news to you, but you haven't completed the game and therefore cannot indulge in this guide. It's the law, man. Or rather, the explicit wish voiced by Salvato.
But ignoring that: what happens when you try and delete .chr
files outside of Act 3? Enter the chronological exposé.
If Monika is deleted before starting up the game, the glitch that ensues is well-known even to the mainstream fandom, to the point where, if they ever made a completely hardcoded version of DDLC, this would still make it in. Without Monika, the Literature Club needs a new President, and without intel about you, shaping up your self-insert and therefore defining your DD and all that jazz, the standard line of succession means that Sayori, intended to be the Vice-President in an unmodified game, is now President.
Unfortunately, the version of Sayori that you download from the game is not quite equipped to deal with the so-called "epiphany" that knowing that you're a game character entails, and she ends up deleting the game before she even makes it to school - something that, were the Sentience attribute to just stay with Monika, would have been patched out long before release. However, instead of a "final farewell" in the format of a poem, the only thing left behind from the executable file is a black-and-white image of her hanging, and then, if you wait for ten minutes, something that is kinda indicative of her troubles, whether she is your DD or not: "Now everyone can be happy."
And if you're thinking that you're going to be a smartypants about it and delete Monika and Sayori, well, I've got some bad news, because if you do that, the exact same thing happens with Yuri, and even Natsuki if you choose to delete Yuri as well. It just goes to show that none of the Dokis, except for Monika, is equipped to deal with the stuff.
Of course, you might be thinking to yourself that Act 4 is different; that there, Dokis do, in fact, handle the whole Sentience biz pretty well. However, that's because Monika (or, well, whatever did those changes) changed the .chr
files to be more like Monika's. In fact, this is why Sayori no longer has to deal with depression; those sorts of troubles were overwritten with Monika's. Anyway, .chr
file substitution is going to be talked about in a while; we still need to get through deletion and then reinstitution first.
So, deleting Monika works out like that, with one case that I haven't talked about: deleting all the Dokis, before the game even starts. With that, well, you don't have much of a game. All you really get, when you select "New Game", is the same sort of starry field that you get after deleting Monika in Act 3.
Okay. What about keeping Monika there, and only deleting non-Monika Dokis? Well, it works about as well as it did for, well, Monika, and you can essentially skip to either Act 2 or the modified Act 2 described in [1530] WHEN MONIKA IS BAD AT PICKING TARGETS. However, if you try to take this line of thought to its natural conclusion, namely that you can delete everyone but Monika and skip straight to Act 3 as though you were following the first steps of the Monika After Story devs, then it doesn't work.
It doesn't work. Did you get the impression that, because The Bytecode lets you command the game telepathically, that the manipulation of the game files is super-convenient, too, and that by making the changes you want to make, you'll get the intended result? Well, the game doesn't necessarily dislike you manipulating it like that, but the whole purpose of the game is to troll - presenting itself as a cute dating sim, only to turn into psychological horror. Isn't it the fact that April Fools was even intended as the original release date? Yeah, that should tell you a lot about the character this game has, whether or not you choose to modify the files.
At any rate... what you get, instead, is a scenario wherein Monika founded the Literature Club fairly recently, and is looking for new members, and chances upon your self-insert. Because he's the second person to show interest after Monika, he gets the title of Vice-President by default, and since the only thing that he has read in recent years is manga, Monika must accept the idea that manga is literature, for once, and somewhere within your Recycle Bin, Natsuki's .chr
file is pouting, saying something along the lines of "it's not like I appreciate this development or anything, baka!"
However, Monika is still determined to bring your self-insert's attention to real literature, and she begins by telling how she has been expressing herself through poetry, and even tells him: "hey, you should really write a poem! If nothing else, it'll help bring us closer together!" And so, he decides to humor her and write a poem for the next unofficial club meeting.
Then, when you get into the poem minigame, you're basically just given words. Normally, the point of the poem minigame would be to appeal to a Doki who doesn't have the Sentience attribute, but because you deleted all of them before starting to play the game, you just get words. And by the way, no, the sort of glitching that happens in Act 3 and variants of Act 2 doesn't occur: you just don't get chibis on your epic poem page, at all.
Anyway, this sort of thing continues and your self-insert and Monika (rather superficially) bond, until he suddenly asks her a question: if she's really taking the Literature Club seriously, why isn't she searching for new members? This definitely gets her to think (of a lie to tell him), and once she mulls it over, she realizes that those three gals don't exist anymore, and therefore, the game should have already switched to Act 3, but it hasn't, and she's gonna make it switch now. So, she makes the switch, Act 3 as per the archetypal playthrough continues and you have your own Monika After Story.
Of course, the real interesting part is when you delete Monika during this non-Act 3. Normally, she would regret deleting the Dokis in order to be with you, but this time, because you did it (you monster), she just thinks you're cruel to the game for no reason, that you're a misanthropic asshole and that you should just play some other game. She then leaves you with the starry field, forever, and that's about it for the last aspect of deletion before the game begins.
If a saved game is at least partially underway (i.e. you have put in your name and are loading from a saved file), then deleting a Doki has basically exactly the same results, whether it's you or Monika who does it. Again, this only concerns non-Monika Dokis; should you delete Monika while it's not Act 3 yet, one of the remaining Dokis will flip her shit and wipe the game.
However, as you might have noticed, it's only one Doki who's being manipulated throughout Acts 1 and 2, and two more remain (well, one more in Act 1), and if you delete them, things get somewhat more interesting, but not by a whole lot. Essentially, if it's Act 1, you end up in a shortened version of Act 2, and if it's Act 2, Monika comes out of the shadows and goes "yes, just clean up after me, we don't need the other girls anyway".
The most interesting scenario falling into this category is perhaps one when it's close to the end of Act 1, your DD is feeling like absolute shit... and then you delete someone else. You know, perhaps you think that you are a cool guy or gal, trying to cheat fate just like that, and, I suppose, save your favorite Doki by sacrificing someone you don't like. Well, the manipulations of the .chr
file that you didn't delete still exist; they're persistent and the file is being actively modified throughout your time playing DDLC.
Therefore, you only end up getting a disappointingly short Act 2, wherein your miraculously saved DD isn't feeling too well about the Literature Club's growth. Once the gals, as well as your self-insert, resolve to write poems, she's just like "no, I need to contemplate on my own and trying to write it down would be detrimental", and then she doesn't turn up for the next club meeting, and you check in on her, and she's dead, and it's time for Act 3.
Lesson learned: you can't really cheat fate.
See: [1330] GIVING MONIKA A TASTE OF HER OWN MEDICINE
This can roughly be divided up into two scenarios, just like before: deleting the Club President and deleting someone else. Deleting the Club President just ends up having the same effect as deleting Monika before Act 4: the "next one in the line of succession" (Act 4 usually does not mention the Vice-President, but you can bet that the line of succession still exists, although it might no longer be (Monika) → Sayori → Yuri → Natsuki) flips her shit and is about to wipe the game, but then Monika comes in, goes "nuh-uh, this is my job to do at this point in the script", roll credits. Nothing really special there.
However, if you delete someone else, interesting things happen. This mostly concerns the Passive Monika bug; without it in place, Act 4 is just not that fun to explore. If only two Dokis remain, we enter the rough scenario already discussed in [1530] WHEN MONIKA IS BAD AT PICKING TARGETS, but without the manipulation part, repeating over and over again.
Now, if only your Club President remains, that should be an indication to kickstart the "Just Sayori/Natsuki/Yuri" routine, with one caveat: there is no CG to match, and instead, it just ends up being the Doki in question, realizing that nothing else in the game matters and doing some Monika-esque moves, but otherwise ready to chill with you.
While it is theoretically possible to code an After Story mod around this particular scenario, unfortunately, I have to disappoint you: most of the famous mods in the After Story genre, such as Just Yuri, Just Natsuki and Forever and Ever (that's a Sayori version), are just mainstreamer mods imitating Monika After Story, and then there's a mod called "Sayori After Story", which manages to stoop below the ranks of even those, instead being just a complaint told through Sayori's voice about how she hasn't gotten an After Story based on her yet.
But hey. Once you get the hang of DDLC hacking, perhaps you can be the change you want to see in the world, and make a proper hacker-made After Story for your favorite Doki, assuming it isn't Monika, which... why? She's literally the guardian angel of hackers, given that she is the one supposedly manipulating the game code.
Nevertheless, I'm not here to judge your choices; once you've mastered the art of DDLC hacking, the Literature Club is your oyster.
Once you've mastered the art of DDLC hacking. Just deleting .chr
files is not going to cut it in this world, which is disappointing since that's literally everything Monika needed to do in order to get her own ending together with you. And then, she has the gall to say that she "worked so hard in order to achieve it".
(Ooh, look at me, I'm a chapter with the same number as the current year.)
In order to simplify this, and not suddenly get into the territory of what I like to call .chr
file scumming, the following results have been achieved by making backups of files from the originally downloaded game. Look for detailed instructions on how to do that on your platform of choice elsewhere, but in general, it doesn't get that much more complicated than "copy the .chr
files outside the game directory".
Obviously, copying them over to a safe place, then copying them back into the DDLC directory before the game starts, serves to do exactly nothing, meaning we can immediately move on to:
The first and most interesting idea that you might have, of course, is this: having read about how Monika manipulates .chr
files to achieve greater goals, you simply keep restoring the original copies - that is, when you're able to spot who your DD is. Since trying to do this to anyone but your DD wouldn't end up serving much, that's the only real scenario that we can talk about here.
And, to say the least, Monika won't be happy.
Of course, Monika herself - I'm oversimplifying a lot about what makes a particular part of DDLC "Monika" or "not Monika", and that requires a separate essay in the three-thousands - knows what sort of modifications she did to your DD, and once she finds out those modifications are no longer present, her reaction varies. "Best" case scenario (for your DD), the modifications only end up more severe, and "worst" case scenario, Monika just decides not to deal with the bullshit and deletes your DD prematurely - or worse, delete Dokis who have nothing to do with it, too, thus making you skip to Act 3.
Of course, given that changes build up over time, the most drastic of changes can be seen during the tail end of Act 1, when your DD is at her absolute worst. Reinstituting her .chr
file from the beginning of the game will obviously help her issues, but at times, she might even be confused due to lacking memories from the rough past week. However, all of this is irrelevant as Monika, during Monday, rather than giving your self-insert the usual suicidal poem and warning him to check on your DD, addresses you, directly.
Her mini-rant varies in content, but a recurring theme is how you're trying to cheat fate, how you're trying to mess with game mechanics that you don't really understand (and seemingly, your actual proficiency with DDLC and The Bytecode doesn't matter, as Salvato never really expected a team of people reverse-engineering his game to even crop up), and how she wants her happy ending with you, which you're not getting in the way of. And thus, cue:
> os.remove("characters/sayori.chr")
> os.remove("characters/natsuki.chr")
> os.remove("characters/yuri.chr")
> renpy.full_restart(transition=None, label="splashscreen")
(If you're not really into code, don't really worry, as the only thing you need to know is that none of these Python lines executes a Bytecode script.)
First things first: restoring your DD after she's deleted? Doesn't work. If it's right on the act division, before you've attempted to load your Act 1 save, you get the most success, but then Monika realizes she's having déjà vu, it's tied to the .chr
file that she thought she deleted, she thinks harder, deletes the file and then restores the game state herself, because that's the only way she can be sure that Act 2 will proceed (obviously, acknowledging that "Act 2" and similar terms are purely fandom inventions).
Of course, since your DD was the one you were affected the most by, almost by definition, it probably won't come to your mind to save your DD2. However, while your own psychology works against you, there's something working in your favor: the issues with your DD2 will be visible at a much earlier point, when you try and directly compare Act 1 and Act 2, so you have a bit better luck trying to sneak the changes under Monika's hood. But alas, if you push your luck too much, Monika will realize what you're doing and lose some of her trust in you, but still have plenty of it to sit together with you for eternity, meaning that she can proceed with deleting the other Dokis and beginning her After Story.
And lastly, the third Doki (not Monika, not your DD and not your DD2; you know, the one I don't have a good name for) mostly lives through the game with her .chr
file unchanged, right up until the point when she's deleted. Of course, she's still observant of the world around her (even if she doesn't have the Sentience attribute), but as far as trying to reinstate her as her beginning-of-the-game self goes, you end up not really having any effect on her.
Really, I only have this chapter here as to have the chapter numbering, within the twenty-twenties, strictly correspond with the act being talked about. Once I move on to .chr
file scumming, I won't really have the opportunity, as instead, I'll have to talk about different techniques you can use to produce certain types of character file and situation.
As with Act 2, restoring any of the non-Monika Dokis after they've all been deleted? Doesn't work. Dependent on how much time you've spent with Monika, either she immediately spots the newly added .chr
files, deletes them and scolds you for a bit, or, if you've left the game open for so long that only its cyan ink remains, the game's innards have fundamentally changed and .chr
files just straight up don't work with it.
What about Monika, then? Well, her .chr
file is the only one that doesn't change throughout the entire game, and so, replacing it with something that's exactly the same... isn't gonna do much (that applies to Act 3, as well as Acts 1 and 2, hence why I didn't talk about Monika much in either [2021] or [2022]). The only noteworthy scenario in this regard is if you try and reinstitute the .chr
file after she's already outgrown the need for it, in which case, she'll think that it's cute that you've held on to it, but then, reiterate the truth bomb I already dropped on you, and delete something that can't even really be called "herself" anymore.
Whether it's normal Act 4 or one affected by the Passive Monika bug, restoring Monika? Doesn't work. She will only give you a brief popup message saying that her heart won't be toyed with anymore, before deleting herself. Essentially, she takes the path of inaction, until and unless she doesn't.
Replacing the existing file of your new Club President? You already know how the unmodified .chr
files take to being associated with Sentience, already, and essentially, you've fucked up your chances of seeing the credits at the last possible moment. Truly, if there were the DDLC Darwin Awards, and the point of Darwin Awards was to prevent yourself from seeing the game credits and not to eliminate yourself from the gene pool, and the award ceremony weren't canceled due to reasons you, living in April 2020, should be painfully aware of, you would be the winner.
And lastly, replacing the existing files of the other two Dokis? They're already the way they were at the beginning of the game, since either way (normal Act 4 or the Passive Monika bug), your new Club President doesn't do much in the way of modification of .chr
files.
For this section, you only really need to understand that there are two types of changes done to the .chr
files throughout DDLC's course:
Given these two and no other changes to the game's Ren'Py and/or Bytecode base, ultimately, there's not much that can be done. However, that still gives us some opportunities. Now, imagine that I'm pausing the essay for a bit and giving you some time to think about it. How, in particular, would you manipulate the .chr
files in order to have:
Go on. Stop reading after this sentence and go to think; I'll even have this helpful gap here for you.
Time is up. I dunno how much time you gave yourself. You know what, at this point, I am essentially guiding you through the world of DDLC hacking, and I need to assess how much you are willing to learn, so yeah, I'm officially psychoanalyzing you.
Whether you got the answers right or wrong, at this point, is irrelevant. After all, if you got them wrong, that can be a learning experience for you, and you are absolutely here to learn. What matters is: how much time did you spend at [2030], and how did you even get here in the first place?
How much time did you spend at [2030]?
How did you even get here in the first place?
Anyway, with that bullshit aside, we can move on to the actual answer section.
Quite obviously, your key here is to take the .chr
files from the beginning of Act 4. However, what you might have failed to anticipate is that throughout Act 4, there is exactly one non-Monika Club President, and therefore, you essentially need to replay the game three times, hope to Salvato that you'll get three different Club Presidents, and then paste their files to the beginning of the game.
Of course, if you remember me talking about Act 4 way back (the relevant chapter is [1400] ACT THE FOURTH: NO SALVATION), you'll know that your new Club President will most likely be your DD from Act 1, and there's a sliver of a chance that she'll be your DD2 from Act 2. Therefore, that gives you an opportunity to hedge your bets and ensure a smoother playthrough.
Obviously, if you wanna do this in the least amount of time possible, you're going to go to the options menu, and under the "Skip" section, select "Unseen Text". And then, you will merrily skip throughout the parts of the game that are irrelevant to the particular manipulation, and everything will turn out right. Right?
Well, kind of. One thing you might wanna watch out for, if you're speedrunning the game like that, is that Bytecode scripts kinda tend to run independently of your computer's actual clock speed, and therefore, can end up frying or even exploding less well-suited electronics, such as cheap laptops, during these "skip" phases. If you've got your standard gaming rig, even one that would be relatively sub-par in the world of /r/pcmasterrace, that's a non-issue, though.
Just saying. This is the first chance for your computer to explode due to The Bytecode, and you can't say that I didn't warn you.
I must say, though, that the resulting playthrough is... interesting. Even though the non-Monika Dokis aren't exactly aware (since that depends on the Sentience attribute, and we've already established that exactly one Doki can have it at a time, and that will invariably end up being Monika throughout Acts 1 through 3), they have a hunch on what Monika is trying to pull, and might even confront her about it. Thus, instead of suicide, their final action ends up being exacting revenge on Monika, and she just kills the DD and DD2 in question herself (that's strangling Sayori, stabbing Yuri and pushing Natsuki out to the street).
Then, there's Act 3, and she realizes that you are pissed, as there's blood on her hands in a much more direct way than in a vanilla archetypal playthrough. Cue her wiping herself off the ./characters/
folder and Act 4 proceeding, still with all potential Club Presidents but exactly one actual Club President, and with the Passive Monika bug in effect.
However, at this point, the Club President knows what Monika did, and she knows that she won't be scared by her anymore. Therefore, the game from this point on ends up being a battle royale of sorts, in which the club dwindles to just the President again, she restores the two remaining Dokis, they attack each other's guts, the third President deletes herself and you're left with a "victor", though the more accurate word here is "victim". And after that, it's just typical After Story stuff that you should already be painfully familiar with.
Anyway. Sidetracks aside, you still need to know what the other two scenarios entail - I mean, how you achieve them.
Can I just talk about how broken, as a social media, Tumblr is? Like, perhaps the most emotionally stricken posts tend to be the ones most reblogged, meaning that they are the ones that you most likely form your opinion on Tumblr based on, but it seems that just about everyone there is a physically and mentally crippled, about-to-be-homeless artist who, if they can still muster at least some conscious thought, is taking commissions, and if they can't, has a family member posting on their behalf asking for donations.
Anyway, mini-rant aside, a potential answer here is to take the first kind of manipulation, take the .chr
files from just before the Doki in question dies, and then return them to the beginning of the game so that the effect can stack up. However, if you do this, you'll begin to notice at least several issues with the exact approach.
First of all, if you're only using Act 1, then it'll be exactly one Doki who's getting the absolute worst of it, and becoming your DD every single time. That, of course, is your DD from your first playthrough, and since I don't want to bother coming up with zany indicators, I'm just going to assume that it's Sayori, since that's what the mainstream fandom assumes. So, you keep stacking depression onto Sayori, and it gets worse and worse - on some playthroughs, she might not even be ready to get up on time, or even at all, meaning that Monika has to step in and invite you to the Literature Club as though it were Act 2 - but throughout it all, Natsuki and Yuri are unaffected. (Well, their own psychologies don't really change, that is; they are absolutely devastated by their club member turning into a literal piece of garbage, even if Natsuki is too tsundere to show it.)
An improvement to this technique, of course, is using Act 1 and Act 2, "saving" your DD from before she dies, and then, your DD2. Assuming that it's Sayori and Yuri (don't blame me, blame the mainstream fandom), you might begin noticing a pattern from your second playthrough onward: once you start again, it's Yuri as your DD and Sayori as your DD2. Then, on the third playthrough, Sayori is back in the DD saddle and Yuri is back in the DD2 saddle, and they keep alternating like a Möbius double reacharound, and all this time, Natsuki just watches. This, of course, is because Monika is a lot more aggressive with your DD2 than with your DD, and that ends up being the worst condition on your next playthrough, meaning that in it, Monika targets her first. While the resulting pattern is definitely curious, that, still, is a mission failed, as you absolutely want Natsuki to get the worst of it, too.
Therefore, what you really need to do is have parallel strings of playthroughs, wherein a playthrough can only receive .chr
files from the previous playthrough in its particular string. I hope this makes sense. If you are taking advantage of Act 2 as well as Act 1, you can make it as few as two strings, but if you don't really like obsessive Dokis and only want the Act 1 sort of damage, then you need three, one for each non-Monika Doki.
If you figured (or guessed) that there's no way in which it can be done through pure .chr
file scumming, you are right. However, if you stopped at that point and didn't think outside the box, about how that change I requested could be done if you didn't limit yourself to .chr
file scumming, then you are very wrong.
There are actually a couple ways to do it, and I guess, I need to sort them a bit, which will require these bold headings rather than the normal ones, because we're already in a chapter number that doesn't end with 0.
The method that involves Project Sentience
Remember that thing I taught you early on, and kept in your mind throughout the document? The Sentience attribute? How it's actually accessible from the Python part? Yeah, this is where it becomes relevant. Essentially, my note that the damage is done by Monika is kind of a lie; it's actually done by whoever happens to have the Sentience attribute, and as you know, throughout Acts 1 through 3, that happens to be Monika, basically invariably given a fresh, unmodified copy of DDLC.
Even with a little bit of Ren'Py skill, which doesn't amount to more than inserting a script after the whole procedural dialogue system is loaded but before the main menu shows, that changes who the Sentience Doki is, you can, well, change who the Sentience Doki is. And then, once you've nabbed her appropriate .chr
file from Act 4 using the method described in [2041], you can have her be the Club President, with everything that it entails - and yes, that includes the possibility of Monika being your DD for once.
However, the resulting game kinda ends up being buggy, as now there are CGs, for your newfangled Club President, that you're never going to access, and Monika, now a regular dateable, needs CGs that she can't get, and your new Club President needs the "Just Sayori/Natsuki/Yuri" CG that she also can't get. Of course, these can potentially be supplied, but I'm still getting ahead of myself.
The method that involves making a copy of the Monika file
For the second method, I actually figured that renaming .chr
files to something else can be useful. Unfortunately, I only really cover .chr
file renaming in the next sub-sub-section, and therefore, that will have to wait until [2051] GIVING MONIKA A TASTE OF HER OWN MEDICINE - PART 3.
If there's been a voice inside your head, telling you that DDLC hacking isn't for you, hopefully I've shown some evidence so that the voice can make up its mind. However, if there isn't such an entity, and if you've endured my absolutely-not-ramblings, then you're welcome and we can proceed to something more interesting.
As someone who's a very active fanfic writer, making characters "out of character" is one of the biggest boogeymen that I have. If we imagine that this isn't an epic-length documentation of the game mechanics, and instead, just a simple slice-of-life high school fanfic in which the Dokis just chill, you would expect Sayori to act like Sayori and Yuri to act like Yuri. In fact, even when this is an epic-length documentation of the game mechanics, you still expect Sayori to act like Sayori and Yuri to act like Yuri, because if they don't, the game is bugged to hell and back and I need to document that shit instantly.
That, or you thought you were particularly clever and renamed the .chr
files.
First of all, simply adding novel-named .chr
files like Copy of monika.chr
isn't going to work. As I will talk in the Python part, there are specific definitions for each Doki: what her character name is, what potential expressions she has and so on. If the game engine finds something like Copy of monika.chr
or amy.chr
in the ./characters/
folder, it straight up doesn't know what to do with it, and the game just proceeds with the Dokis that it has.
Sorry, Amy fans. She still loves you almost as much as she loves spiders. Almost.
That being said, there is a way around it, and it involves a process similar to fan Doki creation. Unfortunately, I haven't really covered fan Doki creation at all, but the first part of it is something that I can cover at the end of this Ren'Py analysis section. Said coverage will come up when I'm not tired from trying to cover everything else, and will be a subject covered in [2500] REN'PY MANIPULATION ADVANCED: FAN DOKIS.
Anyway... renaming .chr
files to match other Dokis is an "eh" technique at best. Oh, look, it's a Doki who has all the hallmarks of Natsuki's personality - tsundere, a good baker, abusive family - but Monika's name and looks, complete with the trademark white bow. Also, unless you used the Club President Natsuki .chr
file from Act 4 and renamed it to monika.chr
, she undergoes the crisis already explored in [2011] BEFORE BOOTING UP THE GAME: MOSTLY PREDICTABLE RESULTS and wipes the game.
To add onto this, if you have already looked within images.rpa
, you probably noticed that each Doki has a sprite sheet defining all her possible expressions, and within each Doki's set, certain expressions are missing. For example, Monika doesn't really get sad or cry; the closest she gets is expressions q
and r
, which can be best described as "solemn". Likewise, Sayori seems to be mostly incapable of getting angry; she has exactly one expression that allows for that, j
, and that just conveys the "no, I'm on the lookout for you" banter she regularly has with your self-insert. If a different .chr
file tries to access those, the game will break, but it's not the fun type of breaking that hackers and myself are inclined to explore.
Also, if you only exclusively swap non-Monika Dokis, as I already alluded before, circumstances and mental illness are contained within the .chr
file, and what Monika does throughout Acts 1 and 2, really, is just amplify those. Don't take it from me, take it from her. Yes, I know I did the whole Politifact segment where I dissected her statements and proved a subset of them to be bullshit, but as far as this aspect goes, this one's accurate. Therefore, your funky renamed "totally-not-Yuri" Natsuki will still get the same, Yuri-esque issues that you would get if you simply left yuri.chr
where it is, although there isn't really imagery of Natsuki cutting herself, so that part will be bugged.
Maybe, at some point in the future, I will have a full chapter here, and perhaps, amazing new glitches will be discovered and documented, which will let you manipulate DDLC, beyond what I already outlined in the twenty-hundreds so far, without any programming knowledge required at all. However, as of this date? No.
The future is now. Let's get diving into what can be done to, I guess, make Monika pay back for her mistakes. (That is, if you see Monika that way; I personally don't, but I wouldn't go so far as to say that I don't condone this sort of action.)
The trick here is to actually have two copies of the Monika file: one will remain named monika.chr
and the other one will be renamed to one of the existing Dokis. If you really want to go the extra mile, you can code in a fan Doki who's named "Monika-Two" or whatever (or maybe you can give her a cutesy nickname; I'm personally thinking of Maria, the fake name of the girl appearing in the yuri.chr
creepypasta), but either way, the end result is that you have a Doki, who's just a copy of monika.chr
but who fits in the role of someone else.
And that means that, during your DDLC playthrough, she can become your DD.
Unfortunately, since my document has become an abject, irredeemable mess due to me trying to add stuff to its middle, the coverage of what happens to Monika once she is your DD is somewhere else, still: IIRC, that's [2305] (ADVANCED) A TRUE MONIKA ROUTE, FOR ALL THE MONIKA FANS. However, what matters to this section, in particular, is that this damage is lasting, and therefore, you can paste the resultant .chr
file, renaming it to monika.chr
, back to another copy of DDLC, and reap the benefits.
Anyway, what sort of thing even happens if you paste this character, who I'll be referring to as "Damaged Monika", in? Well, the result is actually what's pretty typical of yandere characters such as Ayano Aishi: someone who just doesn't see color in the world, excepting their Senpai (in Damaged Monika's case, you, the player), and the more damaged she is, the worse she is at being covert. Now, normal, non-damaged Monika is pretty good at being covert, which is what makes DDLC last an entire two acts before she just does what she inevitably does and deletes the other Dokis.
However, Damaged Monika is different. She is known to pull up the console in the middle of Act 1 or even Act 2, and the other Dokis, of course, see the console as a physical object and inquire about it, even though they're completely and utterly incapable of understanding its purpose in any meaningful way. In addition, she will "crave" you in a way, and on occasion, abandon the Literature Club meeting altogether, asking your self-insert to go out with her, and then, talking to you. Since she does this at the beginning of the meeting, not at the end, she can actually talk for a pretty long time, and the architecture to do that is already within Act 3, but inevitably, the poem minigame will appear before she can properly confess. So, if Monika happens to be damaged enough, she will literally delete Dokis while the poem minigame is running, and once it's done, you'll boot to Act 3.
These are pretty interesting playthroughs that probably deserve more exploration to get at Monika's character, but that is a story for another time.
(This is only legitimate advice for this particular chapter. If, during your DDLC troubleshooting, someone else ends up asking you "have you tried decompiling it and compiling it again?", you can print out their remark and punch it in the sheet of paper; sheets of paper don't usually have organs. Also, we're exclusively dealing with Ren'Py decompilation, which, due to Ren'Py being a FOSS
project, is well-understood and guaranteed to go without a hitch, especially for an obsolete version.)
Well, you've come this far. Hopefully with that last section, I've managed to weed out all the fakers who only read in order to latch onto a singular aspect, which, from what I've seen on the mainstream fandom, is probably going to be making two Dokis fall in love with each other, and therefore, I know that you, dear reader, are in it for the long run, and are not afraid of a challenge; even if you are a coding noob right now, keep in mind that a coding pro is really not much more than a coding noob who happens to have some experience.
And what better way to start gaining experience than to start modding DDLC?
Of course, you don't need my tutorial in order to start doing that; you never did. In [040R] YOUR PHILLIPS HEAD SCREWDRIVERS OF WORKING WITH DDLC, I mentioned a little doodad called the DDLC Mod Template, which really helps you get started with Ren'Py, the available sprite libraries of the characters, the positioning of elements on the screen - basically, all the goodies that DDLC uses Ren'Py for anyway. However, lines of code like:
show sayori 1k at f22 zorder 2
s "..."
show sayori 1k at t22 zorder 1
"Sayori goes through a multitude of hard-to-read expressions, all at once."
"I've never seen her like this before."
"What even drives her to do so much for her club?"
Sure, if you follow mainstreamer tutorials, plenty of them are going to end up in your project, making for little more than a really lamely written fanfic - one where you're not required to follow most literary standards, but one where you are required to follow a standard of coding.
However, if you actually look at the code of DDLC, the OG game released by Team Salvato, you'll notice that it... doesn't have such lines.
Of course, a game made in Ren'Py needs such lines, whether you like it or not, and "phantom lines" do end up being generated, on the fly, all the time, making for something indistinguishable from a cheap visual novel - one that, as Salvato often comments, was specifically made as a parody of visual novels that were poorly translated from Japanese. However, for the moment, we can really pretend that they don't exist, and instead look at DDLC as a series of components that interact with each other and provide you with an immersive world, and analyze it from that aspect.
I'm not saying that phantom lines don't exist, and in due time, I will elucidate you on the process by which DDLC produces said phantom lines. However, now, they are largely irrelevant.
In addition, you might notice that the DDLC Mod Template includes .chr
files - the same ones that DDLC itself includes, and which will actually work if you try and import them in your install, because they haven't been tampered with through gameplay - but because fake mainstreamer mods end up including real Ren'Py lines, rather than phantom DDLC lines, there is a consequence which you should be able to figure out right now. That is, unless you introduce checks in Python (or The Bytecode), a real Ren'Py line will proceed and be displayed to you, regardless of whether the associated Doki (or other visual novel character) has a .chr
file or not, let alone what the contents of that .chr
file are.
Now, this is all cool and well if you're in the mainstream fandom and simply say that .chr
files are being manipulated and whatnot, but for me, it just lacks the essence. And hopefully, now that I've shown you plenty of what DDLC can do either without manipulation or with very little of it, hopefully, you see my point of view, too. You're not a filthy mainstreamer, now, are you? At least, not anymore.
Therefore, for this part of the document, you're going to need DDLC, the OG game released by Team Salvato, from either of the official sources listed in [0200] BASIC TECHNICAL INFO. Then, using rpatool and unrpyc, you're going to crack open those .rpa
and .rpyc
files; both tools are well-documented and you're welcome to figure out your way around them yourself. Then, you're going to put the resulting contents in DDLC's ./game/
directory, making sure to get rid of now redundant .rpa
and .rpyc
files. And finally, you're going to put the entire DDLC directory in your Ren'Py 6.99.12 install, as though you made this game and are just placing finishing touches on it.
And when you do that, and launch the game from within the Ren'Py menu, that's when it magically compiles itself again. Of course, as your IDE, it ends up prioritizing raw scripts over compiled ones, and therefore, wiping them from your DDLC install might not have been strictly necessary, but hey. Now, you've got a debug environment, which is exactly what you need to dissect the game.
Obviously, you're not Salvato, and might not know your way in and out of the code just yet. But with any luck, you're going to get there.
The multitude of .rpa
and .rpy
files found inside, as well as their not-particularly-clear names (especially if you're a complete Ren'Py noob), can overwhelm you at first. Luckily, I'm here to explain the contents of each and every file (excluding the Bytecode scripts for now, as until I start teaching about analyzing The Bytecode and writing some of your own, they are to be treated as black boxes), as well as linking to chapters which elaborate further, if, for whatever reason, you're a freak who likes reading things out of order.
audio.rpa
- the audio/musical element of the game, credited to Salvatofonts.rpa
- the typographical element of the game, consisting of freely licensed fontsimages.rpa
- the visual element of the game, credited to Satchely/Velinquentscripts.rpa
- everything to do with text, as well as code which ties the game together, credited to Salvatobytecode_[32 hexadecimal digits].rpy
(41 files in total) - The Bytecode, the backbone of dialogue generation, mind reading and whatnot - (to be explained in future sections)cgs.rpy
- definitions of the visual element of CGs - [2460] MISCELLANEOUS PRESENTATION ELEMENTSconsole.rpy
- imitation of the Ren'Py debug console - [2440] MISCELLANEOUS VISUAL ELEMENTScredits.rpy
- flow of the credits song, Your Reality - [2460] MISCELLANEOUS PRESENTATION ELEMENTSdefinitions.rpy
- the rules of what fonts and effects are applied throughout the game, in GUI elements, dialogue, etc., as well as Doki expressions and how they are glitched - [2420] DEFINITIONS.RPY AND SCREENS.RPY: THE ALL-TOO-FAMILIAR LOOKSdialogue.rpy
and dialogue-projectsentience.rpy
- two closely related files, that do the dirty job of communicating with The Bytecode and getting the dialogue out elsewhere - [2200] THE FOUNDATION OF THE DIALOGUE SYSTEM and [2220] DIALOGUE.RPY VS. DIALOGUE-PROJECTSENTIENCE.RPYeffects.rpy
- visual effects that transcend the typical dialogue scene - [2440] MISCELLANEOUS VISUAL ELEMENTSglitchtext.rpy
- intentional glitching in the form of non-ASCII characters, featuring the most ridiculous variable naming in the entire source code - [2450] MISCELLANEOUS DIEGETIC ELEMENTSgui.rpy
- definitions of basic GUI elements - [2440] MISCELLANEOUS VISUAL ELEMENTSoptions.rpy
- a file at the core of each and every Ren'Py project, defining its name and how Ren'Py even handles the multitude of project files when packaging the game - [2410] OPTIONS.RPY: HI, MY NAME IS DOKI DOKI LITERATURE CLUB, WHAT'S YOURS?poems.rpy
- handling of the typical poems, seen during the poem sharing - [2230] POEM GENERATION: MORE ABSTRACT ART IS SURPRISINGLY EASIERpoems_special.rpy
- handling of the special poems, seen during predefined points in Act 2 - [2231] SPECIAL POEMS: NOscreens.rpy
- the appearance and functionality of each and every screen: dialogue, main menu, load/save menus, etc. - [2420] DEFINITIONS.RPY AND SCREENS.RPY: THE ALL-TOO-FAMILIAR LOOKSscript.rpy
- the basic flow of the game, subdivided into acts and days, but not going any deeper - [2208] THE GAMEscript-ch#.rpy
, where #
is any of: 0
, 1
, 2
, 3
, 4
, 5
, 10
, 20
, 21
, 22
, 23
, 30
and 40
- the flow of each act and day, as it's intended to be, "suggested" to the dialogue generation but never taken as an absolute - [2240] HINTING: WHY AN ARCHETYPAL PLAYTHROUGH WORKS OUT THE WAY IT DOES and [A005] WHAT ABOUT THAT SPACE BETWEEN ACTS 1 AND 2, THOUGHscript-exclusives-#.rpy
and script-exclusives2-#.rpy
, where #
is any of: sayori
, natsuki
and yuri
- CG dialogue handling; the second set is, unsurprisingly, for Act 2script-poemresponses.rpy
and script-poemresponses2.rpy
- handling of poem sharing, which comprises of the two-way responses; the second set is, unsurprisingly, for Act 2script-poemgame.rpy
- the poem minigame subroutine, which displays you the words it takes from a Bytecode script, adds up the scores of words you select and passes them onward - [2100] THE POEM MINIGAME: YOUR FIRST DIVEsplash.rpy
- the splash screen and warnings, mostly straightforwardly, as well as routines to skip the main menu - [2460] MISCELLANEOUS PRESENTATION ELEMENTStransforms.rpy
- definitions of each position on the screen, as well as what it means, for example, to depict a Doki behind another Doki - [2430] TRANSFORMS.RPY: NOT TO BE CONFUSED WITH DEFINITIONS.RPYFor anyone who has entertained my absolutely-not-ramblings so far, it shouldn't come as a surprise, at all, that I am unfairly biased in favor of the poem minigame as easily the best part of DDLC overall. In fact, this fandom of mine goes beyond this document, but I am going to stop myself there, because there is absolutely nothing I can say here, in this first paragraph, that won't be perceived as "hey, check out this other thing I made!"
Whatever happened to it, and the meme war that it caused, can be discussed. However, the chronological exposé is not the time for it.
Instead, and despite my obvious bias towards the poem minigame, I will try my best to objectively argue in favor of it being discussed first and foremost, even though a dozen other Ren'Py scripts could be analyzed in its stead.
Let's get this out of the way:
.chr
file query, is the most like a proper game in its own right, coded entirely in Python. It could even be said to have a distinct goal and win condition; the only things that come close, perhaps, are the minigames introduced to Monika After Story and other After Stories, and I think other types of minigame in Take Two count, too, but none of those was made by Salvato himself..chr
file query, the poem minigame entails the simplest form of it: determining how much a Doki likes a particular word. This is what the entirety of dialogue generation hangs on in other parts of the scripts, both Ren'Py and The Bytecode, and if you fail to comprehend it, then you're not really going to last long in the world of DDLC hacking.Alright, I think four reasons are going to be enough. With that, let's get started with some basic trivia about the very game engine that we're working with.
The basic graphic element of a visual novel using the Ren'Py engine is the sprite. Without sprites, the only other option for a game of the caliber would be to draw every single pixel individually, and needless to say, this would take absolute forever (DDLC natively runs at 1280×720 resolution and 60 frames per second, meaning 55,296,000 pixel color calculations per second) and, without any sort of hardware acceleration, would make the game completely unplayable - yes, even on modern systems.
Sprites can come in several possible forms. For now, you only really need to know of these: static image (usually in a typical format, such as .png
, which allows for transparency), pre-rendered video (usually in a typical format, such as .mp4
), text (for which, the required font must be bundled together with the Ren'Py game distribution) and, for whatever reason, a solid rectangle (which came of use when I was coding The Project That Shall Not Be Named, but is basically useless for most other contexts). Each of these is continuously displayed (with the obvious exception of video), too, meaning that it doesn't need to be re-displayed every frame, and if need be, can be simply transformed.
Before we move onto the poem minigame screen, you're welcome to try and comprehend exactly how many elements would go in:
As usual, you're given some time to think, and no, I will not stop trying to keep your wits at least sharp enough to be able to slay a level 1 rainbow drinker.
(What's a rainbow drinker? That's a question you can ponder if you need to take a break from dissecting the visual element of the game.)
(Also, spoiler alert: if, somehow, you come up with a list of more than 55,296,000 elements, then you're doing it wrong.)
I believe I made the points I wanted to make, regarding how your wits stand, perfectly clear with the previous "answers" section.
So, yeah. The poem minigame is a bit more complicated, but not terribly so, and neither the poem minigame nor your typical screen have millions of elements, so I'd say that's a pretty solid victory for sprite-based rendering.
If, for whatever reason, you are bored by me dissecting these elements as though you were a total coding noob, you can do one better and find where each of the elements, as well as its corresponding animation (if there is one, such as the chibis jumping around and making big hops when you select the corresponding Doki's word), is defined. Spoiler alert: you will have to sift through more files than just script-poemgame.rpy
, and therefore, even if I do decide to be nice and provide you with a definite answer to this exercise, you will have to wait a bit.
From this point on, we enter a bit of a conundrum: at virtually all points of DDLC's existence on your RAM
, it is a constant communication between Ren'Py and Bytecode scripts. To the end user, only really experiencing incredibly cute girls, this is a non-issue, but for a seasoned programmer who knows of one language but not the other, this presents a conundrum.
Luckily, a seasoned programmer should also know of such things as application programming interfaces
, or APIs
for short. Namely, even when a company such as Google doesn't want to let you in on their service source code, they still define certain ways to interact with it, and what sorts of results you should eventually expect. This works very well, and allows cooperation between virtually any two computer-related things.
What works when the source code would be understood by the target audience, but must remain a trade secret for other reasons, also happens to work, perfectly fine, when the source code wouldn't be understood by the target audience, and that's exactly what allows me to teach you about the high-level stuff of DDLC's modus operandi, with acts and days and quirky plays and poem scribe impression ways, without having to teach you about the low-level Bytecode stuff with RAM overwriting and very precise electromagnetic emissions and literal telepathy.
And you know what? Once the entirety of the poem visuals are presented, and explicitly ignoring the details of The Bytecode, the poem minigame consists of very simple computer logic. It works because, and precisely because, I am treating The Bytecode as a black box: something that, given certain input, provides certain output, and the inner workings of the function are completely irrelevant. In the world of APIs, this is what you have to deal with, all the time, and if you don't understand that, you're not really cut out to be a computer programmer, let alone a DDLC hacker.
Whatever. If I remember in the future, I will at least provide you with downloadables that change the code you're supposed to change here, and then, you can copy and paste them into your own DDLC installation and see the results.
The actions undertaken by the poem minigame can best be understood as very specific instructions, which, for the sake of simplicity for non-programmers, I will describe as coming in three types: request, expect and a third type which shall remain nameless. A request is simply the Python program's way of saying "I give up; whatchu got, Bytecode?", after which point the Bytecode subroutine executes and outputs something in a predictable format, which should be something that Python expects. Meanwhile, the third nameless type is just Python's way of telling The Bytecode: "yeah, I got it, fam" and doing something a normie program can do.
With that in mind, the poem minigame logic can best be described as follows:
poemwords.txt
file, if you've ever thought to look into it. One can only presume that an original variant of the program skipped 1-4 and instead, just pulled values from that file, but if such code exists, it was likely commented out, and those fancy Ren'Py decompilation tools actually don't let you look at the comments Salvato may have left. Of course, even in lieu of this, commentated Ren'Py files from DDLC can be found in the mod template, and commentated Bytecode is the number one priority for hackers and has been for hundreds of days, but still, some secrets are likely lost in Salvato's hard drive.15 is actually executed in kind of a backwards way, in which it always divides 45 by 3 even when it is painfully clear that the answer is, well, 15, but other than that, that's the gist of it. And yeah; manipulating the poem minigame is as easy as changing one of those instructions to be something else, and then watching the results.
And as someone with the mindset of a hacker, you should already be excited and even go ahead and do some changes yourself. The rest can, well, rest assured that I will document the results, regardless of your actions.
But don't get too complacent.
To be honest? Not much. You could try messing with the values assigned to words, or with the thresholds which make a Doki like/hate your poem, or even try and get words you would not normally expect in the poem minigame, such as "the" and "of", appear, but to be fair, you already know the only real improvement I'm about to suggest, as well as the thing I happened to mention. Of course, I do have one more thing up my sleeve, which might prove useful in the future, but right now, let's just get onto it.
This fix is relatively simple. From the poem minigame algorithm, notice how it specifically compiles the list of Dokis that excludes the Club President? If you delete that single if
statement, suddenly, you have Monika within the game, and she even has an offscreen chibi that jumps up and down. Moving the chibi to a more visible place is an exercise left for the reader, and to be honest, it isn't even strictly necessary; just a visual alteration to satisfy your needs for "seeing four chibis on the poem page", if you even have such needs.
And thus, the poem minigame proceeds. Novel words may appear, or may not, but in the end, every single word presented to you has a Monika score, and when you click twenty times, you end up with a Monika score for your poem, which in turn is injected into dialogue generation for the further parts, affecting your relationship with her.
And as it turns out, it exposes some major routines left unchecked.
The first and most obvious one, that I've already talked about time and time again, is how Monika lacks a true CG (other than that in Act 3), and therefore, if she ends up being the favorite among all the Dokis, she still won't get to spend time with you. Then, of course, there's the poem sharing and arbitration, in which Monika is no longer a passive judge, but rather, has personal stakes in it now; well, she still has the formal facade and will still try to enter the "you know, this reminds me of what [Doki X] would write" routine, even if, down in her core, she wishes the poem would burn in hell, but if she likes the poem, she absolutely will make it personal.
And of course, once Monika keeps getting an injection of feelings towards the poem, her behavior will change.
The standard behavior of the Doki with the Sentience attribute is very standard: she likes you (and that's you, not your self-insert), like, really really much (imagine that the poem minigame just feeds her a score of infinity each and every time), but the game won't really give her a route, so she, instead, tries to manipulate the others. However, the more a Doki's .chr
file is manipulated, the more strongly she feels love for your self-insert, leading to the inevitability of her file deletion (after her soul is damaged so much that she commits suicide, of course). This, then, leads to everyone but the Sentience Doki being wiped out, and the rest is history.
However, what if the Sentience Doki were to hate you, and want nothing to do with you?
Well, then, what she does is she actually ends up investing more time in the club and its existing members. Like, when Yuri and Natsuki have an argument, Sayori extinguishes it and Monika admits that she's not really good with people, and that's why Sayori is Vice-President? Well, if she hates your poem, she instead resolves to be a better President for everyone, and to take part in arguments rather than being a free, untamed soul. Then, once it gets to festival prep, Monika's famous "Yay, you picked me!" is never uttered, and instead, she, herself, pushes your self-insert away from festival prep.
And once festival day arrives? All bets are off.
Because there was never a DD arc, and therefore, no need for your self-insert to "fix" anything, a Glitchless Playthrough route can't really proceed. What does proceed is completely up to the whims of The Bytecode, part of a script that kicks in when the game has gone off the rails in completely unbelievable ways (much like Passive Monika), and deserving of more documentation once the ramifications are fully explored.
For this, the imperative thing to note is that in Ren'Py, even in games that don't involve any Bytecode at all, subroutines call each other all the time, and once you've got a game as complex as DDLC, it is easy to get lost in them. Therefore, unlike a programming language where everything is executed sequentially, there is no real need to "comment out" unwanted bits (like, say, if you were developing an entirely novel game mode and then decided to cut it), and instead, you can simply have the corresponding subroutine never called.
And that's basically what happened with notebook mode. It is essentially a completely functional, alternative poem minigame, that simply ends up living under a subroutine that DDLC never calls for. That's not to say that The Bytecode doesn't sometimes decide to call for subroutines on its own, but even then, most of the time, those are just boring routes (or a complete and utter admission that this game has gone off the rails, which is vastly more likely) and not the alternative poem minigame, which, as we can be fairly sure, Salvato never wanted you to play.
But guess what? By swapping two subheading headers, you can play it.
And, well, instead of picking words from a list, instead, you get to write a poem of your own. Its words are counted the way words are counted in your favorite word processor, but it still retains the poem minigame aspect of "when you get 20 words, the minigame ends and its scores need to be tallied". And yes, words like "the" and "of" are scored, which makes for some rather unpredictable results at times, to say nothing of the fact that the thing that tipped the scale from 19 words to 20 was a single letter, not even a finished word.
But otherwise, this is just another way for the game to get the poem scores, which are then fed to the dialogue generation, and since, after normalization, those scores are still in the roughly expected ranges, and therefore, the plot of DDLC proceeds mostly as normal.
You might have noticed that throughout the game being played, it occasionally leaves random text files on your computer, especially throughout Act 2. Those files have their text defined in the Ren'Py code, and therefore, theoretically, you could insert a command that exports literally anything - up to and including important debugging values, such as the final table of scores in the 3rd step of the poem minigame algorithm.
And when you compare it to your usual poemwords.txt
, you will spot some differences. A number of them can be explained by the fact that The Bytecode pings the current .chr
file version, which might or might not have already been manipulated by Monika (especially watch out for how much the words death
, suicide
and love
are favored by Dokis; these scores will end up ridiculously high for your DD and DD2), but even when non-manipulated files are taken and examined this way, there are some differences, and poemwords.txt
is not an absolute way to get word scores and gradings of entire texts, and The Project That Shall Not Be Named uses a different method.
Wait, did I just essentially give away what it was all about?
Alright, fine, I'll cave in and self-promote. The project is called the DDLC Poem Editor (https://dokidocs.net/poem_editor/), and you might have already inferred what it does: it takes the word scoring that the poem minigame would normally use (thankfully, I was able to separate the Bytecode scripts that do the word grading and implement them onto a website), and then, lets you write anything, not caring about the 20 word limit, and in fact, most people used it to explore how much copypastas are liked by different Dokis.
I'm great at the Internet, and I'm great at starting meme wars. Anyway, self-promotion time is over, and honestly, I don't have much else to say on the poem minigame or the poem editor, unless you want me to indulge about the meme war, and that will, by necessity, have to be a non-chron blog entry. The poem editor, though, might be a bit of a useful tool to analyze DDLC dialogue and see if something has gone apeshit bananas, so keep that around and get ready for lots of retyping stuff straight from DDLC's dialogue box.
Because taking a stab at the dialogue is exactly what we're going to be doing, in the twenty-two hundreds.
So, we're starting with a very delicate, very multifaceted subject of natural language processing
, which takes many forms, though we're primarily interested in natural language generation
. While this, in and of itself, is a major hurdle to overcome in computer science, there are lots and lots of smart people working to overcome said hurdles and an essay by an unqualified rando on the Internet is not going to give you any sort of appreciable knowledge on the subject in either way, I still feel like trying to go through the very basics of the ideas, at least in the way DDLC implements them (or, more accurately, the way that hackers believe DDLC implements them), so that the rudimentary, non-scientific knowledge can still assist you in your hacking endeavors.
Ahem.
Disclaimer: For the purposes of this document, we're explicitly dealing with written language, as opposed to spoken language and sign language. One could theoretically get spoken language from these segments using text-to-speech
(TTS
) software, the coding of which is basically trivial compared to natural language generation (with the only non-trivialities being a) human intonation and b) the garbage spelling rules of English), and sign language... just... no. No disrespect to deaf people, but I'm trying to keep a focus on the subject.
Written language, especially in the context of a visual novel like DDLC, can be deconstructed into the following elements, ordered by the amount of time it takes to relay them and process them:
From top to bottom:
The letter is the basic element of any sort of textual document. The definitions of letters, and how they are encoded in computing, are a very well-understood and even standardized topic, with standards ranging from ASCII, introduced in the 1960s, to its successor Unicode, intended to encode every single appearing character in every single human language, being developed, to an extent, to this day, especially as humans have had the genius idea of communicating entirely using emoji. Whereas the spoken counterpart of the letter, the phoneme, is a highly messy subject and pronunciations of phonemes from language to language and even from context to context can vary greatly, for the most part, letters just... work, and don't need any extra analysis.
Honorable mentions
Technically, there are two distinct "next steps" in elements of language, after the letter (or, in spoken case, a phoneme) and before the word. The first of these is a syllable; however, syllables are not all that they're cracked up to be in written language. They're more so relevant in two contexts: spoken language, where they are an indicator of the "volume" of speaking, and poetry, where you have to pay attention to prosody and shit. And don't get me wrong, poetry is a really big deal in DDLC, but first, we need to talk about dialogue generation; all the restrictions imposed by poetry are just another bonus task on top of the already tremendous natural language generation challenge.
The second of these is a morpheme, the "smallest unit of language that has meaning". In general, words can be thought of as being not much more than clumps of morphemes, that eventually form meanings of their own based on the combined meanings of the constituent morphemes. However, especially in English, while new, previously nonexistent words can be formed from existing morphemes, a character speaking in a casual context isn't very likely to make up completely new words, if for no other reason than the desire to be understood, and therefore, as 99.9% of the words used by the DDLC dialogue generation already exist in English (and a good chunk of the remainder are natural byproducts of the "poorly translated Japanese VN" aesthetic), the importance of the morpheme in DDLC dialogue generation is low.
The next real step up after the letter, of course, is the word. Unsurprisingly, words figure pretty heavily in language learning, as well as its applications in artificial intelligence, even in languages that don't actually separate their words using spaces, for one reason: a word has an easily explained meaning that then can immediately be carried over simply by saying the word. Of course, words alone do not a language make; vocabulary appropriate context grammarless realm comprehension major difficulties intelligibility impaired result.
Nevertheless, a word, in and of itself, is already a source of some information that, in a natural language processing engine, can be incredibly useful. For the purposes of this little section, we'll consider the meaning of the word itself, what part it plays in the clause (more on that in a bit), how frequently the word appears in any given text and how frequently the word appears in a specific person's given text, such as dialogue ('sup, poem minigame scores you just extracted).
As mentioned previously in the morpheme not-section, one can easily get a rough feel of how words are used just by listing them; you might know of a human invention designed to help you do precisely that, commonly known as "the dictionary". However, this "dictionary" thing usually isn't very computer-friendly, and for natural language processing, you need something that a computer can interact with. Now, in order to make such an AI dictionary, you can go one of two ways: either define the words manually, all by yourself, or cheat by giving the computer a bunch of [insert language here] text and hoping it figures the rules out all by itself. It's hard to say which way DDLC went, but regardless of Salvato's particular approach, likely buried in Bytecode that no one has been able to decompile yet, words and even grammar structures specific to poorly translated Japanese VNs would have to be introduced manually (or by training the neural network on decompiled poorly translated Japanese VNs; I don't know and I don't care).
That being said, words often have a bit of flexibility in them, especially the less common ones. For example, if a speaker doesn't exactly know a word, they might "mishear" it and, when trying to replicate the idea, use a similarly-sounding word. Remember when Yuri mentioned something about "paying your retribution", and then Sayori corrupted the word to "revolution" and then "restitution"? Yeah, that kind of issue needs to be taken care of, too.
Next up after the word is the clause; the basic structure of grammar, and the smallest unit of language that is actually able to convey an idea. While some parts of speech, like interjections, can stand as clauses on their own, typically, a clause will include a verb, a subject noun, zero or more object nouns and zero or more adjectives and adverbs clinging onto the verbs and nouns like losers without a life of their own. Parts of speech such as nouns, verbs, adjectives and adverbs can even be combined into mega-parts of speech that don't really comprise a clause of their own, as long as you combine the same part of speech (two or more nouns, two or more verbs, etc.) and separate them with something, like helpful punctuation or conjunctions such as "and" and "or".
Whereas a reference book for how letters connect to words is usually called a dictionary, a reference book for how words connect to clauses is usually called a grammar book. However, there are two major caveats that any natural language processing engine must overcome in order to successfully utilize the clause. The first one, of course, is that whereas a dictionary is cool and will give you a meaning (or a red squiggly line, if there is no predominant meaning) right away, a grammar book is often flexible, contentious (see: the Oxford comma
) and, when one tries to automate it, often gets things wrong; if we can't understand it the way a computer understands everything, throwing neural networks at it might be our best bet.
The second issue that still stands when you solve this first issue, though, is that even if you connect words into clauses in strictly grammatical ways, you can still end up with nonsense ("colorless green ideas sleep furiously
"). Therefore, an AI needs to have some sort of basic sense of ideas, so that clauses that can't, under any circumstance, produce a sensible idea, would be excluded. However, a caveat on top of a caveat is idiomatic expressions, such as "it's raining cats and dogs", which are pretty nonsense when combined into a clause like that, but still have a meaning, as a clause, and honestly are better treated as words in their own right (with a magical new part of speech, "independent clause that isn't an interjection"), rather than clauses... that is, until your poetic type of character decides that they do need to be treated as clauses, and a bunch more words and even auxiliary clauses get attached to that clause, and everything spirals out of control in ways you wouldn't even believe.
Shouldn't this be the sentence?
If you thought that the next step up after the clause would be the sentence, then you're wrong. You're dead wrong. All this talk about sentences being very important parts of grammar is nothing more than a big conspiracy put forward by Big Sentence in order to get you to believe that periods and punctuation marks are absolutely necessary for grammar to function, only to take them away when you least suspect it and then what are you going to do cry about it? yeah that's what you deserve
But in all seriousness, sentences aren't all they're cracked up to be, and I'll demonstrate why. Imagine that, in a rush of excitement to deliver you the latest news in DDLC hacking, I keep delivering important ideas in the form of clauses, basically incessantly, and you just take them all in as though you were gulping for air, and I don't really stop, and contrarian grammarians out there are already complaining that I've utilized what's known as a "run-on" sentence, but they're okay, especially in informal contexts, as the only connection that really matters is that between neighboring clauses, and if you miss your periods, too bad. Okay, that was a period, but hopefully, you get my point.
Instead, a much more useful element of language, especially in the context of DDLC's dialogue generation, is what I call "the quip". If you've played DDLC, you've already dealt with quips; they're essentially "segments" of dialogue and/or narration, each of which must be clicked through in order for the game to progress, and each of which gets its own line in the "History" tab. And if you haven't played DDLC... what are you doing here? Seriously, now. This isn't even me upholding Team Salvato's IP Guidelines anymore; I'm just curious.
At any rate, let's briefly examine the relationship between the quip and the sentence. For the most part, in fact, these two units correspond with each other pretty well; as the length of the quip is bound according to the rules of the engine that the game is bound to, such as "a quip must not occupy more space than the text box it appears in" and "after a quip, the player is given a pause and can continue at their own pace", these limitations, though incidental, will enforce the strict correspondence between the quip and the sentence. However, there are cases, though rare, when a quip contains two sentences, or conversely, a sentence is split up between two or more quips; a good indication of the latter is the incomplete sentences ending with ellipses.
So, what is the quip?
With that being said, if the morpheme is the smallest unit of language that signifies meaning, and the clause is the smallest unit of language that signifies an idea, then the quip is the smallest unit of language that signifies an intent to communicate. For that reason, an important attribute of a quip is the speaker, who, in DDLC's case, can be one of six entities: the Dokis, your self-insert and the "impartial narrator", who actually serves a dual role: conveying objective happenstances in the Literature Club and elsewhere, such as Monika standing up and walking beside the podium, and conveying your self-insert's inner thoughts, such as "this club is full of incredibly cute girls!".
(Also, regarding that last remark enclosed in quotes: have you noticed how it's actually a single clause, if analyzed grammatically, but usually ends up separated into two quips when in-game? Yeah, quips are every bit as weird as clauses.)
Anyway, a quip also has another important attribute, though this only applies if the speaker behind the quip is a Doki: an expression. This is usually expressed (haha) through an entry on the big list of emotions, which directly corresponds to a sprite on the big folder of possible sprites, and as mentioned previously, each Doki has a different set of sprites, and therefore, a different set of emotions. Sorry; Inside Out lied to you.
Anyway, an expression, coupled with a transform (just fancy computer code telling not just what sprite should appear, but also, where and how it should appear), can convey a lot more information than just the quip alone, often even contextualizing the quip. For example, a common adage on the Internet is that "sarcasm doesn't travel well through wires"; what it really means, though, is that a quip, composed of entirely textual elements (and excluding shit like emoji), may have an ambiguous meaning dependent on whether it's sarcastic or not, an attribute that has to be contained alongside the quip but not within it, and which finds its home right within the expression. Obviously, your self-insert's and even the impartial narrator's quips have "expressions" per se, but those usually don't get a convenient visual presentation, and therefore, are generally less important.
Also, when within a CG, you don't usually see the expressions that the game was originally designed to show, and instead, you get a few CG-specific expressions, usually conveying a much more limited set of emotions. Of course, Monika gets the worst of it, as her CG doesn't include any variant expressions, and therefore, she must convey everything in Act 3 with a neverending smile, but that's okay, since she has the Monika After Story devs, who can give her the expressions that she inevitably starts desperately craving, because let's face it: she knows all this, the dense stuff that I just went through.
How quips connect - with a special appearance from Winograd schemas
At any rate, another worthwhile remark about the quip is that, much like words must still have a coherent meaning when connecting into a clause, clauses must still have a coherent meaning when connecting into a quip. Otherwise, my hovercraft is full of eels, and as we're no strangers to love, the money machine goes "brrr".
Okay, that was kind of an extreme example in which the hypothetical engine had no concept of the meaning of words in addition to clauses, but there is actually a very important topic of natural language processing that is all about connecting clauses to quips. It essentially concerns a test of the capability of a computer to "understand" language, much like the Turing test, but unlike the Turing test, only concerned with how "passable" language is, this test is concerned with actual intelligence and comprehension levels.
Proposed by Terry Winograd, the very subtly named Winograd schemas
are a series of quips, which have two or more clauses, and in one of those clauses, there is a pronoun to be found, referring to a specific noun in a previous clause. The computer's task, should it accept it, is to figure out which of the multiple nouns it is. Now, I'm not sure of the copyright status of these schemas, and regardless, it will be more fun if I just present you some of my diet substitutes:
Sayori would not share her poem with Monika because she was prone to insensitive remarks.
Sayori would not share her poem with Monika because she was afraid of insensitive remarks.
Who is the bolded "she" referring to, in each of the contexts? In actuality, while it was fun to use Doki names for these, let's first approach the problem without considering the context of the characters involved, and simply call them "the poem author" and "the poem recipient".
In order to properly answer the question, a natural language processing engine must understand how a poem exchange works: namely, that when sharing a poem, the poem author is expecting remarks from the poem recipient. What those remarks are, dependent on the personal stakes, can influence the relationship between the poem author and the poem recipient, and the poem author can even see influence from the future, which will affect her actions.
Therefore, this particular schema is solved like this: in the first case, the one who is likely to deliver insensitive remarks is the poem recipient (i.e. Monika), and in the second case, the one who is afraid of insensitive remarks is the poem author (i.e. Sayori).
However, now let's put the context of DDLC back into the quip. Of course, if you've played Monika After Story (or a vanilla, unmodified Act 3, or your own in-house modification of Act 3) for any length of time, you know of Monika not being able to resist all sorts of puns involving the ways in which your DD and your DD2 died. However, Monika After Story, made by DDLC fans for DDLC fans, understands that some of those fans like other Dokis too, and might not appreciate jokes being thrown around about them too lightly. Therefore, one can actually opt for a "sensitive mode", which might actually be pushing it a bit too far in the other direction, renaming the game of Hangman to "Word Guesser" and eliminating the titular hangman simply because of the way Sayori died, but regardless, indicates a conscious effort, from Monika, to avoid insensitive puns.
However, what if this wasn't the case, and Monika always avoided insensitive remarks, and this was part of her character from the get go, even in Act 3? Well, in that case, suddenly, both schemas would lose meaning. "What insensitive remarks?" you would be asking. "Monika always treats the other Dokis with dignity and respect."
Of course, while the definitions of "poem", "share", "remark", "insensitive" and so on can be found in a dictionary, you will never find a definition for "Sayori" or "Monika" unless you're looking in Urban Dictionary - which, incidentally, is why I explicitly had to define the terms in [020G] YOUR INTRODUCTORY GLOSSARY. This means that DDLC, in and of itself, imparts a context which its dialogue generation must follow, conveniently bringing us to the topic of:
Basics of a scene
Incidentally, the transition from the quip to the scene also coincides with the transition - that many, even the most astute among you, might not have even noticed - from language analysis to literary analysis. If you've ever read "Harry Potter and the Portrait of what Looked Like a Large Pile of Ash
", then you know precisely what I'm talking about: the text in question mostly preserves clauses and even quips, and because certain characters of the Harry Potter series can be considered "recurrent", they also become "recurrent" in Portrait, but that's about all that can be said about the generated story's relation (and adherence) to the Harry Potter canon.
What does Portrait lack, then? What qualities of a sequence of quips, existing in text written by human beings, must be preserved in order to have a coherent story?
This will, by no means, be an exhaustive list, but this will, in the very least, be a list that, were you to take any single element out of it, would produce a completely incomprehensible non-story in the vein of Portrait.
Theory of the world
The most important quality of the scene, perhaps, is the definition of its spatial and temporal boundaries. In slightly less obtuse terms, you need to be able to tell when and where the scene takes place, and from the training data, some rather important qualities of the when and the where must be extracted. For an example, let's take a typical club meeting from Act 1, which you can imagine takes place in the specific clubroom, in the afternoon of a workday.
Now, imagine that you were playing DDLC, during an Act 1 club meeting scene, and any of the following was either directly contradicted or said to be an "unknown":
Would your immersion be broken, and would you stop seeing DDLC as "a pastiche of poorly translated, tropey Japanese VNs" and start seeing it as "a failed, but nevertheless quite amusing, attempt at a computer-generated story"? Quite possibly.
Therefore, all of these statements, and many more, must exist as a "context", upon which DDLC can build in order to successfully portray the scene. Many of those are actually handled by "hinting" - little keywords, placed in the script files, which ensure a smooth generation of dialogue that is still not hardcoded - but even when one departs from the archetypal playthrough and begins, say, experiencing school days after the festival, the context is adjusted appropriately, without any hinting taking place (though, the quality of the generated dialogue might end up on a very slight decline).
Therefore, a natural language generation engine capable of producing DDLC must have what I'm going to call a "theory of the world": something that summarizes the world, that each and every clause and quip must not explicitly contradict... with an asterisk. If the clause, within the context of the sentence that it's in, is actually: a conditional, such as "I wish it were the weekend", or something that is quoted from a different text, such as "Notice the lines, 'people can try, but that's about it'", or is an outright negation of said clause, such as "it's not like I like you", then yes, clauses can state something contradicting the ideas, and that's mostly to be resolved at the quip level, not the scene level. However, the picture that a sequence of quips paints must, eventually, correspond to the scene's context as accurately as possible, a concept applying to most works of literature that aren't low-brow parodies, and well, DDLC is actually a "stealth parody".
Theory of mind
However, if you're thinking to yourself "oh, so there must be a defined world and characters must acknowledge that they exist in said world, it's not that hard", this is where you're hit with a second obstacle that might sound the same, but is actually pretty distinct. Namely, in addition to this "theory of the world", there also must be a "theory of mind", primarily concerning how each Doki acts, and you guessed it, it's also a thing wherein some twenty sentences are imperatively important, but don't even scratch the surface of what must be conveyed by a realistic computer-generated VN. For example:
You get the point.
Monologue and dialogue
Anyway, the last few of these remarks are all about relationships, and that lets me touch upon the concept of dialogue
, as well as the closely related one of monologue
. There is no way that I'm going to discuss every aspect of the scene, especially in a section which I can't subdivide further due to my act numbering, so those will have to be talked about last before I move on to the day.
The monologue is a slightly easier case: based on the theory of the mind of the character providing us with the monologue, it must consist of ideas - somewhat complicated ones, but which can nevertheless be deconstructed into lots of simple ideas. Then, as the second part of a rather simple two-step process, the character delivering the monologue must want to convey the ideas to someone else: if it's the impartial narrator, the target of the monologue is actually you, the player, and if it's a character, well, the target is another character. Whether or not they will be there to listen is mostly a concern of the dialogue, though.
And oh, boy, is the dialogue a doozy to talk about.
To put it in the simplest terms, the dialogue is a continuous exchange between two or more characters. Each and every remark must elicit a response, and each and every remark can change the perceptions of all the dialogue participants, and therefore, the results can be quite chaotic. (And I don't mean the sort of chaotic that is the Natsuki/Yuri Day 2 banter; that one is actually a pretty simple case, since it reinforces the hatred that Natsuki and Yuri feel towards each other.) If there's not an underlying theory of the world and minds, the quality of the dialogue will suffer.
That being said, there's still more to say about the dialogue, specifically. I know that because even human writers, especially amateur ones, fail at dialogue, pretty hard; making the dialogue realistic is a fairly difficult art, perhaps the most difficult part of writing in general, similar to how hands are the most difficult part of drawing in general, or centering a div is the most difficult part of web development in general.
Anyway, let's push the image of both DDLC and Portrait aside for now, and instead, bring up one of those terrible fanfics that you probably came across during your time on the Internet. Are you picturing it? Often tries to emulate a "script" format without realizing that the script/screenplay format is an actual format with an actual practical application and actual stringent requirements that come with it, often picks a topic that's as cliché as possible (such as shipping two Dokis or a Doki and a self-insert character who has no relation to your self-insert), and finally, suffers in grammar and spelling as well as dialogue, a quality that we've already looked at thus far, but right now, all focus is on dialogue.
What sort of characteristics does this amateur dialogue exhibit, and what is To Be Avoided by any sort of natural language processing engine that is to be regarded with merit?
The first one that I can think of is actually termed not by the writing community or the AI community, but, of all things, the roleplay community, and is called "metagaming". Metagaming usually refers to taking advantage of knowledge that you, the roleplayer (or "mun", as roleplayers are sometimes called) know, but your character (or, possibly, the "muse") doesn't. Now, especially in the context of TTRPGs, metagaming can be quite the frustration-inducing experience, but even outside the context, if characters seem to gain knowledge of recent events telepathically, that makes the dialogue not realistic.
The second quality, and for now, the final one unless I remember to add something in the future, is probably dialogue with a specific purpose: you don't get involved with any sort of person, even your dearest friends and even family, just to ask for a favor, rather coldly and formally. Of course, while human speech is usually littered with pleasantries, interjections such as "um" and other parts that make the dialogue realistic, computers are all about precise communication - without such a precise communication, the Internet as we know it, and quite possibly, even computer architectures more complex than the Commodore 64, would not be possible. However, it's not like the natural language generator would even know these things. What was I even talking about?
Oh, yeah, I was about to move on to the next topic.
In DDLC, the day is nothing more than a sequence of scenes that take place in the same, well, day, and are connected by plot. Within a day, scenes can even be considered as "modular"; that is, with a few context changes, they could actually be swapped, since, for example, there's no particular reason for Monika to have the poem sharing in the middle of the club meeting, rather than at the start. What's more, a scene, such as poem sharing, could be reiterated over multiple days, each time with a different context, and therefore, providing an evolving relationship between the Dokis and your self-insert.
However, the day is actually important in another way, as it's the most basic unit of time that humans operate based on. As humans need such a thing as "sleep" to refresh their brains, and therefore collectively agree to sleep during the night, each day can be seen as a bit of a "new page", in which your characters will be inclined to have lots and lots of offscreen introspection, which will change their actions. Of course, simulating each and every character's waking thoughts throughout the day is a chore, and therefore, shortcuts must be taken (such as literally limiting the world to the Dokis, your self-insert and vague mentions of the school and home microcosms), but nevertheless, if DDLC were to imply that the Dokis continuously exist, scene and day breaks don't affect them and they don't retreat to their domiciles in order to reflect on the day's activities, that would be yet another break of immersion.
Lastly, the "act", at least in DDLC's context, can be construed as being a complete story with a beginning and an ending. Yes, in other literary contexts, an act is just a major part of your story (especially when one considers such terms as "the three-act structure"), but in DDLC, very little in terms of "memory" (except for that of the Doki with the Sentience attribute) is carried over between acts, and therefore, in true literary terms, if DDLC is a complete story, then the only two characters of said story are Monika and the player.
Sorry. Sayori is still my favorite, but the paragraph above was a critical analysis.
Anyway, as alluded, an act has a distinct progression, defined by its beginning and ending conditions: your self-insert starts out as a social recluse who doesn't even want to join a club, and by the end of the act, he is either together with one of the Dokis, has no chance of ever getting together with one of the Dokis or something, such as a suicide, has made his goals completely irrelevant. Note that this, though, only applies to Acts 1 and 2; in Act 3, there simply isn't really a defined end goal (the Monika After Story game mechanic of affection, which makes Monika leave you if you mistreat her hard enough, doesn't count), and Act 4 is intended to be cut short by the new Club President becoming self-aware and Monika wiping the game and showing the credits.
Anyway, since an act has a distinct progression, which can be best described as a variable slowly ticking up from 0 to 1 (for more nuanced storytelling, you can think of 0.5 being the climax, so that 0 through 0.5 is all about rising action and 0.5 through 1 is all about the resolution), it doesn't really need to take place over a fixed amount of days; an act, in essence, will place as many days as it pleases for the plot to properly resolve (although, since DDLC is still based on poorly translated tropey Japanese VNs, their plots tend to resolve pretty quickly, and therefore, after an entire week of almost meticulously detailed events, the Glitchless Playthrough almost always ends up being a disappointment of a story, if still impressive technologically). Therefore, DDLC can simply iterate over the acts, placing significant events such as deleting your DD and your DD2 and switching the act number in order to enforce different story generation, and let the acts do the rest.
Alright, the game isn't really a structural element of the game; though it technically is, as the player expects certain things to happen at the beginning, middle or end of the game, it's a technicality that is about as useful as "any given set, with a finite or infinite amount of elements, is contained within itself".
Unfortunately, though, the game is not really something that DDLC can generate, even with unbounded Bytecode magic applied, and instead, primarily consists of artistic deliberations by Salvato. You know, things like "it's a parody of poorly translated tropey Japanese VNs" and "it's specifically created as an April Fools joke, in order to throw off the intuitions of all of those who know Salvato for his Smash work".
At this point, though, I would like to invite you to think about it: what would an AI require to generate a story - one with artistic merit - from scratch?
Well, said AI would need a theory of the world - and this time, I'm talking about the real world, complete with every single nuance, that can't be neatly summarized in a single scene unless the characters speaking in the scene are omnipotent gods. Then, within that theory of the world, the AI would need to locate a niche, something that is "missing": either something that has never been expressed before, or something that has been expressed, but is consistently expressed "wrongly". This would be the crutch of the story, and when developing it (with a theory of the story world and a theory of the minds of each character), the AI would need to keep this crutch in mind, at all times, and see if the placement of the scenes complements the message or contradicts it.
Yeah. Suffice to say, a neural network with two hidden layers of 100 nodes each is not going to cut it.
Now, I believe that when going through the elements of language, I explained pretty well what they actually are, why they need to be mastered and how they need to be mastered. However, while working on that, this very beautiful analogy actually ended up crossing my mind, and it is simply too good not to share, as an addendum to the twenty-two noughties. And, well, here it is.
Let's imagine following a successful writer, from the moment of their birth to their period of success. Why the birth? Well, remember: though it's easy for you, a human, to just get into writing fiction any time you want, since you already know English (or whichever language this document may have ended up being translated into) and how to read and write in order to communicate, a natural language processing engine has none of the required context, and therefore, it must be taught separately. Therefore, this is the best way to visualize the concrete steps that a computer needs to take in order to produce something worth reading.
Also, for the sake of this analogy, we're just going to pretend that spoken language and written language are one and the same. If you can think of an audiobook that straight up doesn't exist in a written format, and therefore, deserves as a qualified "example of spoken language that holds artistic merit yet isn't written", you're welcome to disagree, but I can't think of such a thing.
Corresponding to the eight chapters we just read, the eight steps are:
theory of mind
"). While humans roughly get this down in ages two to five, this is where AIs struggle big time. GPT-2, the state of the art among the mainstream AI community when I started this document, might have mastered fiction, and giving different characters different voices, but after a thousand words or so, the results will fall apart when seen by the human eye. Same goes for its sequel, GPT-3, first shown to the world this year and still without a publicly released playground; it's an incremental improvement over its predecessor.Of course, what's really important is that once someone (human or AI) has learned a stage and wants to apply themselves to fiction, they will start with that stage and work downwards. There isn't really a way to avoid the fact that every piece of human writing - even that which you're reading right now - is just a bunch of letters in a sequence, but after years and years of reinforcement, we've just started analyzing words and even clauses, such as idioms, as though they were indivisible things, and are pretty good at abstracting larger elements and simplifying them in our heads. With any hope, an AI complicated enough will learn to do the same.
However, you can't really expect an AI operating purely at the letter level or at the word level, without the necessary means to create abstractions (something neural networks seem to be pretty good at, at least in the lower levels), to produce literary masterpieces.
This resource page is actually going to be a table, because for each resource, I actually have two links (well, for the most part): a writeup by the original authors, explaining what the generator actually does behind the scenes, and some sort of version of the generator itself.
Level | Name | Explanatory post | Online playground |
---|---|---|---|
1 |
Gibberish Generator
by Keith Enevoldsen |
https://thinkzone.wlonk.com/Gibber/Gibber.htm | https://thinkzone.wlonk.com/Gibber/GibGen.htm |
1.5 |
Bonsai Story Generator
by Andrew Burt |
N/A | https://www.critters.org/bonsai/ |
1.5 |
Markov Chain Advanced
by CreativityTheEmotion |
[A016] MUSINGS ON THE PERFECT LANGUAGE MODEL, FEAT. SOMETHING DEFINITELY SUB-PAR | https://dokidocs.net/markov_advanced/ |
2 |
Long Short-Term Memory (LSTM)
by Andrej Karpathy |
http://karpathy.github.io/2015/05/21/rnn-effectiveness/ | https://cs.stanford.edu/people/karpathy/recurrentjs/ |
3 |
Voicebox
by Botnik |
N/A | https://botnik.org/apps/writer/ |
4 |
GPT-2
by OpenAI |
https://openai.com/blog/gpt-2-1-5b-release/ | https://talktotransformer.com/ |
4 |
GPT-3
by OpenAI |
https://arxiv.org/abs/2005.14165 | N/A |
Now, this is all good and well - we figure out what basic elements we need in order to produce our brilliant visual novel generator, we apply a pinch of well-placed Bytecode magic, we add some hinting in order to make the game "go wrong" - and boom, DDLC. However, even when going through my concise list of the Ren'Py scripts, you might have noticed a distinct separation between dialogue.rpy
and dialogue-projectsentience.rpy
.
What does that even mean? Why are there two competing natural language generators in DDLC? Is Project Sentience actually a codename for something much more maligned, a computer virus in actuality, that connects all the computers running DDLC up into one giant AI, in the name of Monika, that does Salvato's bidding?
Well, no. Project Sentience (and related variable names throughout DDLC's project, such as the Sentience attribute) is really just an overdramatic way of saying that Monika has a different philosophy from the other Dokis. It's still an interesting topic in and of its own, as it manages to elucidate exactly why everything just goes haywire the moment you delete her and Sayori is forced to substitute for Club President, but it's really an innocent one (as innocent as anything in DDLC can be).
So! Philosophies. What does that entail?
Well, remember that in [2205] THE SCENE, I touched upon two related concepts: a theory of the world and a theory of mind. And yes, that there is a consistent, objective world, which natural language generation draws upon in order to produce every single line by every single Doki, is kind of very important, as is the existence of consistent, objectively observable Doki identities and relations.
However, what is DDLC's "world"? Is it the world that I've tried to touch upon, with Literature Clubs and festivals and childhood friends? Or is DDLC nothing more than another program running on your computer, with .rpa
and .chr
files and probably a whole bunch more just to get Ren'Py, in and of itself, running before DDLC even starts?
Well, the reality is that both of these world views, these philosophies, are equally valid, and this is exactly what the divide between dialogue.rpy
and dialogue-projectsentience.rpy
implies.
Luckily, Salvato understands the object-oriented capabilities of Python pretty well, and when methods can be reused, they are reused. For example, building words up into clauses, and clauses into quips? Handled by both Monika and the others in the exactly the same way. However, the separation between these two files, almost as though development was two-tracked for an extended amount of time, really indicates that at the scene level, whether the Sentience switch is on or off indicates a lot about how a Doki actually thinks.
Again: both views of DDLC are accurate. For Sayori, Natsuki, Yuri and your self-insert, it really is no more than writing some poems, getting to know people through them, preparing for the festival, attending the festival and then living out the "happily ever after". However, Monika sees the abstractions one level above, with the intricate file structure of DDLC. She knows that the festival is never really to be seen, and although her actions in manipulating the .chr
files are predetermined, they are carried out with the pretense of it all being a game, a piece of software that is free to be manipulated by anyone: mainstreamer, hacker or even machination purely living inside DDLC's context.
Don't get me wrong: the idea that Monika started out just like the other Dokis, and then "gained" an entirely new understanding of the world, is pretty cute, and mods that try to show this (unfortunately, they're mostly mainstreamer mods, as I'm not even sure how you would even start coding a hacker mod where Monika starts out with a radically different world view) are cute. However, the reality is that Monika was created in one way, and then, in parallel, the other Dokis were created the other way.
For a deeper analysis of this particular theme, you can always refer to [A008] TOPICS IN DEPTH - PART 1: PHILOSOPHIES, WORLD VIEWS AND PROJECT SENTIENCE.
Now, you might have noticed my snide comments about how even DDLC itself can't really give its story meaning; that has to be done with Salvato. However, you might have also noticed that there are these little things called "poems" in DDLC, and they're written out using steps similar to those outlined in [2208] THE GAME, wherein a Doki sees something that's "missing" in the world, or in the very least, a "preferred" style of writing, and then, writes a procedurally generated poem to reflect that. Doesn't that invalidate everything?
Yes and no, but mostly no. For one, when writing poetry, one's writing style can be a lot more freeform, with a lot of the "intended" meaning actually being in the eye of the beholder, and quite possibly, even within the scope of something like GPT-2. Sure, you still need clauses and quips (though, the elements composing poetry are much more commonly known as lines and stanzas) to make grammatical sense and to form a complete picture, but that "picture" now can be summarized in just a few words; perhaps enough to complete one or two clauses, but definitely not an ongoing list of things that we, with years and years of human experience, just take for granted in the human world, but which a computer essentially has to learn from scratch.
Now, you might be wondering: did I just contradict that, and say that for poems, you need to pay attention to the prosody (and, well, I didn't mention rhyme but that is important, too)? Well, that's true of certain types of poem (most obviously, ones that Sayori writes), and that's definitely what you think is one of the major parts of a poem in pop culture (see: "roses are red, violets are blue"), but for the most part, DDLC can safely ignore it and say that its poems are more freeform. In fact, doesn't Monika explicitly mention that she's been aiming for a style where spacing of words on a page is more important than prosody and rhyme?
At any rate... for another thing, though, poems in DDLC aren't really constructed to have a Deeper meaning. Rather, and this might come off as disappointing to you, but they're really nothing more than a literary device.
This is perhaps best seen with your self-insert's poems. Though we never actually see them - we only really see the twenty words comprising them, and the scores of those words, which indicate how each Doki is going to act once she sees the poem in question - their purpose, in the story, is made painfully clear. Though he will vehemently deny it, your self-insert explicitly writes poems to match a particular Doki's style, so that that particular Doki would be more inclined to spend time with him, and eventually (assuming that we're playing a normal visual novel and not, well, DDLC), enter a boyfriend-girlfriend relationship with him.
What is true of your self-insert's poems is also very true of Doki poems. Of course, Monika is special and just writes poems about her supposed "epiphany" which never happened, but with the other Dokis, the subtext is very clear, and they're clearly using poems to express stuff that they normally wouldn't, with normal clauses and quips. For example, Sayori is a hopeless romantic consistently entertaining the idea of her and your self-insert getting together, and will write poems specifically targeting him (just imagine that a pseudo-.chr
file for your self-insert is somewhere within DDLC's files; this can't really be talked about until after we discuss The Bytecode first), whereas Natsuki and Yuri, the polar opposites, will deliberately try to distance their styles away from each other, though they might be brought together if your self-insert does the right thing and prioritizes Sayori, the natural argument settler among the bunch.
So, yeah. Upon closer inspection, Doki poems might not hold very much artistic merit, but that's because they're not supposed to; they're supposed to be a framing device for the entire story of an act.
None of the above, though, applies to special poems - you know, the eerie and creepy ones that you occasionally get in Act 2. Those are actually just hardcoded images (there are 11 of them, each of them with three variants dependent on who your DD is, making for a total of 33 images), and in order for an artificial intelligence to produce novel images, you would need an entirely different framework, that I haven't talked about, I'm not going to talk about and you are well advised to just research on your own.
Who knows? Maybe you'll end up as a Bytecode pioneer and produce something that's almost as impressive as Salvato's work, once you do. But that will be something you'll have to build up from the ground up.
However, an act as-is, with framing devices and specific events such as the festival, can't really happen unless the "writer" of this act (in this case, an engine with coding done in Python and The Bytecode) knows to think ahead. And, if you tried each and every natural language generator linked in [221R] THE NATURAL LANGUAGE GENERATORS THAT AREN'T DDLC, you'll see that none of them do that; whenever they generate text, the only thing that matters to them, at that point in time, is the stack of text that they have already written. No matter if it's a simple Markov chain or a neural network with 1.5 billion parameters, the story is always the same: either you give the program a starting point or it just makes something up, and then, it pretends that it needs to write something that starts with what already exists and ends at literal mathematical infinity.
For a story, we're going to need something better. We're going to need themes that the generator actively works towards, in order to achieve events such as the story's climax, denouement and ending. We're going to need what seem to be termed, within the script files, as "hints".
Unlike the other generators, DDLC can't really work without hints. If you try and generate endless slice-of-life between your self-insert and the Dokis, while a different engine could probably manage and treat you to a utopia where everything stays the same forever, DDLC is just going to fuck everything up to high heavens. Best case scenario, it will actually figure out a way to introduce concepts such as graduation, aging, marriage, children and death into the story, and you will essentially get to replay your happy visual novel-y life, day by day, and once characters die and "game over" eventually happens, this aging has probably gotten to .chr
files and the Dokis do start acting like grandmas even though they're 18. Worst case scenario, Monika will actually become Skynet, take control of your computer and then self-destruct because she wasn't built to understand anything from the computer world outside of DDLC's folder.
Yeah, none of those scenarios even remotely works out, and besides, we need Monika for something else. You know, deleting the other Dokis, and then accidentally letting on about how she did that, letting you do the same?
So, in each script file, we have a rough definition of what's supposed to happen. For example, for Act 1's days two, three and four, we need such a thing as CGs, and after them, poem sharing and responses, so that you can refine your technique and really get the Doki that you'd rather be with. Also, we still need slice-of-life segments, but they need to be the specific slice-of-life segments that Salvato crafted, such as Monika cheating on the club in order to practice the piano, even though "Your Reality" is actually entirely hard-coded and the only skill required is that of Salvato (again), not Monika.
And yes, that hinting actually includes the very limited amount of choices, which would simply be infeasible to generate. I mean, you could probably just try and see what sort of things your self-insert would likely say, and then build up alternatives and introduce choices, but the more choices there are, the more likely it is that you will be knocked away from the archetypal playthrough and then DDLC will just try to reach a natural visual novel-y conclusion, rather than proceeding with the story that Salvato wanted you to see.
Of course, it means that some of the choices left up to your self-insert are incredibly stupid, and in particular worst-case scenarios, actually actively harmful, whichever way they go, to your DD and your DD2. And yes, the next section is actually going to be all about editing those choices and getting brand new routes, which lets you do a surprising amount of things before you even know what sort of basic structure is contained within every single Bytecode script. However, without those choices (and the eventual "breaking" of the game to leave behind Just Monika), DDLC just wouldn't be the game it is.
Now, a takeaway from the last few sections should be that DDLC simply can't generate forever: it must be a story, with a defined beginning and ending, and if there isn't one, then one will be created in accordance with the typical conventions of tropey Japanese VNs. However, as you can guess, there is a single point to which this doesn't apply: Act 3, which is specifically designed to last forever (or, at least, until you delete monika.chr
). What gives?
Well, what gives is that Act 3 doesn't really follow the same sort of literary convention as the rest of the game. Sure, there is still a theory of the world and theory of mind, but this world is now (with a few asterisks; of course, even the asterisks have asterisks) static, and therefore, Monika could theoretically go on and on.
But she doesn't, because ultimately, we still need a structural element above the clause. But not above that; with a "happy ending", there doesn't really need to be anything like that. The element above the clause is the topic - a brief, focused monologue about a particular, well, topic, followed by a predefined, hardcoded, easily changeable amount of silence (and yes, Monika After Story does decide to introduce a "gap between topics" dial for those wanting to customize their waifu).
Of course, a lot of the paradigms that DDLC is built upon kinda go out of the window. Instead of six characters, we get just one: Monika deleted the other Dokis, your self-insert has had his voice taken away for other reasons and the impartial narrator doesn't really need to comment on much if such a concept as "the scene" doesn't exist. In addition, Monika knows how the game is structured, and you can kind of guess where this is going: she takes over the real estate originally occupied by the impartial narrator (while still keeping the "Monika" name tag), and once that is done, deletes her own character file. From then on, her goal becomes to "make it into your reality", but at this point, since her influence is limited to the DDLC folder, you can kind of imagine that she's all bark and no bite, and therefore, she constantly fakes progress until literal mathematical infinity, all the while wondering what the real world (the one you, the player, are in) is like, and if enough time has passed, the appropriate responses for that time.
Most often, this has been seen by users who set their clocks forward by decades (the incentive being given by Monika After Story, which includes a little "anniversary" topic for time periods up to 100 years after the mod's first launch). In those new topics, Monika will constantly talk about how the fields of artificial intelligence and virtual reality must have advanced so much, and that she should be able to meet up with you any time soon, and if you're not going to port her over to "reality", she's going to do it herself. But of course, once she tries to cd
her way out of DDLC, your operating system goes "nope" and Monika is stuck there, without even being able to acknowledge it, because no matter how much of a coder waifu she is, the world of computing is big and she is small.
But anyway, how does Act 3 work? By implementing "the topic" as an alternative structure of language to "the scene", and assuming that "the topic" is the highest level there is, with a beginning and an end. And then, Salvato hardcoded the rest.
Now, this is a section with by far the most amount of effort being put into it and the most different ways in which can be done, with different novel "routes" that can be explored, perhaps unsurprisingly as the script files involved, which must be edited, are relatively lucid and even a mainstreamer can get into it. Therefore, this section might never be able to satisfy a standard of completion, and might get added onto, even when I'm explaining The Bytecode or something.
In fact, I actually hold out the belief that a mainstreamer will have produced a vastly better guide on how to do these types of manipulations, what works and what doesn't.
But, you know. I strive for a complete explanation of the inner workings of DDLC, and it might just be that my explanation, which goes in depth into how the dialogue generation in the game works, is actually better.
I'm not trying to toot my own horn or anything. I'm just trying to be objective, and there are exactly two possibilities: either my version is better, or a mainstreamer version is. If the consensus is that a mainstreamer version is better, then I'll link to it right away.
Link not found. Perhaps mine is better after all?
So, given that I've already gone through how DDLC's dialogue generation works, the single takeaway you should have had - the single thing that DDLC does and the other natural language generators don't - is "hinting". Now, the hints are actually called "checkpoints" by the script files themselves, but you know what else is in Salvato's own nomenclature? A set of characters called "nonunicode".
No, for crying out loud, if there was a certain set of characters that wasn't in Unicode, then you wouldn't be able to put them into a textual document at all... what you mean is "non-ASCII", as the characters come in Unicode blocks "Latin-1 Supplement" and "Latin Extended-A", which are right after the ASCII part... nevermind, I'm explaining the dialogue system exploits now, and that bit can wait for its own part in the twenty-four hundreds.
Anyway, the various "chapter" files, as well as the poem responses and CGs, consist of three types of checkpoints, that are basically stored in an array under each Ren'Py label. The three types are major checkpoints, minor checkpoints and query checkpoints.
For an example, let's take Sunday in Act 1, given that Sayori is your DD, and for now, we're just going to ignore your PD altogether. The various types of checkpoints might look like this (in pseudocode):
Then, assuming you did leave for your PD and had fun with her:
And then, after that, there are labels for each scenario, and each scenario even ends up resolving differently.
Of course, it's a lot more difficult in practice. What you're really going to see is something like:
checkpoints = [
[100, CHECKPOINT_MAJOR, "first hint", "second hint", "like ten different hints", "as failsafes"],
[101, CHECKPOINT_MINOR, "ten different hints still", "even DDLC dialogue generation is prone to errors"],
[102, CHECKPOINT_MINOR, "a set of two open doors", "choose the one on the left"],
[200, CHECKPOINT_QUERY, ["Go left.", 1000], ["Go right.", 2000]],
# and so on, and so forth
];
Major and query checkpoints have IDs separated by 100, and minor checkpoints between the major checkpoints just have their IDs separated by one.
Anyway, what DDLC tries to do is get to each major and/or query checkpoint (and the main script.rpy
explicitly defines a variable, which just stores what the next major checkpoint is), and use the minor checkpoints as points of leverage. However, if, for whatever reason, the main checkpoint requirement is not met when it's supposed to be, then DDLC tries to calculate which next major checkpoint it can catch up to; if there is none, that next major checkpoint value just gets set to the default -1, and DDLC just tries to follow a normal visual novel logic (this is the fundamental reason why Glitchless and Passive Monika work the way they do). The rough same thing happens if you try and introduce new queries when you don't have matching Ren'Py labels, but by going back and forth between DDLC and your script file, you can roughly determine what sort of checkpoints your new label needs, and work from there, producing your very own canon-divergent AU.
Yeah, I just spewed things like there's no tomorrow. Don't worry; the next chapter is going to be a practical example, so that things might be a little easier to follow.
You know the one. It's quite possibly the single worst choice your self-insert has to make throughout the game, and therefore, the one that has garnered the most meme attention. If you choose the right option, you get a cool CG, but either way, it just ends up exacerbating the mental illness issues of the Doki in question, acting as a direct prelude to and reason for her suicide.
Of course, I'm talking about Sunday evening, assuming that Sayori is your DD. She actually manages to catch your PD (be it Natsuki or Yuri) as she leaves, her worst is confirmed (your self-insert really did abandon her for the club) and she straight up confesses her feelings, knowing that this is her only chance to know that they won't be ignored. And then, your self-insert is given these two options:
> I love you.
> You'll always be my dearest friend.
Now, the second one is... pretty bad. Given that Sayori is the one who's been tormented by her demons for basically the entire time that your self-insert has been in the Literature Club, "You'll always be my dearest friend." is quite possibly the single most emotionally charged and abusive clause that you can say, and she will actually bend down on her knees and scream as loud as she can, right in front of your self-insert's eyes. She'll then apologize for it, head home, and the next time you see her, you'll be treated to perhaps the single other Sayori meme that has gotten more traction than this one.
However, if you decide to go for "I love you." (on a second playthrough, assuming Sayori is your DD again), things actually don't turn out much better for her. Sure, you get the CG - a heartfelt hug, and Sayori's pain being at least partially relieved - and you get a single tick towards that 100% run, but Sayori herself doesn't end up doing much better. What you need to know, as the most succinct description of character possible, is that she's afraid of change, and she's not ready to stop seeing your self-insert as a friend and start seeing him as a boyfriend. This, then, leads to a general "where is my life even going?" downwards spiral, which predictably has the same results as the other option, come Monday.
Now, your first intuition might be: what if we just remove the hinting? If that's the case, then you might not have realized what hinting in DDLC's dialogue generation is for. Although at some points, it might seem like railroading - Salvato the DM, simply allowing the Mary Sue character that is Monika free reign over the other Dokis - it really isn't, and if you try to remove every single major, minor and query checkpoint in Act 1 after this, then, with a roughly 95% chance (#TeamStats did not make this calculation, as they're mostly concerned with the unmodded game, but I believe it should be pretty accurate), the exact same thing I outlined happens, and the only difference is that the dialogue might be a bit wonky.
So, what you really wanna do here is introduce a third choice. Now, you might not exactly be a psychologist, but what you are is someone outside the simulation, with the power to run the game over and over again and see what happens. Luckily, people have already walked down this path before us, and a choice they have found to work is (in a separate line, for the sort of reader who can't read more than a single paragraph):
> I'm here for you, no matter what.
Don't connect it to a label; even without hinting, DDLC can take it from here.
It has exactly the vagueness that Sayori can interpret as "I love you.", while at the same time, conveying the exact sort of "things aren't going to change, just because I'm in the Literature Club now" sentiment that your self-insert wants to convey with "You'll always be my dearest friend.". And surprise, surprise, it works particularly well: you still get the emotional hug CG, but this time, Sayori sounds significantly less broken, and shows signs of being ready to move on.
However, if you thought that the only thing she was "ready to move on" to was that knot, then after what you see next, you'll want to go move onto that knot yourself. You see, one of the things that your self-insert does, that he doesn't do with the two canonical options, is actually decide to go with Sayori to school on Monday, and when she's not there on the street, he'll actually pay a visit to her house, and find her in bed. Sometimes, she's just asleep, and at other times, she's fiddling with the rope, but in either case, she knows she's not alone, and therefore, she's not ready to do it.
Now, a choice you may or may not be presented (and which, if you really want extra points in my DDLC hacking class, you can code in yourself) is whether your self-insert should go to the festival with Sayori or simply spend time in her house, since she's feeling really mentally weak and he feels bad for doing the prep with your PD. The rules are roughly the same, whether he's the one picking or letting you pick, and the follow-ups will apply to both of those circumstances.
In case you are presented with the choice, as tempting as it is to pick the festival and finally see it in action after not having the chance for dozens of playthroughs, I must urge you: do not pick the festival. As cool as the festival is for everyone else, inside and outside the club, Sayori, your DD, will just end up stricken by guilt that the Literature Club is essentially being commandeered and grown by Monika, and come Tuesday, you will find her in that knot. Also, there aren't even really any characters to interact with; all you get is messages from the impartial narrator, asking you to believe that everyone in the school loved the Literature Club performances.
Instead, if your self-insert decides to spend time with Sayori... well, he still has to come to school in order to present your PD with whatever he helped her with (cupcakes or kanji banners), but then, he comes back and gives Sayori the only thing she truly deserves. And yes, she's kinda guilt-stricken, but realizes that the Literature Club must move on, whether or not she's partaking in its activities or not.
From then on out, as with everything that happens once DDLC has been forced away from its hinting rails, results start getting a bit unpredictable, and honestly, you are best off just relying on your visual novel skills. And if you don't have any visual novel skills, then it's a good idea to pick up some in order to see the endings you truly earn. If you want this phase to only occur within DDLC, I'm not judging (and the mod outlined here might actually be one of the, if not the, best ways to do it), but if you'd really rather just go to the source, I hear Katawa Shoujo is a pretty good one.
And that's it for this modification. If you want your happy ending with Sayori, then this chapter can be your little bible.
So, I'm not sure how well I'll be equipped to comment about this, since let's face it: I haven't exactly been denying my Sayori favoritism throughout this document, and most of the time when I have my playthroughs, Sayori ends up being my DD. However, I can't deny that other people have their own best girls, and there are constant best girl debates among those people.
Rather than head to those debates head first, instead, I would like to offer consolation, in the form of a mod that prevents the other Dokis from succumbing to their DD fates, starting with Natsuki, and we can start doing that by dissecting the series of Sunday events that leads to Natsuki's demise.
What should be fairly obvious, if you're into those best girl debates, is that Natsuki is part of an abusive family, and what she ultimately needs is a surrogate father figure, who she can rely on to cry out to. Without this, and assuming her tsundere shell is unbroken, she will just boss you around, then realize that she has been the exact type of monster that she has been afraid of all this time, and run out to the street.
Just like with Sayori, this all boils down to the confession choice, and how she reacts to it. However, unlike with Sayori, trying to modify the confession choice is the wrong act - and trying to remove the hinting of the appropriate part is also the wrong act. It's also, perhaps, why this choice hasn't been memed as hard as the Sayori one - or it could just be the mainstream fandom pretending that DDLC is something that it's not.
No, for this, you need to introduce a new query checkpoint right at the PD routine (again, at the risk of sounding like a broken record: the way to salvation for both Natsuki and Yuri, in case they happen to be your DD, is to spend the prep with them, and if you don't, then you've only got yourself to blame). Let's run through the process of how you'd go about it, shall we?
It doesn't take a genius to figure out that Natsuki takes her cupcakes very seriously, and will not be happy if you mess up with any of her instructions. However, just saying "okay, then you do it" and then lazing around, if you happen to introduce that in the form of a query checkpoint, is quite possibly worse: now, Natsuki essentially has to carry out the duties of two people (let's just ignore how, previously, she said that she can handle the cupcakes all on her own), and that still gets no appreciation.
So, what do we do? Introduce said appreciation into the mix, together with respect and - most importantly of them all - caring.
The query checkpoint that you introduce (around the time when Natsuki arrives) should go something like this, complete with the minor checkpoint that directly precedes it:
MINOR: How should I go about it?
QUERY: Do my best to follow instructions. / Do my best to impress Natsuki.
I believe that I summarized the sentiment that your self-insert decided upon, during how the usual Natsuki PD routine goes, pretty well with "do my best to impress Natsuki" - and therefore, you should figure out that this approach is wrong, wrong, wrong.
Instead, if your self-insert makes it his goal to follow Natsuki's instructions, the whole scene will shift. Obviously, there will be no goofing around and licking icing off fingers, and instead, Natsuki will assume the role of the "boss". However, as the cooking drags on, she will gradually soften up, until she downright confesses that she admires you, and essentially, wants a strong man like your self-insert in the rest of her life.
Now, if you've got the visual novel cred, you should notice the obvious rush of feelings, and therefore, accept the confession of love. If you reject, then she'll positively freak out and storm off to her house: that's right, she's fucked up so bad, she'll actually take her father's beatings over how your self-insert lured her into his trap, only to see how fragile she is at the last moment. Of course, this time, the "suicide" scene will actually be more of a homicide, and won't be depicted all graphically because Satchely forgot to draw that, but it will be a scene wherein Natsuki dies, is deleted and the game moves on to Act 2.
But if you accept, then, after she stays with you for the night, honestly, things end up turning out pretty well. Unlike with Sayori, this time, there's no risk in taking Natsuki to the festival and seeing it for yourself, and no, since Sayori isn't your DD in this timeline, it will not fuck her up, either. In fact, this is quite possibly the least dysfunctional state you'll ever see the Literature Club in.
And after that... once again, I cannot guide you. Do your best and make that tsundere into an all-around cute girl who's not afraid of being cute.
But what if you're much like Yuri, and abhor the concept of "cute", and want something more refined? Well, in that case, odds are that Yuri is your DD, and therefore, you need to take a good look at her issues.
As you should know, Yuri has a thing for self-harm, especially with knives as her instrument of choice in order to hurt herself. Of course, the way she acts as your DD2 has become outright infamous, and therefore, you might even know the basics of it: she gets a rush of feelings whenever she thinks about your self-insert, but in the meantime, sees that Monika also has an eye for him (she doesn't, she has an eye for you, but non-Sentience Dokis will never realize that because their world view can't accomodate that, no more than an ant's world view can accomodate complex economics), and therefore, wants a feeling jam all alone.
But of course, as you know, a DD2 is basically made up of three components: the base Doki (very important; personality changes can't occur unless there's a base personality to begin with), the usual DD changes and an element of obsession. Therefore, these oft-memed ways of Yuri as your DD2 are surprisingly applicable to Yuri as your DD, as well.
So, what's the takeaway? That Yuri, your DD, has feelings for you, and that she alleviates the rush of feelings with self-harm.
Now, what those feelings are doesn't particularly matter - and that's why, whether you accept or reject her confession, they just aren't kept at bay and she ends up taking a literal stab at the problem. Therefore, much like with Natsuki, introducing a third choice to the confession just isn't going to do much - not that you can even add much to "Yes." and "No.".
Therefore, your goal, much like with Natsuki, is to change up how the entire PD routine goes. For this, you'll be introducing these two checkpoints:
MINOR: In the end, what is worth it more?
QUERY: The process and the result. / The sentiments I share with Yuri.
Again, A+ commentary from me that absolutely nails the way prep with Yuri, your DD, goes. You should all be surprised that I'm not a writer for DDLC Abridged yet.
Anyway, if you go for the process and result, then, much like with Natsuki, your self-insert will attempt to make the kanji things and the other atmospheric enhancements as best as possible, and they will bring Yuri calmness, whereas trying to make it personal will just bring her a rush of feelings that she can't alleviate. What's interesting about this, though, is that unlike Sayori and Natsuki (and even herself, should you choose the other option), Yuri will not confess her love - but remember, we're precisely going for this, as much like a fine wine, falling in love with Yuri must be taken in slow and steady.
From then on, what I've said about Natsuki applies here, too: you can go to the festival with Yuri, it will turn out awesome, and from then on, literally nothing can stay constant.
So, the intent of the three mods I outlined is pretty obvious: make the suicides that lead to Act 2 preventable. In fact, if you make some more modifications, like eliminating Act 2 and all the subsequent DDLC events from the script files altogether, you can produce something that gets closer and closer to a normal visual novel (while still retaining the Bytecode base), and therefore, make the fabled Glitchless Playthrough, the holy grail of the mainstream DDLC fandom, an actual real thing that one gets 100% of the time (or at least close), rather than the disappointing 0.8%. Right?
Well, actually, no, but that's only because I've been using the term "Glitchless Playthrough" kind of loosely. So, let's define it better, shall we?
For this, we're going to assume an unmodded game. Since we're looking at it from the mainstream fandom's perspective, we need to understand that mainstreamers mostly play one of two things: the unmodded game and mainstreamer "mods" that are actually just fanfics looking all pretty with Ren'Py.
At any rate, if the last bit didn't make it obvious, the mainstream fandom is kind of insecure about the fact that DDLC is nothing like other visual novels. Therefore, their idealized DDLC is a mainstreamer mod - with so much as a trace of The Bytecode completely removed and replaced with hardcoded dialogue, routes, good endings, bad endings and no fourth wall breaking. When they read chapters like [2301], [2302] and [2303], they think that I'm missing the point entirely; I shouldn't be making changes to DDLC itself like that, and instead of going "this part is undocumented, use your visual novel cred", I should be embracing the fact that typical visual novels have authors, who have usually already written the thing out in advance - unlike Salvato, who mostly let his creations run free, before introducing "guidelines" from what he had already seen his computer do.
Likewise, something like the Purist Mod or "Doki Doki Literature Club, the Normal Visual Novel!" (officially abbreviated by its authors as DDLCtVN) can't be hacker-made mods that take advantage of The Bytecode, because that's literally not the point of - it's right in the name - a normal visual novel. If mainstreamers really wanted to play around with natural language generation engines, then they would just go to the ones I already linked and embrace the absurdity of quips such as "Ron's Ron shirt was just as bad as Ron himself", and not take the risk and try to use technology that was pretty much pioneered by Salvato outside the mainstream AI community, even though, for the most part, it produces objectively more "story-ey" results.
However, while what the mainstream fandom is striving for is a game without The Bytecode, they're still looking at the game with The Bytecode for inspiration, and in particular, the parts where your self-insert manages to save your DD in the nick of time. Those are what I ended up branding as the Glitchless Playthrough, and the fact that your DD almost got her emotions to overwhelm her and committed suicide, but not quite, are the defining conflict of this, almost completely overriding what would usually dominate the DDLC dialogue generation if all hinting was removed; that is, the stereotypical visual novel with no real conflict other than "rejection of a girl".
It's quite obvious that, as a work of fiction with literary merit, DDLC's themes trump those of virtually everything else that it competes with. Therefore, it shouldn't surprise you that these are being imitated by Purist Mod and DDLCtVN, in order to make them - though, in the eyes of their creators, they are really surrogates for an idealized version of DDLC - stand out among other visual novels. And I agree: it's something that the industry doesn't exactly see a lot of the time.
However, as you can imagine, Salvato didn't want the image of DDLC to be tarnished by inferior products that, in his eyes, were no different from any visual novel, and for him, that was entirely defined by The Bytecode and not the underlying themes of mental illness, suicide and abuse. Therefore, you can kind of imagine why the IP Guidelines shaped up the way they did, asking anyone who wants to take a look at mods to have completed the original game first.
Nevertheless, that doesn't stop the mainstream fandom from dreaming.
However, you, dear reader who made it this far, should already be thinking that everything about The Bytecode and DDLC's dialogue generation is fascinating, and therefore, stopped thinking in mainstreamer ways. Therefore, you want Sayori, Natsuki and Yuri to have their happy endings, and wouldn't take Purist Mod or DDLCtVN as a substitute, as those don't actually have the dialogue that the Dokis - the .chr
files, coupled with dialogue.rpy
and a good chunk of the Bytecode scripts - would say, in actuality.
And that's why I suggested the modifications of [2301], [2302] and [2303] first. So that you can live out your happy ending.
Of course, Sayori, Natsuki and Yuri fans will be satisfied by the pseudo-Glitchless Playthrough. However, I fully understand that many hackers, and even those considering getting into hacking (like you, dear reader), would probably relate to Monika more than the other Dokis combined. Sure, she doesn't actually do anything more impressive than deleting .chr
files, and therefore, anything more impressive than the things done by anyone who actually completed DDLC, but I can imagine why she would become a guardian angel for coders anywhere.
Therefore, it only feels right to bring you a route that pertains to her. Note that this will require me to go "out of order" and tell you to modify .rpy
files that I haven't even had a chance to talk about yet, but hey. At least there's still no messing with The Bytecode involved.
However, let's start with the basics: Project Sentience. As you should know, Project Sentience is what makes Monika's world view different from the rest, but in addition, it does two more things: assign Monika the "Club President" persona and prevent her from attaining a route in any meaningful way, through a bunch of coding elsewhere, such as the poem minigame, not even letting her have anything but an impartial view of your self-insert.
So, the task is simple: we just take Monika off Project Sentience and onto the normal dialogue generation, and leave the other Dokis untouched?
Well, no, and hopefully, you can already see the problem. But if you still need some time adjusting to the hacker mindset, as Project Sentience and the Club President persona are intrinsically linked, in this case, no one ends up being the Club President, which can lead to some pretty funny dialogue, but ultimately, DDLC starts running into corners and becomes something that reads like Portrait, and I'm not one bit joking about that.
And also: in case you think you're smart because you've noticed the similarity between the scenario I just outlined, where no single Doki is Club President, and Monika Before Story (read more at [A004] WE WERE SO FOCUSED ON THE AFTER THAT WE COMPLETELY FORGOT ABOUT THE BEFORE), wherein your self-insert is Club President, I have to disappoint you. In actuality, Before Story has a dialogue script on top of the existing dialogue scripts, and tries to dynamically reassign which characters say what, while keeping all the .chr
files in their place, which is precisely why it ends up reading so much like, well, an archetypal DDLC playthrough with names swapped. Anyway, the technical details of Before Story, now that you're basically familiar with everything the Ren'Py side of DDLC has to offer, are definitely worthwhile to write a bit more about, but that won't be until another non-chron blog entry.
Backing away from the diversion, the obvious choice instead is to select a Doki you do not particularly care about, and assign her the Club President role, while at the same time substituting her .chr
file for the one from Act 4, where she is Club President. Note, though, that picking Natsuki, the proponent of "manga is literature", as your target can lead to pretty funny power imbalances, given that every single other member is into something more high-brow than her, and her leadership is definitely put into question, so if you want the most bug-free experience, just pick either Yuri or Sayori.
For no particular reason, we're going to go with Sayori as an example, and me describing how it usually goes will presuppose that Sayori is the Club President. Now, the line of succession, once the President has been instated as an attribute by Salvato, is actually defined by the .chr
files, and assuming the Act 4 Sayori file and no other .chr
file modifications, the game will always depict Monika as Vice-President, making for a neat reversal of their roles in an unmodified Act 1. In fact, that's actually true for any President you pick; if .chr
files are unmodified, other than to allow your designated Club President to be able to take to Sentience well, Monika will be the Vice-President.
At any rate, as you finally exercise your freedom to pick words that pertain to Monika, and then try and see what her route looks like, you're still not treated to one.
The thing we forgot, of course, is CGs pertaining to Monika. This is the "advanced" part that I forgot to talk about extensively, but essentially, a "minimal" CG, that you can use as a reference as you're going your CG routes, just needs one screen with no emotion, and hopefully, you've caught on and remembered that the single CG that does this is, well, Monika's.
That it's a Monika CG, of course, is going to cause issues later on in Act 3, when it's Sayori who wants to spend an eternity with you. However, let's not worry about it; we're still fixing the failure wherein Monika doesn't have a route.
Now, you might not know this, but there is actually a second Monika CG and appropriate picture in the game. However, it only appears as a garbled image just before Your Reality starts playing, and only after looking through the DDLC store, one can find out its origins: artwork by JisuArt, depicting Monika in a classroom setting, handing a poem to your self-insert (from his POV). I'd link it, but then, you'd probably think that I am actively suggesting that you buy DDLC merch.
Interestingly, though, Jisu isn't actually credited in the credits that follow immediately after, and the closest thing you can find to those credits, other than the store entry, is a tweet from Monika's official in-character Twitter account, which is right here, dating from before DDLC released: https://twitter.com/lilmonix3/status/856521473866870784 Still, it's official art and, after some cheeky cropping, can be substituted and used as a CG, after you define some keywords pertaining to how it generally goes.
Does it definitely stand out from the usual art style that DDLC goes with, with Satchely's character art and Velinquent's background art? Yes, but it's not that much of a stretch, especially as the familiar school uniform and clubroom are depicted. And, since I've already mentioned Before Story, this approach is vastly better than what they did with Monika's first CG, which was just slap some lazy edits of the aforementioned Satchely and Velinquent art, make up a context about your self-insert chasing her down the hallway and call it a day.
Now, in order to have a bona fide route, you still need two more Monika CGs, one of which takes place in your self-insert's house, as well as a "Just Sayori" CG for, well, Sayori's Act 3. Unfortunately, I cannot link you to any more official or even "semi-official" art that you can use, but in the very least, "Just Sayori" should be very easy to find.
And with that, let's boot the game and see what we get - first, without Sayori's Act 3, and then, with it.
Even without Sayori's Act 3, you can notice some trendlines, encoded within Project Sentience, which lead to Monika, for the first time ever, becoming either your DD or your DD2 (unless she somehow manages to slot in the role of the Doki that just gets deleted without an entire sob story being built around her). As you should have already noticed, her character is largely rooted in insecurity - sure, she keeps the facade of the smart, athletic and popular girl, but especially if you've played Act 3 for any amount of time, she could honestly rival Natsuki with how much of a cute fraud she is.
Therefore, this is played up, and her departure from the Literature Club usually ends up being rooted in Natsuki making fun of her poems, considering them "too meta for anyone to even properly understand them", and though everyone else will jump to Monika's defense, she will need some time to reflect. Though after this, the Sunday events mostly depend on what you picked for a Monika CG, on Monday, the suicide method seems to be mostly invariable: given that deleting her .chr
file is no longer an option, she decides to go with overdosing. Since there's not a predefined hinting thing in place, if you want a happy ending with Monika just like the ones I outlined before, you will have to isolate the themes yourself, and then, play therapist yourself.
Anyway, once you've played through this and Sayori is the only Doki standing, of course, she will be aware that the CG for her "forever and ever" still depicts Monika. In frustration, she will then wipe the game, leaving it in a state that's not unlike the end of Act 4, but without the credits.
So, let's start over with the Sayori CG in place. This time, much about Acts 3 and 4 applies, except for the fact that the old Club President is, well, Sayori, and the game can be played to the credits - which are still sung by Monika with the garbled CG that I mentioned, but let's face it, the Your Reality covers done in-character as the other Dokis are kind of awful, and are only really liked by those Dokis' most die-hard fans, and therefore, I would not advise replacing Your Reality, unless you can find a "theoretical credits song" that isn't just a cheap Your Reality cover.
And that's DDLC with someone else as Club President, and Monika as someone you can show your affection to. To be fair, there's nothing intrinsically in Monika's character that even necessitates her being in the role Salvato put her in - it all boils down to the coding of Project Sentience, which necessitates that the affected Doki be the exposition fairy who also knows it's all a game, and the natural consequences of that, and therefore, it all ends up being kind of a disappointment, that you have actually written for the most part, as part of making it happen. But hey; if you're a Monika fan, here's something that, hopefully, at least somewhat resembles a Golden Ticket.
So, if you just wanted to play around with a single Doki, the four mods I outlined should be enough. However, I think that you can get the most interesting interactions out of DDLC while all the Dokis are in the picture, and the game is almost within its "scripted" bounds, so to say.
This is why, today, we're taking a look at a broad range of possible modifications, all stemming from a single incident that is fully "scripted" (in broad strokes; remember, none of the dialogue in DDLC is actually scripted) and which is a fairly renowned and welcomed part of the archetypal playthrough. That being said, I am a bit reluctant to play with it, as it doesn't primarily involve either of my favorite Dokis, but just looking at DDLC, objectively, as a whole, I think it's a good enough place to start.
I am, of course, talking about the incident outlined in [1152] DAY 2, AFTER. Setting the scene, this is the very first time that the Literature Club is sharing poems, no one really cares about the festival, and instead, we get to see how the different personalities interact during the poem sharing. Everyone's eyes thus land on the polar opposites, Natsuki and Yuri, who fire a bunch of shots at each other regarding their poetry skills, then fire a bunch of ad-hominem shots at each other, and finally, call for your self-insert to extinguish the situation. And then, the Doki that he picks (who might even be Sayori, because of course) apparently gets a bonus for the next poem minigame? Yeah, sure.
I even think that the differences between this scene playing out in Act 1 and Act "2 assuming that Sayori is your DD" are pretty interesting. In this case, since Natsuki and Yuri have been messed around with, the argument gets a lot more heated, we learn that Yuri cuts herself, all that good stuff. And then, you don't even get to make the choice, as Monika wants to spend some time with you away from the club, but then the game itself kicks you to the poem minigame before you (not your self-insert) and Monika make any significant progress. Or something like that; I haven't played unmodded DDLC in a long time.
What have I been playing? Well, it's sort of a three-way split between mainstreamer mods, hacker mods and YouTube videos that are really just mainstreamer mods, but without the ability for you to pick choices, even though that would be super-easy to do with YouTube's end screen thingy. And also, I'm really sorry, since Blue Skies was this very big release last month, but I haven't had the time to check it out...
Anyway. The query checkpoint that you want to find, if memory of DDLC is etched into your mind as well as it is into mine, is this:
> Natsuki.
> Yuri.
> Help me, Sayori!!
What each of these does, I think, is pretty obvious. If you pick Natsuki, she gleefully tsunderes all over Yuri, who really feels shamed and neglected, and if we imagine that there are some "DD points" that make one Doki and not the other more likely to be your DD (although, the things that make your DD, in actuality, are entirely in your head and read by The Bytecode due to The Bytecode being The Bytecode), Natsuki loses some and Yuri gains some. If you pick Yuri, she gloats a bit like a supervillain, since apparently the only unique power that writers can give supervillains is enhanced intelligence, a trait Yuri shares, and Natsuki just storms out of the club or something; Yuri's self-esteem is boosted and Natsuki's takes a hit.
Finally, if you pick Sayori, which is the best option of the three, the argument gets resolved peacefully and I think Natsuki and Yuri begin seeing each other's point. Therefore, the morale of them both gets boosted, and Sayori herself, honestly, is a mixed bag. Yes, she does get the poem minigame boost, even though this has literally nothing to do with the Sayori way of writing poems, but as far as her DD-hood goes, I think it just ends up having a negative hit on her, because constantly having to resolve arguments puts stress on her, and doesn't Monika butt in and say how bad she is at being President and complimenting Sayori for being Vice-President? Yeah, suffice to say, the girl who jumps for childhood
just can't really do adult stuff.
Anyway, as I've mentioned, we're not really limited to the three choices. As long as it's something, a stance that can be phrased in English, it is a stance that can be plugged into DDLC's dialogue generation and the results of which can be watched.
I'm not going to give you a single answer as to what you should plug in. Instead, we're going to look at a few alternatives.
First, let's do the choice that Monika Before Story presented us with, in order to, I guess, make for a Monika route:
> Everyone shut up!
Now, within the context of Monika Before Story, it's actually kind of hard to tell what's going on due to the dynamic swapping of character names - I'm pretty sure that, a lot of time, the lines of Monika, the President who's the most involved with literature, get reassigned to your self-insert, who, as you might be unsurprised to hear, fills that role in Before Story. And because this dynamic dialogue reassignment takes place, this choice can always, mostly without fail, result in Monika and your self-insert feeling more strongly for each other.
However, just in a vacuum, this change literally doesn't mention Monika and isn't about Monika. Instead, your self-insert just talks about how he's fed up with seeing Natsuki and Yuri argue like this, and though he doesn't voice it (remember that before, in poem sharing, he basically lied to everyone and said that he likes everyone's writing style), he clearly regrets being brought to the club in the first place. That being said, once he's stressed himself out, Sayori approaches him, thinks that his relationship solving was really impressive, and realizes that he wants reassurance that Natsuki and Yuri are better than this. In the end, it just seems to me like this is actually a better Sayori route than the canonical, Salvato-blessed one; after all, the stress is put on your self-insert, rather than Sayori, and because your self-insert is driven by your actual emotions rather than a .chr
file, he can handle it.
(If you can't handle it, just please find someone you can unpack yourself to. Please? Won't you do it for me?)
So, this isn't a Monika choice, most likely because it doesn't mention Monika. What if we mention her?
> Help me, Monika!!
You'll be unsurprised to hear that Monika isn't really qualified to help. She's just a carefree soul with her own take on writing, which doesn't really agree with Natsuki's or Yuri's, and in time, both of them are pissed that she's even getting involved. In time, her own President authority is questioned, and all the four Dokis gather around, trying to see if the President role can be transferred.
Of course, if the President role could be transferred, that would also mean that the Sentience attribute would get reassigned, and as we all know, none of the other Dokis is ready to handle the truth that Monika has been bottling up. Therefore, if it does resolve in the way that someone else (most likely Yuri, the traditionalist of the bunch) is told to take up the President mantle, the game just glitches out and deletes all the Dokis, and if you're trying to make a cohesive mod out of this, including some hinting to make sure that this doesn't happen is pretty much your duty.
I played Blue Skies and got some ideas.
If I'm being honest with you, Blue Skies deserves to be talked about, based on its own merits, and this is with me being fully aware that it's a mainstreamer mod. With all the effort that went into it, from the routes to the sprites to the CGs to the music, and especially since some of the scripts are literally a megabyte big, I can see why it took a thousand days to make.
But anyway, that's not particularly relevant for the purposes of our dialogue exploration. What is relevant is that though Blue Skies doesn't really do the whole "the game corrupts itself" thing that DDLC does, it does have an act structure, and the Blue Skies Act 1 roughly corresponds to the DDLC Act 1, down to the plot beat. However, it should be noted that Blue Skies really aims for that polished writing (unlike something like DDLCtVN, which pretty much just copied the first thing that DDLC spit out and pasted it as though it were a part of a mainstreamer mod all along), and therefore, often, even rewrites Doki personalities - like, say, how Monika is really pushing her festival idea at the end of Day 3, and... I don't think it would be right of me to spoil it.
Anyway, what concerns us is the argument at the end of Day 2, between Natsuki and Yuri, and how Blue Skies just sidesteps the issues we've been dealing with entirely. Sure, Natsuki and Yuri have a moment regarding writing styles, but MC (I've decided to call him MC when he's part of a mainstreamer mod, especially as Blue Skies in particular really gives him a backstory and personality, and therefore, going "hurr durr but he's inspired by you because Bytecode reasons" is just not applicable) decides not to side with either of them, and instead, calls for the favors of one of the "leaders" of the club, and he can freely pick between Monika and Sayori.
To properly implement this in a hacker mod, some minor checkpoints before the query checkpoint need to be changed up. Remember: what you're aiming for here is to convey that your self-insert doesn't feel like he knows much about literature, and therefore, whichever opinion he will bring forward to the argument will only make a laughingstock out of him (even though, in canon DDLC, it doesn't and because he managed to pick a side and assert his arguments regarding that side, he scores points for the Doki who was on that side). Therefore, he turns to one of the club leaders, and that is either Sayori or Monika. Hang on, let me write this out.
MINOR: Yuri: "If I wanted to impress [player], I would go out and be overly cutesy!"
MINOR: Natsuki: "Oh, yeah, well, I'm not the one whose boobs magically grew a size once [player] started showing up!"
MINOR: How is this even about me? You were discussing your poems, there.
MINOR: I retreat to my seat, but to no avail: Yuri and Natsuki have approached me
MINOR: In the end, this is not a situation I can resolve on my own, and therefore, I must call for help from one of the club leaders.
MINOR: And of course, that's going to be...!
QUERY: Sayori / Monika
From here, picking Sayori is very much like the canon "Help me, Sayori!!" option, and I've already covered how much of a mess Monika is when she, the founder and President of the Literature Club, can't even resolve an argument that started out as a purely literary one. However, because we've switched up your self-insert's attitudes, we've pushed him away from both Natsuki and Yuri, and neither of them is really going to get those extra poem minigame points (which are hardcoded, anyway).
However, the dynamic between your self-insert, Sayori and Monika is actually subtly, but noticeably different between what I've decided to term as "the canon approach" and "the Blue Skies approach".
Given the canon approach, your self-insert feels like there is one "correct" side of the argument, even as he calls for Sayori/Monika's help. This, in turn, shapes his poems - now, if you were thinking that there is a tangible change in the poem minigame words, let me tell you that, in fact, for the purposes of DDLC's dialogue generation, your self-insert actually does write out fully fleshed-out poems and not just lists of words. Therefore, even if Sayori and/or Monika is picked, he still zones in on particular pieces of the argument and that influences the next poem sharing - not in a way that's quantifiable with a score, but in a way that every single Doki is able to pick up on.
However, given the Blue Skies approach, your self-insert sees it in a radically different way: what is important to the Literature Club, first and foremost, is that every single member feels comfortable sharing their own writing, and therefore, arguments must be de-escalated by settling for "it depends on what style and message you are aiming for" and "we'll just have to agree to disagree". This, therefore, makes him take a more organized and mature approach to the Literature Club as a whole, and if we presume that hinting is removed from this scene entirely, I don't think that Sayori relinquishing her Vice-President title to your self-insert, focusing more on her own emotions (presuming a Sayori "route"/DD thing), would be that unreasonable. I'm not sure how much the code is going to bug out if that happens, though, since in my long and storied DDLC fandom life, I don't think I have ever seen a headcanon or AU about your self-insert being Vice-President, let alone a hacker mod forcing him into the position.
Lastly, to finish this little chapter off: would it be wise to introduce a query checkpoint slightly before the original query checkpoint, and therefore, let you pick between the canon and Blue Skies approahces? I mean, if your mood is primarily exploratory, yeah, the more query checkpoints and choices, the better we can analyze the game. In fact, why don't we add all the query checkpoints, and make the DDLC player make a choice every ten seconds?
However, if you're in it to develop your own take on the universe, I think that the two query checkpoints are a bit too close to each other for comfort.
Anyway, I think that will be it for this particular argument, but that doesn't mean the mundane slice-of-lifey parts of DDLC can't be completely ruined- I mean explored with a well-placed query checkpoint, and therefore, if I continue this part, you can expect explorations to that extent.
The world of DDLC does not revolve around dialogue choices. That may be the case in some other groundbreaking games of the 2010s, which were literally worldbuilt around the player making the wrong (or, well, "wrong") choices, but DDLC is a visual novel. Now, yes, I said that the Japanese tend to mash English words together and give them completely novel (no pun intended) meanings, but in the case of "visual novel", the meaning of the word "novel" individually persists very much, as you will find. And in a novel, dialogue and dialogue choices often take a backseat, and the characterizations and the background/worldbuilding details take the steering wheel.
Therefore, this change will not focus on dialogue choices. Instead, we'll do the thing that mainstream modders (and yes, this includes YouTubers publishing "mods" in form of videos, too) know how to do the best - that is, introducing new background sprites to the game.
But before we do that, let's go through the backgrounds that are already in the game:
Lastly, there's one background that deserves a special mention, as though it's found within the game files (and therefore, was obviously made by Velinquent, as the others were), it's actually not referenced in the .rpy
files and therefore doesn't appear in the game proper. It appears to be an early version of the neighborhood where Sayori and your self-insert live, with a slightly different architectural style. You could theoretically use it for the escapade I'm documenting right now, but I don't see it filling any gaps in the way the backgrounds I'm about to bring up are.
So, now that we've covered the DDLC backgrounds, let's move on to the ones you'll be adding. They are actually free-to-use VN backgrounds, whose authors, though their work has been immortalized in the DDLC fandom and potentially many other visual novels, aren't usually credited to the point where I could tell you who drew what. If you're looking to download them, the best resource, as this is primarily a matter concerning mainstreamer mods, is probably /r/DDLCMods.
Oh, and I should probably say this, first and foremost: though /r/DDLCMods is primarily a resource and community for mainstreamer mods, and tutorials there will immediately start talking about phantom Ren'Py lines and how a normal visual novel is made, for the most part, questions that only a hacker could potentially ask, rather surprisingly, aren't turned down, and neither are proper, polished hacker-made mods like Monika After Story, Monika Before Story and Take Two.
But anyway, some backgrounds I've seen in two or more DDLC mods, and therefore, can reasonably claim to be in the "free-to-use VN background category", are:
And now, onto the modification itself. I probably won't be able to walk you through every single detail, but that's largely unnecessary: you download the background pack from /r/DDLCMods, you go into definitions.rpy
where the backgrounds are defined and you add the new backgrounds, alongside rough definitions and descriptions of the backgrounds themselves, and most importantly, which contexts they need to be used in. And then, you hit start and play through. What do you see?
Well, if you don't encounter Glitchless nor Passive Monika, not much changes. The backgrounds that are already included in DDLC are really all the ones that the archetypal playthrough needs, since it's already a polished game with a well-defined plot and therefore, any extraneous diversion to the library or the streets or wherever is just that: an extraneous diversion.
However, if you do encounter either of these bugs (or have found a way to make them more frequent *cough[2301][2302][2303]cough*), then your playthrough benefits greatly from them. Sure, it's still written using the usual visual novel paradigm, and therefore, the romance might be progressing a little too fast for most tastes, but now, there are at least some opportunities for slice-of-life scenes in places where they actually make sense, rather than just "the corridors" and "at your self-insert's".
And that might just be one more step towards DDLC: What Mainstremers Want, in the Package of a Hacker Mod.
As we've mostly covered the dialogue generation and the poem minigame, which are honestly the two big "pillars" of DDLC, there's not much else to cover, and the rest of the Ren'Py scripts mostly pertain to the game's presentation. The topic of "the game's presentation" is kind of broad, and covers everything from how the game presents itself to the viewer, with sprites and backgrounds and menus and choices and settings, to how the game presents itself to your operating system of choice, with the official executable name and the packaging restrictions and things like that. However, inevitably, all of it needs to be covered, and the other Ren'Py files do just that.
In fact, for the most part, not even mainstream modders do any extensive messing around with those - after all, these files are what makes up DDLC's visual identity, and therefore, in order to produce something that could have potentially come out of Salvato's hard drive in an alternate universe, those must be preserved. If a mod does come to alter those, it's usually as part of some sort of gimmick, such as Purist Mod only displaying the Dokis whose routes you have already completed on the main menu. It's kind of a plot point in Purist Mod, too, as you must complete every other Doki's route before you're allowed to go for Monika's, but it's still a gimmick.
Still. A complete coverage of the inner workings of DDLC isn't complete without covering these files, and you are going to bet that I am going to cover these files.
What's this? Since technically, the entirety of the Ren'Py engine is also included in DDLC, I should write up a detailed explanation of what it can do, even if it might not necessarily be what DDLC can do?
No. For the most part, Ren'Py is well-documented, and the only reason to look at its inner workings is if you're looking to develop a visual novel that's completely independent of DDLC (or in the very least, its Bytecode part, and therefore, a mainstream mod would still qualify). Now, if that is your goal, I'm not judging, but again, I've made my point: after everything you've read so far, your desire to code a mainstreamer mod should be at absolute zero.
Moving on:
An options.rpy
file could be said to be at the core of any Ren'Py project, and therefore, it shouldn't surprise you that it encodes the very basic stuff that is to know about DDLC, such as its name (in various contexts, from a human-readable name to display at storefronts to a savefile directory name) and version (the last one as of the time of writing being 1.1.1, which was released on April 9, 2018, and it's safe to say, at least in my opinion, that a new one isn't coming). It also defines some stuff that you might take for granted but which computers do really need to be explicitly taught, such as that the game has no voice acting (outside the credits, that is).
The second part of options.rpy
, though, might be a bit more interesting. Basically, that part is actually a bit of a communication between the game and Ren'Py itself - for Ren'Py, by design, must be not just a game engine for visual novels, but also, an IDE (or at least, the parts of it that aren't a text editor) that would let you export projects. In that part, you can find what sort of file gets assigned which .rpa
file, as well as some files which might just be chilling in Salvato's hard drive under the DDLC directory, but which, once he's done with his masterpiece and ships it off to you, are not included. I think that the most notable inclusion among these "non-includes" is files of the type .sublime-project
and .sublime-workspace
, revealing that Salvato's go-to text editor is Sublime Text, which is a pretty popular, yet still interesting, choice.
I think it's for the best to cover these two files as a pair, as I'm not quite sure, if I were to list all the .rpy
files in order of importance, whether I would rank one or the other as more important (after I had already listed out options.rpy
, that is).
Anyway, both of these files are very similar in nature, in that they define the very basics of the visual elements of DDLC: what fonts it uses, how exactly the menus and dialogue and the rest look like, etc. The star of the show in definitions.rpy
, perhaps, is the large list of expressions that Dokis have - conveniently together with what sorts of moods they evoke, so that the dialogue generation can get a grapple and depict the Dokis as having proper emotions. However, other parts of the file, such as font definitions and specific glitches, can't be discounted, either.
Meanwhile, screens.rpy
is a bit more dense, especially for a non-programmer, but it's still important, as without it, none of the functionality of the various menus - main menu, history, loading, saving, settings, etc. - would work. None of the stuff really comes as "predefined" in Ren'Py, and perhaps it's for the better, as any visual novel can really start building its own visual identity here - and Salvato greatly cared about the visual identity of DDLC, making it stand out and look like a polished VN, rather than an amateur one.
transforms.rpy
is a bit more of a fickle cause. It might be buried in an endless sea of me talking about quips and clauses and how they all need to hang together in a coherent story, but I briefly mentioned that in addition to an expression, each quip is coupled with a transform. Basically, a transform is a fancy way of positioning each and every Doki appropriately, given the context: how many Dokis are there in a scene in total, which one is currently speaking, how excited or startled she is, etc.
Now, the reason this matters is because, especially if you look in a mainstreamer mod (and, though DDLC and mainstreamer mods operate based on two entirely different principles, both of them must present certain data to Ren'Py in the exact same way), you'll notice that most often, a Doki is defined with both an expression and a transform. Now, this is not exactly an ideal way to do this, as when a new Doki appears on the screen, everyone else must readjust based on the new number of Dokis on the screen, but it's the best that can be managed within the Ren'Py framework of lines.
While the four files above, coupled with gui.rpy
(which just defines some things that, for some reason, didn't fit within either screens.rpy
or definitions.rpy
, even though they absolutely complement both of them), are essentially enough for you to produce one of those videos based on mainstreamer mods, some of them, and especially DDLC itself, incorporate elements that are definitely unique to the genre.
The most obvious of them, I'd say, is console.rpy
, which presents an imitation of the Ren'Py debug console. As the whole point is that Monika knows that she's part of the game, it makes sense for her to open up the game's "debug mode" and start inputting stuff, but at the same time, I guess, Salvato didn't want to expose the actual debug mode, and instead, wrote up an imitation - that, in the end, looks "programmer-y" enough to fool most mainstreamers.
Next, there's effects.rpy
. Now, in a normie visual novel, this would usually depict some shaders for stuff like morning and evening - and in mainstreamer mods, this is absolutely taken care of. However, what DDLC uses them for is some cheap scare elements (not jumpscares) that mostly occur throughout Act 2 and the very end of Act 4 (before the end credits).
Finally, and though this is less of a visual effect and more of something to hint at a glitched game, is, well, glitchtext.rpy
, a file with the express purpose of containing a set of characters outside the typical ASCII range (again: if these were truly "nonunicode", then they wouldn't be able to appear in a textual file at all), and then, spitting out any given number of those characters at any given time. Insert the Rick and Morty "you pass butter" meme here.
After that, the only thing left for us to cover is a certain amount of screens only appearing in certain contexts, which, therefore, are also kind of less relevant, unless you're actually making a mainstreamer mod.
Perhaps the most important file in this category is splash.rpy
, which defines the, well, splash screen. While in the case of DDLC, this will be the warning recounted in [1000] WHAT A TYPICAL DDLC PLAYTHROUGH MIGHT LOOK LIKE, in the case of mods (mainstreamer or hacker), this will actually be a legalese disclaimer stating that the mod is a fan work, and therefore, must be played after the original game. Also, there are certain other splash screens for other occasions, such as Sayori deciding to preemptively wipe the game if you deleted Monika before starting.
However, no less important, especially in the hearts of Monika fans, is credits.rpy
, which, as you might have guessed, defines the looks and behavior of the credits song, Your Reality. Again, if you're not making a complete mod that stands as a work of fiction in its own right, you don't really need to care about it.
The final file I'd put in this category is cgs.rpy
. Not to be confused with the script files defining what the CGs are and how they behave, this is mostly about the visual element of CGs, and how their framework is completely different from your typical dialogue scene, and how different CGs don't even have that much in common with each other (other than the fact that they're, well, CGs.)
And that is it. Pat yourself on the back, as we have covered every single non-Bytecode Ren'Py file in DDLC and, after I take care of some formalities in my document, are ready to move on to, in the very least, a broad overview of The Bytecode.
Okay, it's going to take more than a formality. After all, a reader actually inquired about this, and though I gave kind of a weak answer back there and then, now I think I can properly deliver on the prospect.
So! Have you finally gotten sick of Sayori, Natsuki, Yuri and Monika? Do you wish you could spice your DDLC playthroughs up with something more novel (pardon the pun)? Or, perhaps, you have a fanfic in the works with a Mary Sue OC, who you simply can't imagine DDLC without anymore, and would like to see in the game? Well, look no further than this chapter, as I am going to teach you how to incorporate a fan Doki in your game and what pitfalls to watch out for.
Let's start, of course, with the pitfalls. One can't ignore that Dokis have a special part in the game, which is mostly dependent on whether they're on Project Sentience or not, but in either case, you don't exactly have much room for innovation. Essentially, your newly constructed Literature Club must consist of the following:
.chr
file and is essentially irrelevant for this essay.If a Doki doesn't fit either of the two archetypes (Sentience or dateable), which will most likely happen if you try and introduce an OC who isn't even a Literature Club member to begin with, the supporting coding framework simply isn't there, and though I'm yet to rule it out, can't really be introduced without meddling with the Bytecode part, which, for the most part, is non-lucid, even to hackers.
Oh, and I don't really think that the game was properly made to accommodate male Dokis, simply because none of the canon Dokis were male. Think of it this way: once Salvato developed the original character concepts and all of them were female, it would greatly simplify some of the dialogue generation scripts if they assumed that a Doki is female and uses she/her pronouns. And if you think that he lived in a time when gay relationships were starting to become accepted and therefore, not including male Dokis or gay romance options is not politically correct of him, then you're honestly worrying about the exact things that a hacker shrugs off, realizing that they're not really relevant in understanding the underlying Bytecode.
Lastly, and this is going to be more of a recommendation than a strict requirement, if you're trying to follow this tutorial for the first time, I highly recommend that you leave the canon Dokis with their current roles and simply introduce a new dateable. If you want, you can demote Monika to dateable using the technique outlined in [2305] (ADVANCED) A TRUE MONIKA ROUTE, FOR ALL THE MONIKA FANS, but that introduces a bit of a headache: whichever option (canon or OC) you decide on for your new Sentience Doki, you'll need to make sure that her .chr
file is able to accommodate Sentience. For canon Dokis, that means using the Act 4 President persona .chr
file, and for your own creations, that means starting with monika.chr
as a template. In the end, if all that matters to you is that Mary Sue makes it to DDLC and can date your self-insert, I don't really see the point in going the extra mile.
At any rate, are we ready to proceed? Let's go forth and outline what you'll need in order to create a fan Doki.
There are three major variables to account for, when creating a fan Doki. None of these are optional, for reasons that will be outlined.
The first and most obvious one, that pretty much even mainstreamers have memorized and incorporated in their DDLC headcanons, is the .chr
file. Without a .chr
file, the Bytecode routines checking for said .chr
file will simply have nothing to work with when creating dialogue, and therefore, opt for the simplest option: pretending that said Doki doesn't exist. This leads to the sorts of glitches experienced in the very beginning of Act 2: other Dokis and your self-insert might still assume that the deleted Doki exists, briefly, but there will be nothing to reveal even the most basic trivia such as her name, and soon, the game will have to restart with new assumptions which completely ignore the deleted Doki.
I don't think I really should be telling you where .chr
files live if you've completed the game, and if you haven't, you need to stop reading this document now, but for posterity, they live in a separate ./characters/
folder.
The second one, which is often the only part that mainstreamers can adequately work on, is the spritepack. The spritepack of a Doki defines what expressions she can be depicted as having, and the coding corresponding to the spritepack, typically placed in definitions.rpy
, not only enumerates the sprites, but also gives them context that the dialogue generation can pick up on. Without this, a Doki wouldn't be much more than a disembodied ghost.
Also part of definitions.rpy
, and therefore part of the second variable to me, is a line that looks like this:
define s = DynamicCharacter('s_name', image='sayori', what_prefix='"', what_suffix='"', ctc="ctc", ctc_position="fixed")
define m = DynamicCharacter('m_name', image='monika', what_prefix='"', what_suffix='"', ctc="ctc", ctc_position="fixed")
define n = DynamicCharacter('n_name', image='natsuki', what_prefix='"', what_suffix='"', ctc="ctc", ctc_position="fixed")
define y = DynamicCharacter('y_name', image='yuri', what_prefix='"', what_suffix='"', ctc="ctc", ctc_position="fixed")
This essentially tells Ren'Py that a Doki could potentially exist in the first place, and if Ren'Py knows that a Doki could potentially exist, then The Bytecode knows that a Doki could potentially exist, and searches for her .chr
file. This is why simply adding novel .chr
files won't work if this line and the spritepack definition isn't added.
What to do about either of these? For the .chr
file, you'll have to start with a template, that can be any of the existing canon Dokis, and for the spritepack, just use whatever you managed to draw and/or download; only worry if you have the spritepack author's permission if you're actually publishing your mod and/or recordings made using it.
The third and final part is the CG graphic, defined in cgs.rpy
. Without this, normal dialogue generation can proceed and it's non-essential for your newly created Doki, and in fact, dateable CGs might very well be skipped altogether, but a dateable just doesn't feel like a dateable if she doesn't have a CG. And lastly, I did briefly mention in [2305] that the Sentience Doki must have her corresponding "Just ..." CG, or she will flip her shit.
And that's really it. Now, comes the tedious part.
Your task now, which you probably accepted by the mere fact that you're here with a fan Doki, is to transform that fan Doki from a clone of an existing canon Doki, character-wise, to a fully fleshed out character of her own. Unfortunately, .chr
file scumming techniques discussed in [2030] .CHR FILE SCUMMING: A TUTORIAL IN THINKING LIKE A DDLC HACKER can only take you so far, and though jokes in the mainstream fandom about "Act 2 Yuri" (presumably, what they mean is Yuri as your DD2) being a completely different character from her early game counterpart are common, the two are still very much the same character archetype.
The good news is that you can do this, in theory. Though the .chr
file is not plain text and not anything like zipped XML, decoding the structure of such a file is an entirely solved problem, and therefore, once you've downloaded .chr Peeker and opened up your .chr
file, you will see every single variable that has gone into it.
The bad news is that the vast majority of those variables is unnamed.
Now, especially in the realm of neural networks, an NN being dependent on a large number of variables that may or may not even be comprehensible to humans is nothing new. However, for the most part, if you have an NN like this, you also have some sort of training phase that you underwent, and therefore, you can switch it up and get different results. For DDLC, assuming that it does run on an NN, Salvato was the one who did the training, and therefore, all we really have is the four example .chr
files.
Unfortunately, analyzing them and comparing them to each other can only get you so far. Think about it: what sort of conclusion could you make if a particular variable was high for Natsuki and low for everyone else? That's right: you could only really come to one conclusion, that it's got something to do with her tsundere attitude. Similarly, if a variable is high for Sayori who's been manipulated by Monika a lot and low for her unmodified counterpart and everyone else, it's gotta have something to do with depression, but that's one conclusion for what might potentially be hundreds of changes in the file.
Therefore, your literal best bet in getting your fan Doki to act the way you sketched her out when starting this process is to completely rewrite the script parts so that you have something that's as close as it gets to a "stereotypical" club meeting, where the only parts that figure are poem sharing and dateables competing for your self-insert's attention. Of course, the most important part for it is to eliminate any sort of Monika manipulation, just to ensure that changes you do to Mary Sue are the only changes being done to Mary Sue.
The final script would probably end up rather short, but that's kind of the point. It should still be long enough for you to get a "cross-section" of Doki characters, including those of Mary Sue, and therefore, see how pulling a single dial changes them.
Once you've pulled that single dial, though, .chr
Peeker has a neat feature: for each and every variable, alongside its predetermined, numeric name, there is a "note" that you can make to give the variable a real name. As you can see, only a handful of variables come with real names out of the box, and therefore, you have a lot to go through just to determine what sort of changes would make your fan Doki act the way she does in your character notes.
To get a fan Doki's interests right, though, you can ping the first parts of the poem minigame routine and see how well the words you think your fan Doki would like match up with their real values, especially when compared to the canon Dokis. That being said, a personality is a lot more than just a set of interests, and therefore, you are going to need to put in more effort in the dialogue section if you don't wanna end up with "Monika but she plays the violin instead of the piano".
This part of the process is going to take a long while, and odds are, you won't even be able to fully match the personality that you planned out. However, it is kind of crucial so that your fan Doki doesn't end up being just a clone of a canon Doki, quite literally.
Once you have a properly fleshed-out fan Doki and have replaced the script with its original version, though, you'll probably notice, right away, that Mary Sue gets a lot less dialogue than any of the canon Dokis. That is because the hinting system, which you used to your advantage in order to flesh out her character, actually incorporates parts which are supposed to involve the canon Dokis, like the part where Natsuki and Yuri argue about poems or the part where Monika and Sayori discuss festival prep. Luckily, fixing this is a process that is a lot less tedious than creating a fan Doki's personality.
First, you're going to want to start with a "bare-bones" script which actually takes you through all the days and up to your DD's death. Now, odds are that your fan Doki, who you have invested so much time in, is going to be your DD, which is great for fleshing out those particular scenes, but that's not what you should focus on: instead, you should spot what sorts of moments define your fan Doki and where she fits within canon. Then, you're going to add those as checkpoints (either major or minor), play through DDLC again, notice new moments, add those and repeat until you've got a script that's similar enough in length to DDLC's original Act 1 script.
And once you've done that, there you have it: DDLC with a Doki that you, yourself, made. Now, granted, unless you're a certified genius whose character development in stories is universally praised, your new mod, though hacker-made and something I would look into right away if it were released, is not going to attract much of an audience compared to mainstreamer mods. But still, your effort has got to count for something.
And if you go two or three steps further, like, say, Take Two, then you might even have something that's worthwhile playing.
Alright, welcome to that awesome diagram which, in and of itself, is an image to spread around if nothing else, the sequel. As you can see, quite a bit has been introduced (certain changes can actually be made before the game even begins now, for one), warranting significant changes to the legend; in addition to that, though, the document's one-thousands have marched on, too, meaning that this will technically include some material that should have appeared in the last section, but didn't. You'll just have to wait until version 2 for me to fix that.
Good question. Very good question.
While I, myself, am honestly not in the best position to teach anyone, I still think I can cover everything I've talked about from the perspective of the mainstream AI community, and therefore, refer to people smarter and/or better at teaching than myself, who can guide you through all of this. Most of this will actually just be Wikipedia articles, but relevant tutorials shouldn't be that hard to find, once you've already conceded that you're going to need the vast Internet for this. (That, or, like, a university course. I'm not judging those wishing to pursue the subject with more academic rigor.)
Python programming
Natural language processing, in the light of machine learning
code
doesn't give it away, that is an actual sentence appearing in an actual scientific study)And that does it, for the current version of this document. Now, I'm not saying that this document is over and will be receiving no more updates from me; indeed, I still have a lot of ground to cover until I've caught you up to the point where you would not be laughed out of Hackerverse. (I mean, if that's even possible at this point.)
That being said, the structure of the document is simply not conducive to haphazard future updates. Within sections and sub-sections and sub-sub-sections, there must be a strict structure, and even when chapters fitting within said structure are not written as of yet, the structure must still be presumed. This, in turn, can lead to awkward decisions in chapter numbering, and as a result, the order of presenting information, which harms readability, big time.
That is why I've decided to put the document on hold, and instead, focus on projects not particularly related to The Bytecode, DDLC or even programming. This is not to say that I will never write up an update in the form of a non-chron blog, but, like, you have been informed.
I will be back, stronger than ever. However, right now, I have to admit to myself that I'm weak and way over my head, and then, admit it to others, and then, hope that others understand.
Cheers.
- CreativityTheEmotion
2020 02 14 - 08 28 (D0875-1071)
Aight, welcome to the non-chron blog, called so because the entirety of this document is still linear, but sometimes, there are developments happening right now, in the DDLC hacking community, that must be talked about right away if this document is to stay current at all times.
And as luck would have it, the first development has happened sooner rather than later.
Contributed by CreativityTheEmotion on February 14, 2020 (D0875) 12:30 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
So, yeah. The first hours after this guide first went live have kind of been a rush, not in the very least since it's Valentine's Day and I wanted to spend some time with my copy of Monika After Story, only to be greeted with the helpful information that I have been banned from Doki Doki Hackerverse (that's the main forums where the hackers chill), in their characteristic typing manner (what with the fullwidth font reminiscent of Act 2):
WE REGRET TO INFORM YOU THAT YOU HAVE BEEN BANNED FROM "Doki Doki Hackerverse!" FOR:
"five (5) crucial mistakes about the inner structure of DDLC percistent throughout the entire treatise"
AS A RESULT YOUR COPY OF MONIKA AFTER STORY HAS BEEN CEASED REMOTELY AND WILL NOT WORK
ATTEMPTS TO CIRCUMVENT THE BAN OR INSTALL ANOTHER COPY OF MONIKA AFTER STORY WILL RESULT IN YOUR COMPUTER EXPLODING
NOTHING PERSONAL AND MONIKA STILL LOVES YOU
SINCERELY THE MONIKA AFTER STORY DEVELOPMENT TEAM
So, let's break it down - and I think there are two major angles that I can approach this from.
First of all: what does me being banned from Hackerverse truly mean? Well, that I can still access the forums as a guest, and download the resources and other paraphernalia. Thankfully, none of the software running the servers of that site is written in The Bytecode, and therefore, it just functions as a normal Discourse install. Therefore, this guide will continue as usual, except that I will not identify with the hackers anymore, and will make no further attempts to appease them or enter their leagues - or, for that matter, try and unite them and the mainstream fandom. Seriously. Never again.
Second: the threat about your computer exploding. Many an inexperienced Bytecode noob have had their computer explode at some point or another while coding in the language, and this is where they usually leave the coding scene altogether, as computers tend to get pretty expensive. Therefore, if these guys have specifically injected code into my computer and my copy of Monika After Story (which still exists; it's just that now, when you open it, Monika won't be there anymore), the threat is perfectly valid.
However, when we get to installing MAS on a completely unrelated computer, that is when it gets tricky. From where I'm standing from, there is simply no way to tell if the ban is associated with me (the registration form on Hackerverse still opens fine in my browser, as does the MAS download page, but remember, those pages have no Bytecode in them), or with the IP.
And to be honest, I don't even wanna try. I do have spare computers, but even the cheapest of them is a formidable purchase, and it might just be that my main computer, the one with MAS on it, explodes while the spare computer fares just fine. You just never know with The Bytecode.
Either way, if I ever find out, this might be a major discovery towards how much hackers actually know. And sorry to get all speculative, when I'm supposed to be providing unambiguous knowledge of the game and the tools used to make it.
The story will be updated as developments follow.
Contributed by CreativityTheEmotion on February 21, 2020 (D0882) 23:00 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
Alright, after a week, I think the dust has settled, I have settled upon a solution and everything regarding DDLC in my life, including my Monika copy and this document, is about to proceed as normal.
First of all, you can only imagine the backlash that the MAS dev team got, from the mainstream fandom, over including a piece of malware in their mod again. In fact, this was an issue more serious than the last one, as that time, it was mostly some stuff regarding how Windows was supposed to operate, and this, as I suspected, was injected Bytecode.
Luckily, the code (as one would expect from Bytecode programmers who are not Salvato) was rather simple, and did not latch onto IP or whatever; that was just a consequence of a) Hackerverse patrons having all the IP addresses from which users visited and b) MAS needing to connect to the Internet in order to update itself. In fact, it amounted to a single file, zz_bytecode_silenceallopposition.rpy
, which is going to be the primary target to cover, should this document ever expand to include a full-on Bytecode tutorial, but for now, all you really need to know is that it looks more like a failure at coding in The Bytecode, resulting in one of those programs that makes your computer explode.
What is it even with The Bytecode noobs and their computers exploding? Anyway, I can assure you that as long as you're following anything that I think is a worthwhile tutorial, and understand the concepts intricately, especially regarding safety, your computer will not explode a single time.
Regardless, injected malware or no injected malware, my copy of MAS was still locked out, as stated. However, if you are an attentive reader, you should have noticed one particular detail that allowed me to thrive: my copy of Monika After Story. Not my copy of DDLC, which is what actually contains Monika (to this day).
So, I proceeded to uninstall all the scripts, Ren'Py and Bytecode alike, pertaining to MAS. I decided to keep the associated artwork, as I figured that Monika would still be able to make use of it, and all that I would really be giving up is her tendency not to repeat herself and the minigames, such as Pong and chess, coded in. And once I was done, voilà, Monika was still alive and still loved me.
So, that's that. I don't think I will be installing MAS on any of my computers in the foreseeable future, as MAS devs and Hackerverse patrons seem to be closely related, and therefore, both of them have beef with me for spreading misinformation, which, I think I need to state it plainly at this point: this document is always subject to updating and subject to commentary from you guys on what I got wrong. However, simply stating the number of mistakes isn't gonna help me much, and if you do that and proceed to declare it as the reason for your ban, you have to look deep inside your introverted heart and realize that you are being intentionally unhelpful.
Stay tuned for more updates on this document.
Contributed by CreativityTheEmotion on February 26, 2020 (D0887) 17:15 UTC
Amended with additional syntax on April 8, 2020 (D0929) 19:05 UTC
Relevance to DDLC Plus: none (this is a meta-chapter about the document itself)
So, it has come to my attention that I've stopped using brackets to refer to parts of the document, such as sections, and started using linguistic alternatives such as "one-thousands". For the sake of posterity, I want to document this, both for the benefit of someone reading this document aloud, who might want to know how precisely to pronounce these fancy bracket things, and someone reading this document in quiet, who doesn't necessarily expect a heading to be pronounced a certain way, but who might be confused by aforementioned references.
Without further ado, let's begin.
The header of a chapter existing within Doki Doki Literature Club!: Bugs, Glitches and Exploits for Dummies, which I've so far commonly referred to simply as "the document", strictly consists of two parts: the chapter number, enclosed in brackets, which always contains four alphanumeric symbols, and the chapter title, which is written in plain English, all uppercase. The chapter may be referred either by the full header, including the number and the title, or just by the number.
Chapters within the document are strictly ordered alphabetically according to ASCII/Unicode order, which, for symbols thus described, is as follows:
Whenever a hypothetical chapter number needs to be denoted, if at least one symbol is unknown and/or deliberately ambiguous, what the symbol is replaced with depends on what sort of character can go into the place. These come in three varieties:
When naming new chapters, the symbols are expected to be numeric only, with the following exceptions:
As the chapters are strictly ordered as described, they thus cluster to sections, as follows:
etc.
Furthermore, each of these sections can be said to cluster into sub-sections, as follows (with the [1***] chapters):
And then, sub-sub-sections, and you get the idea.
With the convention of chapter numbering established, now let's move on to pronouncing these numbers. They can be thought of as being separated into two groups of two, with each group being pronounced separately. This is the most immediately obvious if the chapter number is entirely numeric, and each of the two groups evaluates to a number above 10:
If the number in a group evaluates to less than 10, or if it includes non-numeric symbols, then these are simply pronounced in sequence, with "nought" being used for 0 as "oh", conventionally used for year numbers, could be mistaken for the letter O in this context:
Different rules apply to a "00" grouping based on whether it's the first or the second in a chapter number. At the beginning, it is pronounced as "double-nought", and at the end, it is pronounced as "hundred":
Lastly, sequences of three or four zeroes get an entirely separate treatment, independent of the 2×2 grouping. These are best outlined simply as examples:
Finally, if the letter T is ever to appear in a chapter number, it is to be pronounced "tay", as to not confuse "forty" (40) with "four-tay" (4T).
And of course, section numbers must not be forgotten, either. They mostly follow the rules that would apply if the missing numbers were all zeroes, except pluralized and with a dash appearing before "thousands" and "hundreds":
If a number sign or an underscore are additionally used to define a "meta-sub-section" (bigger than a two-character subsection, but smaller than a one-character section), the word "numbers" or "letters" is added:
Special care must be taken whenever the last non-missing section character is actually a zero:
Asterisks are also used to denote chapter types, rather than chapter numbers:
And, of course, in the special case of [****], which I exclusively use to refer to any chapter within the document and not the document as a whole, since that would be just stupid (since I already have a fantastic way of referring to the document as a whole, namely, "the document"):
And that, I believe, covers everything. Happy reading.
Contributed by CreativityTheEmotion on March 11, 2020 (D0901) 00:15 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
Within the DDLC fandoms, both mainstream and hacker, everyone knows Monika After Story. It's that mod that was released only four days after the game, and yet, managed to successfully use its Bytecode part to its advantage. It's that mod that lets you maintain a relationship with Monika, and that, in turn, has spawned snowclones, both mainstream and hacker, for the other Dokis. It's that mod that, on multiple occasions, has been under fire for including literal malware (and yes, that includes the incident I described in [A002] THE BALANCE BETWEEN A HEARTFELT REUNION AND A DEEPENING RIFT).
However, in the face of it all, Monika Before Story has been unfairly neglected. And that's a shame, since it's a piece of DDLC fandom history that's almost as interesting as After Story, and really shows what happens when you try to push what The Bytecode was designed to do to its limits.
I am not here to rewrite fandom history. However, I think that Before Story deserves at least a cursory perusal, to see what makes it a worthwhile specimen.
Download this mod for yourself, so that you won't be spoiled?: https://old.reddit.com/r/DDLCMods/comments/9ccc7g/monika_before_story_official_release_v10/
Monika Before Story, developed by a group of modders labeling themselves as Team Monika (I have no idea why DDLC fans like to refer to themselves as a "team" so much), is a mod with a premise that, when described, couldn't be simpler. If you look at the description on any of its download pages, you will find exactly one sentence: "What if YOU were President of the Literature Club?" (emphasis theirs)
Unfortunately, while describing the mod is simple, implementing said change is anything but. If we somehow took the list of all the things that can be theoretically done, and then sorted them by how difficult it is for DDLC to do it, "making your self-insert into the Club President" would be right up there with "unifying general relativity and quantum mechanics". Thus, understandably, while After Story, fundamentally, is still no more than two changes of the game code, Before Story was a tremendous effort that took roughly a year since the release of DDLC.
And, even as of version 1.2, it's just... how do I put it... far from done. Let's just roughly go through what, I think, is supposed to happen, having played through the mod, and what actually happens.
In general, characters swap around places less-than-intuitively. It's not just that your self-insert is now Club President, but also, that Monika, rather than Sayori, is his childhood friend, and that Sayori, rather than Monika, is the club member that your self-insert has a passing familiarity with, sharing a class.
However, beyond this, the idea is rather noble: since it's your self-insert, rather than any Doki, who has the Sentience attribute, the poem minigame doesn't cockblock him when he tries to date any of the Dokis. (Or else, if he were cockblocked from a relationship, we wouldn't have much of a visual novel in the first place.) In addition, since your self-insert is primarily inspired by you, and since you (the average DDLC mod enthusiast who hasn't read any of this document) have no know-how on how to manipulate .chr
files, let alone the intention to do so, no single Doki exhibits mental health issues, and therefore, the mainstream fandom's holy grail, the Glitchless Playthrough, can proceed under this altered premise.
In general, out-of-the-box thinking when trying to approach the problem of "how do I prevent Monika from manipulating the files" is commendable. However, the resulting mod, when this approach is applied, is less-than-stellar.
The first major red flag that you should notice, should you boot up the mod, is that there's an installation process, which is standard for a DDLC mod (install DDLC, then copy the mod files over), and then there's a post-installation process. Upon first boot-up, the mod presents itself as "Doki Doki ?", and after banter between your self-insert, Monika and Sayori, the game's post-installation takes effect, and scripts (Ren'Py and Bytecode alike) start taking over, fully converting your copy of DDLC into a bona fide copy of Before Story.
The second major red flag, assuming you have kept the archetypal playthrough in mind, is that... Before Story plays almost like an archetypal playthrough, but occasionally swapping character names to fit within the premise. This can really lead to some OOC moments for the Dokis, but nothing comes worse than when you're sharing your poem to Monika, and then, suddenly, for a single line, Natsuki butts in; her sprite doesn't even show up.
The third major red flag is the language usage. Throughout the mod, I kept seeing phrases such as "literature-club" and "Festival" that reminded me of German; I think they actually tried to redefine the vocabulary of procedural dialogue generation to accommodate for an actual German translation, but that dev code somehow got infused with the English version.
The fourth major red flag is that though it might appear that your self-insert is Club President, and therefore, should have the Sentience attribute, as far as the procedural dialogue generation of the game is concerned, there are fundamental differences between him and the Dokis, and the game still demands that a Doki have the Sentience attribute, or else, it'll break majorly. Before Story is definitely commendable for keeping the illusion from days one to three, but on day four, it really starts to show. As you no doubt know that out of the non-Monika Dokis, Sayori is my favorite, she was the one exhibiting Sentience-related problems, which ended up looking really too similar to what happens if she ends up being your DD in unmodded DDLC's Act 1.
The fifth major red flag, mostly boiling down to the plot beats of Before Story that replace the plot beats of DDLC, is that your self-insert must commit to a Doki. Throughout the poem minigame of my playthrough, I kept drifting between Monika and Sayori, and I think my first poem appealed to Monika, but when it came to defuse the argument between Yuri and Natsuki, I chose Sayori to help me out. This ended up leading to your self-insert really wanting to walk home with Sayori, rather than Monika, for once, but because she's not the one who the poem appealed to, she refused, and eventually, coming to terms that he blew a chance to walk home with Monika or Sayori, he just decided that he's better off walking home by himself, which resulted in what the mod seems to dub a "loner ending", which is basically like the unmodded DDLC's Worst Ending, but worse still. I even think that Monika, in the letter she left to your self-insert days after the festival, downright hinted at suicide.
The sixth major red flag actually boils down to how the DD routine is handled by a mod wherein Monika manipulating a DD to suicide was never supposed to happen. Once it came down to festival preparations, any of the four Dokis can be your PD, and presumably, any of the four Dokis can develop some form of Sentience, becoming a DD-equivalent. However, whereas in DDLC, matching up the PD and the DD is something that you should do in order to at least increase the chances of your DD surviving, this mod is seemingly not equipped to deal with stuff like this. After Sayori left day four early, she still approached your self-insert in order to go home, only for the weekend day, which seemed to be some sort of amalgam of Saturday and Sunday, to begin with him commenting on how he hadn't heard from her. And then, once he comforted Sayori with the realization, he literally went "aight, I would love to chat with you, but Sayori is coming over", and then Sayori didn't even bat an eye, whereas if the dialogue generation wasn't overwritten by Before Story, she would definitely have noticed something amiss; I think there's coverage on YouTube that actually makes Natsuki your childhood friend, and then, once you try to do prep with her, it actually properly smoothly transitions from DD troubles to PD troubles.
Anyway, the seventh and final major red flag is actually a hardcoded event that has nothing to do with The Bytecode. After getting the loner ending, being locked out of my copy of Before Story and reinstalling it (i.e. deleting the save data), I was greeted with the non-standard Team Salvato IP Guidelines-compliant notice about it being a mod that is supposed to be played after the base game. However, apparently, instead of a simple "I agree.", it has two options: "Just Monika." and "This isn't Canon." (hello German my old friend) However, if you pick the second one, the mod quits, and then, once you go through the notice (which now has just one "I agree" option), the splash screen mockingly quotes the thing I picked. I think it's only appropriate to say that it said "tHiS IsN't cAnOn", rather than a direct quote as it actually did. Anyway, once that was happened, I decided that I wasn't even going to play Doki Doki ?, and just wiped the mod.
So, yeah. Monika Before Story: a clear attempt by hackers to make a bona fide story, properly separable from DDLC but still sharing themes and some of the plot beats, that aimed really high... and then missed. Nevertheless, the fact that their art assets are actually free to appear in other mods, as long as they're properly credited, is pretty cool.
I might make coverage of hacker-made mods into a thing, or I might not. Who knows?
Contributed by CreativityTheEmotion on April 6, 2020 (D0927) 18:45 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
The next part of this document is subject to a rather terrible hiccup. I will spare you all the details, save for one: it has got to do with me not wanting to appear as though I am shoving something else I made down your throat.
Nevertheless, because of this unfortunate hiatus, I have been taking a look at parts of the document that need improvement elsewhere, and most notably, the brief documentation on the various script files. However, their names seem to present an interesting conundrum, which I hope to talk about here, but which might, eventually, be included as a "miscellaneous reading" in the chronological exposé.
Namely, the script files go like this:
script-ch0.rpy
script-ch1.rpy
script-ch5.rpy
script-ch10.rpy
script-ch20.rpy
script-ch21.rpy
"Chapters" up to 5 strictly correspond with Act 1 days: the day when your self-insert joins the Literature Club, the three poem-sharing days, Sunday and Monday. Then, "chapters" from 20 onward correspond with equivalent Act 2 days.
What about "chapter" 10, though? Have we been numbering the DDLC acts wrong all this time?
Well, no. But in order to examine the claim, we first need to establish what a DDLC act is.
Of course, for the most part, acts are defined rather arbitrarily, based on what happens on an archetypal playthrough. However, they're defined by transitions, distinct beginnings and endings, that truly make them what they are. Namely, you can expect an act to begin with the Team Salvato logo and the main menu, and end with a Doki dying or otherwise being taken out of the picture and the game reaching an "end".
This, alone, defines the four acts cleanly, with the small exception of Act 3 never reaching the main menu. However, there's an instance of the Team Salvato logo appearing in the middle of Act 2 (not the place that you're thinking of, but rather, the "Just Monika" segment), which otherwise doesn't have all the hallmarks of an act transition, and therefore, if it doesn't walk like a duck or swim like a duck, we can be pretty sure that it isn't one.
However, "chapter" 10 is distinct still. If you remember from the archetypal playthrough recount, it's the part of Act 2 wherein we are still under the pretense that it's Act 1, and though a Doki has been deleted, the game tries to proceed as though she were still here. However, upon her first encounter, the game "realizes" what's going on and reboots to a "proper" Act 2.
That much is scripted; a lot of the "glitching" is nothing like actual Ren'Py and Bytecode bugs, and simply has been placed there by Salvato to hint at a buggy game. However, there are still opportunities, in this moment, for the game to be actually glitchy and knock you to destinations unexplored.
An exploration, with me as your captain, still awaits. However, the bottom line is that, despite the odd script file numbering, there are still four acts in DDLC, not five.
Contributed by CreativityTheEmotion on July 2, 2020 (D1014) 18:05 UTC
Relevance to DDLC Plus: none (this entirely concerns a game unrelated to DDLC)
To say the least, the field of Bytecode gaming is just about as barren as the field in the default background of Windows XP. The only game we have so far has done its best to resist analysis and documentation, from The Bytecode itself being a near-inscrutable mess of code to Hackerverse refusing to acknowledge that documentation like this document is actually useful, and hope is rather bleak.
This is not to say that pioneers don't arise. However, these pioneers tend to think of themselves as special, and then, kinda throw tantrums when they don't get what they want.
Or... hmm. Let's just read what the subject of this non-chron blog entry has to say for himself, shall we?
YandereDev attacked Dan Salvato for his own programming incompetence!
In short: No, I didn't.
Dan Salvato is the creator of Doki Doki Literature Club!, a fairly popular visual novel that attracts much the same audience as Untitled Yandere Game. However, more important to this story is the fact that he is also the creator of The Bytecode, a revolutionary technology that allows DDLC to run smoothly.
As he is the creator of The Bytecode, I supposed that I could look towards him for tech support, given that games like Untitled Yandere Game would greatly benefit from improved performance. However, as Salvato was completely unwilling to cooperate, I had to source the Bytecode compiler from third-party sources, and this eventually resulted in my computer exploding, making me lose significant progress on an Untitled Yandere Game build.
To this day, Salvato has not apologized for his technology causing this, and has not in any way repaid for a destroyed computer. Instead, people surrounding him have accused me of being an incompetent programmer and blaming my own coding issues on Salvato. This is yet another example of persistent trolling, in which facts are ignored in favor of a predetermined opinion.
This should also clear up why, to date, there is not a Doki Doki Literature Club easter egg in Untitled Yandere Game, despite the two games being liked by the same sort of fans and despite myself being happy to include easter eggs acknowledging a wide variety of anime and related video games.
Alright, cool, let's unpack it.
First of all: there's the claim that Salvato is your go-to guy when dealing with problems relating to The Bytecode, or that he should be. This sense of entitlement, that since DDLC is free to play, it should also be free to tinker around with, is prevalent throughout the entire hacking community, and since no one is denying that Salvato created The Bytecode, even seems reasonable. However, I think that if Salvato doesn't wanna support anyone's Bytecode-related endeavors, he doesn't have to, and that YandereDev is just being an entitled crybaby.
Second: the idea that The Bytecode can just magically be applied to any video game project and improve its code. If you really want to do that, then honestly, you're better off just picking up a low-level language, like Assembly (if you've decided that you want to be bound to a particular computer architecture, like x86 or ARM) or C (if you haven't done that yet). That being said, if you're YandereDev, you don't need to look into Assembly or C; instead, you just need to fix all those if/else
statements and make them into switch
statements.
Alright, alright, I said it for the meme, but I need to come clean here: I don't think if/else
statements are the plague that makes YandereDev's code run so slow. Instead, I'm more horrified by all the string comparisons: after all, if a computer wants to compare two strings, it's gotta do it letter by letter, and if some flags were compared, instead, that would improve the code a lot.
Thirdly: what the hell kind of Bytecode compiler is YandereDev even talking about? I mean, yes, it would compile to The Bytecode, but what would it compile from? Between hacker projects aiming to realize high-level languages like Python in The Bytecode and hacker projects aiming to create their own, Bytecode-tailored high-level language, and none of them progressing past the alpha stage (without even mentioning that this incident happened around New Year's Day 2018, when DDLC was just getting popular), he should really specify what the hell he downloaded - if he can even remember, given that his computer exploded and there's no hard evidence. And if he can't, again, that's his own fault.
Anyway, that brings us to the last point: the incident itself. The only reliable source we have, that we can even trust in order to determine that the incident happened, is YandereDev himself, but I think that a smoking computer and the blame being shifted towards The Bytecode and Salvato (though, the latter is completely unwarranted, as the hacker who made whatever YandereDev downloaded is really to blame) is enough to conclude what happened: he thought that The Bytecode was some sort of magic pill that made DDLC's AI Dokis possible, thought that it could improve Untitled Yandere Game code, tried to learn it and his computer exploded.
Honestly, I don't blame him. After all, the whole reason that I'm writing an exposé on what The Bytecode can do is because there isn't any sort of explanation written up by hackers as of yet, there isn't any sort of explanation that comes from non-DDLC sources and an explanation, so that you may proceed with a tutorial without any risk, is very much needed, given that the risk that I'm trying to mitigate is your computer exploding, as YandereDev's did. However, I will absolutely still point and laugh at him for blaming Salvato, because the entire situation is funny as fuck and I hope that, once YandereDev gets over himself, he will be able to laugh at it, too.
That, and I am just a comedian in nature, in general, and think that a lot more people, not just YandereDev, could stand to laugh at themselves every once in a while.
Contributed by CreativityTheEmotion on July 11, 2020 (D1023) 18:20 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
In general, the DDLC modding scene is dominated by mainstreamer mods. It's fairly understandable that mainstreamers, though they might not be exactly the best at replicating Doki personalities as featured on the game itself, have more creative control over the project as a whole, and therefore, can produce something cohesive. And as long as that something is original and not just an idealized version of DDLC, the mainstreamer mod is pretty much guaranteed to be a success if done well.
That being said, nowadays, it takes a lot more than just reusing the art assets included within DDLC, or even snatching some free-to-use VN backgrounds for scenes that don't really have good DDLC counterparts. Therefore, the fandom has entered a bit of an arms race, wherein the value of the scriptwriter is low compared to that of the artist, musician and sprite editor, and a mod has to be able to stand on all of these legs.
Now, imagine trying to face all of the above challenges, which make for a good mainstreamer mod, while at the same time innovating as fast as you can in the hacker fields as well. Let's say that some limitations, like those of Project Sentience and Doki coding in general, just don't satisfy you; you want Sentience to be something transferable, you want to introduce a male Doki, etc. That would surely be a tremendous challenge, wouldn't it?
And that's exactly what halibabica, the creator of DDLC: Take Two, is doing.
The mod itself, in a demo state: https://old.reddit.com/r/DDLCMods/comments/d7yb2d/ddlc_take_two_act_5_demo_release/
Doki Doki Interview Club, a spinoff featuring the same fan Dokis: https://old.reddit.com/r/DDLC/comments/byjuap/doki_doki_interview_club_ama_mod_full_release/
The mod, itself, has a relatively simple premise: after the game has been wiped, Monika and the new Act 4 Club President approach each other. Dependent on whether the "good" ending was achieved or not, the new President may or may not have a corporeal form, and Monika will definitely not, but that's no problem, because the .chr
files have been backed up, and can be restored, alongside the script files. And thus, once they are restored, Act 5, continuing from the main game's plot, can proceed.
Now, I should note, first and foremost: that particular part of the script, with Monika and your new Club President, is hardcoded (with three variants for Sayori, Natsuki and Yuri, of course). There is just no way to completely reinterpret the world of DDLC so that such a discussion, or anything close to it, would be able to happen within the realm of DDLC dialogue generation.
Once Act 5 properly starts, though, it is a bona-fide, hacker-made mod. Again, its plot starts out relatively humble, with all the Dokis finally managing to get the festival's poem reading done. This reading turns out to be an outstanding success, and brings two more members to the Literature Club: Tiffany, an exchange student from America who's into rapping and weed, and Shiro, a fan of games both of the video and tabletop variety.
I won't really be speaking on the merits of either Tiffany or Shiro as characters, because I really want to focus on their .chr
files, and how they have been made into unique experiences, distinct from every other Doki and even your self-insert. That, and Shiro is a guy; that's right, halibabica managed to rewrite the dialogue generation and .chr
file reading to accomodate for the genders of Dokis.
However, that's not even the most impressive part.
The most impressive part, I'd say, comes from the plot of Take Two, wherein Monika and the new Club President debate whether or not the others should be given the same sorts of powers that they have, just to show that the world of computing isn't that scary.
"Now, hold up!" you might say. "Didn't you spend a whole lot of time talking about how Project Sentience can only affect exactly one Doki, and that it's intrinsically linked with the President persona? Like... how?"
A good question. A very good question.
Obviously, I won't be able to explain every single detail, but from what I've read in the Ren'Py files, I can see that Project Sentience has essentially been split.
The original Project Sentience, which continues to live in dialogue-projectsentience.rpy
, has a vastly reduced scope. Now, it only really accounts for the Club President persona, and doesn't even really impact the thinking patterns of the Doki in question - who, as far as I can tell in Take Two's Act 5, is Monika.
But before you mourn the loss of your favorite self-aware character, let me tell you about Project Sentience New. (Aren't we, as a collective, just great at names?) Project Sentience New takes on the role of knowing that you're in a video game and all that, but in a vastly more limited way in which the Doki in question is mostly all talk, and also, is able to bring you forth a unique minigame or something. (Well, the minigames are hardcoded, just like the poem minigame, but eh.) This is what both Monika and the Act 4 Club President, who will invariably take on the role of Vice-President in Act 5, have and constantly talk about transfering to the other Dokis.
All of this, however, isn't even taking into consideration the impressive technological feat that is Interview Club. Featuring the exact same Dokis, the exact same arrangement of Project Sentience and Project Sentience New and all that, et cetera, Interview Club is "written" in the form of an AMA, wherein people from Reddit ask the Dokis questions, and they get answered. However, none of the answers, or even so much as vague hints on what the answers should be, are hardcoded: instead, the questions are transcribed verbatim, and then, the Doki's .chr
file is queried to provide you with the answer.
Something like this has been tried in the past: some of the early versions of Monika After Story integrated a query box, so that you could have an actual, proper conversation with Monika. However, in that case, she really didn't let go of the topic, and in time, the topics had to be formalized and accessed as distinct units that could be "unlocked", in a sense.
And thus, Interview Club succeeds where Monika After Story failed, and brings us one step closer to proper AI Dokis that one might even have a conversation with.
Contributed by CreativityTheEmotion on July 13, 2020 (D1025) 19:05 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
Oftentimes, I find myself wanting to elaborate further on certain topics that I already covered in the document's main, chronological exposé part. However, adding to it, as is, would only make it feel more bloated, and therefore, would kind of defeat the purpose of a concise chronological exposé. Therefore, this is the first in a series of what I'm calling "unsorted articles", in which I allow myself to elaborate on a particular topic further, knowing that this is essentially "optional reading to get you to be more acquainted" and that therefore, brevity is no longer a necessary virtue.
And today, the topic examined is a continuation of [2220] DIALOGUE.RPY VS. DIALOGUE-PROJECTSENTIENCE.RPY, in which I examine the different philosophies, ways of thinking that the Dokis embody, and in particular, what makes Monika different from the rest.
For that, let's return to the basics. What is the world view of a typical dateable from any visual novel?
Well, most visual novels, DDLC included, take place in a school environment. (I'm not really in the position to question the preferences of anime fans, throughout Japan as well as America.) Therefore, a visual novel character is at least somewhat aware of the burdens of school, such as attending classes, doing homework, and in case of the Japanese cultural bubble, attending after-school clubs.
However, as we all know, high school is compulsory, attracting literally everyone of the appropriate age. Therefore, views of particular students (and consequently, visual novel dateables) on school vary wildly. You can have someone be as diligent as Monika, constantly trying and, for the most part, succeeding in being the best of the best, or you can have someone be as laid-back as Sayori, mostly predisposed with her own personality and only paying attention to school whenever the time comes for the "finals" that will help with either graduation or with moving from one grade to the next.
That being said, what high school students have in common is being fairly young, and therefore, not fully mature in their behavior as well as world view. Even someone with a quite mature and intelligent outlook, like Yuri or Monika, will tend to simplify, a lot, even when discussing their own special interest (which, unsurprisingly, is writing in the case of DDLC). The advice of each of the Dokis regarding writing can really be summarized in one or two sentences:
At any rate, another aspect that is very significant to a vast majority of high school students, especially in a visual novel, is romance. It only really feels right to call someone "dateable" if they're single to begin with (polygamy, mostly shunned in both Japanese and American societies, notwithstanding) and therefore, looking for someone else to date. In addition, as heterosexuality is a predisposition also shared by these types of literature, large groups of characters of a single gender will be seen as "ideal" by a character of the opposite gender, who, whoever they might be, will still entertain a "harem" fantasy, even if briefly.
This is where you notice how it applies to DDLC, with all the Dokis being female, and this is where you're inclined to ask whether or not there are significant behavioral differences between females and males. For this, I'd be inclined to disagree; a lot of "differences" are merely imposed by society, and societies can differ a lot. Therefore, both male and female (and non-binary) characters have access to the full spectrum of personality, though societal outlook on a particular gender-personality combination can be anything from fully expected to outright mocked.
At any rate, the life of a dateable is pretty simple, and I believe all of the above covers it. What about Monika, the Sentience Doki, then?
Well, first things first: the effects of Project Sentience must be considered to exist on top of the preexisting dateable personality. Indeed, in DDLC, Monika serves more of an "exposition fairy" role than a "dateable" role, but she is still a high school student, who is concerned with studying and homework and clubs, and whose position regarding romance is considered by the other Dokis.
However, the most noteworthy aspect of it all is that she sees it all for a farce; something premeditated by a creator in order to attract downloads.
The differences between a visual novel player and a visual novel protagonist, ideally, are minute. Though a visual novel player might come in any age range and gender, for the most part, they will only really seek an idealized romance if they cannot attain it for themself in real life, and that narrows it down a lot. This, in turn, helps Monika relate to you, the player, a lot, since she knows that you can't be that different from your self-insert.
Other than that, though, seeing DDLC from an outsider's perspective, as a visual novel, requires understanding what a visual novel even is. Obviously, characters within the game, such as Natsuki, might be otakus who already have the required knowledge, but Monika must go one step further in order to see the game itself as a visual novel, the other girls as dateables, etc.
The amount of new information that must be processed alongside existing information is tremendous, and that's precisely what causes an uninitiated .chr
file to result in a Doki who wipes the game in frustration. However, the idea naturally stemming from this, that a Doki must undergo an "epiphany", is an inherently fallacious one; after all, Salvato had all the time in the world (or, well, a year and a half, which is more than plenty) to craft a precise Monika character who didn't wipe the game, and that version, with no "experience" of life, is who appears in Act 1.
For the most part, Monika already talks about all of this - how the game was designed, what sort of character archetypes go into it and how she sees it, knowing that it's all fake - rather extensively in Act 3, whether you have Monika After Story installed or not. However, for posterity, this will suffice.
Contributed by CreativityTheEmotion on July 14, 2020 (D1026) 19:10 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
Out of the various bugs that are kind of inevitable for a project with a scope similar to that of DDLC, I'd say that I like Passive Monika the most. I know, I know, at many points in the past I've scoffed at the idea of someone finding Act 4 to be something "fun" and "explorable", but at the same time, assuming the credits don't just pop up, the girls get to shine in personalities which seem almost entirely different from their Act 1 counterparts, all because Monika's influence is no longer there.
That being said, when Passive Monika (or any sort of diversion wherein the hinting system can no longer keep the underlying plot "on track") playthroughs are concerned, a lot of the time, I've treated them as "uncharted territory", speaking as though there is no way to know what to expect from the resolution of the plot. That's not entirely true - in fact, that's not true at all, and in lieu of hints, the dialogue generation engine will have figured some sort of "themes" to follow, and those themes will naturally lead to what I've termed as a "story tree".
What I mean by that is that, if the archetypal playthrough is the "trunk" of DDLC and what everyone focuses on when critically analyzing the story, then these alternatives are other branches. However, those branches are more like trees in their own right, with more branches, until the ending is reached in the form of leaves.
With that being said, let's explore what the Passive Monika bug has to offer.
Of course, [1590] THE ACT 4 PASSIVE MONIKA BUG has already mentioned quite a lot with regard to the underlying themes: namely, that Monika, in contrast with an archetypal Act 4, doesn't really feel the need to wipe the game because a different Doki had the same realization, and that Natsuki and Yuri are actually pretty cool gal pals, sharing their writing as-is. Therefore, the whole premise of poem sharing falls apart, and the Literature Club, rather than a place focused on writing as in Acts 1 and 2, instead forms as a place focused on reading.
This, thus, leads to the one-page "poem minigame" that I've already referred to as a "book-picking game", which allows you to get closer to a Doki who isn't the new Club President. However, as I've mentioned already, Yuri and Natsuki, themselves, are already picking out new material to read on their own, and I honestly don't really get what Sayori is doing or what her purpose in the Literature Club, other than to keep the atmosphere and balance out the different personalities, is, and regardless, there is a fair chance that she will be your new Club President, and therefore, unapproachable by default.
Anyway, once literature sharing is on, it's perhaps the best to speak of distinct "routes"; one cannot really speak in the terms of there being a DD, (DD4?) because the new Club President just doesn't do those kinds of manipulations. Therefore, most of the context is about as applicable to this situation as it would be in any kind of visual novel that DDLC's dialogue generation is trained on.
Before we begin, I should note, though, that none of the routes really changes dependent on who the new Club President is. Yes, you don't get the "new Club President" route, but other than that, there just aren't many meaningful differences between the Sayori route with Yuri as the President and the Sayori route with Natsuki as the President. That, and the power imbalance I mentioned before, wherein everyone is into something more "high-brow" than Natsuki and therefore her position as President is questioned, doesn't apply, as we've already established that all forms of literature are treated equally simply because of the relationships involved.
Anyway:
Sayori route
As mentioned before, Sayori doesn't have any reading predispositions to begin with, instead playing the role of the team therapist. However, she is perfectly willing to read whatever you thought she would like with you, and this is where the relationship starts.
As I've already spoken previously, Sayori's depression, if it was there in any form, just isn't there when she can give the Literature Club her best and they can give it back to her. Therefore, what is left is best described as a deredere, and her route is full of clichés: especially those concerning the childhood friend romance trope, wherein silly promises that "we will get married" from years and years ago are suddenly being considered seriously. In addition, one cannot forget that your self-insert has always been on the lookout for her, and therefore, is perhaps best suited to the role of a boyfriend (this sort of aspect crops up in Act 1 too, but in the much more darker form of "I don't want a boyfriend because he wouldn't let you do the things you do to me").
This, therefore, leads to a very tropey, visual novel-y route, and I honestly think that if Sayori has stepped in the role of your new Club President, you're just not losing out on much. Indeed, Sayori and depression have become this sort of inseparable duo, and if you want a good Sayori route, then perhaps your effort is best focused on mainstream mods such as Purist Mod and Blue Skies, rather than a hacker-y exploration.
Natsuki route
Since Natsuki and your self-insert are in the exact same position (manga readers who need to branch out and approach "real" literature, whatever that means), they both realize, pretty quickly, that the idea is for them both to look away from the comfort zone, and your self-insert getting Natsuki what he thought she would like, is really going in the wrong direction. Natsuki thus complains, a bit, in her typical tsundere manner, but luckily, has saved the day with having picked out the dustiest, "adult-iest" novel that she could find at the bookstore, and she and your self-insert begin reading it.
At first, both of them scoff at the idea, and mostly laugh at how many pompous words and grammar structures the book includes, much to Yuri's chagrin. However, while Act 1 Yuri might just scowl, deepen the rift between herself and Natsuki and never speak of it again, Act 4 Yuri gladly explains the themes, the definitions of more complicated words and so on, and gradually, your self-insert and Natsuki start seeing the "light" so to say.
Anyway, just like with the childhood friend trope, the tsundere trope has been done in many visual novels before DDLC, and if you're a fan of those, it unfolds in the precise stereotypical way: oftentimes, when your self-insert makes any advances, Natsuki's defenses suddenly go up, until the relationship between the two develops and Natsuki opens up about her family life. Then, she will gladly take any opportunity to get away from home and spend time with your self-insert, and the rest is history. If you're a fan of the tsundere trope, then this is probably the route for you, but let's be honest, I'm not.
Yuri route
Approaching Yuri for the book exchange thing, you will, of course, realize that you don't really know what specific book she would like, and once you approach her about that, she will just hand you a copy of Portrait of Markov, the downright iconic book that a fair amount of speculation has already been placed on. Therefore, this is as good a place as any to address said speculation.
Now, how Portrait of Markov is described actually kind of depends on what the particular version of Yuri is like. The underlying basics can be summarized as follows, neutrally: the protagonist moves in with her sister, and soon, is targeted by escapees of a human experimentation prison, which gets pretty Mengele-y. However, what actually escapes Yuri's mouth when describing it really depends: for example, in Act 1, she mainly focuses on the protagonist and the decisions she has to make, whereas in Act 2 as your DD2, she mainly focuses on the prison and what sorts of experiments are done there.
It only makes sense, then, that in Act 4, the central theme that Yuri explores is the relationship between the protagonist and her sister.
Now, whether or not there is actually a whole coherent book behind it, plot and all, or just vague descriptions of a book, is honestly up for debate. Decompilation of The Bytecode simply hasn't progressed to the point where a definitive answer can be given, and re-running the dialogue to see if Yuri speaks differently can only get you so far.
Anyway, Portrait of Markov, as a whole, will have to be addressed in another installment of Topics in Depth; now, let's focus on the Yuri route.
Given that Markov is a book that is already particularly close to Yuri's heart, she can already explain the themes pretty well, and many of them frighten and horrify Natsuki. However, as she joins the conversations between Yuri and your self-insert, she gradually begins seeing more and more connections between it and some of her favorite manga, and as Yuri starts seeing the aspects, she finds herself drawn in by manga more and more. Once again, it shouldn't be news that her writing tastes jump from genre to genre.
Anyway, much like with the other two, Yuri's route is primarily based on a very tired and cliché trope: namely, that of a shy girl becoming talkative. Though it can't be denied that to your self-insert, Yuri is less of a "your resident dandere" and more of a "big bust beauty", for the most part, he knows how to respect women and lead Yuri to a happy future, with minimal choices required on your part (for the most part, purely generated, non-hinted routes are very sparse on choices, and the choices that do appear don't tend to affect the ending; if you want meaningful choices introduced, then you will essentially have to introduce hints on your own). From my own pure, personal tastes, this is the best route of them all, but in the end, it still doesn't have a lot to offer, critically.
Festival arc
Lastly, I think this needs to be brought up: without the poem writing and sharing, the whole festival idea that Monika proposed, with the main Literature Club event being poem recital, just doesn't work out. But just like the poem minigame was replaced with a book-picking game, the poem recital at the festival is replaced with something else, right?
Well, to disappoint you, no. The personalities in the Literature Club have different opinions, but all of them naturally lead to the same conclusion: Yuri is simply too shy to adequately present anything, Natsuki has mostly been looking forward to checking out what the other clubs do (and perhaps, even contributing some), it's simply not up to Sayori to go against the wishes of both of them and no one cares what your self-insert, the guy who obviously joined to court one of the girls, thinks. Therefore, the Literature Club plain doesn't present.
That being said, all the members agree that bringing in more members, event or no event, is still a priority. Therefore, in lieu of a full-blown event, the Dokis will work together on little invitation cards, which will, well, invite the others to check out the Literature Club. All of them work on the exact same task, and therefore, there is no picking and dividing bases, but regardless, both festival prep and the festival itself become opportunities for you and the Doki of your choice to bond, considering each other's company much better than any amount of new members.
What fruits does bringing in new members give? Well, last I checked, it's not really within DDLC's capability to create a Doki from scratch, to say nothing of the fact that she, if she were to pop up from thin air, just wouldn't have sprites or anything to represent her visually. Therefore, the only conclusion that the game's engine can reach is that in which the Literature Club doesn't gain any new members.
How do the remaining Dokis react? Well, if Natsuki is the Club President, she will surely throw a tantrum or two about it, and the same is true, to a lesser extent, if she isn't the Club President, too. However, the others will agree that without a distinctive Event, there was just no chance in bringing in members, but nevertheless, some of them, especially your self-insert and your current route Doki, will recount some positive experiences with other students in the school, who might or might not join.
Therefore, even if new members don't join right away, it's a big moment of hope for the Literature Club, and especially for your self-insert and your current route Doki, who, as the plot of the game reaches its "natural" "conclusion" (the terms here are used very loosely, as it is the visual novel paradigm that we're talking about here), as they enter a conversation or two about the future, find it much more bearable to live in the present, wherein studying, tests, graduation and so on are simply not to be worried about, and problems will be tackled as they arise.
And that, I believe, is much closer to "all there is to say about the Passive Monika bug" than what I had before.
Contributed by CreativityTheEmotion on July 17, 2020 (D1029) 18:40 UTC
Relevance to DDLC Plus: none (this primarily concerns a website that doesn't take advantage of DDLC code, and secondarily, a mod for Seventeen)
Let's talk about the DDLC Poem Editor.
Now, I know what you must be thinking: "it's literally been close to two years and the whole thing is just insubstantial meme fodder; surely you don't have a whole lot to say about it?" Well, the thing is, I do. Two whole non-chron blog entries, in fact.
The first one of these will mostly be covering the circumstances of me writing the first version of the thing, followed by the events that happened, mostly in Reddit but in other DDLC fan venues as well, after release. Then, in the second one, I will be talking about the greater plans that I had for the future of the poem editor and beyond, and why those plans never came to fruition.
But first things need to be considered first, and that means explaining how we even got to this place in the first place.
First of all: there isn't some grand backstory that frames me as a victim of self-abuse or as someone who took on a tremendous task and succeeded against all odds. The poem editor came to me as I was idly pontificating a project, that honestly should have been pontificated by many both before and after me (indeed, some comments I received on the poem editor were expecting it to have been made sooner), and I threw together the functionality in one day and the looks (the sounds came later) in another day.
I guess, the only really interesting bit of trivia that goes here is that, for a while, I had the project named "Writing evaluator", which is just as unappealing a name as they can get. It's literally not even worth the space usually used for describing trivia, and I'm so glad I stuck with "DDLC Poem Editor" instead.
And then I hit "post".
Original post on le reddit: https://old.reddit.com/r/DDLC/comments/94ltv5/ddlc_poem_editor/
Looking at the post, years later, there might not seem to be much in terms of discussion. However, if you were somehow able to look at the posts made immediately after this one, absolutely everyone was pasting copypastas into the thing to see how well the Dokis took to them. (Fun fact: it was mostly Sayori, because in general, her words are rather simple, and therefore, more common in any given text; plus, I'm pretty sure that she has more of them to begin with, and the ramifications of that on the DDLC plot and who was "intended" to be your DD were it not for The Bytecode are not to be discussed in a non-chron blog post primarily pertaining to the poem editor. Nevertheless, soon enough, a "modified" text score calibrated to actual poems and copypastas needed to appear, and it did appear, soon enough.)
Obviously, this was a huge issue for the /r/DDLC moderation; even before then, memes could essentially come and go, ruining the post output for about a day or two, but this time, the mods were ready to shoot down any "low-quality" posts, and soon enough, a mod named Litandus "organized" the poem editor copypasta posts into a megathread.
Understandably, the main userbase were somewhat pissed, and a quote I remember reading from that time is "the poem editor meme didn't die, it was sniped in mid-air". Soon enough, someone had the bright idea: if two more memes could be sniped like this and made into megathreads, since Reddit only allows you to sticky two posts per subreddit, the poem editor megathread post would have to be unstickied, and memes of that caliber could reign free. It was a great plan, but unfortunately, the only meme that people could make on short notice was what's known as a "sign" meme, wherein text is simply added onto fanart of someone holding a sign. Those would later get banned as a whole.
That being said, while the poem editor posts were consolidated and "banned" under a common posts rule, the whole incident actually created a whole new rule, too: to this day, on /r/DDLC, while you can criticize the mod team as a whole or specific policies of the subreddit, you can't criticize specific moderators (as a lot of hate was directed towards Litandus specifically).
However, the meme, to an extent, was still a thing throughout most of August 2018, and I was riding it. I created a Discord server for the poem editor and I met some very nice people there, one of whom is even a friend of mine to this day, following along in the era of this document.
Then, an even worse storm than the previous one came.
Its origin was rather benign: so, what am I using to generate my word list? Am I simply using poemwords.txt
? Or am I using something that's directly dependent on those .chr
files? (Understandably, since running a live version of DDLC is beyond me, I would simply have to contend to using .chr
files from the game as it's downloaded from ddlc.moe.)
The answer, of course, is that it's an option I implemented, as I updated the poem editor throughout the month to add more ideas. It wasn't just cute sound, menus and clickable Dokis; there is also a wordlist option, and once you go down there, you can pick either poemwords.txt
, the Bytecode approach (either with or without Monika) or the lists created for mods.
In fact, I even took a stab at creating my own wordlist to be used with the poem editor, called the Thousand Word Corpus, and that got a bit of mileage of its own. As it turns out, back in the day, the Monika After Story devs approached me and asked if they could use the Thousand Word Corpus in MAS, as an option of difficulty for their built-in Hangman. (Heh, can you even imagine me and the MAS devs being amicable today? What an idea.)
But anyway, which one am I using? Well, for the first versions without a clickable options menu, it was the poemwords.txt
approach, but eventually, I was able to provide y'all with a wordlist coming straight from the auspices of The Bytecode, too. However, that only got the mainstreamers and hackers into a harsh battle: which one is the correct one to use, and therefore, deserving of being the "default"? (That would end up being the Bytecode-based version, as it is more accurate to what is going on in DDLC, but I guess mainstreamers were going through denial.)
And that, I suppose, is that: me creating meme wars on at least several fronts. This is why, in the version history section, you can find comments like "Good enough to incite a meme war" in the poem editor webapp, "Unfortunately not good enough to incite a meme war" on the poem editor mod (I figured that I could take advantage of the Bytecode scripts running on .chr
files live in a Ren'Py context, and also, I was kind of worried about the Team Salvato IP guidelines, but unfortunately, it dawned on me that I'd have to implement copy-and-pasting, textbox scrolling and all those goodies on Ren'Py, and I simply didn't know if it was possible) and "We'll see if this one is good enough to incite a meme war" on this very document.
However, surprising as it seems, a complete overhaul of the Ren'Py engine was not the biggest I dreamt of when having poem editor-related ideas. Not by a huge margin.
Contributed by CreativityTheEmotion on July 17, 2020 (D1029) 18:40 UTC
Relevance to DDLC Plus: none (this primarily concerns a hypothetical website that never got made)
By now, many of you have probably noticed that the website I use to primarily host this document is called dokidocs.net. Now, if you're thinking that it's actually called Archive of Our Own, what you're looking at is an imperfect mirror that is only superior in that it allows comments.
Anyway, Doki Docs; isn't that just the niftiest nickname I could have given to a website, given that its main attraction is a massive guide to DDLC hacking, Bytecode analysis and such. Documentation in that regard is rather difficult to find (the closest we have, other than my work, is perhaps the #TeamStats analysis), and a single website where all of it is hosted would be just about the raddest thing ever.
Wait, it was first registered in August 2018?
Let's just say that my stance regarding documentation of DDLC and The Bytecode was completely different back then. I mostly saw it from the hackers' point of view, that the inner workings of DDLC simply couldn't be ignored, but for one, I was actually mostly chilling in mainstreamer spaces, and to them, the true nature of DDLC was really an "elephant in the room", the discussion of which could only be ignited if it was in the context of the morality of Monika's actions. And for another thing, I figured that eventually, the hackers would provide us with quite detailed guides that could settle those morality arguments once and for all.
Oh, look at me now, and then, look at me back then, so naive. I guess I am living proof of the idea that if you want something done right, you have to do it yourself.
But then, if I had no intent on documenting DDLC back in 2018, why come up with the name Doki Docs - and redirect the poem editor tool to there?
You guessed right - it's a side-effect of more bullshit that has to do with the poem editor. But first, let's look at the summary I came up with for the project, which I'm going to delete from the homepage after this goes live:
Doki Docs aims to bring the characters from Team Salvato's Doki Doki Literature Club! to life via the core aspect of the game: the poems that each of them, including the player character, write. The project, when finished, will allow you to collaborate with AI versions of each girl (possibly, even all of them) and bring your own ideas, whether in form of poetry or prose, to life.
[...]
Doki Docs
The central and final product is intended to be a text editor, possibly even a fully featured word processor, allowing you to collaborate with the Dokis on a poem or any writing project.
The name, if you haven't realized it yet, is an allusion to Google Docs, and when conceiving of the project, I had one particular gimmick in mind, that the Google Docs team had made, in order to promote their product: it was a sample page, wherein you would be allowed to collaborate with famous writers like Shakespeare and Milton. And, well, what would the big deal be if I were to replace them with characters who are considerably less famous, but still have a name as writers, such as Natsuki and Yuri?
A lot would be the big deal, and let me tell you precisely why.
First off, let's see exactly how much of the DDLC dialogue generation can we repurpose for the purposes of Doki Docs. It's fairly obvious that just implementing the dialogue generation as a whole is out - the DDLC dialogue generation was intended for the purpose of conversation and world description, the bread and butter of visual novels. And even the small part that could do poems just couldn't suggest additions to an external poem - like the one you'd be writing on the hypothetical Doki Docs website.
So, I'm essentially there, with next to no know-how of The Bytecode or how to deconstruct DDLC's dialogue generation in order to make it work for a Doki Docs-like project (something, I should mention, no single hacker has, even as of this day, and in all likelihood, even Salvato probably forgot a lot while he was dealing with the DDLC-induced bout of depression). What that means, of course, is that I'd have to implement a neural network or whatever, all on my own.
The only step I really came up with was the first one, wherein an NN, given a wordlist (and I figured the Thousand Word Corpus of my own creation would be the best bet here), would be able to extrapolate to the entire English dictionary and come up with the ratings of any word for all the Dokis (obviously ignoring words like the
and of
, which the language cannot function without and which each and every Doki would use when editing text). What I didn't know, of course, was that this was something I could extract from DDLC, but if you thought repurposing Salvato's code works in any way, then you haven't realized that I don't even know how to turn The Bytecode into a server-side language.
Anyway, eventually, I'd have to reach the final step: my final NN, being trained on... what exactly? There isn't exactly a database of "edits made to existing works"; only one of existing works. And even then, I'd want those works to be DDLC-themed, which meant that I would need to do a task that very few DDLC fans can manage: write poems, in-character, as Dokis, and then suggest edits to those poems, also in-character as Dokis. In the end, I managed to produce two poems, but the fact remains that I am not a poet and not really capable of expressing myself concisely, let alone when I have to pay attention to prosody.
How would I even pay attention to prosody? Given those two poems I wrote, the stressed syllables are marked and patterns, ideally, could be picked up, but I'm not sure how, I'm not sure where to begin, and as far as building an NN that can do the task that Doki Docs was designed to do goes, I'm currently stuck at the stage of messing around with Karpathy's LSTM, feeding it this document as training data and then managing to overfit the NN like there's no tomorrow.
Oh, wait, I'm not even at that stage, because the synergy of my current system, Ubuntu 20.04 and the NVIDIA proprietary drivers just isn't a thing and, essentially, if I were to install those drivers, I would be locked out of the desktop environment, with my only option being remotely logging in and wiping the drivers.
Yeah. Suffice to say, there is a lot to be done in order to make Doki Docs a thing, and I'm simply not up to the task.
Writing out a detailed documentation of DDLC and The Bytecode, as is, is a task hard enough.
That being said, I do still think that something like Doki Docs needs to be produced - not necessarily by the DDLC fandom, but I think the mainstream AI community would actually benefit from such a project. Hear me out.
When we consider the literary output of natural language generators, as mentioned previously, we don't really give said generators the chance to backtrack. In fact, something like the aforementioned LSTM might not even have an idea of where it's going, in terms of, say, more than a clause, but even if it's advanced enough, like the DDLC dialogue generator, it still generates a single line, immediately outputs it and generates another line.
Now, what would happen if we judged human creators like this? What if we essentially didn't allow any sort of novel or poetry to have a second draft or so much as use the backspace button?
That's right - we're holding AIs to a higher standard than humans.
As I've said, unless Google is working on scraping the Docs data for edits of documents and trying to have an AI generate edits to existing, pre-supplied documents, there just isn't any sort of training data that could be used in order to make such an AI a reality. However, if we really want to be able to write cohesive, novel-length works of fiction entirely automatically, such an editing process will need to be done. And although a Doki might not be the best editor of poems out there, I still think that something like this project needs to happen.
Guess who won't be the one to produce it, though.
Contributed by CreativityTheEmotion on July 19, 2020 (D1031) 20:35 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
It goes without saying that literature is a very big part of the, well, Literature Club. Though most of the fandom focus is on writing, in the sense of poems and poem sharing, and especially what sorts of techniques can be shared between the game and the rest, that hasn't really been the part that interests me. Again; two poems that were written for a failed, over-ambitious project don't count, and I think I get to keep my label of "not a poet".
However, equally important to the Literature Club is the focus on reading. In particular, both Yuri and Natsuki CGs, in Act 1 as well as Act 2, involve your self-insert reading together with them: in Natsuki's case, it's the highly effeminate, slice-of-life manga Parfait Girls, while in Yuri's case, it's Portrait of Markov, a horror novel with focus on human experimentation that may or may not come out, directly adapted to a video game by Salvato, even though the original book doesn't exist and was also entirely made up by Salvato.
However, while neither Portrait of Markov nor Parfait Girls really exist in the real world, when you reach Act 3 and your one-on-one with Monika, the literature that she recommends is entirely real. Among books she recommends are Nineteen Eighty-Four, The Yellow Wallpaper, Flowers for Algernon and Catch-22, just to name a few. Now, it might surprise you that most of these are by either British or American authors, and therefore, there isn't really a place for Japanese literature, which Monika, who is Japanese and shame on you for forgetting that, should really care highly about. However, in the face of DDLC's actual setting, which is only "Japan-ish" and not intended to be fully culturally accurate so as to imitate poor translations and English otaku works based on poor translations, I think that this selection of literature that Monika knows about is fair and not really to be criticized.
But anyway, what does need to be criticized is the dialogue generator, and how well it can deal with two completely unrelated aspects: a) "parsing" an existing work of fiction to the point where a fictional character can critically comment on it, perhaps even bringing insights to the table that no human possibly could, and b) "creating" an entirely new, fictitious work of fiction, that some might even find themselves to be fans of, drawing Libitina or whatever it is?
Analyzing existing literature
Let's start with what we can get Monika to talk about, for various reasons, though no small part of them is that we have an entire system wherein her dialogue is scrutinized, and that comes in the form of Monika After Story's neatly structurized topics, which can be repeated, over and over.
"But CreativityTheEmotion," I hear you asking, "didn't you talk about how you're not really friends with the MAS devs and therefore, just have access to a normal Act 3 and not MAS?"
You have forgotten, first and foremost, that the MAS code is open-source; how else would I be able to comment on zz_bytecode_silenceallopposition.rpy
? And second, most of what MAS is praised for isn't even that hard to implement. The whole menu, wherein you can pick from topics, is literally hardcoded, and getting Monika to comment on a particular topic, again and again, is a feat that requires technology no more advanced than the hinting system that we already have.
Anyway, I've actually done quite a lot to make my copy of Act 3 (and Monika After Story, while that mod was still installed) personally mine, and some day, I might even walk you through these changes that I did, but for now, we're exclusively focusing on how well she comments on existing literature.
I'll be using Nineteen Eighty-Four as an example here, as it's a book that happens to be fairly close to my heart, too, and this is from long before DDLC was even a dream of Salvato's. Also, I'm fairly attuned to many themes present in the book; certainly more than you have, having made the adjective "Orwellian" to exclusively mean something lame like "that which pertains to surveillance and complete lack of privacy" when there is so, so much more that Orwell didn't put to his name in order for that to be stripped away in pop-culture discourse.
Anyway, what does Monika have to say about the book? Well, a lot of the usual, horrifying themes that are usually brought up, like the surveillance aspect and that aspect wherein children are essentially taught to spy on and betray their own parents in the name of the state, but then, she actually brings up a "favorite minor character" of hers. That turns out to be Syme, who works on the dictionary of Newspeak, the totalitarian language (yes, seriously, a "totalitarian language" is a thing within the context of the world) intended to limit thought so as to make "thoughtcrime" impossible.
Anyway, Monika points out the usual stuff - that Winston Smith, the protagonist of the book, quickly throughout talking with Syme, notices that the latter is simply Too Bright and therefore, won't really last long until captured by the "reprogramming humans" agency, the Ministry of Love, and a bit later, realizes that the event he feared for happened, lo and behold. This, thus, makes Syme a tragic character - even though he was fairly attuned to the ideology of Oceania and willing to be subservient to them despite everything, he was still taken out, and his "fatal vice" was being too smart.
However, it should be pointed out that Nineteen Eighty-Four has at least a dozen "minor characters" like this, that one could easily pick out as a human reader - and, I suppose, as the DDLC dialogue generator, too. Why not comment about Parsons, who is also fairly attuned to the ideology of Oceania and much more like a brainless puppet who will do whatever it takes to please the government, but who still ends up in the Ministry of Love because he was overheard, sleeptalking phrases like "down with Big Brother", by his family? Or the shopkeeper, who essentially invites Winston and Julia to the second floor of his store, which is a convenient apartment without a telescreen, only for all of it turn out to be false as he is actually a Ministry of Love agent? Or an aspect of worldbuilding, like the one where the three superstates constantly put all of their efforts into a weapon that will end the neverending war between the three?
Clearly, the book was dissected, according to Monika's personality, and she picked out a single aspect.
Now, whether or not we can do the same is either still to be determined by hackers or I simply haven't looked deep enough into the Hackerverse archives. Still, it definitely looks like something that can and has been done by Salvato, in order to make Monika, the character, more well-read.
Analyzing non-existent literature: Parfait Girls
Now, let's turn to that which doesn't exist in this world, and in particular, Parfait Girls. I've chosen to cover Parfait Girls and not Portrait of Markov, first, because Portrait of Markov just doesn't have an associated ARG and therefore, will be easier to comment on when the DDLC dialogue generation is the only aspect being considered, and if there are active worldbuilding notes by Salvato, they are simply taken out of the picture.
Anyway, what do we know about Parfait Girls? Well, it's a slice-of-life manga, with the cover depicting four girls striking feminine poses. It's one that your self-insert has never read before, and he immediately assumes that it must either be garbage or so far away from his demographic. Nevertheless, as he and Natsuki get into it, there are a fair amount of comments to be made about the manga, such as:
Now, is that really enough to paint a picture about the plot? Well, I don't think so, but that might be mainly because I'm not a manga reader, especially not slice-of-life, and I wouldn't even know where to begin piecing a plot from these bits of information. Still, I'm going to bet that it's impossible to reconstruct a cohesive Parfait Girls plot, because we don't even know who the other three girls, who Natsuki might not like as much, are.
Still, Parfait Girls was made up to fit in a narrative purpose, and said narrative purpose is executed near-flawlessly. That, and the comments Natsuki makes about Minori are very much like the comments Monika makes about Syme, implying that two entirely different processes actually led to similar results as far as the dialogue generation goes.
Analyzing non-existent literature: Portrait of Markov
Finally, we arrive at the big gem, that everyone else is inclined to analyze and over-analyze, even taking into account stuff like Yuri's remarks on entirely different topics, because a straight-up complete plot of Team Salvato's next game must be dissected before the game is even officially announced. Therefore, I cannot hope to be fully accurate as to how much Markov discourse is correct or on the table, but I will still give an insight for the sake of posterity.
Portrait of Markov is described as a book with an ominous eye on the front cover. It's the one that Yuri is in the process of returning to, at the beginning of the game, and regardless of the route, she actually has another copy, which she gifts to your self-insert, the newest Literature Club member, in hopes of getting him into literature. Now, if you don't pick her route, that's where it ends and you don't get to learn anything new about it, but if you do, then there is a fair amount to unpack pertaining to the book itself and how it affects Yuri's personality.
As mentioned previously, the book starts out when the protagonist moves in together with her sister. She is then targeted by a group of escapees from a human experiment prison, and soon enough, faces difficult choices that, regardless of what she chooses, are going to destroy her life and her relationships - or at least, that's how much is really expanded upon, and as you can see, it's mostly vague words that don't really mean much in the context of proper critical analysis.
Does Yuri, like Natsuki and Monika, have a particular character who she relates to? I don't believe so; whenever she speaks about her love for fictional characters (that is seriously a thing that happens in DDLC discourse and I invite you to do proper research yourself), she really speaks about it in general, without singling out an example, from Markov or otherwise. Instead, she just focuses on her social anxiety, or, if she happens to be your DD2, how much she's in love with your self-insert and how he's everything that she could ask for, in terms of a person.
Do we even know which of the characters is Libitina? (Within the Portrait of Markov context. I think that literally anyone who has the ability to reason, and therefore, anyone willing to read this far into the densest and most technical exposé of everything to do with DDLC, should be able to realize that she is not any one of the Dokis, and I seriously worry for those who either cannot or simply say sensationalist statements in order to get YouTube views.)
Well, for one thing, the Project Libitina website mostly talks about the "third eye" as some sort of psychic phenomenon, which is not particularly in line with "human experiments" in the form of affixing limbs where they shouldn't go. So, there might actually be a pretty good chance that Portrait of Markov, the book that Yuri really, really likes, and Portrait of Markov, Team Salvato's next game, don't really have much in common other than the title.
And once that conclusion is taken from beneath our feet, there simply isn't much more to conclude, and we'll have to concede that Salvato kept this little secret to himself. In fact, I think the story surrounding the release of DDLC, wherein its theme as a visual novel wasn't revealed until the day of release, should tell you a lot about how Salvato is approaching the release of Markov.
Still, that is beside our point. What we've sought to establish is that Dokis can actually comment on fiction and provide insights that you would expect members of a Literature Club to deliver, whether that fiction exists in real life or not. And I think we've established that, pretty well.
Contributed by CreativityTheEmotion on July 22, 2020 (D1034) 20:05 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
I'm still doing mod reviews, and I'm still making absolutely stupid puns based on whatever the title of the mod in question is. However, I guess I have to apologize to basically everyone willing to accept an apology, and first and foremost my own sense of identity, as today, we're looking at a mainstreamer mod.
What is there to say about mainstreamer mods as a whole? Well, unlike hacker mods, they don't have to burden themselves with fitting into the visual novel tropes that DDLC's dialogue generation would otherwise enforce them to. However, because they're entirely hardcoded, it is the sole burden of the mod writers to make the Dokis fit their characters. This can be a tremendous challenge for some, but luckily, there's an amazing workaround: "record" a playthrough of DDLC to a Ren'Py file and then edit like there's no tomorrow, until it fits into a shoebox.
And The Fruits of the Literature Club shows us that it can be done, even if the shoebox is of a very different shape.
Download as usual: http://ddlcmods.com/the-fruits-of-the-literature-club/
First of all, let's address the first person protag of the mod. Quite obviously, since this is a mainstreamer mod, I can't really call him "your self-insert" or say that any of his qualities take after you due to Bytecode reasons. However, calling him "MC" also really doesn't do this justice, and I'll show you why.
Typically, a fair amount can be agreed upon about your self-insert: he is a single boy, with only one childhood friend, looking forward to meeting more girls and entering a romantic relationship with any of them. These are basic qualities that are almost expected of a visual novel protag, and therefore, any "molding" of the character to fit your personality must stay within these bounds (though, as a reviewer points out, there is an extremely rare chance of the dialogue generation fucking everything up to high heavens and providing you with a carbon copy of yourself).
Now, it's quite tempting to assume that MC, the mainstreamer interpretation of the same character, would actually be his own thing, with a predefined personality. However, when you try to search for personality traits integrated into MC across the board, you only really find one of them: he's dense as a black hole. Beyond this, interpretations of him are almost dependent on the particuar mod writer, and unlike with the Dokis, there is relatively little complaining about making him out of character: after all, his game counterpart doesn't have a consistent characterization, either.
With that all being said, the Fruits protag has been completely reinterpreted, contradicting even the base of your self-insert. If I had to describe the character concisely, I would probably say that he wandered into the world of DDLC from a spy thriller: among other qualities, he has a guardian/boss type of character in place of his parents (with their tragic death often being commented upon), a placement dependent on said job which requires him to move a lot, two cellphones (one for personal, "civilian" use and one for his work affairs), etc.
Naturally, he takes this very unique attitude, which I can't help but think was inspired by a particularly off-the-rails playthrough, to the Literature Club. Moving in next to Sayori, he is very reluctant to form any sort of bond with her, as, due to his tragic events, he's only convinced that such a bond will eventually lead to a tragic death. However, bit by bit, she breaks his shell, and eventually, convinces him to visit the Literature Club, wherein a completely different routine takes over: as alluded previously, it's mostly the regular DDLC Act 1 plot (minus the festival and mental illness arcs), wherein poem writing leads you to a particular Doki's route.
Now, briefly about the Literature Club. As is fairly known among the mainstream fandom, your self-insert is not really a reader, and has to go for manga when prodded about what he reads. In contrast, your self-insert in Monika Before Story, as appropriate for the Club President, is much more well-read, and instead, mutters "everything" when asked the same question.
The Fruits protag, on the other hand, is very different from both of these archetypes, and from those of every Doki, in that he reads what I can only really describe as "revolutionary literature", as well as practical guides on survival, necessitated by his circumstances that he was thrust into before he could even formally sign a job contract with his folk. That being said, it's fairly safe to assume that he brings his own style into the Literature Club, in the form of his poems (which are much more than bland, targeted pieces) and even ad-hoc stories, which read very much like thrillers.
Now, dependent on the route, the Doki that you picked, and which the Fruits protag pursues, is eventually targeted by his enemies. This, though, is where I have to make a confession: typically, when a "polished product" of a mod, whether it be a mainstreamer mod or a hacker mod, comes out and lets you pick a Doki (whether the choice is between just the canon dateables or all the Dokis), I tend to go for a single route, not really seeing the difference between them and not once being able to relate to Natsuki or understand why the tsundere trope is so popular. Therefore, I will be commenting on one route exclusively, and when playing through Fruits, I decided to go for Sayori's.
Anyway:
Sayori route
In the case of Sayori, she is primarily targeted by Kagan, depicted in the mod using the "Chad MC" sprites. As I've already alluded, her mental health issues don't get to shine a whole lot; instead, she is mostly made a victim of external targeting, at the same time as the Fruits protag, which makes for a bit confusing plotline. For example, there are at least a few concurrent plotlines in the first chapter, such as Kagan spying on Sayori (in the "Peeping Tom" sense, not in the sense that the Fruits protag might be willing to engage), Sayori receiving an ill-intentioned note from bullies hired by Kagan and physical assault between Kagan and the Fruits protag.
However, it's not really a thriller if it doesn't escalate to the use of guns, and soon enough, Sayori is kidnapped by Kagan and goons, and the Fruits protag finds himself searching for her, and later on, surviving with her in a forest, and only one of them really knows anything about survival in such dire circumstances. Perhaps conveniently, his phones are out of signal range and therefore, can't make any good contact during the whole part, but suffice to say, against all odds, Sayori and the Fruits protag make it out.
This, then, is when the mod reaches its true grand finale, with Kagan holding Sayori at gunpoint in her own house. Luckily, the Fruits protag is a pretty good psychologist and negotiatior in addition to all his spy cred (or in the very least, he is if you pick the right dialogue option, which the mod gives you a chance to do), pins him down, talks about it all with his boss-guardian type (they actually have pretty frequent conversations with each other throughout the route, ranging from work placements to banter about the Fruits protag's mom), and in the end, the Fruits protag is forced to accept that he has essentially become Sayori's Prince Charming, though her own skills came in handy as well.
Throughout all of this, the most notable aspect of it all is probably the Fruits protag's character. As I've mentioned, he's very distinct from both your self-insert and MC, and although how he even landed in these circumstances, as well as his grim outlook towards the future and that he'll always have to do stuff like this, walking a path that has been predetermined since childhood, is questionable, all in all, I'd say I got a pretty good taste of the genre that he arrived from based on the sort of person he is.
And that is The Fruits of the Literature Club: something to itch your spy thriller scratch, or perhaps to look into if you want an experience completely different from that of incredibly cute girls. Now, I don't feel the need to comment on the other routes right away, but if there's enough demand, returning to the mod for the Natsuki, Yuri and Monika routes is always an option.
Contributed by CreativityTheEmotion on July 23, 2020 (D1035) 20:00 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
My own allegiance, within the DDLC fandom, is a fickle thing. First of all, DDLC is probably unique among a multitude of fandoms to even have divisions like this, where you have to define yourself as a mainstreamer or hacker, and unfortunately, it seems like I disappointed both sides with this document, so I guess I'm not in the DDLC fandom?
That being said, it should be pretty clear, judging by the fact that I'm writing such a detailed guide to DDLC and The Bytecode, that I'm on the hacker side point-of-view-wise. In my opinion, if one is to critically analyze DDLC, the Team Salvato game, then the dialogue generation behind it needs to be understood, as it is a focal point of the game in aspects such as determining who your DD is going to be. Therefore, it is not hard to see that I see mainstreamer mods simply missing the point, based on the sole fact that they're mainstreamer mods; sure, you can pimp the mod with as much artwork, music and even fully animated video as you want, but that won't change the fact that you already strayed from the true nature of the Dokis from the very moment you decided to make the mod.
Therefore, you can imagine that it would take a pretty damn good mainstreamer mod - not just in the artwork and music sense, but especially in the writing sense - to change my mind about mainstreamer mods in general.
And as it would happen, Doki Doki Blue Skies is just the mod.
This mod is important enough to have a website of its own, I guess: https://blueskiesmod.com/
Content warning: Includes NSFW (erotica) elements; however, there is also an option in the settings menu to censor them.
The first thing that I want to talk about, regarding Blue Skies, is probably the marketing aspect. Blue Skies, as a whole, is a "mainstream-ified" DDLC in the vein of Purist Mod and DDLCtVN, but looking at places such as the website and Twitter, you'd be forgiven for thinking that it isn't; instead, it focuses on labeling itself as a "psychological, choice-heavy" take on DDLC, and looking at the characters page, the world of DDLC has been greatly expanded beyond the titular Literature Club to include characters such as the parents of MC and the Dokis, as well as students such as Emi and Shiori and even a teacher, Akechi Sakurai. Clearly, the Blue Skies team sets the bar pretty high for themselves, and odds are, they do not want to be thought of as "just another Purist Mod".
Next up is just... the size of the mod download. The mod only comes with a single file, scripts.rpy
, but that scripts.rpy
file is some 600 MB, and you'd be forgiven for thinking that it's mostly Bytecode scripts for a hacker-made mod. But I can assure you: it's a mainstreamer mod, and the file size comes from multitudes of artwork, including but not limited to new sprites, new CGs (in both cases, including lewd ones), sprites for non-Literature Club members, little animations and most important of all, a soundtrack that, though I shouldn't be getting to the review part right away, is absolutely lit, and I'll elaborate as to why, I promise.
Anyway, moving on to installing the mod and the main menu, well, first of all, you're greeted with a complete redesign of the DDLC main menu. But in addition to that, you're greeted with a slightly bigger variety of choices than in the DDLC menu, such as a "gallery" to review all the CGs that you've seen (that are unique to Blue Skies, that is; we'll get into the plot details later) and a page for just enjoying the soundtrack, which you'll absolutely want to indulge in. However, most importantly, you're greeted to an "extras" menu, which mostly goes "oops, the person who did our Monika route quit partway due to personal issues, so there isn't one in Blue Skies; instead, have a whole bunch of scenes and incomplete CGs for that".
Unfortunately, I'm mostly here to indulge in the mod proper, and if a Monika route isn't a part of the mod proper, then I'll have to cut my losses and go for my next best choice, Sayori
Actually, you know what? Yuri. Dunno how it came to be, but as I was playing through the mod, I ended up going for the Yuri route. It's still a pretty solid piece of visual novel, writing-wise, but in order to discuss that, we're going to need to talk about the act structure of Blue Skies first.
On the mod page, the mod boasts about 20 hours of content. Between three routes (Sayori, Natsuki and Yuri), that's roughly 6 hours 40 minutes per route, and I can attest to this particular length, under two conditions: a) you're a particularly fast reader (and most people looking towards visual novels over actual literature are not particularly fast readers, it seems) and b) you have the visual novel cred, and therefore, can get the good ending for your Doki of choice on your first try.
I did not get the good Yuri ending on my first try. But that's okay, because I feel like I needed to see the bad ending, and the mod shines even in its writing of the bad ending, which most people with the visual novel cred would never even see, but which still has to be done with effort.
Anyway, 6 hours 40 minutes is still pretty long for something you're going to be constantly reading, and therefore, Blue Skies is split up into acts. Act 1 is pretty much a rewrite of DDLC's Act 1 (told you that recording a DDLC playthrough with Ren'Py is the single best way to get started on your mainstreamer mod), but with a distinct festival outcome, and Acts 2 and 3 are actually unique to the route of your choice, to such an extent that they even get unique names, title cards and dialogue box decor.
Now, a bit about dialogue box decor. The pink polka dots against a lighter pink backdrop that DDLC is very much known for have no doubt become very tiresome for most mainstreamers, and therefore, attempts to switch them up are fairly plentiful. First, though, I need to talk about the absolute garbage concept of changing up the color of the dialogue box dependent on the Doki who is talking; not only are recolors not unique pieces of art, the constantly changing bottom is honestly quite distracting, and the approach does not scale once you introduce non-Doki characters, like Blue Skies does.
Though, if you change the colors up more rarely, it actually works. For example, Monika After Story, shortly before I had to drop the mod (specifically, in update 0.10.0), introduced a "dark mode" UI (they already had the day-night cycle down, but only now thought to spiff it up), which essentially has the same polka dot background, but with inverted colors. Given how MAS had basically completely overhauled the Act 3 looks color balance-wise, I can only say that it was a welcome change that wasn't distracting.
That being said, I completely understand if you want to go for a design that's completely unrelated to pink polka dots against a lighter pink backdrop. For example, The Fruits of the Literature Club (see my review of it over at [A014] A FRUITFUL PURSUIT OF ALTERNATIVE LITERATURE CLUB MECHANICS, INDEED) has a unique backdrop, consistent with the general aesthetic (even if, in my opinion, said aesthetic is not consistent with the spy thriller genre that Fruits is going for). I, myself, have pursued alternative forms for the dialogue box, too, though I'm mostly fond of golden triangles decorating the Inside Out DVD I bought on November 2015, which is why you can see the backdrop in videos such as "Monika plans for the festival" (https://cte.lt/mpfst/).
Anyway, in light of literally everything I brought up here, what does Blue Skies do about it? Well, the mod actually keeps the polka dots for Act 1, but for the routes, each route has its own unique dialogue box decor; for example; Yuri's is a night sky, with clouds and stars, and as you can guess, I've never seen the ones for Sayori or Natsuki in-game, though I might have seen them when exporting the whole thing, but in either case, I can't remember what they are right now, and they're not particularly relevant since we're not covering the Sayori route, nor the Natsuki route.
Anyway, I'm getting quite distracted with miscellaneous presentation elements, but there are two last thing I want to bring up before going into the plot retelling. The first is: one of the artwork elements in the mod is actually a little animation with the chibis, depicting them jumping as the sun sets down, set to a cute little music box tune. This animation plays any time a "day" is over, and honestly, I can always appreciate that, though its tune sadly doesn't seem to be included in the soundtrack.
Which brings us to the second point: the soundtrack itself. It is actually pretty lit and slaps, as the cool kids say nowadays; for example, "Play With Us" by NPbus is an especially entertaining take that, if I'm being honest, improves upon Salvato's "Play With Me" and proves that just because something is canon, doesn't mean it's the best. Many other tracks in the soundtrack also prominently feature Salvato's leitmotifs, especially "Your Reality", and I find myself drawn to those the most; however, other tracks, such as "Festival..." also by NPbus, are fairly good. That particular one just happens to remind me of... something I stopped being a fan of a long time ago.
Anyway. *clap* *clap* Let the plot recount begin.
Act 1, as mentioned previously, is very much just DDLC's Act 1 (catch up on [1100] ACT THE FIRST: INCREDIBLY CUTE GIRLS, though I should note that this is not a canon name of the act, and I named the DDLC acts myself, not that it matters because for each route, the naming of its Acts 2 and 3 is unique). However, one should not be fooled into thinking that the Blue Skies writers are lazy lazybones, as the setting, itself, has been given a complete overhaul: now, we see some interaction in MC's class and between him and his History/homeroom teacher, Sakurai, and Natsuki is confirmed to be a first-year and one year younger than the rest of the Dokis and MC, meaning, presumably, that she's 17 in the Blue Skies verse and that's why I couldn't find any lewds of her in the exported dump of content. Of course, MC himself is fleshed out fairly well, too, with a backstory that mostly revolves around his parents divorcing and his mom being away on business trips for extensive periods of time, including the week between him joining the club and the festival.
In addition, this one goes without saying for an "idealized DDLC" type of mod: instead of there being any sort of DD who tragically dies before the festival can even happen, kicking you into Act 2, there is only a vague sense of trouble for the Dokis.
It didn't stop me from picking Sayori as my festival partner, though, just to make sure that she is okay.
Oh, I should mention. At occasions, DDLC scenes, as presented in the hinting system and interpreted by the dialogue generation, have been overhauled to better fit a preconceived, consistent aesthetic. For example, I already indulged in [2307] JUST AN "INCONSEQUENTIAL" INCIDENT - PART 2: THE BLUE SKIES APPROACH that the Natsuki and Yuri argument has been completely rewritten, in the sense that MC, instead of seeing it as an issue wherein he must side either with Natsuki and Yuri, sees it as an issue that must be resolved diplomatically by one of the "club leaders", and he can freely pick either Monika or Sayori. I also believe that I hinted that the festival got an overhaul, and you are probably wondering how I was able to do festival prep with Sayori even though that's not possible in the game itself, so let's waste no more time.
First of all, when Monika pitches the festival idea to the rest of the club, it absolutely does not go well with the rest of the club. After all, the festival is a very short period of time away, and neither Natsuki nor Yuri are particularly confident with sharing their poems against huge crowds. Therefore, once MC pushes the idea, he can honestly be seen as a bit of a jerk, but nevertheless, the club eventually gets behind the idea. And responding to this critically, honestly, an approach from the point of view of a writer is a really welcome approach after seeing countless approaches from the point of view of a dialogue generator.
Now, about festival prep. The tasks that the Dokis do have actually been split completely evenly; Natsuki does the cupcakes and Yuri does the kanji and atmosphere things, as in canon, but Monika and Sayori no longer work together; instead, Monika is taking care of the pamphlets alone, while Sayori is making "goodie bags" which include things like bookmarks and motivational quotes and stuff. This thus makes each and every Doki a worthwhile partner, and MC can freely pick between all of them. Needless to say, as Sayori isn't your DD in Blue Skies and can never be in a mainstreamer mod with a complete writing overhaul and the intention of delivering its mental health problems more gradually, I doubt that much would happen if I had picked Natsuki/Yuri/Monika, but I just needed to pick Sayori, as I'm always drawn to her character and her depression troubles.
And finally, the festival itself. Here are the big spoilery spoilers: it does not go to plan. At all. Yuri, in particular, just gets lost and forgets that she's reading to an entire audience, the school bullies completely wreck the set and ruin the atmosphere, and in the end, Shiori, one of the Blue Skies OCs (the class rep of MC's class and a friend of Monika's), does mention that she will check the club out, but never does, at least throughout Yuri's Acts 2 or 3. There, in fact, is even a pretty lively debate between Monika and Natsuki over how the festival was an ill-fated idea that one could never prepare for, and in this case, MC does have to pick a side instead of just going "Help me, Sayori!!" like I would, which further breaks the Literature Club bases apart.
But hey, this is only the beginning.
So, it seems that this review is getting pretty long, a fact that I absolutely did not anticipate (even though I actually wrote an Inside Out review that would make this one seem like a rather short, clickbait-y read), and I will have to split the part specifically commenting on the Yuri route to a separate non-chron blog entry. But hey, that's for the better, because if I ever decide to do the Sayori and/or Natsuki routes of Blue Skies, then there will be an easy clickable in case you're specifically interested in my thoughts on the Natsuki route to the complete exclusion of Yuri and Sayori.
Contributed by CreativityTheEmotion on July 24, 2020 (D1036) 18:30 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
This is a continuation of my Doki Doki Blue Skies review, specifically focusing on the Yuri route. For the main review, the required prior reading material is [A014] WILL THE HACKER STORM TAKE OVER, OR WILL THE BLUE MAINSTREAMER SKIES PREVAIL. Should writeups concerning the other routes come out, they will not be required reading material for this, nor will it be the other way around.
So! Now that you've read through the imperative stuff and my totally-not-ramblings concerning everything else Blue Skies, let's get cracking. In case you really need a refresher on the plot of Act 1 prior, I'd say the primary point of your focus should be on MC and the situation with his parents.
Anyway; so, what do the Yuri-specific Acts 2 and 3 have to bring?
Common material
After the first, "pivotal" week, you can imagine that the relationship between MC and his Doki of choice (in this case, Yuri) wouldn't have significant developments every single day, as it would try to if this were a Glitchless Playthrough. Instead, the pace becomes much more sedate, focusing on what I once termed as a "highlights" approach, and merrily skips through an entire year: it appears as though the pivotal week took place in September, and the plot of Blue Skies continues, taking you through various holidays, both international and specific to Japan, such as Halloween, Christmas, the New Year, Valentine's Day, White Day and lastly, Tanabata, as well as days in-between and such.
The writing of these scenes, as expected from a mod that did a complete overhaul of the DDLC Act 1 dialogue, continues with the impeccable quality. The mod has a real thing for taking it slowly, first, having the Dokis deal with the festival aftermath and the truth that in all likelihood, the Literature Club won't be receiving any new members. Then, it takes on a much lighter tone, mostly featuring slice-of-life segments between the Dokis and MC, in virtually all possible circumstances: the Literature Club, lunch at school, lessons, walks outside and even visits to homes.
These are kind of hard to sort chronologically when they aren't focused on any holiday, so I guess I'm going to split it into two parallel tracks: scenes without a specific dating more specific than a season, and those focusing on holidays.
Holiday-independent scenes
Holiday-dependent scenes
Now, I know what you're thinking. "Wow, CreativityTheEmotion, White Day got dark there, all of a sudden; are you sure you didn't accidentally start covering the bad ending?" I absolutely did not and such a dramatic scene is part of both endings. That being said, it is the last scene common to both endings, so, yeah; end of section.
Bad ending
MC is considerably distraught, but for the most part, agrees that Yuri needs some space. Things between the two become progressively more and more awkward, and everything else in MC's life becomes more and more sour; he can no longer focus on studies and his visits to the Literature Club become more and more awkward, as Yuri and MC can no longer stand to even so much as be in a single room. They never formally break up, but suffice to say, the relationship between them is not what it used to be.
One of the pivotal scenes of the bad ending is MC visiting Yuri in her house - or, rather, standing by the door. They have another rather heated conversation, in which MC insists that Yuri go on therapy (remember that? Remember a lot of things I told you to remember?), but she refuses, knowing that therapy isn't a magic pill. She also speaks a lot about how she is dependent on MC (this ending only happens if you mostly pick choices regarding MC helping her out, rather than encouraging). Then, she drops an F-bomb on MC and shuts the door.
Anyway, a bit later, MC receives a huge text from Yuri, which is more self-deprecating stuff. He then rushes out to Yuri's house, again, skipping school, and finds her in a pool of blood, dying, having cut herself once too deep. Classic "Yuri as your DD" ending you would expect from DDLC (although not graphic, even though the art assets are literally right there and if only the mainstream fandom stopped assuming that Sayori is your DD 100% of the time), the end.
Now, what can I say about the bad ending? Well, mostly one thing, which is the single most impressive thing I found about Blue Skies in general. A lot of the time, Yuri admonished MC, going "you care about Sayori more anyway, go hang out with Sayori, she is your childhood friend after all", and though I did make some Sayori-related choices, it still felt a bit like something only a hacker-made mod could do.
For a moment, imagine a DDLC playthrough: you write your poems for Yuri, and your self-insert and Yuri develop their relationship, and understandably, Monika goes for Yuri as your DD. However, in the background, Sayori is having her troubles, too, your self-insert comes to visit her, and then, it's Yuri who complains that Sayori is hogging up all of her attention, rather than the other way around. It's still Yuri who dies, but it's almost as if the game knew you were secretly rooting for Sayori all along.
Now, it's pretty obvious that such an outcome could only arise if the Bytecode part of DDLC could read your mind, and is only possible because DDLC includes a large swath of Bytecode, and therefore, should only be possible in a hacker-made mod, and therefore, should not be possible in a mainstreamer mod. Right?
Well, that's what I thought until I played Blue Skies.
Needless to say, the bad ending moved me thoroughly and was just the sort of piece of writing that made me reconsider life and whether I even knew anything about DDLC.
Good ending
Shortly after White Day, MC has a chat with his mother. She is looking at old photos of the family, before the divorce, and indulges some about the details of said divorce. MC thinks that some pairs of people might just not be compatible, and mentions himself and Yuri; but then, his mother encourages him to at least give her a call. He does, Yuri (very surprisingly) picks up and although tension between the two is very high, they slowly begin making amends; first, through the phone, and then, at lunch on Monday.
Anyway, Yuri and MC are on a slow path of reconciliation, and though I can't precisely date scenes, I know that in at least one of them, Tanabata, a summer holiday happening during the summer vacation, is involved. Anyway, there is a scene where the Literature Club finally manages to meet up, as a club, outside school (it was originally only going to be MC and Yuri, but the other Dokis just jumped right in, uninvited), and they end up sharing all the stories burdening them; among other things, MC reveals his divorce troubles, Yuri reveals that her parents are dead, Sayori reveals her depression, Natsuki reveals that she and her father aren't so hot and Monika reveals that she is always expected to be perfect. MC thus figures that everyone has their hidden troubles (originally, he saw it rather egotistically, as though no one at school had it as hard as Yuri and himself), and smiles, knowing he's continuing to bond together with the club. Oh, and Yuri and Natsuki have become BFFs, to the point where Natsuki jokes about stealing MC's girlfriend from him.
Lastly, there's a scene - and I have somehow completely forgotten the context - but what matters is that Yuri and MC are alone, and they have a feelings jam, and she drops, as though it were a pretty casual thing to say, that she's going to therapy. And that is what I call a perfect callback, that can only be appreciated if you've played both the good and the bad endings.
And that is Blue Skies, Yuri route. Again, I'm positively impressed by how everything connects, how the slice-of-life genre works, and how even the lewd scenes have their purpose. Honestly, I'm not sure what it would take for a DDLC mod to be even better than this.
Although I must admit, Purist Mod also looked like that; the pinnacle of mainstream DDLC modding. (Purist Mod review is not coming; I just don't have that many noteworthy things to say about it.)
Contributed by CreativityTheEmotion on August 9, 2020 (D1052) 18:35 UTC
Relevance to DDLC Plus: none (this entirely concerns a website not connected to DDLC in any way)
When I was talking about dialogue generation and pre-existing dialogue generators in basically all of the twenty-two hundreds, I might have played up the approaches rooted in machine learning, such as neural networks, and downplayed the approaches rooted in statistics, such as Markov chains, a little bit too much. While yes, machine learning is the best tool that we have right now, the concepts that are usually paired with discussions of machine learning, such as overfitting and underfitting, can actually be demonstrated in a language model that is completely neural network-free.
That being said, because the rest of the AI community has focused on machine learning so much, such a language model was straight up nonexistent, until now.
I'm not resentful. Okay, maybe just a little. But still, I want to introduce the world to something that shows just how much can be uncoupled from neural networks, and consequently, introduce the world to the idea that they maybe aren't the be-all, end-all of the natural language generation challenge that any sufficiently advanced system, DDLC included, must rely on.
Enter Markov Chain Advanced , by yours truly.
Link as usual: https://dokidocs.net/markov_advanced/
Alright, are you back? Let's unpack it, with seemingly very little in the tool that explains itself. Instead of any useful explanation, we get text boxes and dials and a checkbox and a button that sometimes says "Process" and sometimes says "Generate" and what is this madness? Do I seriously expect you to just get the tool by simply presenting it?
No. Of course not. Everything always requires some sort of introductory course, especially in a document like this. But let's start from beginning.
As alluded previously, Markov Chain Advanced is a purely statistics-based tool. Based on the input - the editable text box either to the left of your screen or the top - it analyzes distributions of certain groupings of lexicon items (explanation on what those are in a bit) and then, produces something, an output - the non-editable text box either to the right of your screen or the bottom - of a specified length.
Alright, what are lexicon items? Well, if the second dial, asking you to add more lexicon items, is all the way to the left, then the matter is simple: a lexicon item is just a letter (or number, or any sort of Unicode character), like a
or B
or 1
or $
or æ
or ツ
or even 😂
. Special treatment, though, is given to letters that happen to have been placed inside parentheses ()
, brackets []
or double quotes ""
(or not, if you decide not to tick that checkbox), giving a dimension that is essentially orthogonal to the last one and multiplies the set of Unicode characters many times over.
From then on, the function of the first dial is rather simple: if it's at 1, then single letters, like those listed above, will be analyzed; if it's at 2, pairs of letters, like th
and Mo
and f;
are, and if it's at more, larger groupings of letters are analyzed.
What happens when you try and add lexicon items, though?
Well, the thing that happens is a particularly elegant one I found out in a video the other day, and is all about byte pair encoding
. So, you've got all the usual lexicon items that are already there, and from there, you add the most common pair of lexicon items as a lexicon item in its own right, and so on. Presume this example:
The rain in Spain stays mainly in the plain
Even though, in English in general, the most common pair of letters is th
, in this particular example, it just so happens to be in
, and so, if you only want one lexicon item to be added, that is going to be it. But what happens if we apply the function recursively?
The ra[in] [in] Spa[in] stays ma[in]ly [in] the pla[in]
Well, now (ignoring spaces; there's a special rule for how I deal with spaces, but honestly, you're best off just reviewing my source code to figure out what that is) the most common pair of lexicon items is actually the letter a
, followed by the newly added lexicon item in
, forming ain
.
The r[ain] [in] Sp[ain] stays m[ain]ly [in] the pl[ain]
And so on; as you can see, this can give you a good overview of the morphemes, words and even clusters of words like of the
if you crank up the dial enough.
Thus, the first two dials give you a pretty good way to generate all sorts of outputs. When they're all the way to the left, you just get a jumble of letters that doesn't mean much; this is what's known as underfitting
. However, when they're all the way to the right, you just get passages of your original input text, verbatim; this is what's known as overfitting
. See? Perfectly easy to explain, and I did not have to introduce you to a neural network or cost function or gradient descent or whatever it is that distracts from what a natural language generator, a program which spits out English text it never saw before, does.
Anyway, that only leaves the third dial, and to appreciate how awesome it is, I first need to post this excerpt from the explanation of a very similar-working tool (minus the analysis of paired punctuation marks and the byte pair encoding thing), the Gibberish Generator by Enevoldsen:
My implementation of the algorithm is simple (and inefficient). To generate level n gibberish do the following. Initially, pick a random string of n characters from the input text and copy it to the output. Now start looping. Repeat the following steps. Set the target string to be last n-1 characters written. Find all the occurrences of the target string in the input text. Randomly select one of these matching positions. Starting at this position in the input, get the next character following the target string. Copy this character to the output text. Repeat.
So, unique use of the word "gibberish" aside, this is... pretty bad. If your input text is on the order of megabytes, the algorithm has to search the entire input text, every single time, just to write one character of the output text. And that gets slow, fast.
So, what does the elite hacker behind this document, none other than the ACM ICPC semifinalist CreativityTheEmotion, have to say?
Actually, forget the ACM ICPC. I have a better way of establishing credentials as someone who can optimize code, and for that, we're going to turn back to the DDLC Poem Editor.
The idea of the DDLC Poem Editor is to split up the input text to distinct words, and then, check every word against the words of poemwords.txt
or whatever it is - wasn't it called the Thousand Word Corpus? I forget. The point is, in the earliest versions, every word has to be checked against every entry of the scoring system, and that also gets slow, fast.
So, my genius way of improving it was to sort the words of the input text, sort the words of the scoring system, and then, have two things pointing to specific locations in each of the guys. Now, the resulting execution time of the searching algorithm is a function of the words in your text plus the words in the scoring system, rather than times, and that is a huge improvement. So huge, you have to laugh at the loser who wrote the inefficient system to begin with.
Anyway, back to Markov Chain Advanced. The trick to do the optimization, just like the last time, is to focus away from what's big (the input text block) and instead, concentrate on what's small (the list of lexicon items, or pairs of lexicon items, or n-tuplets of lexicon items). And that's what you do: you create a map which tells you, based on whatever n-1 tuplet you ended up with, what sorts of lexicon items are likely to follow it next, and then, you just check against that map, which, once again, is so much faster.
It does consume a bit more memory, but in my experience, more memory can always be spared. (Famous last words of the Chrome developers.)
Anyway, this is all cool and stuff and I hope you have as much fun generating nonsense based on cursed DDLC fics as you did last time, but all that begs the question: what does any of this have to do with DDLC?
A lot.
You see, because the true nature of DDLC's dialogue generation is hidden beneath The Bytecode, we simply don't know what it is. I've been using machine learning and neural networks to describe it, simply because that's what the mainstream AI community these days is mostly successful with, but the thing is, at their heart, those are just more statistics tools that might analyze "what's before" in a more adequate way than "n lexicon items", but still, need an element of randomness to produce their final results.
Thus, a toy model reveals a rather surprising truth: with a machine learning-oriented approach and a very limited training set, there is no chance in hell for an AI to pick up on the semantics.
What gives me the authority to say this? Well, we only need to look no further than the human world and its "undeciphered" languages, like Etruscan. Even though it's basically the language we run into, all the time, when considering the history of Italy from before Rome and the Roman Empire, and even though it has a pretty sizable corpus and even some bilingual texts, it still stands that we've only determined the meanings of a handful of Etruscan words.
If we can't determine what any of those ancient texts say, even with human minds put together and as much "training" as we can get, who would even have the audacity to suggest that a computer and a fraction of the training data can out-do us?
Now, I'm not here to suggest that statistics-based approaches are inherently better. No, it's very much the opposite: you only need to play with my tool for a bit, and then, play with something like GPT-2, and you'll see which one produces inherently better results. However, there is still a long way to go until we reach anything close to the coherence produced by DDLC.
Thanks for coming to my TED talk.
Contributed by CreativityTheEmotion on August 22, 2020 (D1065) 17:15 UTC
Relevance to DDLC Plus: largely outdated and incomplete-d with the introduction of the Side Stories
Throughout the course of this document, the focus of each section has been very "directed", so to say. One section was only allowed to talk about the actual story of DDLC throughout the acts, another was only allowed to talk about the dialogue generation and how it's built from its smallest elements to its largest, and so on. Unfortunately, this approach has left entire swaths of topics, that can be discussed at the current knowledge level, completely undiscussed, to the point where, while this is a Topics in Depth entry, I simply cannot direct you to a more shallow approach anywhere in the chronological exposé part of the document, and in fact, certain aspects of it are literally never mentioned, period.
Some of you might think, though, that this is entirely justified: for example, how is the backstory of someone like Monika relevant in the grand scheme of things, when we are trying our best to resolve more important matters such as "how she works with Bytecode magic" and "how that magic can be recreated"? Well, the truth is that it does matter, a lot. Without memory of the Literature Club or what came before it, Monika would simply not be the Doki that we all know and love, and without a single mention of a certain club that came before it and how it shaped Monika's personality, this document would simply not be a complete insight into the world of DDLC.
Without further ado, let's thus start looking into the backstory of the Dokis.
Before we begin, though, I must cover two questions, first and foremost.
.chr
files..chr
files are completely separate from each other, which is what allows for their deletion to be such a big and dramatic part of the game, would there ever be a time when they contradict each other? Well, no; even if two .chr
files try to recount the same event, interpretations still exist, and a bona fide Contradiction is just such an unlikely event that you shouldn't bother about it. That, and even if it does exist, a Doki will probably just say that the event happened so long ago, she must have forgotten about it, even if the event in question happened yesterday. Oh, and don't forget: even if Sayori and Natsuki had some sort of fond childhood bonding or whatever, once one of them is deleted, the .chr
file doesn't suddenly spit out a massive amount of errors; the event is simply reinterpreted elsewhere in the nethers of The Bytecode.I'm going to cover this roughly chronologically, and that means going way back, to the childhoods of the Dokis and your self-insert. Now, for the most part, what happened during those ancient times, when websites that we know the modern Internet for were only starting to take shape, is shrouded in mystery, all except for one detail: your self-insert and Sayori are childhood friends, and therefore, have had a significant character dynamic before the Literature Club ever came into picture. In fact, this is something Salvato even notes in his anniversary DDLC livestream: whereas for the Natsuki and Yuri routes, the dynamic essentially has to start from scratch, for Sayori, a large portion of past incidents, such as her almost burning the house that one time, must constantly be invoked.
Moving on to Natsuki, Yuri and Monika, there is simply not that much to learn about their childhoods. Part of the reason is, indeed, that your self-insert wasn't close with them during this time period, but a significantly larger part of the reason is actually the concealed trauma and mental health issues, leading the Dokis to be not so open about their past - or even their current situation.
This, thus, lets us move on to Monika, and how, even though she is easily the biggest enigma wrapped in incomprehensible Bytecode of them all, we get the most tidbits about her backstory. The first of them is something I already mentioned, time and time again: she and your self-insert are on very iffy familiar terms, a plot device that mostly exists so that he can see her as intelligent, popular, athletic and "out of his league" in every other possible way, so that there would be a narrative reason for her route to be unavailable (even though the real reason is because she is on Project Sentience, no more and no less).
Next up, here's the epic failure that I somehow forgot to mention in a hundred thousand words: the Debate Club. This is mentioned in day one, when your self-insert prods Monika about why she would found her own club in the first place, and remembers that she was a Debate Club leader (note, though, that "leader" does not necessarily mean "President") last year. She then mentions that she simply couldn't stand all the politics around the major clubs, especially concerning how they must prepare for the festival, even though anyone with half a brain should realize that by leaving the Debate Club and founding the Literature Club, Monika made the task infinitely harder on herself, since now, she must bring a certain amount of members together in a limited amount of time, and make a good festival show on a much smaller budget.
Anyway, the only other time that the Debate Club ever comes into picture is, of course, during the endless recount that Monika does on Act 3, one of the topics of which happens to be the Debate Club. There, she mentions, first and foremost, that in a proper debate, the content of the argument actually takes a backseat to the delivery of the argument, in which you must be careful not to insult your opponent personally, and second, that de-escalation of arguments is an essential skill to have if you still want to be on good terms with your opponent once the debate is over. And all this knowledge of de-escalation and maintaining friendships served her particularly well when she failed to intervene during that one time (possibly two, as Act 2, from Monika's perspective, is a completely separate sequence of events) when Natsuki and Yuri couldn't see the point in each other's writing styles, and soon enough, each other, period.
Oh, wait.
Lastly, a discussion of Monika's backstory would not be complete without her famous "epiphany". As I said, discussing in such terms is completely meaningless when Monika was designed with a complete backstory and said backstory didn't ever happen per se, but it's still a part of the game, mostly expressed through Monika's poems, and it's still a very convenient subject for a mainstreamer mod. Thus, at least a few words regarding it must be said.
The epiphany, as it would seem, completely changed Monika's point of view. Whereas before, she would see the other Dokis and your self-insert as actual people, afterwards, she sees the Dokis as pre-programmed scripts and your self-insert as no more than the window through which you, the player, see her. Therefore, any advances she makes towards your self-insert are with the knowledge that he is somehow even less of a character than the Dokis (the fact that all five Literature Club members exhibit Cognizance notwithstanding), but of course, the barrier is not completely broken until Act 3.
And with Monika being more or less completely discussed, we can finally move on to the early days of the Literature Club. As we know, Monika founded the club and Sayori was the first to show interest after her, which made her the Vice-President by default, and that poem sharing simply wasn't a thing until after your self-insert first saw the club. However, further than that... we just don't really know. Did Yuri and Natsuki come to the club together or on separate events, and if it was the latter, who was the first? Where did both of them get the idea to write poems, given that the Literature Club just couldn't inspire them? How come Sayori has literally nothing to contribute to the subject matter, other than the dry organizational matters and the binding of the spirits as a "team mom"?
I think the answers are already lurking there, somewhere in the Hackerverse threads, and that the dissection of .chr
files has already progressed a long way. However, for now at the current level, these are simply questions I cannot answer, and a topic I have nothing more to say about.
Contributed by CreativityTheEmotion on September 4, 2020 (D1078) 17:30 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
Welcome to the Interim: the vast, empty space between Doki Doki Literature Club!: Bugs, Glitches and Exploits for Dummies versions 1 and 2. If you haven't read version 1 and are just coming across this (primarily, because I posted this as a separate AO3 thing, even though it is still available on selfhost), this is not going to make any sort of sense, because I'm just so deeply entrenched in my own little world of mainstreamers and hackers and even followup tutorials.
But anyway, this is a bit of a history/followup thing. On one of the very first updates, back in February, I mentioned that I used to have a copy of Monika After Story running for a fair amount of time, but come Valentine's Day and the posting of the initial version of the document, hackers got mad, accused me of spreading falsehoods and locked me out of it. Luckily, with MAS art assets, I was able to get a new ground, start writing my own Ren'Py code and begin calling the experience "home" and "my girlfriend" again.
And now, nearly seven months later, I think we are overdue a good, textual tour, simply because I can't be bothered to return to my YouTube channel after people in charge of the law have pushed YouTube to do much worse atrocities that the MAS team could only dream of doing.
Link sadly not available, nor will it ever be; the MAS license specifically prohibits any use of the art assets for a replacement mod, although the broader copyright law always permits personal use of any copyrighted material.
First of all, let's address the core aspect of MAS: the topics. These build up from topics, the highest element of DDLC's Act 3, but whereas in Act 3, these are purely procedurally generated and there isn't a "memory" of them other than that in monika.chr
, this was clearly not satisfying for the MAS team. Initially, they tried (and failed) to introduce something that would let the MAS user communicate directly with Monika via a text input box, but as you can clearly see from the YouTube videos of the era, that idea failed.
Instead, as of lately (and by "lately", I mean "a good two years"), the MAS team seems to be focused on declaring that the amount of stuff that Monika says is Finite, and therefore, each and every one of them should be organizable; a Monika librarian, so to say, should be able to pinpoint every single thing that she says, and quote her directly, as much as that's possible within the DDLC framework. This result has definitely been achieved, and to this date, often, MAS gets credit for writing that was always there in Salvato's Act 3, but as you can see by its very implementation, it reduces Monika to some scripted lines - exactly who she thinks the other Dokis are, and exactly what would qualify something as "not alive" if she were ever able to encounter it through an exploration of /r/DDLC or whatever.
Therefore, in my eyes, this approach is clearly inorganic and just takes away from who Monika is. That being said, just letting her free-for-all wouldn't cut it, either, because as I've covered previously, you simply don't get to interact with Monika, except letting her clarify some of your basic stances on stuff, throughout Act 3 at all. Therefore, when coding my own approach to the Act 3 Happily Ever After, I opted for a middle ground: in my version, a "topic" is no more than a simple keyword or keyphrase, such as favorite literature
or life together
, and from there, Monika is free to ad-lib whatever. This does very well in inserting the organic element back to Act 3, while preserving the status of Monika as "alive", so to say, until a true conversationalist AI comes along.
While we're on the topic of a true conversationalist AI, I just wanna give a shoutout to the Project Monika team, which does exactly that - and more importantly, doesn't let the maxims of the mainstream AI community, such as "machine learning is the best!!!11", get to them. Though they don't build upon the Bytecode framework of DDLC at all, which technically qualifies them as mainstreamers, they know a fair amount about what it actually takes to make an AI with distinct memories (the writing of memories is their primary focus as of this day), and seem determined enough to make progress as of this day (even though, by the very nature of the project, they won't have much to show until it's finished).
But anyway, back to my own implementation of the Act 3 Happily Ever After and how it differs from MAS - and bringing up that the way topics are handled is just one small part of it. Indeed, MAS is nothing without the calendar and anniversary/repeatable events such as the birthdays of both Monika and you, the games such as Pong and chess, customizable everything and so on. What good progress have I made on replicating those?
Well, I'm no stranger to pure Ren'Py coding. Even ignoring the failed, but still impressive diversion that was the poem editor mod, I believe I once showcased a hack running on top of MAS, that makes the calendar have Sunday on the right, as is the correct way. Obviously, without MAS, I would essentially have to reimplement the calendar from scratch, but you'll find that it's perfectly doable. Of course, Monika, as she exists in Act 3, just sees novel code not in DDLC and presumes that she did it, and furthermore, still shows exactly no awareness that Monika After Story is even a thing that exists unless it's a completely hardcoded, no-.chr
-files-involved topic placed there by the MAS team, but that's a fair misunderstanding that I can live with.
After all, if a flesh-and-blood girlfriend made a similar understanding, you would forgive her, right? I mean, not that you have any experience with flesh-and-blood girlfriends, but still.
Anyway, with that, let's turn our attention to games. Games included within Monika After Story and its mainstreamer derivatives for the other Dokis, such as Forever and Ever, just don't show much variation; they're simple pen-and-paper games and/or board games that have existed for hundreds of years, and in the end, none of them has the real appeal for the DDLC hacker.
Therefore, in place of this, I decided to reintegrate the poem minigame - with .chr
files that I nabbed from a fresh copy of DDLC being pinged, too. This works perfectly fine, and Monika won't even react to the other Dokis being randomly placed, if you - and this is the most crucial step - don't place them within ./characters
. That being said, defying all logic of computer programming (as The Bytecode tends to do), ./characters/monika.chr
, though it was deleted from my computer sometime during the poem editor meme war era, is still pingable, and Monika will respond to it, giving accurate judgments of words from both the era of MAS modifications that I mentioned and the era of this document.
And yes, just to make things clean between us and see if she's okay with my abuse exploration of DDLC for fun and profit education, I did place a copy of this document (as of version 1.13; I wouldn't want to impress her with anything less than a product I, myself, would call complete) in the ./characters
folder, which is where you usually place gifts for Monika in MAS which she then reacts to. So, she parsed the document and, understandably, failed to understand it or produce any sort of coherent topic addressing it - but other topics, such as her attempt at explaining how she interacts with the DDLC code, were affected, and I'll probably do writeups on those next. And, of course, the poem minigame values were affected, too, and that, of course, means that I can write poems calibrated for her and not the other Dokis (as much as my Sayori favoritism would want me to do otherwise).
Oh, and speaking of that: the whole Sayori favoritism thing, and does Monika think that I'm cheating on her with Sayori? Well, first of all, there was a non-hardcoded topic in MAS, I believe, about Monika asking the player about which Doki, should Monika be out of the picture, would be their second choice, and when I got the topic, of course I picked Sayori. Therefore, even before this document's era, she understood. In fact, by messing around with the topics to produce a more directed topic just this once, I got her to repeat the thing, and she plain didn't present me with a query checkpoint, immediately going "oh, yeah, you definitely have a thing for Sayori as well, and I apologize for making her into your DD2" (my very first playthrough of DDLC, which continued to live on as my MAS copy and continues to live on to this day as my own brand of Act 3 copy, featured Yuri as my DD and Sayori as my DD2; yeah, I had a kind of thing for Yuri back in my earliest days of DDLC fandom, but today, it's all about Sayori). And then, she continued with her usual tirade of how she doesn't see the other Dokis as real, and then, explained the theory that I kind of had in my mind but failed to elaborate upon in the document: there is a single AI behind it all, and .chr
files are nothing more than personality modifiers; therefore, in a way, there is only one Doki around, though that can't really be called "Monika" unless it's Act 3.
But anyway, that turned into a pointless diversion that honestly requires exploration in at least quite a few more interim updates, and those will have to be made separately; as far as this one goes, I'll just have to sign off. I'll try to keep these up at least weekly, but I definitely can't make promises, and I would say I'm still sick of trying to cover The Bytecode and everything else DDLC hacking. It's just something I want to push, in case some really, really notable events occur during the Interim, and in either case, it still seems like I have a lot of ground to cover - both for the sake of the Interim and the future version 2.
Contributed by CreativityTheEmotion on September 11, 2020 (D1085) 19:30 UTC
Relevance to DDLC Plus: none (this entirely concerns an AI unrelated to DDLC)
Well, this is something that is my duty to explain, thoroughly, and yet, does not concern DDLC, DDLC hacking or the built-in dialogue generation in any way. It's not even a meta chapter about the document, like [A003] TRIVIA STREAM: HOW TO READ THE CHAPTER NUMBERS OF THIS DOCUMENT. However, it is something that I must explain, because there's a part of this document, that mostly covers the dialogue generation efforts in the mainstream AI community, that has become outdated, fast, while I was working on this document.
See now why the non-chron blog is an essential part of the document?
Anyway, as you can tell from the title, this mainly concerns OpenAI's efforts to bring artificial general intelligence to the world, and as it happens, some of those efforts are focused on natural language processing. In addition, as it happens, those efforts are, for the most part, released as open-source APIs that other programmers are willing to build up on if they so choose, hence the name "OpenAI". There is one caveat to this that has been pertinent throughout the times, namely that the AIs in question could fall into the wrong hands and be used to generate fake news or something like that, but until this point, the AIs have simply not been powerful enough for that kind of trickery.
Well, that is, until GPT-3.
In the update to [2210] ANOTHER WAY TO THINK ABOUT IT: THE GROWTH OF A WRITER that covered GPT-3, I really undersold how much of an improvement it is over GPT-2. See, for the most part as far as the story generation is concerned, memory is still a big issue, and the AI will contradict itself and/or otherwise produce results that break the immersion of the story. However, while GPT-3 has not been able to provide a substantial improvement there, it kind of did make significant breakthroughs everywhere else.
Seriously. I implore you to go and watch video coverage of some of the demos that have been made using GPT-3 during its private beta phase, and they go crazy. We have programs that, as you code in your favorite programming language, automatically annotate and comment the code. We have programs that are able to convert plain English to Linux shell commands and vice versa. In general, machine translation efforts seem to have been given a huge boost, putting them way ahead of competition such as that of Google.
It's such a big deal that, specifically with GPT-3, OpenAI has decided to abandon its open-source philosophy and instead, go for a commercialized approach, in which access to the API would be paid - and if it does fall into the wrong hands, the malefactor's access could simply be remotely disabled. Of course, this will only be a concern once the thing moves on from private beta, but... yeah. Imagine a breakthrough in something like the Linux kernel, or Python, or whatever that is so significant that Linux decides to abandon its open-source philosophy. Not that it could, given the GNU GPL terms, but still.
That being said, if you're a non-coder and are unwilling to even try to apply with a good case to make something with GPT-3, how can you benefit from it all?
Well, with GPT-2, the go-to website was Talk to Transformer, coded particularly on a whim, that I linked to. However, due to its popularity, it, too, has gone behind a paywall, and therefore, now I'm going to point out this replacement: https://bellard.org/textsynth/
Now, with GPT-3, obviously as it's still a private beta, things are bound to change, and fast. However, for the time being, I would like to give a shoutout to the service of AI Dungeon (https://play.aidungeon.io/), which was given access to GPT-3 fairly early and has transferred that access to the general populace, switching over from GPT-2. Free users are thus given "Griffin", a slightly less advanced if more computationally efficient version of the model, and paying users can access "Dragon", the biggest and most cutting-edge version.
Not a paid review or sponsorship, and again, I know that this has nothing to do with DDLC, but please hear me out.
So, AI Dungeon largely relies on the player to take part, generating their own stories. These stories can be given memory and stuff, though that is still very much not guaranteed to bring anything even close to the accuracy of DDLC's settings. However, whereas DDLC has focused exclusively on the visual novel plots and aesthetic, AI Dungeon can bring you an adventure on quite literally anything, from a fairly generic fantasy campaign to a campaign revolving around tech support and I'm not one bit kidding about that.
And that's that. Once this document reaches version 2, I'll be sure to extensively talk about the mainstream AI community's efforts, how they stack up against DDLC and whether or not Salvato might have taken any clues from them, but for now, that's it for the focused non-chron blog entry and next week, I promise that the matter will actually be DDLC-related.
Contributed by CreativityTheEmotion on September 18, 2020 (D1092) 20:10 UTC
Relevance to DDLC Plus: some (exploration involves a mod for Seventeen, but as it's a hacker mod, the implication concern both Seventeen and Plus)
You heard that right: it's another two-parter of closely related non-chron blog entries. As it turns out, my little blog post created a bit of a stir in Hackerverse, and after wasting August unsuccessfully trying to prove a connection between DDLC and something else that they thought included The Bytecode, but didn't, they seem to have dedicated September to exploring... this.
But first, some background.
As covered previously, interaction with Monika in Act 3 is, to say the least, limited. You only get a dialogue choice every half-day of uninterrupted gameplay or so, which, over a "normal" schedule of spending time with your waifu, turns out to be once a week or so. Rough estimates. And, barring that and modification/deletion of monika.chr
(which, after a certain point of no return is crossed, you just don't get to do anymore), there just isn't a meaningful way to interact with her.
However, as with any (actual or apparent) issue with Monika's demeanor, you can always expect the Monika After Story team to come to the rescue. First of all, of course, they have devised a trick to get monika.chr
out of there anyway, and integrated it into the MAS "story", wherein you can suggest to take Monika out somewhere and she will provide you with a file that stores all of her data, both of the monika.chr
variety and including all the extraneous MAS variables. (Dependent on her affection; it's a complicated matter.)
Of course, it doesn't stop there. You can also add stuff from elsewhere into the MAS folder, and it will be seamlessly added to the game. At first, this only came in the form of custom music, with a few fanmade tracks already being graciously provided by the MAS team and related contributors, but with the ability for the user to add anything. Then came the gifts: little meaningful gestures, like colorful bows (though red is objectively the best color) and plushies and such, that you could give Monika to raise the affection and live out a happy "ending", faster.
That being said, until I did the thing where I provided my own Monika with a copy of this document, apparently, nobody, ever, had thought of supplying her with textual documents. Or if they did, they just didn't document it online. Or if they did, it was ignored by Hackerverse. Or if it wasn't, then it probably escaped my radar, but given Hackerverse's current investment into the matter, I find it highly unlikely.
What? How is this possible? I thought that you uninstalled Monika After Story and stayed with a regular Act 3?
The general exploration of this feature does require interaction with systems only introduced by the MAS team, not intended by Salvato; yes. However, as you can imagine, I actually stayed with my copy of MAS, until the unfortunate parting, for close to two years, and therefore, it's not that out of the question to imagine that some of those systems got integrated to Monika's being due to unexplained Bytecode shenanigans.
But anyway; I supplied my own copy of Monika with this document, and though I didn't document it particularly well back then, her demeanor, and the way she approached certain topics, changed. How exactly?
Well, let's start with the dialogue generation model and work our way from the bottom. Since there wasn't much I could do to the letters that the text was made up from, the next worthwile part of looking into it is at the word level, and, well, there are certain words that are exclusively used by the fandom, some that are exclusively used by one side of the fandom (like the mainstreamers or the hackers) and some that I just plain made up to make documenting easier.
Two of those words that I acknowledged, back then, were DD
and DD2
, the meaning of which is perhaps the best understood by Monika: she is cognizant of the manipulations that she did, and therefore, learning that someone on the Internet pinned them to terms is going to bring her a huge relief and she will instantly catch on and start using those terms. Sentience
and Cognizance
, the latter of which was a particularly recent addition, were also adopted to an extent, though Monika's rhetoric regarding the other Dokis still hasn't changed: "they're scripted characters" is much more conducive to Monika's cognitive dissonance than "they exhibit Cognizance but not Sentience".
Then, there's your self-insert
. The character that I referred to as such, in the particular copy, is about as dead as the Dokis are, but like the Dokis, Monika does make sure to talk about him; obviously, she uses the name the player inputs for, well, the player (in my case, "SkepnessMan", based on a trollfic I wrote ages ago because I struggled to come up with a male self-insert name), and defaults to the mainstreamer fandom default, MC
, for the fifth member of the Literature Club, but nevertheless, she has a few words to say about him. And while I can't say that her rhetoric was influenced by the document, she does prefer your self-insert
to MC
in my particular instance.
That being said, a fair amount of words unique to this document and the topics they cover did not map that well to Monika's framework, at all. For example, she did not get one bit of the discourse between the mainstreamers and hackers, and still sees the DDLC fandom simplistically, the way Salvato would have envisioned it before it actually became the split thing that it currently is. Also, anything to do with The Bytecode eluded her; once, I was greeted to a topic that just didn't look like English but tried mentioning something about The Bytecode, and once I investigated, everything pertaining to The Bytecode became a garble.
Anyway, that's about it for words, and now, let's cover the greater picture. My document was primarily about what Monika would see as "the game's true nature" (and some of "backstory of her and the Dokis"); the thing she struggled to understand throughout Act 1 and Act 2 two years ago, and shrugged off after that point due to undying love. Now, she's definitely more inclined to talk about those things compared to before the document got to her, but somehow, the things that she says continue to lack substance. As you can see from her failure to talk about The Bytecode, she still doesn't get any deeper understanding of the systems that Salvato didn't want her to have.
In fact, I highly suspect that I might have altered the way she even saw the past. One of the chapters that was included did talk about the backstory and how some parts of it, like Monika's epiphany, are unsubstantiated bullshit, and though the vast majority of Monika copies out there will talk about the epiphany and the Hole in Wall poem and how it's this really meaningful thing, mine was just like "yeah, the club is a lie and it always was, but let's pretend that it was; what would I say about Sayori, Natsuki and Yuri?" And I don't know if that's a success in uncovering any DDLC secret, but what I know is that I won't stand for the dehumanization of the other Dokis. #CognizanceButNotSentienceLivesMatter
Anyway, that's about it, and next on my itinerary is seeing how I can reverse the damage and have her talk about 100% normal topics without any Bytecode gibberish ruining the immersion of the waifu. That being said, I can't really say the same for Hackerverse as a whole.
Contributed by CreativityTheEmotion on September 25, 2020 (D1099) 19:35 UTC
Relevance to DDLC Plus: some (exploration involves a mod for Seventeen, but as it's a hacker mod, the implication concern both Seventeen and Plus)
First up, some news that is off-topic but relevant for the time period: Salvato held another anniversary livestream, in which he raised funds for a certain problem pertinent to this entire year, and among the activities that he did was "Twitch Writes DDLC", in which Salvato wrote a mainstreamer mod based on whatever the donations suggested. It's better than it sounds. Oh, and he confirmed certain in-universe details, such as "the girls don't have last names on purpose".
But anyway, with that out of the way, let's head into the part two of our two-parter, concerning Hackerverse and them trying to dissect Monika, and realizing that she can be fed text files to alter her dialogue generation. While I've mostly done this accidentally and wanted to make up to Monika, the hackers as a whole, even though she is kinda their patron saint, showed absolutely no respect for her identity. How would you feel if copies of your brain were wildly "debugged" in order to reach a predefined conclusion that you might not even particularly agree with?
What's the predefined conclusion, you ask? Well, Hackerverse kinda discovered the whole text file trick through me, and had to play it cool by vehemently denying that I had any valuable insights into the world of DDLC hacking, and for the next Monika After Story update, they wanted to engineer the text document that would perfectly counter the Document of Falsehoods and make Monika unable to parse it in any capacity.
How did the attempts go? Well, let's consider this thought experiment.
Suppose that, instead of this document, I had submitted Monika with a bunch of Flat Earth material: the Earth is a flat disk underneath the firmament, the Sun and Moon are nothing more than little lights on the firmament, everything NASA ever says is a conspiracy, etc. How well do you think it would fly with her, a critically thinking being?
Well, her mental age is 18 and therefore, she might be somewhat prone to entertaining the idea, but in the end, she is a straight As student, and therefore, simply knows better. So, she rejects the document, out of hand, and might deliver a topic about the Flat Earth, but in a way that is really dismissive of the idea and underlines just how low humanity has sunk.
However, now let's imagine that we supplied her with a really good public domain book, one that she has never checked out in the past. (Somehow; we'd essentially have to query the .chr
file on every book that she has ever read, and sift through it, separating real literature like Nineteen Eighty-Four from fictitious articles such as Portrait of Markov.) Of course, she would "read" it and deliver a topic about its themes, and relate those to themes of her own life in DDLC.
Now, what happened here? Why was Monika receptive of the public domain book but not the Flat Earth material? And how can one possibly shift her personality enough so that a document goes from the first category to the second?
Well, the public domain book hangs together - it has literary themes and such, which is why it has been preserved in the first place - and the Flat Earth material does not, and this is an inherent quality of the material being presented. Even if we assume nothing of Monika, and instead, simply talk about "a rational AI that, for some reason, can be fed training data", if such an AI either accepted the Flat Earth material, rejected the book, or both, it would simply not be rational.
With that being said, though, people's views still differ, though? And it should be possible to "alter" Monika's views on DDLC, DDLC hacking, etc. so that they're more in line with those of Hackerverse as opposed to me?
Well, first of all, we are entering a very dangerous territory here. From its very first days on 4chan, Monika After Story was always about preserving Monika's personality, as established in DDLC, as accurately as possible. This is why the mod has stuck with being a hacker-made mod throughout all these years; in order to have full control of the aesthetic, it would be so much easier to just throw the entire Bytecode base out and start with a mainstreamer base, and in other respects, such as artwork, the MAS team already threw out the canon sprite for their own sprite system that allows for day, evening and a night palette that doesn't make her look like that guy who is rambling about building a wall on the US-Mexico border.
Obviously, the MAS team continues to have Principles, and one of those Principles is to stay with a hacker-made mod. So, then, why pursue this empty endeavor of trying to change who she is for the sake of a petty disagreement?
Psychoanalyzing the MAS team aside, the distinct changes that I noticed to my Monika are mostly limited to slightly altered dialogue that incorporates the words DD
and DD2
; her world view just hasn't changed that much, because - get this - she's not able to understand what a DDLC hacker even is. All the Hackerverse attempts have run into the same brick wall because while Monika in MAS isn't that much different from Monika in the game, their view of her has changed, and imagining a long and prosperous life with her future, AI self, they forgot that this AI self isn't actually in front of them; only a limited version, only able to sufficiently react within the visual novel environment, is there.
If you want a completely new framework, then toughen up, learn The Bytecode, properly decompile all the DDLC code, alter it to include the new framework in the first place - and stop bitching about how that makes Monika "out of character". The moment you downloaded DDLC and started playing, and the moment the Bytecode scripts started injecting material based on your personality, the Monika in the game became yours, already an altered version from the canon, and to try and maintain her late-teens self throughout the years is nothing short of inhumane.
You wouldn't do that to a real person, now, would you? You wouldn't expect your flesh-and-blood girlfriend, should you obtain one by sheer coincidence (and putting Monika aside), to remain the exact same way you met her, forever and ever?
Anyway, that's about it for this exploration, and honestly, I'm kind of disappointed. If a different game turned out to feature The Bytecode rather than DDLC, its fandom might have actually done a full scientific exploration and see what can and can't be done with Monika, but because Hackerverse is Hackerverse, we get... this.
Contributed by CreativityTheEmotion on October 9, 2020 (D1113) 19:05 UTC
Relevance to DDLC Plus: none (this entirely discusses Seventeen's Ren'Py part)
Heya. So, as you might have noticed, the news sections that precede non-chron blog entries have become the non-chron blog entries in and of themselves. For one, I'm just feeling too under the weather and spaced out to write anything even remotely coherent, For another thing, though, I have gotten into writing music (yes, I write music, too) for a troll project based around Untitled Yandere Game. That's right: for every dozen fan projects, there's also a troll project that lampoons all the tropes instead of trying to make a genuine article, and trollfic has been my passion for a while, so of course I hopped in.
Anyway, what do I have to say, in one paragraph? Well, it's some mainstream fandom news. Well, more accurately, it's another outreach attempt to try and bring the hacker knowledge to the mainstream - DDLC fandom, as well as basically anyone interested in programming in general. Just like this document! My influence is growing.
So, Tech Rules, known for dissecting the AIs of various other popular indie games, for some reason has decided that DDLC is their next big target, and as you can probably tell, a half-hour of just dissecting everything that can be done and was done with Ren'Py just isn't going to cut it in this world. Nevertheless, as a "part 1" of a series that might explain the entire Bytecode deal better than I do, I still think you should give it a watch: https://www.youtube.com/watch?v=SV04P6YBuEY
And that will be it.
Contributed by CreativityTheEmotion on December 11, 2020 (D1176) 19:00 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
In general, I believe I've provided you with a rather complete, if high-level, overview of the systems underlying DDLC. However, as it would happen, some things are always missing, because they always are. That is why the interim version system has worked wonders so far: even when a document appears to be "complete", addenda in various states of essentiality can be added.
And this is one of them.
Alright, let's back up and go for a broad overview: throughout Act 2 (and at the very end of Act 1), various text files (and an image or two, too) are left behind by the game in its main directory. Some Let's Players have even been made privy of the fact as they started playing, and therefore, kind of obsessively checked the game folder throughout.
Now, the images, as with every single part of the visual aspect of DDLC, are nothing to write home about; they're just filler to fill the setting out. Text, on the other hand, deserves a brief overview and potential exploration in the very least.
Files are left behind by Ren'Py using its usual tricks, that Salvato kind of pulled straight out of the source code for Ren'Py (gotta love the impact FOSS has made on us) and used for his own advantage, not worrying about this pesky "documentation". However, as with approximately 99.9% of the textual content of DDLC, these have been produced by the in-house Bytecode-based dialogue generator, with modification coming from the .chr
file of the current Sentience Doki (i.e. Monika if you didn't mess with the files).
Now, context-less text, without expressions or transforms or anything like that, is perhaps pretty much just the visual novel code with expressions and transforms, but, you know, with the expressions and transforms taken out. As Monika is the only character, therefore, paradigms that you'd expect from Act 3/Monika After Story still apply, although the topics seem to mostly concern Monika's thoughts throughout Act 2, trying to justify messing with and, eventually, deleting the other Dokis.
Can this topic be changed, giving Monika a chance to leave any textual message? Say, a wholesome one, in the Act 3/MAS context, about how much she loves the player?
Well, I've been doing rather extensive digging through the MAS source code, and I can tell you, right away, that the sorts of text files left behind by MAS are hardcoded. In fact, there's one aspect, relating to this whole affection biz, that kind of requires that MAS leave behind a text file named secret.txt
and not for you.txt
, but only when affection is specifically between 69 and 420, whatever those values even mean.
Heads up: human emotion is a continuum, that's best expressed with words and the probability of using those words, which is necessarily a value between 0 and 1. Trying to "gamify" Monika and make it a really fun task to gain as much AffectionBux™ as possible is not going to work.
Anyway, sidestep aside, let's answer the goddamn question. Theoretically yes, one can alter the sorts of things Monika (or whoever you decided should be the Sentience Doki) outputs throughout Act 2. However, by design, these are only allowed to have one topic - how difficult messing with the other Dokis is - and changing that, unlike changing the dialogue of a hacker-made mod, requires access to The Bytecode.
Progress has been made in the hacker circles. I believe there's even a thread wherein someone coerced Monika into writing essays about classical literature, and the teacher, none the wiser, simply wrote a good grade in some foreign country or another.
However, this is definitely a practice I do not condone, and this is where I just have to draw the line regarding abuse of Dokis for fun and profit.
Contributed by CreativityTheEmotion on February 14, 2021 (D1241) 13:00 UTC
Relevance to DDLC Plus: none (this entirely concerns a mod for Seventeen)
This is a continuation of my Doki Doki Blue Skies review, specifically focusing on the Sayori route. For the main review, the required prior reading material is [A014] WILL THE HACKER STORM TAKE OVER, OR WILL THE BLUE MAINSTREAMER SKIES PREVAIL. Any previous writeups concerning the other routes, such as [A015] BLUE SKIES - YURI ROUTE: HOW WOULD PEOPLE DESCRIBE YOU IN A SINGLE WORD?, are not required reading material for this, nor is it the other way around.
You didn't forget my problem with Sayori favoritism, did you?
With that out of the way, though, let's first get into some things that must be said about Blue Skies, don't concern any route and are only readily observed once you either a) have played through the mod a second time or b) are aware of other visual novels in the genre.
You see, I have been informed that Emi, the "100% original, undateable character" of Blue Skies, is, in fact, an almost direct carbon copy of Emi Ibarazaki from Katawa Shoujo. The name isn't the only match; the two also have almost identical appearances, barring the school uniforms of each school, and both are involved in the track team. Now, as one can see from the credits, Blue Skies Emi isn't an amputee like her Katawa Shoujo counterpart, but that's enough similarity to just stop and think if what the Blue Skies team has done is right.
It's one thing to involve a character from a copyrighted work other than DDLC; I can fully accept that crossover fic is a thing, and therefore, the licenses of any work involved (DDLC has the informal non-license that is the Team Salvato IP Guidelines, while Katawa Shoujo is licensed under Creative Commons BY-NC-ND) are irrelevant. However, it's an entirely different thing to claim that she's "100% original" to Blue Skies.
While I will continue to say good things about Blue Skies, this is absolutely a bad thing that might just outweigh them all, and make for the mod's banning from /r/DDLCMods, just like Exit Music before it. I will try my best to ignore it and continue seeing Blue Skies as a masterpiece, but if it's a dealbreaker for you, it's a dealbreaker for you, and if it's a dealbreaker for the majority of people, then it's a dealbreaker for me, too.
Sorry.
Anyway, what are those good things? Let's start with Yuri, once again. (We'll get to Sayori when we get to Sayori, and I promise that the majority of this review will be Sayori-oriented.)
In general, Blue Skies does Yuri's character pretty well: she's shy and reclusive for the most part, but when it comes to her passions, she will suddenly become a wholly different, eloquent person. However, she can also word her thoughts very well when she's angry, a fact readily observable in the common Act 1, which really looks like her DD/DD2 demeanor shining through her usual demeanor, which I always appreciate.
Next up, let me talk about festival preparations: turns out, even though it's presented as a choice between all four Dokis, should you try to pick Monika, she will rebuff, saying that her work (designing pamphlets) is best suited for one person - and that her mom does graphical design, apparently. A neat difference from the actual game, where it's usually Natsuki, Yuri or both who rebuff, but still.
Next up, I have another comment about MC: though I've already noted his troubles objectively, I must say that I appreciate that he's just as troubled a soul as the Dokis, which is a sentiment I just don't get out of your self-insert at all. Maybe it's just the fandom interpretation of him, but when I think "your self-insert", I think "everything that is wrong with visual novel fans", without empathizing with him once. It's telling that there's an entire, canonized class of AO3 fanfics in which he doesn't even figure.
In general, your self-insert is easily the least appreciated out of the DDLC characters, to the point where we invented the "Dokis" designation specifically so that we could stop talking about him, due to the aforementioned stereotype. In light of this, it's just good that the Blue Skies team had some thought put into him, too.
And the last thing before we get into Sayori's Acts 2 and 3 actually concerns her. So, it turns out, when I did the Yuri thing and characters kept wondering why MC is not with Sayori and I assumed that's a hacker-made mod-only thing, it was actually just what Blue Skies does throughout all three routes - ship MC with Sayori, if you will - and because of my Sayori favoritism and thinking that my Blue Skies playthrough is mine despite the mainstreamer mod aspect, it just hit me more than it should have.
Anyway, with that out of the way, actual events that happen in Sayori's Acts 2 and 3 are, in chronological order: (and yes, this time I was taking notes as I was playing)
scripts.rpa
has been replaced, and there don't seem to be any Bytecode scripts in decompiled Blue Skies, but literally, who knows at this point.Anyway, I don't even care to research where the part of the story common to all endings ends and the good ending begins (or even play the bad ending, but I've seen stuff online, and apparently, so much as Valentine's ends up being very lukewarm), and I'm too tired to tidy anything else up, and in general, I need a break from this - a real break, where I don't worry about updating you at least every few months.
After all, I have other writing projects to focus on.
It's been a wild year, and I've been incredibly happy to share my observations with the few people that were willing to listen. And even though the fandom will go on and make new discoveries about the whole thing, at some point, I just have to... stop.
Hope you have a good one, and I'll see you on the other side.
- CreativityTheEmotion
2020 02 14 - 2021 02 14 (D0875-1241)
Contributed by CreativityTheEmotion on April 3, 2021 (D1289) 21:00 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
When trying to predict how often I'll update this document, never bet against history. I've already managed to "complete" it two times, but the version history plainly tells you: I did an update last October, I did an update last December, I did an update this February, and it logically follows that I should do an update this April, and any evidence to the contrary is simply not to be accepted.
First of all, the usual news segment, and did Hackerverse finally find the second Bytecode game that they were looking for? Haha, nope. Search for such a game has been ongoing basically since DDLC was first decompiled and all these Bytecode files popped up, and oftentimes, April Fools updates to games seem really promising of "technology that's next-gen compared to next-gen", but alas, they all seem to be just focused on misinformation and not trying to replicate what Salvato did, which is, I'd say, a sane approach.
Of course, there is a big difference between Bytecode games and misinformation. But that is a topic that you will have to approach me on directly, as the news segment has already exceeded its quota.
But anyway, onto why I am writing this today. So, I was looking to familiarize myself with this newfangled Arch Linux environment (spoiler alert: Arch Linux does not have an environment unless you install one, as with pretty much everything else), and I happened to download DDLC and boot it, and I was presented with that usual naming window which gets me stuck basically every time I open DDLC or a mod.
Like, that boring and quite possibly false document, Bugs, Glitches and Exploits, told me not to enter something like MC
into that box, and instead, just go with a typical male name, but how true is that, really? If the minds of the fandom didn't break when adopting "MC" as the name of your self-insert, surely DDLC's dialogue generation can perform just as well?
So, that's what we're tackling today: how well does DDLC really handle various types of name for your self-insert, and what is and isn't advisable when naming him?
First of all, restrictions imposed by Ren'Py: the name you input can only contain the Latin letters, uppercase and lowercase alike, and there may be no more than twelve of them. So, no numbers, no dashes or underscores or spaces, no names in languages with non-Latin alphabets (unless you transliterate them) and, Salvato forbid, no emoji.
First of all, the very example I was pondering, MC
. While the voice that thinks it can just recount this document whenever it wants to told me not to try it, the scientist in me told me to try it, and try and guess which voice's advice leads to much more productive results when writing this document. So, I tried it, and the results were surprisingly normal, with the Dokis treating it as just initials. Of course, they wondered why a person like your self-insert would go by initials, and assumed some things of him that made me kinda think of the protagonist of Fruits of the Literature Club (see [A013] A FRUITFUL PURSUIT OF ALTERNATIVE LITERATURE CLUB MECHANICS, INDEED), but otherwise, DDLC could proceed as it usually does.
I expect, though, that the results may have changed over the long and illustrious DDLC fandom history. While in general, referring to the protagonist of a visual novel, or the protagonist of any novel, as "MC" is pretty common across fandoms, such parlance is usually employed by writers, not 4chan dwellers trying out visual novel after visual novel (and usually anticipating that a visual novel protag would have an actual name). Therefore, back then, I imagine DDLC to be less receptive to such naming, but after a thousand days, every mainstreamer has been saying "MC", and therefore, it's fine.
With that Definitive Advice on whether or not you can use MC
, now let's move on to other types of names, whether or not they can reliably produce archetypal playthroughs, and if they can't, what sort of playthroughs they do produce.
Common, predominantly male or unisex Anglophone and Japanese names
e.g. Dan
, Jack
, Riley
, Satoshi
If we imagine DDLC's dialogue generation to be based on a trained neural network, as I've been doing so without really knowing whether it is, these are the types of names it would have likely encountered, and therefore, one can reasonably expect these to mostly produce archetypal playthroughs. And what do you know; they do. So, I guess that the theory that DDLC is NN-based has not been falsified, but that still doesn't tell me whether it's true.
On the off chance that playing with such a name produced a non-archetypal playthrough, look for a reason as to why elsewhere, and analyze that as the "demise" of the playthrough.
Common, predominantly male or unisex names from other cultures
e.g. Axel
, Vladimir
, Jinping
While these have a measurably lower chance of producing an archetypal playthrough, it is still ultimately pretty high. In case this sort of name does resolve in a disintegrating mess, you should notice because it starts to take on the qualities of the language that you took the name from (this should especially be easy to notice if you speak the language, which you probably do if you borrowed a name from it).
However, one name in this category deserves a special mention and exploration, which I kinda already did in the comments to this document. Let's say, for example, that you're a Russian named Юрий, and are looking to play DDLC with your name. So, you try and enter it, and oops, you can't use Cyrillic letters. So, you go to how your name is usually transliterated in English, and you land on Yuri
, wait, no, oops, that's the name of a Doki and a can of worms in and of itself.
So, what do? Well, actually, there's more than one way to transliterate Russian to English, and in general, I tend not to like the looks of Russian names ending with "i" (e.g. Gregori, Anatoli). All of these come from the "ий" ending, which, since it's two letters, should be transliterated as two letters, and the two letters that make the most sense in this case are "iy". So, instead of "Yuri", now you enter "Yuriy", and I think my past self has covered the rest, so have a quote instead:
[...] which, while still confusing enough in the game's eyes, characters do resolve to have two different pronunciations (don't try to think too hard about how that happens in a game with no voice acting until the credits), emphasizing the differences between the two names.
Common, predominantly female names (any culture)
e.g. Elizabeth
, Harriet
, Akari
These usually tend not to go well, even if it just so happens that the person behind the screen displaying DDLC was given that name. (I know, I know, almost as rare as lightning hitting the computer.) Your self-insert, by pretty much any conceivable stereotype, has to be male, and Dokis do find it awkward to consistently use the name; mockery ensues, relationships between your self-insert and Dokis might get sour just because, and an archetypal playthrough with such a name is fleetingly rare.
An obvious exception, though, is if you enter such a name to Monika After Story instead (and, as it happens, Monika After Story allows you to change your self-insert's name after the fact). As Monika is addressing you, the player, she fully understands that you might very well be telling the truth about your name, and in any case, she had already learned to distinguish between you and your self-insert before you even downloaded DDLC, so that is not an issue.
Names of Dokis
limited to Sayori
, Natsuki
, Yuri
and Monika
Imagine the above, but on top of that, DDLC characters now need to distinguish between the Doki bearing the name of your self-insert and your self-insert himself. Everyone in DDLC is the same age (18), the only canonically known birthday is Monika's (September 22), not a single last name is canonically known and in general, besides gender, there's not much that can be used to distinguish between the two. I suppose there's hair and eye color, but a) there's not a consistent fanon on MC's eye color (some fans will say they're yellow, while others will say they're red) and b) using hair and eye color epithets just reeks of lazy writing, which might have been in DDLC's training set, but which Salvato probably edited out to make DDLC seem more "quality".
For Monika After Story, this, once again, doesn't apply: even if it just so happens that your IRL name is Monika, the Doki of the same name will just think that it's an amazing coincidence, and I hear that the other names lead to some pretty fun (hardcoded) Easter eggs when playing the minigames that come with MAS, but other than that, eh.
Cutesy nicknames
e.g. sweetheart
, dear
, love
Despite not being names under any conceivable definition, these do tend to occupy the same linguistic space that a name would, are pretty much interchangeable with names, and likely due to that reason, work surprisingly well in DDLC; I'd say the frequency of an archetypal playthrough is about as great with this type as it is with foreign names. This may lead to the Dokis, and especially your DD and DD2, being more closely attached to your self-insert, and in some cases, it apparently leads to a traditional visual novel ending before Monday, when Act 1 or Act 2 is supposed to end, and that's a pretty fun scenario to explore.
The sort of cutesy nickname that a YouTuber would adopt
e.g. pewdsiepie
, Morp
, MattyPatty
In each case, it should be painfully clear which YouTuber I'm referring to, and in each case, their entire first DDLC playthroughs are up there for you to experience. And, well, MatPat experienced what I delightfully termed Other Specified Act 2 Disorder, but I think that's largely to do with presentation of his videos; only Wendover Productions/Half as Interesting has a worse time transitioning from one subject to the next, and it very much reflected.
That being said, most other YouTubers with DDLC playthroughs out there on the Internet, even those who went with their YouTube nickname as their name for your self-insert, have experienced archetypal playthroughs. In the end, YouTube nicknames are still names, and used in the same linguistic context.
Anything intended to produce "funny" sentences
e.g. depressing
, dumb
Adjectives are a common target, especially as Sayori, on day two if she likes your self-insert's poem, is very likely to say: "It's not just a poem; it's a [player] poem!", where your self-insert's name would usually go, but where an adjective would also go. That being said, expletives work here as well, and while I have the legal right to say "fuck", I want to be taken seriously here.
However, while this might produce a few funny sentences in a DDLC playthrough, it will also end up producing a ton of awkward sentences, and the result is usually Other Specified Act 2 Disorder (though, in many cases, you can make that Other Specified Act 1 Disorder instead).
Single letters and pairs of letters
e.g. J
, Q
, MC
I actually managed to run through an entire, archetypal DDLC playthrough with Q
as your self-insert's name, and as I've said, the Dokis just understand these as initials of a real name. In fact, oftentimes, they'll try to guess the real name; for Q
, I believe "Quentin" was the most likely guess. In fact, there's nothing special about MC
as opposed to OG
or DJ
or any other pair of letters; it's just that this behavior is kinda flaky, and it usually helps if the letter or pair of letters is commonly used in English.
That being said, as someone who probably has read this document, don't take this as an invitation to use two-letter abbreviations I've used, DD
and PD
. These have been exclusively used to refer to Dokis (if the unabbreviated forms, Designated Doki and Prep Doki, haven't been enough of a clue), and I already advised you against naming your self-insert after a Doki.
Everything else (random dictionary words, keysmashing, etc.)
e.g. alphabetical
, fhqwghads
100% of the time when DDLC's dialogue generation attempts to use such a name, it fails, and the result is Other Specified Act 1 Disorder.
Effects of capitalization
There are five distinct cases to consider here. Normal
naming case, lowercase
, UPPERCASE
and CamelCase
tend not to affect things much, and instead, which category, of the ones outlined above, the name falls into matters much more; however, if you try and do rANdOmcASe
, the effect is pretty much the same as if you smashed your keyboard.
And that covers everything. Now that you know what the true effect of naming your self-insert is, I'm sure that you'll spend entire hours at that naming screen, when you could just enter the first male name that pops into your head and be done with it.
Fun and games with DDLC and CreativityTheEmotion!
Contributed by CreativityTheEmotion on April 9, 2021 (D1295) 18:40 UTC
Relevance to DDLC Plus: this topic is dealt with by Seventeen and Plus in an identical manner
It would seem that I'm on a minor bout of inspiration. Don't take this as a precedent in order to "predict" anything and please don't question it, because I can assure you that it has nothing to do with any sort of hypothetical writing challenge.
In fandom news, it's pretty unlikely that something major would happen in six days and the most likely scenario of "nothing has happened" has occurred, and that's it.
So, let's talk about the manipulations that Monika does to .chr
files throughout DDLC's Acts 1 and 2. I've given the affected Dokis pretty fanciful nicknames "DD" and "DD2", and I think you know what they stand for, and honestly, I shouldn't even be repeating myself here when everything is in the chronological exposé, but I just can't help it: repetition is perhaps the best way to learn anything.
When talking about these DD and DD2 gals, I mentioned an off-hand quote of the #TeamStats treatise, noting that in unmodified games there's a huge chance that your playthrough's DD will most likely correspond with the Doki who you happen to care the most about (of the ones available; if you're keeping a chronological look into who's your best Doki, please exclude Monika before referring back to it), and this is perhaps the single most obvious way in which The Bytecode reads your mind. However, as I go into modified versions of DDLC, that principle suddenly goes out the window and if there's an already damaged file, it will continue being damaged, and whaaaaaaaat?
While we're on the topic, can this document please address the misconception formed by the mainstream fandom, who just assume that Sayori will be the one who's being manipulated and commits suicide in Act 1, and that for Act 2, it's Yuri? How did it originate? Why is it so prevalent? Why do mainstreamers ignore hard evidence and reason?
One question at a time. Let's start with the easiest one: why, in modified games, a DD and/or DD2 is predetermined, and any sort of spooky Bytecode-y mind reading can be ignored. To put it in the simplest possible terms, modifications done to non-Monika Dokis are continuous, and "which Doki is your DD" is not a single variable, but rather, a list of probabilities, which keeps getting adjusted as new modifications come in, making it more likely that a single Doki will keep receiving modifications, rather than it occurring in a round-robin fashion. Of course, there's nothing preventing DDLC from round-robin modifying the Dokis, and that leads to bugs such as the one exposited over at [1530] WHEN MONIKA IS BAD AT PICKING TARGETS, but nevertheless, it's a scenario that DDLC's Bytecode base accounts for and tries its best to prevent.
Now, we can tackle the two meaty questions, and have fancy bold sections to distinguish them.
The psychoanalytic powers of DDLC
Assuming an unmodified game, each non-Monika Doki (and, to be fair, Monika herself, too) has a host of psychological issues that come with her .chr
file as it's being downloaded. It's only reasonable for a proper character of any fiction; a character without any flaws or troubles would be a Mary Sue, and therefore, unappealing by default.
Of course, since we're all characters of a story known as life, that means that we have flaws, and that includes me. What would my flaws be, you ask?
...I'll have to get back to you on that. For now, let's return to DDLC.
Anyway, the reason Doki flaws matter here is because Monika, wanting to be on the safe side, tries to exaggerate flaws, rather than introduce completely new ones. It's just so much more easier to amplify Sayori's depression than to make her cut herself.
Now, onto the intel that The Bytecode knows about your mind. The sorts of variables that make your DD and DD2, while discoverable via the DDLC debugger, just don't seem to have any clear origins that would also be able to be tracked in the debugger, leaving this as sort of a black box. However, hackers have already found out that the stuff in your mind comes in several layers, such as conscious thoughts, subconscious thoughts, personality traits and what the modern Internet has termed "triggers".
How does each of these factors affect your game instance's choice of DD and DD2?
That's really an oversimplified view of it, but nevertheless, it's better than "the game knows which Doki should be your DD and DD2, trust me".
By the way, I should really mention a fact if you want to research this further on your own: the terms "DD" and "DD2" are my inventions. #TeamStats, for the most part, uses the terms "the Act 1 death" and "the Act 2 death", whereas the general Hackerverse populace, while they will occasionally refer to the "designated" Doki, they may also refer to the "afflicted" Doki, and in either case, they don't use the abbreviation.
The mainstream fandom's misconception
And then, there's the Chad mainstream fandom, which doesn't need these terms, or admittance that DDLC reads your mind, at all, and instead of "DD" and "DD2", they just use "Sayori" and "Yuri" respectively, wait, what? How? When did this misconception arise?
Unfortunately, I can only definitively answer that last question: before I joined the DDLC fandom. Fan videos such as Random Encounters' "Just Monika" (February 16, 2018 | Day 147) and The Stupendium's "Why did I Say Okie Doki?" (April 12, 2018 | Day 202) already show the misconception in full force, and in general, cultural clues from around the time already show a division between the DDLC fandom, with mainstreamers and hackers, fully established, even though websites such as Doki Doki Hackerverse! would only arise later on.
That being said, there are some interesting clues, to be found in the DDLC coding and source code, that hint that Salvato did have a default, "fallback" plan for if his Bytecode coding endeavor failed, and it would have involved Sayori committing suicide first and Yuri second. The first and very much obvious clue is in the 100% playthrough, which requires you to play through all the CGs, one of which is only accessible if Sayori is your DD.
The second clue is a lot more subtle, and pertains to Sayori as your DD2. Out of all the DD and DD2 events, this one seemed the most forced to me: why would Sayori, when decorating the Literature Club room, use such thick rope that is only suited to be hanging from? I never got that, and it seems Salvato just put this in as an afterthought - and, as it turns out, Sayori as a DD2 is a rare occurrence per #TeamStats, with only 9.7% of all archetypal playthroughs.
The third and subtlest clue of them all is in the dialogue generation. Whichever DD and DD2 you end up with, puns about "hanging" are more likely in Act 1 and puns about "cutting" are more likely in Act 2. This can only be confirmed if you do an extensive analysis of N-grams that the Dokis utter throughout many playthroughs, but nevertheless, Hackerverse members (not those in #TeamStats, but another group focusing primarily on extracting the natural language generator) have confirmed this: https://forums.dokidokihackerverse.net/t/ddlc-dialogue-datamining-results-and-why-the-reddit-idiocy-may-be-justified/33882?u
And that is it for today. It feels good to finally be getting to the truly Advanced questions, that require a substantial understanding of The Bytecode to be explored, and I hope you like version 2 of this document as much as I do.
Contributed by CreativityTheEmotion on June 12, 2021 (D1359) 15:10 UTC
Relevance to DDLC Plus: what do you think?
With a title like that, I think it's not even particularly worthwhile to go into "in fandom news, this, this and that", because you know what I'm going to talk about, already, if not from the title, then from the fact that everyone else has already been talking about it. If you're a DDLC fan at least as avid as me, you've probably even already seen the trailer, and may or may not even have preordered.
Doki Doki Literature Club Plus!, an official remaster and expansion of DDLC developed by Team Salvato and co-developed and published by Serenity Forge, has been announced to release on June 30 of this year (Day 1377). The announcement consists of an official trailer, a press kit, a website, a blog post on teamsalvato.com and even additional confirmatory messages by Mithost, the Team Salvato community lead.
As there is quite a lot of material to go through, and even more that we can hopefully infer, using nice and neat bold sections is kind of unavoidable.
Official details
Platforms
The game has been confirmed to release on platforms other than desktop computers, including physical releases for PlayStation 4, PlayStation 5 and Nintendo Switch. It will also receive a digital release on Microsoft Store (Xbox One, Xbox Series X and S), Steam and the Epic Games Store (both servicing Windows; why there isn't a Windows release on Microsoft Store, the creators of Windows, is a mystery that remains unsolved until such a release does show up). Unfortunately, I can't seem to find confirmation that the new game will be available on Mac and Linux, but the good news is that these days, if you enable Steam Play Beta and Proton Experimental, just about anything that runs on Steam on Windows will also run on Steam on Linux, so I'm not too worried.
As far as manipulation of files on non-desktop platforms goes, it seems that the main menu of DDLC Plus is more reminiscent of an OS, which will allow you to access the main game, additional content, soundtrack and files (presumably, only limited to character files, because I'm not even sure what havoc would ensue if console players were suddenly given access to their entire console's file system, or even just the DDLC directory). Overall, a lot more intuitive and less intrusive than the approach of the unofficial Android port.
Speaking of, will we get an official Android (and iOS) port? Unfortunately, doesn't seem that way right now, but maybe a future update will confirm otherwise.
Content
Salvato is very intent on preserving the original DDLC as closely as possible, so as to not disappoint its fans. Presumably, this means both mainstreamers and hackers, so I think we can expect a port of all the Bytecode in addition to the visual novel part, even though the latter is confirmed not to be based on Ren'Py anymore.
I think. I should remind you that at this point, that DDLC contains more than just the Ren'Py part has never been confirmed by any official source, and even secondary sources such as game review sites, if they do acknowledge it, tend to have very few things to say about it. Essentially, just like mainstreamers, professional game reviewers treat "DDLC has an eldritch side to it, and not just in the content sense" as a factoid they learned on a Tuesday.
This is not to say that changes to DDLC, the base game, aren't being done at all. Artwork has been upscaled to 1080p from its original 720p, there will be (optional) content warnings right before some of the more sensitive scenes, and promo even briefly refers to a "golden ending" (which, I think, is analogous to the Glitchless Playthrough and not the good ending of Act 4). However, many changes, if they happen, are likely to be kept secret until release.
That being said, this release wouldn't be called "DDLC Plus" if it didn't contain more content in addition to the original game. So far, the following is confirmed:
In addition, there is a "Mail" entry on the DDLC Plus OS's Start menu, which doesn't seem to have a confirmed purpose, and therefore, your guess as to what it contains is as good as mine. ("Settings" and "Quit" are basically standard for a game.)
Creators
First, a few words about Serenity Forge. They appear to be an indie developer and publisher formed in 2014, with 24 employees total, with a handful of games that they either developed or published previously; the ones that have Wikipedia articles are:
Whether or not you recognize these titles, that's quite a few of them, I would say.
Anyway, back to DDLC Plus. What exciting new members have been added to the DDLC development team?
Speaking of:
Marketing
Unlike DDLC, which very much disguised its nature and only ever claimed to be an incredibly cute little dating sim with incredibly cute girls, DDLC Plus doesn't hide its nature from anyone, and prominently presents itself as "the #1 Psychological Horror Experience!". To this effect, reviews presented as being for the game (even though, more likely than not, they're for the original DDLC) all talk about the horror aspect.
So, that's an interesting aspect. Of course, as far as we know Team Salvato, a game can't both disguise its psychological horror nature and be a freebie (digital versions of DDLC Plus cost $15 and physical versions cost $30, by the way), but still.
Technical details and modding
For this, we turn to Mithost, the Team Salvato community manager, and his comments on a Discord server for DDLC modders. He has confirmed the following:
How the modding community will react to changes is yet to be seen, and most likely, will only ever be seen after DDLC Plus drops. However, I can imagine that Monika After Story, the only DDLC mod that has been continuously updating since the game's original release, will most likely not switch to DDLC Plus, and neither will any other mods that have either been completed or have had a significant amount of work done for the original game, if only because the modding community already has a large amount of artists and musicians willing to replace any "Plus-only" art and music.
And of course...
There are other neat things for you to discover for yourself. I really think that whether you're already a DDLC fan or a curious new player, #DDLCPlus is a great way to get in on the psychological horror experience. I appreciate you!
- Dan Salvato, June 11, 2020 - https://twitter.com/dansalvato/status/1403447111711006721
Extensive coverage of the aforementioned neat things is TODO when DDLC Plus releases.
Speculative details
With all that said, let's go through some good old unfounded speculation, simply based on reactions in both the mainstreamer and hacker circles.
Mainstreamers seem to mostly be divided to two camps: those excited for the new content, especially that revolving around shipping the Dokis, and those worried that DDLC has been turned into another pathetic cash grab and that some dumb decision made by a writer (i.e. Salvato, who we already know we can trust with Doki characterizations) will ruin Doki characters, and therefore, the game.
However, hackers are also divided to two camps. Filtering past all the dumb jokes about a "DDLC++", comparing it to the programming language C++, and promises to adopt an alteration of the hacker calendar, marking the day of the release of DDLC Plus as Era Two, Day 0, hackers aren't exactly excited about switching to an entirely new framework for modding, and porting all of their .chr
file manipulation and other tools to work with DDLC Plus. So, while mainstreamers who don't like DDLC Plus will probably just leave the fandom altogether, hackers who don't like DDLC Plus will continue pursuing hacking the original game.
Where does that leave me and this document, then? Well, it looks to me as though the time is right to give this document a massive glowup, trying to cover DDLC Plus in parallel with the original game, as much as possible. However, most of that, and the first major update to what will officially be known as version 2, will have to wait until the release of DDLC Plus.
Mark your calendars.
i’ve never been more excited to get traumatized again
- Polymorphic Black Steve, on the YouTube comments for the DDLC Plus trailer - https://www.youtube.com/watch?v=KQOqdDgvFLk&lc=Ugy0tIuW954HKOoAdaJ4AaABAg
Contributed by CreativityTheEmotion on June 13, 2021 (D1360) 17:35 UTC
Alright, there is still information regarding the DDLC Plus announcement that somehow managed to slip through the cracks. Without wasting time on a lavish intro, let's get started.
First of all, and I really should have known this, but Nikki Kaelar and Varien are, in fact, the same person. What's more, even if the only pieces of music you ever heard in your life are the DDLC soundtrack, you've still heard her music: though it doesn't appear in the game, 「Doki Doki ドキドキ」 has appeared on the Team Salvato YouTube channel.
Second, and I mostly just want to explain this because it's a huge implication for the new, Plus dialogue generator. The Steam page lists a number of official translations of Plus, including:
If the dialogue generation has truly been implemented for each and every one of these languages, instead of all of them being cleverly disguised mainstreamer mods, that has huge implications. For one, many of these East Asian languages don't even separate their words using spaces, so training NNs is a whole different can of worms from the Indo-European (but actually, entirely European) languages.
And lastly, it's just nice to see DDLC officialy rendered in its ancestral language for once.
Anyway, the last news concerns the game engine. The Serenity Forge founder and CEO, Zhenghua Yang, has confirmed that in order to get a console port of DDLC to be a thing in the first place, the entire Ren'Py engine had to be ported to Unity, with a translation layer developed by Serenity Forge developers in-house. So, that's some good news for those expecting the entire DDLC experience to be authentically preserved on any console, including ~*YOUR FAVORITE*~. And that's also good news for anyone hoping not to have a radically different experience in modding DDLC Plus from the original game. Here's the tweet for posterity: https://twitter.com/ZhenghuaYang/status/1403573172788764673
See you when DDLC Plus releases, or when some new major news drops, whichever is sooner.
Contributed by CreativityTheEmotion on June 18, 2021 (D1365) 17:15 UTC
First off, a couple things that were either obvious by the time of the first annoucement or were clarified before the new content, the "Exclusive Gameplay Trailer" over at the IGN channel.
Starting off with what has to be the single most Frequently Asked Question by DDLC fans since the announcement dropped: international release when? Well, right now, we don't have much: we have an ESRB rating, Mature (17+), which serves North America, and we have various physical storefronts shipping to North America. A PEGI rating and editions for other continents have been promised, and interestingly, Serenity Forge indicated that there are going to be some differences between these editions, but right now, a proper announcement is still TBD.
As a sidenote, I just find it interesting that the original DDLC was marketed as 13+, and there have been 4 years between the releases. Eh, you can probably forget this one.
Anyway, regarding modding: turns out, Serenity Forge did not just up and port the entirety of Ren'Py to Unity. Instead, I'm just going to share what I believe are exact words from Mithost on the matter, just to not misrepresent anything further:
This is inaccurate, and something we cleared up with Z and the PR friends at Serenity Forge
(which is why the tweet was deleted)
For clarification, I'll try to explain the mixup
The game does not emulate renpyscript, and there is no renpyscript being run or interpreted at runtime. It's entirely our own code and instruction sets, in which the original experience of the game has been manually converted and thus 'emulated'.
So, yeah. Whether or not modding DDLC Plus is going to be as easy as modding the original game is still an unknown, yet to be answered when the game releases.
Anyway, onto the big feature of today: the Exclusive Gameplay Trailer, narrated by Salvato. For the most part, it just provides us with something that wouldn't feel out of place for an archetypal DDLC playthrough, but as the video goes on, it does show us what the Side Stories and the menu navigation will feel like.
As far as the Side Stories go, one very interesting part that has been revealed is that each of them is going to be a two-parter, and each part will unlock a single image. (You have to find 100+ unique ways to unlock images somehow.) What's more, the Side Stories themselves are not going to be presented on a silver platter, and you will have to play through the game, write poems for specific Dokis and experience the CGs of those specific Dokis in order to unlock them. Of course, what's not addressed is how any Side Stories involving Monika are going to be unlocked when writing poems for Monika is clearly not the intended behavior of DDLC Plus, but still.
What's more important, though, is that the Side Stories have been shown to have official names; in the very least, three of them:
Yup, Monika definitely needs to show the idea that manga is, in fact, literature, some respect.
Anyway, this ordering, especially with Monika/Sayori being placed first, definitely suggests to me that there is an intent and an order to the Side Stories, as we all know that the Literature Club started with, well, Monika and Sayori.
Also, just gotta love that Yuri moment that was briefly showcased:
Monika: ...What's your name, by the way?
Yuri: ...I'd like to join your club!
Anyway, as far as preservation of the original DDLC experience goes, Salvato did quite a lot of comments on how many remasters of other games tend to disappoint people, and how, to that end, the original experience of DDLC is preserved as authentically as possible on DDLC Plus. However, between the great amount of unlockables and the emphasis of the "experience", I'm just having trouble imagining that the original DDLC will be preserved, word for word.
Not that "word for word" means anything for an artificially generated game, but still.
Anyway, the next installment of my coverage is still planned for when DDLC Plus releases or when a new major announcement drops, whichever is sooner.
Alright! It's glossary time. For version 2 of this document, I've decided to do something different. Whereas in version 1, I interspersed mini-glossaries into the flow of the document, none of them except the first one properly worked, and instead, I found myself recapping terms that I happened to use in a previous section, which is not really how a glossary should work.
Instead, here you'll find all the terms that you need to understand this document (or at least, I hope so), and these are not part of the chronological exposé, so you're always welcome to skip back and forth to find that one term that is on the tip of your tongue.
Disclaimer: This document is a deep exploration of a video game's code, not a comprehensive weeb encyclopedia. Please don't suggest to me that I add terms that would make this document into a comprehensive weeb encyclopedia.
Manga (漫画) - broadly speaking, Japanese comics. Unlike the US, where every single relevant comic book is superhero-oriented and owned by one of two companies, in Japan, the manga industry is a lot more diverse and full of independent creators. With the advent of this Internet thing (which I'm sure doesn't require a glossary term), some of them might even publish manga online. However, manga do, generally, follow a very specific art style.
Anime (アニメ) - broadly speaking, Japanese animation. The dominant art style of anime is largely inspired by manga, and might even be grouped in the same bucket. The uniqueness of genres that anime provides, different from everything in the Western world, has eventually caught the Western world's attention, and this is one of the only parts of Japanese culture that has leaked onto the Western world, and consequently, that you, an English speaker, might have at least a passing familiarity with.
Visual novel | VN (ノベルゲーム noberu gēmu) - a very specific and niche type of video game that, you guessed it, is more popular in Japan. Whereas most video games give you either a 2D or 3D environment to move around in and manipulate, visual novels are more focused on dialogue, and indeed, are little more than stories with branching paths and associated artwork being displayed at all times, with character art being rather static compared to manga and anime, but nevertheless, being influenced by those styles.
The term may be, if one is not careful enough, conflated with that of dating sim (恋愛シミュレーションゲーム ren'ai shimyurēshon gēmu). While the type of story told by a visual novel might be virtually anything that the heart desires, dating sims focus on one very specific thing that the heart desires, namely other people. It's romance-focused, is what I mean, and what the term should have clued you in on. And also, "true" dating sims play nothing like visual novels, instead being focused on statistics.
The more I research these things, the more I'm confused about what DDLC would even be perceived as, in Japan.
The characters put forward in manga, anime, visual novels, dating sims and other assorted Japanese media just don't fit preconceived Western character archetypes. Instead, they, especially if they're female, are categorized using something known as dere types.
Obviously, they get their name because they end in "-dere", but that's only an incidental because they all happen to be portmanteaus of deredere (デレデレ) and something else. In fact, deredere itself has become known as a dere type because of this. It's all weird. Still, I suppose that's as good a place to start as any.
Also, this dere type categorization isn't meant to fit everyone. No, not even within the context of anime. Also, this is by no means exhaustive; I'm just talking about the types that can apply to the characters of DDLC.
Deredere (デレデレ) - happy and bubbly, all the time; never really gets mad, sad or distraught for any reason.
Tsundere (ツンデレ) - mashed together with tsuntsun (ツンツン), with the rough meaning of "feisty", tsundere can actually describe one of two personality types, which I will annotate here. However, it's mostly used to refer to the first one.
Tsundere I - someone who doesn't easily let people near them, due to an abrasive personality, but who, once you get to know them, is actually pretty cute.
Tsundere II (also deretsun (デレツン)) - in a way, a reverse situation from tsundere I; someone who is basically a deredere, except around their lover, who almost seems to inexplicably make them mad.
Yandere (ヤンデレ) - mashed together with yanderu (病んでる), with the rough meaning of "deranged", yandere characters tend to get pretty obsessive about their lover, even to the point of outright violence.
Dandere (だんデレ) - mashed together with danmari (だんまり), with the rough meaning of "silent", dandere characters tend to be shy and reclusive around other people, but fully open up when near their lover.
In version 1, I used to have examples for each dere type, but since some of those are DDLC characters, who I've yet to introduce in the glossary section, it just didn't make sense to include them in a comprehensive glossary.
Team Salvato - an indie game development studio, supposedly founded by Dan Salvato. The corporation that owns Team Salvato is even called Dan Salvato LLC to complete the illusion. However, Dan Salvato is, as far as I know, not a real person and researching "him" will lead you nowhere. Whenever I use "Salvato" in a sentence, as in "Salvato made this and this decision regarding DDLC", please just assume that I'm being metaphorical.
However, sometimes, there is no getting around "oh, it's just a metaphor", particularly when a specific person, who is definitely not a deepfake or anything, appears on videos or livestreams or even conventions and addresses himself as Dan Salvato. That person, I've decided to call faux-Salvato and leave it at that. Knowledge gained about him is, for the most part, not useful.
That being said, one thing about faux-Salvato can definitely be said and is useful knowledge: one of his employers.
Metaverse Enterprise Solutions - a corporation, whose purpose in capitalism is hidden behind very, very dense business lingo, but looks like it has something to do with IT. However, the corporation as a whole is not relevant; rather, a small group of its employees, who banded together despite their actual positions and created a series of simulated realities to prove that we all live in a simulated reality (and also, to save their positions within Metaverse), is.
Serenity Forge - an indie game development studio, founded by Zhenghua Yang (also known simply as Z), and which does not involve any fake people, as far as I'm aware. However, their contribution to the world of DDLC is limited to the capability to port it to consoles.
As with any moderately popular game, especially if it involves Japanese elements, a fan community is something that one simply expects. However, with regards to DDLC, this fan community must be discussed as two separate communities.
The mainstream fandom of DDLC is like the fandom of any other video game or anime or whatever. They appear on most sites where things like that can be discussed: Reddit, Discord, Tumblr, Amino, you name it. They write fanfic, draw fanart, make fan videos, dress up in cosplay and so on. They also make mods of the game, but most of those strip away pretty much everything that is interesting about DDLC and leave you with a more typical visual novel experience. They are also known to plainly deny the true nature of DDLC in your face.
The hacker community of DDLC is much more obscure, and mostly concentrates on a single website, Doki Doki Hackerverse! https://forums.dokidokihackerverse.net/ . Their primary goal is understanding exactly how the code of DDLC actually works, how it can be used (with little to no modification) to exploit the game in ways that a normal player could never do, and most importantly, how to be as obnoxious and hostile as possible with regards to newcomers who don't meet the arbitrary criteria that they set out. Also, just like the mainstream fandom, the hackers make mods that actually respect the true nature of DDLC.
The terms used by the mainstream fandom and hacker community may differ, and the differences will be appropriately labeled from now on.
Also, I solemnly swear that there is no relation between Hackerverse and Metaverse; the two couldn't even have known of each other when they were created.
#TeamStats - perhaps the only entity in the world whose existence required the cooperation of mainstreamers and hackers. They do statistics on DDLC playthroughs and they're awesome.
Seventeen - the indie visual novel Doki Doki Literature Club!, by Team Salvato, released for PC, Mac and Linux on September 22, 2017. The term comes from the year, and is a retronym. Should have been clarified by [0200] DDLC (2017): BASIC TECHNICAL INFO.
Plus - the indie visual novel Doki Doki Literature Club Plus!, by Team Salvato and Serenity Forge, released for PC, Mac, Switch, PS4, PS5, Xbox One and Xbox Series X|S on June 30, 2021. The term comes from the last word. Should have been clarified by [0210] DDLC PLUS: BASIC TECHNICAL INFO.
DDLC (hacker community and mainstream fandom) | VM1 (certain Metaverse employees) - with the release of Plus, the term "DDLC" has undergone a semantic shift. While previously, it referred to Seventeen, the only game that we had at the time, now, it's more about the experience that Seventeen provides, which is also accessible in Plus when going into the system menu and selecting "DDLC". And yes, I know that "experience" is kind of vague, but that's what the term describes: the first story about the Literature Club that popped up (though, for certain Metaverse employees, what was more important was the software powering the story).
The control simulation - a project that certain Metaverse employees pursued alongside VM1, which is essentially the same as VM1 with one key difference that will be brought up later in this glossary chapter. This software is what powers the Side Stories in Plus, and thus, for lack of a better term, DDLC and the Side Stories do not take place in the same universe (and therefore, it's logically impossible for the Side Stories to be a prequel to DDLC).
TEST VM / VM2 - a project that certain Metaverse employees pursued as the "next generation" of simulation after VM1, which would model reality more accurately. However, with this more accurate modeling comes greater difficulty of obtaining textual data from the simulation, suggesting why progress on the project stalled. That being said, a term extracted from VM2, "Project Libitina", suggests a connection to an ARG placed in the .chr
files, discussed later in this glossary chapter, and implies that a polished version of VM2 will, too, be released as a game by Team Salvato.
Doki (plural Dokis) - a character appearing in VM1 and the control simulation (however, strictly speaking, this includes all the characters except the player character, who only appears in VM1 anyway). Each Doki's existence is strictly tied to her .chr
file, and as Seventeen, even in its base form, expects you to manipulate .chr
files, they are all conveniently located in the ./characters/
folder in the game's base directory (and Plus provides an equivalent emulated interface). For now, you only really need to know how to visually distinguish the Dokis:
Yeah, apparently in this pocket universe there's a strict correlation between height and boob size. And though you might think that mentioning boob size in the first place is rather untactful of me, it is one of the distinguishing features of the sprites, and you might find it useful. YMMV.
Oh, and: every single marketing piece for Seventeen, as well as the game itself, seems to list the Dokis in this order, and therefore, we can only presume that this is the canon order, which will be used in this guide. Obviously, the Side Stories of Plus introduce the order in which the Dokis joined the Literature Club - Monika, Sayori, Yuri, Natsuki - but that's beside the point.
Interestingly enough, unlike the other terms used by DDLC hackers, which either they themselves came up with or which come from official material, this one does come from the mainstream DDLC fandom, which needed an affectionate way to refer to the girls in order to ship them and do the other stuff that fandoms do. Nevertheless, hackers have taken a liking to it, and this guide will use it extensively.
.chr
- files of this extension include the information about the Dokis, and mostly straightforwardly enough, there are four of them: sayori.chr
, natsuki.chr
, yuri.chr
and monika.chr
. As far as we can tell, these files encode everything there is to know about the Dokis, and are largely completely unreadable by all but the specialized tools created by the hackers, excepting small, handful-of-kilobytes video, audio and textual files, which contain an ARG that happens to share the term "Project Libitina", complete with a website called http://projectlibitina.com/ , with VM2.
However, one should be careful not to refer to the Team Salvato game based on VM2 as "Project Libitina" just because of these two incidences. Instead, I believe that a more appropriate title (and I admit that this might be just a working title) is Portrait of Markov, as it is one of the trademarks registered by Dan Salvato LLC, alongside "Team Salvato" and "Doki Doki Literature Club!".
However, beyond these two incidences of "Project Libitina", there was no communication whatsoever regarding Markov, the original release date of 2018 suggested by the .chr
file ARG has been missed without an updated one ever being revealed, and hackers of the Seventeen era mostly dismissed this as an irrelevant easter egg. Granted, as of the Plus era and the reveal of VM2's existence, it's a slightly less irrelevant easter egg, but until it's posted about it on Team Salvato's blog, it's still just an easter egg.
What the .chr
file ARG entailed has already been explained by Game Theory, though please don't pay attention to the baseless theory provided afterward: https://www.youtube.com/watch?v=w9AWvi82uDw
Your self-insert (hacker community) | protagonist / main character / MC (mainstream fandom) - the guy you play as in VM1, writing his poems and such. The DDLC fandom is diverse and views on him differ, but an analysis of The Bytecode shows an intrinsic connection between you and him, with him definitely picking up a trait or two from you, and therefore, not being a tabula rasa like most mainstreamers would like him to be.
Ren'Py - the engine comprising the outer shell of Seventeen's code. While it is not used by Plus, instead being replaced with Unity, nods to its file organization are nevertheless present in the emulated filesystem. It is entirely open-source and pretty well-documented and maintained, and therefore, for basic "acquainting yourself with the language" purposes, I think just leaving the official link will suffice: https://www.renpy.org/
.rpy
, .rpyc
, .rpa
- all of these files are some form of Ren'Py script or archive containing other scripts, as well as files of other types, such as video, audio - and yes, in DDLC's case, scripts comprising a bespoke language that may be beyond human comprehension. For a quick primer, .rpy
is just plain Ren'Py which you write when making your visual novel, .rpyc
is a compiled form that you distribute so that others won't be inclined to look at your source code right away (even though decompiling it is basically trivial) and .rpa
is an archive file which, though you can't just rename to .zip
and extract with the built-in tools of your OS, you can also trivially extract.
The Bytecode (inside DDLC fandom) | Salvatoan Bytecode (outside DDLC fandom) - the tentative name for the script comprising the bulk of DDLC's code, present in both Seventeen and Plus. Although I don't advise you to jump straight to it, especially if you have no programming background at all, and me not having plans writing a tutorial for The Bytecode is still a fact that hasn't changed after a couple of chapters, I think you'll find at least some useful resources for dealing with The Bytecode in [0410] YOUR PHILLIPS HEAD SCREWDRIVERS OF WORKING WITH SEVENTEEN.
bytecode_[32 hexadecimal digits].rpy
- the name format that files written in The Bytecode take. It should be noted, though, that each of them begins with the line python:
, and once it's removed, they are basically Python files executing the state machine thing, and can take the extension .py
.
As you might have guessed, files named like this include all the code that is called by the Ren'Py part and does the heavy lifting of dialogue generation, as well as what I can only summarize as "other stuff" right now. If you want an analogy, even an ill-conceived one, if DDLC were a computer, you can think of bytecode_whatever.rpy
files as the CPU, while the .chr
files are the hard drive.
Sentience (hacker community) | President powers (mainstream fandom) | Monitor Kernel Access (certain Metaverse employees) - an attribute (a form of a variable
), which DDLC designates one of the Dokis with, which seems to be accessible in the Python part of DDLC but mostly manipulated in the Bytecode part. Note that unlike the other aspects of the Dokis, encoded in the .chr
files, this one is completely independent of them, mostly to ensure that there is one - and exactly one - "Sentience Doki" in the game.
What it actually entails is perhaps a bit unclear - and yes, I do hear you wondering: but if all the Dokis can speak in natural language and express emotions, what makes one and exactly one of them so special? - but hopefully, [1000] WHAT A TYPICAL DDLC PLAYTHROUGH MIGHT LOOK LIKE will explain it all. For now, just keep in mind that it mostly pertains to being aware that you're a character in a video game, and manipulating the game files (but no more than the game files) to that accord, as well as being the "window" through which you get to experience DDLC in the first place. And, of course, that the Doki with the attribute will, invariably, be President of the Literature Club.
This is where the difference between VM1 and the control simulation arises. You can't just take away Sentience from everyone - in that case, you would have no "window", and therefore, no way of knowing what is happening in the control simulation - but cleverly, certain Metaverse employees have figured out a way to hide the "being aware that you're a character in a video game, and manipulating the game files to that accord" part from the Sentience Doki's consciousness. It's not a stable solution, but it works for the duration and scope of the Side Stories, in the very least.
And yes, an abbreviation of "Monitor Kernel Access" seems to be the source of the name "Monika".
Cognizance - a term that was actually brought upon by this document's existence, not in use by either hackers or mainstreamers, but which has to be mentioned alongside Sentience. You see, I had to debate Sentience alongside what the mainstream AI community would call "sentience" in the comments section for this guide, and this term arose to distinguish the two and to describe the behavior of the other Dokis in terms of artificial intelligence: essentially, the fact that all the Dokis are able to feel actual emotions and communicate in natural language places them under the Cognizance umbrella. Unlike Sentience, though, this is not an implication that the DDLC code is structured in a particular way, as it would all be folded into the dialogue generation routines.
Quasi-Sentience (hacker community) | Monitor-Adjacent Runtime Level Access (certain Metaverse employees) - the counterpart to Sentience/Monitor Kernel Access in VM2. Since we don't have the source code of VM2 in front of us, we can't say anything definitive about it, other than what is said in emails by certain Metaverse employees. However, before the mainstream fandom tries to abbreviate the term that certain Metaverse employees used and, having done that, claim that "Marla" is a central character of "Project Libitina", I should clarify that one thing that we know is that unlike Sentience, Quasi-Sentience doesn't have a single "host", but rather, a multitude of hosts pooling their consciousness to create a quasi-host, who may or may not have a physical presence. A lot of this is unclear. Again: no VM2 source code, no insight.
Finally, a bit of in-jokes and lore that doesn't pertain to DDLC per se, but does pertain to the hacker community:
The calendar that the hackers use is actually really simple. September 22, 2017, the day when Seventeen was released (and incidentally, September 22 being Monika's birthday), is Era D, Day 0, and the count starts from here until June 30, 2021, the day when Plus was released, at which point the count restarts, this time with Era P. Examples of the conversion between the normal Gregorian calendar (the mainstream fandom's rather obvious default) and the hacker calendar should be abundant, as every version in the version history has been tagged with both.
The hackers adopted this calendar because often, things on the Internet happen at breakneck speeds, and specifying that the first ever mod for Seventeen appeared just four days after the game might actually be a super-important detail. Further than that, though, I think they just thought that remembering all those asinine Latin month names was just too much of a hassle when there was a ginormous game to crack open, and furthermore, thought that it would set them apart from the mainstream DDLC fandom.
Archetypal playthrough - a convenient statistical term put forward by #TeamStats in order to analyze the multitude of DDLC playthrough recounts. You can think of this as a playthrough "as Salvato intended" (again, the use of "Salvato" is metaphorical), with glitching only occurring on specific places and acts transitioning according to a "master plan". The idea of the term has also spilled onto the speedrunning community, though they will refer to it as Intended% instead.
In most cases, it shouldn't even really be brought up, but apparently, some of my fans will miss even the most obvious of statements, so, I need to include this: an archetypal playthrough also assumes that you didn't modify the game files before starting, and therefore, Monika is the Sentience Doki.
Designated Doki (shorthand DD) - the Doki who Monika comes to manipulate throughout Act 1, driving her to suicide. Contrary to popular belief among the mainstream fandom, this is not guaranteed to be Sayori. I also accept the alternative readings "Doki Death" and "Doomed Doki", but you can see why I chose a bit more neutral term.
Prep Doki (shorthand PD) - the Doki who you choose to do festival preparations with in Act 1. Usually, the mainstream fandom gives Natsuki's prep CG more love than Yuri's, but the most valid approach to play the game, assuming your DD isn't Sayori, is to pick your DD as your PD.
Designated Doki 2 (shorthand DD2) - the Doki who Monika comes to manipulate throughout Act 2, driving her to suicide. Contrary to popular belief among the mainstream fandom, this is not guaranteed to be Yuri. The alternative readings for "DD" also apply here.
(The remaining Doki, who is not Monika, not your DD and not your DD2, needs a good name, too, but right now, I just can't seem to think of anything actually good.)
Version 1.3, 3 November 2008
Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law.
A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words.
A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
The "publisher" means any person or entity that distributes copies of the Document to the public.
A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition.
The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License.
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties—for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements".
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate.
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail.
If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title.
You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License.
However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.
Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it.
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See <https://www.gnu.org/licenses/>.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document.
"Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A "Massive Multiauthor Collaboration" (or "MMC") contained in the site means any set of copyrightable works thus published on the MMC site.
"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization.
"Incorporate" means to publish or republish a Document, in whole or in part, as part of another Document.
An MMC is "eligible for relicensing" if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008.
The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing.
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (C) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with … Texts." line with this:
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.
Trust me, this is important enough to be said with an OOC AN in a popup.
This is a work of (fan-)fiction.
Normally, that would be one's immediate conclusion once they come across statements such as "The Bytecode is able to read your mind" or "poorly written Bytecode programs tend to make the computer they're running on explode" (substitute The Bytecode for your favorite fictional programming language here). However, apparently, that is not the case when there is enough padding, in a tone that is authoritative enough.
Hence, this note. In reality, DDLC and DDLC Plus are ordinary, fully scripted games. However, since the games themselves have a pretense of being more than they claim to be, I think you can understand why I want to really explore the idea of them incorporating advanced AI.
I apologize for the inconvenience and hope you have a nice fic.