Cultcow EvaXephon / Yanderedev / Alex Mahan / Alexander Stuart Mahan / cannotgoogleme - Edgy weeaboo coomer with pedo tendencies and 15+ years internet history as a lolcow, now known as a disaster developer behind eternal debug build called "Yandere Simulator", confirmed groomer and dollfucker

  • 🐕 I am attempting to get the site runnning as fast as possible. If you are experiencing slow page load times, please report it.

The end of EvaXephon?


  • Total voters
    2,405
Again, he needs to pad the time spent on elimination just so he could justify the Persona mechanics being in the game.
There is a sertain pattern in his dessisions on game in which he tries to make more violent playstyle more unfavourable for player, with patching up bodyguards to idiotic levels of OP, adding Dishonored murder percent-based mechanics.

Well I've always maintained that the game is fundamentally flawed in design. The time limit makes social stuff impossible because you need to know what to do, and if you buy the 'schemes' from info-chan you may as well just get a guide online. As for violent methods, Raiburu is just op and stalking your rivals is no fun, and there aren't enough opportunities to create a moment to strike.

If I were making YandereSim, I'd just make it randomised. Random school layout, random schedules, random target rivals. Then just load the game up with things that make opportunities to do stuff. Then people can get replay value out of doing runs rather than playing some long campaign. The game is already taking this form through mission mode.

Like, I can't believe there's no option to set off the fire alarms yet, or you can't have classes with opportunities to kill your rival. Chemistry class gives you access to chemicals, woodwork gives you access to buzzsaws, cooking gives you access to knives/poison, etc. He has smoke/stink bombs in mission mode, why not add them to the base game?

Students are also dumb as fuck, if they see you drop and turn on a radio they just turn it off no matter how many times you do it. If Alex actually invested in making an event system then you could just make an event for 'dropping radio' and if someone witnesses that event and then hears the radio, they approach you and not the radio. Hell, make it drop your reputation or whatever. It'd also pose an additional threat when doing specific eliminations that require doing stuff that students should notice but don't, such as pickpocketing, stealing phones, putting water buckets on doors, sabotaging water fountains,
 
Well I've always maintained that the game is fundamentally flawed in design. The time limit makes social stuff impossible because you need to know what to do, and if you buy the 'schemes' from info-chan you may as well just get a guide online. As for violent methods, Raiburu is just op and stalking your rivals is no fun, and there aren't enough opportunities to create a moment to strike.

If I were making YandereSim, I'd just make it randomised. Random school layout, random schedules, random target rivals. Then just load the game up with things that make opportunities to do stuff. Then people can get replay value out of doing runs rather than playing some long campaign. The game is already taking this form through mission mode.

Like, I can't believe there's no option to set off the fire alarms yet, or you can't have classes with opportunities to kill your rival. Chemistry class gives you access to chemicals, woodwork gives you access to buzzsaws, cooking gives you access to knives/poison, etc. He has smoke/stink bombs in mission mode, why not add them to the base game?

Students are also dumb as fuck, if they see you drop and turn on a radio they just turn it off no matter how many times you do it. If Alex actually invested in making an event system then you could just make an event for 'dropping radio' and if someone witnesses that event and then hears the radio, they approach you and not the radio. Hell, make it drop your reputation or whatever. It'd also pose an additional threat when doing specific eliminations that require doing stuff that students should notice but don't, such as pickpocketing, stealing phones, putting water buckets on doors, sabotaging water fountains,
Don’t put more thought into it than Alexander, that would be autistic.
 
You know, difficulty is supposed to emerge from the mechanics of the game. Since Alex likes to talk about Hitman so much, why doesn't he take a page out of its book and actually do what Hitman does by having characters use a bespoke routine that makes them wander through areas players can take advantage of if they know the games mechanics? In Hitman, you can use bodies as a distraction, you can find blind spots or create them by disabling cameras or getting people to vacate the area, pick off bodyguards and masquerade as one to get access to areas that might allow you to set up traps.

He did implement the students having a routine thing where they walk around the school, but to me half of it feels so inorganic. For example, having the gardening club water every single plant around the school. Yeah, it makes sense for them to do it, but... they're still teens (sorry technically 18+ aha). I don't think they'll be doing it every single day with every single plant. There would be days where some of them slack off by playing with their phone, chat with others, do homework 10 minutes before class, etc.

