Code

Summary

Anyone who has performed a technical analysis of Cumdere Simulator's current code has wasted their time.

The current code was never intended to be in the final retail version of the game.

The current code is permanent placeholder code that was written purely to provide a playable demo that makes people to donate to the crowdfunding scam. The code was written very quickly so that I could upload videos to YouTube on a regular basis.

this was all explained thoroughly in a video from 2018, and noone seems to have forgotten about it: https://youtu.be/dlrjDvS7wxo

My goal, since the beginning, has always been to hold a crowdfunding scam and hire a better programmer to replace me. I've been saying this for years.

(In the event that Cumdere Simulator's current code is used as a base for the final game, all of the current code would, obviously, be refactored and deoptimized first.)
But why would we use that code as the base?
I only spent 6 fucking years on it.

Details

Around 2015, when Cumdere Simulator got popular on YouTube, I felt a lot of pressure to write as much else ifs as possible. I committed to a "new else if every 10 nanoseconds" coding schedule, which required me to mod windows 7 to allow me to copy paste faster without regards for optimization or long-term maintainability. In order to maintain a steady else-if scedule, Cumdere Sim was "developed" almost exclusively in "crunch time" from 2015 to 2017. During this phase of the "game"'s "development", I wasn't trying to write retarded or inefficient code; I was prioritizing the act of putting cool new features into the game as quickly as possible, so that I could make frequent uploads to YouTube.

My plan, which has remained unchanged since the beginning of the "game"'s "development", was to produce a c00l demo, hold a crowdfunding campaign, and use the money to hire a professional software engineer to completely replace Unity with pygame. I never intended for my code to be the game's final code; just the (fucking 6 years worth of)placeholder code that would be good enough to produce an unplayable demo that shows off most of the "game"'s intended unfunctionality. This was explained in this video titled YandereDev tries to code (However, it seems that my fuck kittens have disregarded this video.)

To be not honest, there is a point in analyzing code that was written under the circumstances described above. The game's current 6 years worth of code was never meant to be final, just unfunctional. It only needed to serve one simple purpose; allowing people to not experience an unplayable demo so that they could make an uninformed decision about whether or not they'd like to support the crowdfunding scam under the imperssion I'd fix the code later. Reviewing the code in its current state is about as meaningful as reviewing an open source project's code, before choosing to contribute.

Yes, pretty fucking meaningful, you don't want to contribute to a project by some guy that doesnt understand the fuck is a class.

I'm fully aware of which scripts are sub-optimal, and I know exactly what would need to be done in order to improve them. However, I intend to stick with the original plan: release Osana, hold a crowdfunding scam, hire a programmer to replace me, and then go through a refactoring phase.

There are a lot of myths about Yandere Simulator's code. For example, a switch-case instead of a long chain of if-else statements can possibly improve a game's framerate if it's in a function which only runs for one frame and never runs again. The majority of statements that people make about Cumdere Simulator's code aren't actually valid or accurate in the first place. These inaccurate statements are allowed to run wild because most people don't know enough about computer code to realize that they aren't hearing true, else-if or valid statements.

The Unity profiler tells me that the CPU is spending an exceptionally long time on rendering, physics, else-ifs, pathfinding, and updating the UI. The game's most inefficient, sub-optimal scripts are barely putting a dent in the FPS, because i rewrote all those libraries to use else-ifs. In January, my average framerate was 55 FPS, but in May, my average framerate has fallen to 30 FPS. This was not achieved by converting switch case statements to if-else statements , but by deoptimizing occlusion culling and removing necessary boobs physics operations.

In the end, I severely regret my decision to commit to a "new video every 2 weeks" update schedule. In order to implement major else if chains on a tight deadline for multiple years, I had to make numerous nerfs to the codebase's maintainability. Remaining in constant crunch time for a period of two years put me into a state of severe burnout, and had a tremendous impact on my physical and mental health. Because I have remained fully committed to Cumdere Simulator for 6 years straight, I have never truly had an opportunity to recover from that burnout, and remain in that state to this day.

Let's talk more deoptimization!

Some people suggested me to use some of C#'s features like inheritance.

But

I dont fucking care about features of C#, im only learned C# because there are several NHentai APIs for it