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

The end of EvaXephon?


  • Total voters
    2,418
I was looking arround youtube to find some let's play of the game to see if Yandere Sim is still popular.
And I found this sperg

The dude is tryharding so much with the thumbnails and the 5456756 yandere dev and fnaf videos.
What a fucking muppet I pity him
Don't worry! In his about page he says he's very modest.
modest.PNG
 
View attachment 1566065
Presented without further comment
Wait, what? For every 1,2,3 etc to 9 he has the same 11 result, isn't it simpler to write if it's between 1 and 9, then 11? Ugh, I have only basic understanding of programming, and he's supposed to be the dev for 6 years already. What the fuck?
I was looking arround youtube to find some let's play of the game to see if Yandere Sim is still popular.
And I found this sperg

The dude is tryharding so much with the thumbnails and the 5456756 yandere dev and fnaf videos.
What a fucking muppet I pity him
>clearly Polish like surname
>is actually Scottish


he never stood the chance, poor sod. Rolling out double nigger like this.
The Patreon is again above $2000, but the number of patrons did not change.
My guess is that that $300 whale bumped their contribution up again to keep the Patreon above $2000, and that whale is actually Alex himself.
View attachment 1566121
OOh, I didn't considered it. That has to be true.
 
  • Thunk-Provoking
Reactions: Deathclaw Tiddehs
Wait, what? For every 1,2,3 etc to 9 he has the same 11 result, isn't it simpler to write if it's between 1 and 9, then 11? Ugh, I have only basic understanding of programming, and he's supposed to be the dev for 6 years already. What the fuck?
That was my initial thought, but then I realized that each block modifies a different variable (he has MemorialStudent1 through MemorialStudent9. Don't worry though, you aren't wrong about there being a simpler way to do it.
Make an array (or vector, if you don't want a fixed capacity) and call it MemorialStudents. Then have a variable like MemorialStudentCount as a counter. Whenever you want to give a student a memorial, increment the counter and set MemorialStudents[counter] to the appropriate value.
 
For anyone who's interested, Jay made a video on Osana as well. He manages to kill her around the 10 minute mark by telling her to go away during lunchtime after doing Osana's task. Raibaru for some reason doesn't follow Osana and just breaks at 11:51

He also made a video on sneaking into Osana's house and taking care of the stalker
 
Presented without further comment
Why isn't he using reflection (specifically, getting the property and then calling PropertyInfo#SetValue) or an array for this, what the fuck?? This guy never thinks with scalability in mind. Your average high school teachers better than this.
 
That was my initial thought, but then I realized that each block modifies a different variable (he has MemorialStudent1 through MemorialStudent9. Don't worry though, you aren't wrong about there being a simpler way to do it.
Make an array (or vector, if you don't want a fixed capacity) and call it MemorialStudents. Then have a variable like MemorialStudentCount as a counter. Whenever you want to give a student a memorial, increment the counter and set MemorialStudents[counter] to the appropriate value.

Strong no to reflection. Sigsegv has the better solution to this problem. Using reflection for your own code is a STRONG indicator that your architecture is shit, you are shit and refractoring is overdue.

Even the if-else thing he has right now is better then using reflection in this case.
 
  • Agree
Reactions: cjöcker
Strong no to reflection. Sigsegv has the better solution to this problem. Using reflection for your own code is a STRONG indicator that your architecture is shit, you are shit and refractoring is overdue.

Even the if-else thing he has right now is better then using reflection in this case.
You're somewhat right when you say this, although I wouldn't rule out reflection completely since its nice for stuff like dependency injection, but if you are using it for your own code you have to have fucked up somewhere (like Alex). it was more of a "band-aid" solution so he doesnt have to write the else-ifs which would be quite fucking tiring unless he's using some super autistic vim macro or some shit. No denying that using an array would be much better but reflection would be good if you're doing things the Alex way.
 
  • Agree
Reactions: Trappin in the Trap
I'm a bit late this time, but the September 2nd bugfixing build is out.

Some of these are expected,

Some are unexpected (this is probably another half-assed fix that will break again later, though),

And some he definitely didn't consider a bug until people complained about it.



His DOF fixes largely amount to scattering lines like this across the codebase:
View attachment 1566060


This one I think was him running tests with occlusion culling on the first floor but forgetting to re-enable transparency in the final build, I remember watching a video he posted talking about it (I can't find that video now but I'll post it later). It clearly looks like leftover test code:
View attachment 1566062
(By the way, this snippet is from StudentManagerScript of all places [lol].)


View attachment 1566065
Presented without further comment

Other than that it's a bunch of bug fixes (some of which are more design flaws than bugs) that he certainly could have made on his own before releasing the final build.


View attachment 1566082
(This doesn't actually change anything ingame)
Alex back at it again taking out a genuinely inventive way of killing Osana in a way he doesn't intend to. I thought the point of Hitman games was to provide players with a target and tools and let them kill them in any way possible?

Can't wait for all this spaghetti code to bite him later when if he ever tries to streamline his code. (he won't)
 
That was my initial thought, but then I realized that each block modifies a different variable (he has MemorialStudent1 through MemorialStudent9. Don't worry though, you aren't wrong about there being a simpler way to do it.
Make an array (or vector, if you don't want a fixed capacity) and call it MemorialStudents. Then have a variable like MemorialStudentCount as a counter. Whenever you want to give a student a memorial, increment the counter and set MemorialStudents[counter] to the appropriate value.
Just to demonstrate how much simpler Alex's code could have been:
C++:
/* I haven't used C# in several years, so this snippet is in C++
* assume that student_memorials is a global std::array, and num_memorials is the counter variable */
if(num_memorials < student_memorials.size())
    student_memorials[num_memorials++] = this->npc_id;
Wow, look at how simple that is! You don't even have to make any adjustments to it if/when you decide to change the size of student_memorials!
 
Just to demonstrate how much simpler Alex's code could have been:
C++:
/* I haven't used C# in several years, so this snippet is in C++
* assume that student_memorials is a global std::array, and num_memorials is the counter variable */
if(num_memorials < student_memorials.size())
    student_memorials[num_memorials++] = this->npc_id;
Wow, look at how simple that is! You don't even have to make any adjustments to it if/when you decide to change the size of student_memorials!
A loop???? Based on array length???? What sort of black magic is this!

edit: i am dumb lol
 
Back