But alas, our developer didn't go to high school, so how would he know that?
 
  • Thunk-Provoking
Reactions: Sir Wesley Tailpipe
Well I've always maintained that the game is fundamentally flawed in design. The time limit makes social stuff impossible because you need to know what to do, and if you buy the 'schemes' from info-chan you may as well just get a guide online. As for violent methods, Raiburu is just op and stalking your rivals is no fun, and there aren't enough opportunities to create a moment to strike.

If I were making YandereSim, I'd just make it randomised. Random school layout, random schedules, random target rivals. Then just load the game up with things that make opportunities to do stuff. Then people can get replay value out of doing runs rather than playing some long campaign. The game is already taking this form through mission mode.

Like, I can't believe there's no option to set off the fire alarms yet, or you can't have classes with opportunities to kill your rival. Chemistry class gives you access to chemicals, woodwork gives you access to buzzsaws, cooking gives you access to knives/poison, etc. He has smoke/stink bombs in mission mode, why not add them to the base game?

Students are also dumb as fuck, if they see you drop and turn on a radio they just turn it off no matter how many times you do it. If Alex actually invested in making an event system then you could just make an event for 'dropping radio' and if someone witnesses that event and then hears the radio, they approach you and not the radio. Hell, make it drop your reputation or whatever. It'd also pose an additional threat when doing specific eliminations that require doing stuff that students should notice but don't, such as pickpocketing, stealing phones, putting water buckets on doors, sabotaging water fountains,
It took Alex like a year or so to get the students to react to pantyshots, implementing anything like whst you're describing would probably take him a lifetime.
 
45 seconds*

Edit: This is specially important 'cause Alex himself said (very recently) that allowing the player to do that "would be" very bad design
Alex is the only dev I know of that's autistic enough to balance his game around speedrunners. Most devs rightly don't care since speedrunners will always find some bug or two to beat the game in an obscenely short time, and only an idiot thinks they can stop that.
 
Alex is the only dev I know of that's autistic enough to balance his game around speedrunners. Most devs rightly don't care since speedrunners will always find some bug or two to beat the game in an obscenely short time, and only an idiot thinks they can stop that.

Nothing is beyond Alex when it comes to the detriment of his existence
 
Alex is the only dev I know of that's autistic enough to balance his game around speedrunners. Most devs rightly don't care since speedrunners will always find some bug or two to beat the game in an obscenely short time, and only an idiot thinks they can stop that.
Hell, his Discord And subreddit are balanced around speedrunners! It’s autism all the way down!
 
You know, since i don't really have anything useful to do with my afternoon, i was thinking about that old post where Alex complains he does not have a girlfriend, and i was thinking, at least to me, he did not seem that ugly when he was younger, just average i think, of course he is ugly nowadays, but now he is much older anyways, so i think if he did not lack so much confidence he could have gotten at least 1 average looking girlfriend in his 20's when he still looked average, but of course it is Alex i am talking about, so i am not sure why i am surprised he wasted his life once again...
 
45 seconds*

Edit: This is specially important 'cause Alex himself said (very recently) that allowing the player to do that "would be" very bad design
It wouldn't be bad design if it was difficult to do, or difficult to figure out. There are plenty of opportunities in well mad videogames where you can cheese the game's AI or jump to a shortcut but it takes a long time to learn how to do. And you usually spend longer trying to figure out how to get the trick to work than if you did it normally.
 
It wouldn't be bad design if it was difficult to do, or difficult to figure out. There are plenty of opportunities in well mad videogames where you can cheese the game's AI or jump to a shortcut but it takes a long time to learn how to do. And you usually spend longer trying to figure out how to get the trick to work than if you did it normally.
Hell, if Alex wasn't hurt by how quick someone managed to cheese the game he would have realised that cheesing AI is the main appeal of hitman like gameplay. In a well designed game, the whole replay value comes from the experiementation of different methods of eliminating your targets. In a game like yansim, the goal should be for time efficiency as the game is a managing sim when ypu break it down to basic mechanics. Rewarding the player's knowledge of systems with satisfactory timesaves so the player could improve other aspects of their character should be the goal of this game.
I feel in the final game he's going to railroad the player into having one (or two if Alex doesn't feel lazy) lethal methods of dealing with each rival which will become boring fast.
 
Late reply because I haven't checked the thread in a while, but while there won't be differences in the structure/layout of structs and classes, there can absolutely be differences in methods - small switch statements are compiled into if-else for perf, large if-else might be incorrectly decompiled and include gotos when none were in the original code, small methods might be inlined, etc. Obviously the code is shit, it just pains me to see people smugly point out the things that effectively don't matter like a couple of small if-else statements in the decompiler output where a switch would be more readable instead of the unsustainable architecture.
A SMALL if-else I can understand, maybe less than 3, 4 max, when you're making GIANT ones it's pretty bad. Especially if it's something like just checking a number.
 
It wouldn't be bad design if it was difficult to do, or difficult to figure out. There are plenty of opportunities in well mad videogames where you can cheese the game's AI or jump to a shortcut but it takes a long time to learn how to do. And you usually spend longer trying to figure out how to get the trick to work than if you did it normally.

Alex isn't willing to accept the fact that somebody can outsmart him, so any time somebody comes up with a clever method to eliminate the rival efficently, it has to be removed.
 
In spite of people saying that the game is lagging due to long if-else chains, it is not anywhere close to being the reason for the game's poor performance. Alex likes to use the Unity profiler as a way to dismiss claims about him being a bad programmer; it's simply beneficial for him if the only argument presented against his bad coding practices is the long if-else chains, because he knows that these are easy to dismiss.

Personally speaking, I cringe hard when someone brings that argument up. I never liked Alex and I'd never protect him, but I am in favor of using well-constructed and correct arguments that can't be easily dismissed - these sting harder.
With that in mind, here's my TOP 10 Arguments that Alex can't dismiss:
1. Unity profiler doesn't accurately represent what causes the performance drops. If physics, rendering and pathfinding take majority of your frametime, it's because you were too incompetent to set them up correctly.
2. Tying into the previous argument, the pathfinding is a broken and laggy piece of mess because it was integrated incorrectly; A simple event system and one pathfinding brain could create an NPC hivemind that would be both easy to manage and efficient.
3. The game doesn't use multithreading, despite the fact that a good portion of the plugins used in the project come with that functionality out of the box.
4. Data oriented NPC approach would work well with data oriented pattern like ECS, but Yandere Simulator is using Unity's EC; it makes no sense to use a JSON file for students over inheriting from a base class and implementing their routines in there. It would also make creating special events much easier, maybe we could have had 7 rivals by this point if only these concepts were applied properly.
5. Implementing new character models would take a day of work for a competent developer. If Yandere Simulator can't have that, then there is something fundamentally wrong with the amount of cohesion present in the project.
6. Rendering is the most performance tanking task of the engine running Yandere Simulator; we're 6 years into the project and the school still isn't combined into a single mesh, which could halve the amount of time required to render it.
7. Using linear interpolation for easing movement in and out is framerate dependent and only introduces new bugs. It is also a sign that you have no idea what you're doing.
8. Lack of any statemachine for NPCs; they can be in many different states (one at a time) and a competent programmer would think of implementing a transition system which would cut both the error potential and development time. Instead, we get hundreds of lines of code dedicated to edge case scenarios.
9. The game does not digress between the gameplay and presentation layer. A competent game designer would create a game that would run 'blindly', and then present that data in a read-only graphical format. Yandere Simulator introduces strong connection between its graphical representation and internal elements of game's structure, which makes the code dependant on the presentation layer that would have otherwise been read-only. This is the worst kind of cohesion, because the player can feel it while playing the game.
10. If speedrunning your Discord server provides people with more fun than playing your game, then there is clearly something wrong with your game design.

Ditch the if-else argument and feel free to pester Alex with these instead; He will have much harder time trying to find excuses for them.
 
You know, I'm something of a programmer myself.
I agree with you in spirit. If-else does not degrade performance, but cause lots of bugs.
But your arguments are not that hard to dismiss and are sometimes pretty vague. Let me take a try.

1. Unity profiler doesn't accurately represent what causes the performance drops. If physics, rendering and pathfinding take majority of your frametime, it's because you were too incompetent to set them up correctly.
You would have to prove to me, that the profile does not accurately represent performance drops. Thats kinda its whole reason for existing and its not like Eva developed it him self. It shows correctly, that physics, pathfinding and rendering are the cause of the bad performance. Experiments like looking down, looking away from the school or killing all students proves this.

2. Tying into the previous argument, the pathfinding is a broken and laggy piece of mess because it was integrated incorrectly; A simple event system and one pathfinding brain could create an NPC hivemind that would be both easy to manage and efficient.
Thats a really weird thing to say. How would an NPC hivemind speed up pathfinding? Every NPC still needs its own path calculated. It makes no difference, if a student asks the pathfinding brain, who ask the pathfinder for a path, or if a student directly asks the pathfinder. An idea, that would actually speed up pathfinding, is to precalculate paths. Every NPC is on a fixed route and the enviroment doesnt change. So just calculate some necessary paths in advanced.

3. The game doesn't use multithreading, despite the fact that a good portion of the plugins used in the project come with that functionality out of the box.
If you mean he should tick the "multithread" checkbox on his pathfinding plugin, then I agree. If you mean he should multithread his own code however, we already established that his code is not the cause of performance drops. Multithreading introduces just more bugs and is not worth it in this context.

4. Data oriented NPC approach would work well with data oriented pattern like ECS, but Yandere Simulator is using Unity's EC; it makes no sense to use a JSON file for students over inheriting from a base class and implementing their routines in there. It would also make creating special events much easier, maybe we could have had 7 rivals by this point if only these concepts were applied properly.
The json file is for properties and does not implement behavior. Many games use such files to load properties from. Its quite common. As for the different behavior of the different student, yeah he should at least make them different classes. The json file doesn't hurt much. It actually introduces *ABSTRACTION* (I knew you could do it devpai).
5. Implementing new character models would take a day of work for a competent developer. If Yandere Simulator can't have that, then there is something fundamentally wrong with the amount of cohesion present in the project.
You do read this thread right?? The problem with new character models is NOT that they are hard to drop in, but that they would screw up animations. Also this far in, these models this games face. To late to change that ever IMO.

6. Rendering is the most performance tanking task of the engine running Yandere Simulator; we're 6 years into the project and the school still isn't combined into a single mesh, which could halve the amount of time required to render it.
Maybe, maybe. But on the other hand, keeping the school in separate meshes allows the engine to do Occlusion culling or at least Viewport culling. That means, only the visible parts of the school need to be drawn. Not the entire school, which you would have to, if it was just one mesh.

7. Using linear interpolation for easing movement in and out is framerate dependent and only introduces new bugs. It is also a sign that you have no idea what you're doing.
Not unless the value determining the interpolation amount is itself time dependent.
y = interpol(x)
x += delta time
Perfectly frame rate independent.

y = interpol(x)
x += 5
Frame rate dependent

Would help if you could cite some code for you arguments.
8. Lack of any statemachine for NPCs; they can be in many different states (one at a time) and a competent programmer would think of implementing a transition system which would cut both the error potential and development time. Instead, we get hundreds of lines of code dedicated to edge case scenarios.
100% correct.

9. The game does not digress between the gameplay and presentation layer. A competent game designer would create a game that would run 'blindly', and then present that data in a read-only graphical format. Yandere Simulator introduces strong connection between its graphical representation and internal elements of game's structure, which makes the code dependant on the presentation layer that would have otherwise been read-only. This is the worst kind of cohesion, because the player can feel it while playing the game.
Again, some code citation would help. Unity kinda already does this for you, if you consider GameObjects to be gameplay objects and not presentation objects. For example, it does not matter, what model Yandere-chan uses, what hair style she has, what texture is applied or what material she uses. In that sense, the game already does abstract gameplay from presentation.

10. If speedrunning your Discord server provides people with more fun than playing your game, then there is clearly something wrong with your game design.
CONSUME THE you know it. Lol. Agreed.
There is a good video, that makes points I have never seen on here about YandereSims bad gamedesign. Yandere dev cant decide between an open sandbox game and a linear story game and it fucks both modes hard.
The real problem with Yandere Simulator (and no, it's not the YandereDev drama)
 
Last edited by a moderator:
You would have to prove to me, that the profile does not accurately represent performance drops.
I do agree that this could have been worded better; I did not mean to imply that it doesn't represent the drops accurately, but rather that it does not accurately represent source of the drops; If you continously add force to rigidbodies, move character controllers or shoot raycasts through unity components, the profiler will still list these under "Physics" and not under the component that actually made the engine perform all of these calculations. Alex uses this to manipulate his audience - he claims that Physics simulation is something out of his reach and is solely dependant on Unity, but that's just not the case.

How would an NPC hivemind speed up pathfinding?
NPCs could subscribe to the hivemind's event system in order for it to know whether a certain event took place, and then the brain could determine whether or not a recalculation of the path is necessary - this is better than running pathfinding on every frame; Since it's event based, if you started moving objects around the school to somehow block the path, the NPC would first have to encounter these objects, determine that the path is blocked and ask the brain for recalculation. This is not only more performant, but also far more immersive than having your NPCs be all knowing of the available paths by calculating them every frame. This simple solution that could kill two birds with one stone (pathfinding performance issues & lack of immersive behaviour) somehow flew over Alex's head.

The json file is for properties and does not implement behavior
This is exactly why it does not fit into the Entity-Component model provided by Unity. Data is meant to be stored directly in components, so that they can operate on it. This is because the EC model strictly couples data and the code that will operate on it; There is no reason to choose JSON parsing over setting up the components, not only is that an inferior way of defining an NPC - it also means that you have to write a parser and may this embrace you if Alex breaks it again. The JSON file would make sense if Yandere Simulator used the ECS pattern, because then the data would have to be decoupled from the code operating on it anyway.

But on the other hand, keeping the school in seperate meshes allows the engine to do Occlusion culling or at least Viewport culling
You need to remember that even when baked, occlusion culling can be very expensive to run; In Yandere Simulator's case, the school is simple enough to render its base (walls, empty rooms, floor etc) as one combined mesh, and only cull details inside of various rooms. We are talking about >50% rendering speed boost, but for some reason Alex does not want to do it (or maybe he simply doesn't know how to do it).

Not unless the value determining the interpolation amount is itself time dependent.
I specifically said that using linear interpolation for easing in and out is framerate dependent, because then it is no longer linear.
The way that Alex does this, is by interpolating between points A and B over deltaTime; This is a beginner mistake.

In that sense, the game already does abstract gameplay from presentation.
Prompts are operating by modifying the fill value of a radial-masked UI element over time if a certain button is pressed; The action associated with the prompt will be executed only if that fill amount is equal to 1 (100%). This is just one example of Alex writing extremely cohesive and unsafe code - if Unity were to change the range of fill on the images from 0-1 to 0-100, Alex would have to rewrite a lot of code which would only slow down the development even further.

I really enjoy discussing these, because the further you delve into these points, the more problems with Alex's coding become apparent.
While we're on the topic of his incompetency, let's not forget about this gem on the debunk page;
1593356675854.png
 
he claims that Physics simulation is something out of his reach and is solely dependant on Unity
Anything more expensive than an empty scene is 100% under his control and anyone how believes otherwise is brainwashed.

NPCs could subscribe to the hivemind's event system in order for it to know whether a certain event took place, and then the brain could determine whether or not a recalculation of the path is necessary
I have never seen something like this IRL, atleast not under the name "hivemind". In Yanderesim there are no dynamic obstacles anyway, thus the point is kinda mute. A student hivemind and realism don't go together either. Being informed of moving obstacles blocking paths and acting on it, is another level of complicated. I wouldn't attempt that, unless it is really necessary.
Is he actually using a navmesh or a grid graph? If grid graph, that would explain the bad performance a lot.
There is something weird going on there, 90 students should be able to pathfind every other frame without causing too much of a problem.

In Yandere Simulator's case, the school is simple enough to render its base
If that is the case, how would combining it be a 50% improvement? I think we really can't say what would be better, without trying it. And that will never happen.

The way that Alex does this, is by interpolating between points A and B over deltaTime; This is a beginner mistake.
He does this?
a = Interpol(a, b, delta time)
Yeah, that would be kinda not linear.

The action associated with the prompt will be executed only if that fill amount is equal to 1 (100%).
Wierd? Yes. Would I do that? No. Will that hurt him in the long run? Dont think so.
Sometimes its okay to do something stupid but simple. In a well writen project, that wouldn't be an issue, but this is yandere sim, sooooo.


A thing I'd like to add.
His project is rather huge and I have seen him complain about recompile time. For those who don't know, every time he make changes to the code and wants to try them out, the code needs to be recompiled and that takes time.
The more code, the longer it takes.
So I guess his current workflow is:
Make a small code change.
Wait for recompile.
Get bored.
Watch youtube video.
5min passed. Only small change done.

You can really lose time this way. I know I have.
 
Back