It's like he's trying to say, "I like milk, chocolates and cookies" but instead he says, "I like milk. I like chocolate. I like cookies."
@m88nlighter4 жыл бұрын
As someone who doesn't understand code this explained so much to me
@madisonschmidt73044 жыл бұрын
cozmian LOL. That’s so accurate! 😂😂
@tylerfusco74954 жыл бұрын
or, he is saying: do I like cake? no. do I like brownies? no. do I like cookies? yes. do I like water? no. do I like milk? yes. do I like soda? no. do I like peanut butter? no. do I like chips? no. do I like chocolate? yes. do I like crackers? no.
@judef4 жыл бұрын
and then repeatedly checking if he still likes milk, chocolates and cookies every frame
@gusmusicau4 жыл бұрын
Its actually more like I like milk I like milk and chocolate i like milk and chocolate and cookies
@spiritflame88064 жыл бұрын
Imagine checking the position, behaviour, and clothing of every character every frame and wondering why your game lags
@SteffArrowPlay2DeadbyDaylight4 жыл бұрын
I'm a noob at coding but can't he just have a variables and use them only when they are needed instead of checking raw values every frame?
@ducky80754 жыл бұрын
Khaletsky the answer is yes.
@Boxsteam4 жыл бұрын
@@SteffArrowPlay2DeadbyDaylight You are correct good sir
@shdowdrgonrider4 жыл бұрын
@@SteffArrowPlay2DeadbyDaylight congrats. You are now more qualified than him.
@notsojharedtroll234 жыл бұрын
On the Engineering One of our teachers is picky on this things... Now I see why she bothers us too much for these reasons
@11791254 жыл бұрын
We are moving from "can it run Crisis" to "can it run yandere simulator".
@skelskeleton4 жыл бұрын
the answer is no
@unapersona100real64 жыл бұрын
no. also crysis is actually good unlike yansim
@unapersona100real64 жыл бұрын
@Don Cheadle i know i just wanted to continue roasting yansim
@sharkle94 жыл бұрын
He pushed to get a finished product out when he should have took time off to work on his skills. I remember he did a poll for whether he sold the game to a company or continued doing it himself. People took the latter unfortunately. He had an interesting following though. There was lets players who would explore the game after each build and it was getting a ton of hype from that. Wonder if anyone else is taking that apporach now?
@gotdamnntoro95684 жыл бұрын
Crysis thing was because it was godlike, unlike Yandere Simulator which is godlike in being not optimized
@TheMrSzony4 жыл бұрын
`lookAt(this.dude)`
@shaynehughes66454 жыл бұрын
If (if == used) { std::cout
@Krisztian084 жыл бұрын
😂
@Dan-td8xk4 жыл бұрын
lookat(thetopofhishead.hahahaha)
@plsaim61734 жыл бұрын
if (this.Type == EmojiType.:crying_laughing:) { return "crying laughing"; }
@bruhSaintJohn4 жыл бұрын
@@Ishidres omfg
@TheZelen4 жыл бұрын
Imagine if this person built a graphics engine An "if" statement for each of the 16 million possible colors
@FrancescoPalazzo264 жыл бұрын
69 likes, nice
@atlas_194 жыл бұрын
Now imagine it was 16-Bit.
@inx18194 жыл бұрын
wouldn't be surprised
@bman73464 жыл бұрын
@@atlas_19 24 bit
@third-ratedude42344 жыл бұрын
Well, the dude attempted to create a Game Engine for Fighting Games several years ago
The teacher always say that I am the worst coder inside my class. Now I am just the second worst :))
@ousamadearudesuwa4 жыл бұрын
true.
@seireiart4 жыл бұрын
Same thing.
@gavinrector4 жыл бұрын
I feel worse...
@whitegroth28124 жыл бұрын
My favorite part is the 'if knife, return "Knife", if katana, return "katana"
@zombiedude3474 жыл бұрын
Given it's an object-oriented language, he could've put that info in the object classes and used getters. Although, that would just solve code clutter, not make it more efficient.
@jackdavenport50114 жыл бұрын
@@zombiedude347 Better yet, it's an enum, and there's BUILT IN FUNCTIONS to convert the name of an enum to a string.
@loopyloops56524 жыл бұрын
What's a better way to do this? I'm a bit confused by these as a complete beginner
@h.celine93034 жыл бұрын
@@loopyloops5652 look up enumerators in C#
@loopyloops56524 жыл бұрын
@@h.celine9303 oh, so it's like giving saying `i` is a list of arrays and telling the code to put them one by one into certain places of your code?? I'm sorry i still don't understand much
@Orcawsom4 жыл бұрын
wow, it's almost as if... else... if... else...
@shanekim284 жыл бұрын
UNDERRATED
@captaincool62684 жыл бұрын
thats how code should work , simple, efective and autodesceiptive ,good job
While IndianTutorialsWatch = false { Write.NoobCode } P.S. I can't remember syntax and i'm not sure with that comment
@legay65746 жыл бұрын
so THATS why even on low quality it's slow af
@Tamschi6 жыл бұрын
"You can't set code to low" I'm stealing that.
@legay65746 жыл бұрын
else if
@gemstonegynoid74755 жыл бұрын
Graphically, the game looks like something I would easily be able to run on a 2001 laptop if the code was good.
@cathieebells4 жыл бұрын
@@gemstonegynoid7475 exactly lol.
@stargazersdance4 жыл бұрын
@@DJSandmannTV To an extent, they do have to do with the performance. It's just that the game has to run a fuck ton of code every frame.
@Braaaap.6 жыл бұрын
I wouldn’t be mad at YanDav for not being the best at coding. But the fact he’s getting about 4-5 grand a month to do this is concerning.
@Chaooo6 жыл бұрын
He also hired a professional coder to retool his existing code to be more efficient. He later let him go because "YanDev couldn't understand the code the professional was writing." O M E G A L U L
@griff24706 жыл бұрын
@@Chaooo On one hand, if a project has two programmers, and if one can't understand the code of the other, there's a very valid reason for the lead Dev to let the other go. Like, if I was working, and I made an object where other team members couldn't even understand my interface for it, that's a really big problem. This is all based on the premise that all team members are competent programmers however. On the other hand, in yanderedev's case, he's clearly a self taught amateur. That's not a bad thing, I would not consider myself good either (I didn't know how to use lambdas in java until a few months ago), but when you have the opportunity for someone who is presumably a professional in the industry (I don't follow but that's what I gathered) to optimize and further develop his code, thats something he should have jumped on and taken advantage of.
@Chaooo5 жыл бұрын
I agree that developers in a team should be able to understand each other's code and that's a rapport that's built up over time, but if everyone is ridiculing your code and you're not even at that level of expertise (being self-taught, no less), then let someone who absolutely knows what he's doing do his thing. At that point, all you have to do is ask him to go into more detail in commenting his code so that YanDev can understand it. Hell, it was even a Patreon goal for him to hire the professional coder. Imagine all the backlash when he went back on his "promise."
@DerekCivilDefense4 жыл бұрын
Jealous?
@pooooopppyyyyfarttt4 жыл бұрын
Yan dev is such a strange person
@asperRader4 жыл бұрын
i actually never heard the whole laugh bite, glad yandev sucks so bad that theres so much material
@dynaheart4 жыл бұрын
void LookAt() { this.dude; }
@oz_jones4 жыл бұрын
What a time to be alive
@masterbasher95424 жыл бұрын
Looking at this if else coding horror again. All I'd say is in full irony, YandereDev might be... The best programmer, to learn how (not) to code in logic.
@MMMercia4 жыл бұрын
I thought it was several clips from the same dude but idk
@bestevie3114 жыл бұрын
I mean seeing as the first of 10 rivals has been "almost ready" for like a year, maybe his strategy is to finish the game in 3023 when everyone will have such powerful PCs that they will be able to run his code at about a stable 30 fps
@DamienAcross4 жыл бұрын
we'd be lucky to even run it at 10 in 3023
@xephyre69554 жыл бұрын
That's an optimistic number. He's gonna add more else if in there. Even supercomputers will crash to this atrocity.
@Willie_Pete_Was_Here4 жыл бұрын
What will come out first? Yandere Simulator or Star Citizen?
@retardedengineer34534 жыл бұрын
neither
@Volvary4 жыл бұрын
5 years*
@nickelwrangler4464 жыл бұрын
switch: *exists* for loop: *exists* YandereDev: "I'm gonna ignore that."
@anduro74484 жыл бұрын
litteraly anything that isnt ".this" or "if else" : *E X I S T S* YandereDev: I am gonna ignore that
@@balintkristof8442 there's a typo! You're gonna crash him!
@balintkristof84424 жыл бұрын
@@gillboy5762 With no survivors.
@altus32784 жыл бұрын
Switch statements would not improve this code
@x_30546 жыл бұрын
Yandere dev's actual progress with the game < the amount of "else if" he uses
@goran58445 жыл бұрын
*Any gave dev's actual progress < the amount of else if yandev uses
@seeforkat4 жыл бұрын
^
@vlusky_husky4 жыл бұрын
me, who code in python: *yes, switch case.... Mmmm*
@nahodny_marc4 жыл бұрын
@@vlusky_husky cpython kinda slow anyways so no matter
@vlusky_husky4 жыл бұрын
@@nahodny_marc Yes, I'm fully aware in that
@BrandonCMaximum4 жыл бұрын
if(this.Type == WeaponType.Knife) { return “knife”; } Yes, I see this knife is made out of knife
@GraveUypo4 жыл бұрын
Exactly! I knew someone would point that out hahah
@sugo84794 жыл бұрын
Did you actually mean this.knife?
@_moosh4 жыл бұрын
No flippin way
@teamdoodz4 жыл бұрын
Didn't even use a switch statement....
@nick17524 жыл бұрын
this.knife*
@billcipher1474 жыл бұрын
Me, who has no idea how coding works: *"disgusting."*
@pewbeecares50724 жыл бұрын
But it's the internets. Everyone is an expert!
@poenze14 жыл бұрын
@manifestation of Gudako's insanity Actually it's really clean and linear. It's just overly repetitive and uses heavy operations often, making it incredibly inefficient.
@fizz96984 жыл бұрын
That's me when i watch Gordon Ramsey
@deadturret40494 жыл бұрын
@@poenze1 Bad formatting, poor commenting... yeah no it's not even clean.
@cornelisvreeswijk1864 жыл бұрын
@@deadturret4049 This is decompiled code, so the comments are not visible, but yeah I agree with you
@northernmask60964 жыл бұрын
"My game doesn't have bad performance, you're just a bunch of kids playing on old computers. Go get a job so you can buy a gaming PC"
@beri41384 жыл бұрын
Me with an overclocked I7-8700K, Gtx 1080 and 32GB of ram: 45fps. Lel.
@phanterratic4 жыл бұрын
di-did he actually say that? no way he's that dumb
@kyzoc.47854 жыл бұрын
@@phanterratic on stream
@farenhite43294 жыл бұрын
Phanterratic The Merciful he told people to get high end gaming pcs to play his anime game for real.
@phanterratic4 жыл бұрын
@@farenhite4329 YOU ARE FUCKING KIDDING ME NO WAY
@genericwhitekidthesecond43304 жыл бұрын
Just a reminder that this clown actually managed to get a PROFESSIONAL GAME DEV to work for him and then fired him after they kept butting heads over the said pro developer trying to reorganize the game's coding into something way better all because Yandare Dev wasn't a skilled enough programmer to fully understand this new developers formatting.
@cali66624 жыл бұрын
Yeah, he can't take criticism on his code and just delete everything people say to him about this, god complexity at it's finest
@waspoppin47844 жыл бұрын
Caliel Alves yah, he is a narcissist
@gabrielvanderschmidt23014 жыл бұрын
@@Ballislife32 It would surely have been a much better choice. If your code is so convoluted that the guy trying to clean it up has to basically rewrite most of your program, you better let him do his job.
@elencargamingofficial74584 жыл бұрын
wasn't it that he got fired because the dev wanted to keep making videos on the game and fixing the code would've impeded that? Still a stupid reason but yeah he wasn't saying his code was good, quite the opposite, just that he wanted to keep the game up
@James-ek3il4 жыл бұрын
@@elencargamingofficial7458 and look where that got him.. much fast release on vids and updates huh? /s
@just_areit4 жыл бұрын
It's like someone told him "if it ain't broke, don't fix it" but didn't specify what "broke" is
@VeeTHis4 жыл бұрын
Exactly what I was thinking lmao
@zoedavies32524 жыл бұрын
Ha! Good one
@captaincool62684 жыл бұрын
Wow soo deep balls here
@mar_oc16194 жыл бұрын
I mean the game works fine on NASA computers
@ragejay10634 жыл бұрын
MaR_OC lmao like anyone with a NASA computer is gonna buy his game
@seeyallintheothersideofthe32646 жыл бұрын
Has this guy ever heard about variables?
@callmekiki8826 жыл бұрын
I guess he stopped attending to school because he didn’t find a girl :( poor EvaXephon
@Smiley_Face05 жыл бұрын
@@callmekiki882 aww xD
@unarei5 жыл бұрын
yes. he seems like the type of person who would ask "how do you get a variable with other variables in its name" and then not accept it when the answer is arrays
@LSDOvideos4 жыл бұрын
Poor fucker had his codecademy account confirmation email buried under millions of bugreport emails so unfortunately he only ever took the complimentary trial classes
@pachicore4 жыл бұрын
@@callmekiki882 he was actually homeschooled iirc
@ChongoShow5 жыл бұрын
I now watch this before I start working on my game as a way to remind me "hey you can still make it"
@joshuayoung22595 жыл бұрын
Good luck making your game
@user-ck1zi8qf4i4 жыл бұрын
what's your game about?
@Exploshi4 жыл бұрын
Did u do it
@dynaheart4 жыл бұрын
Tell us when your game is finished, I'd love to play it! I'm working on a game too but since it's my first Unity project (I migrated from GMS) I'll probably just post it on Newgrounds when I finish it lol
@null4184 жыл бұрын
same, i was thinking on giving up but i even learned some little stuff from some vids roasting yandev lol
@gurtejsingh25964 жыл бұрын
There's a philosophical rule that one should keep while programming which is that you should try to never write the same code twice. By the looks of it, yandev has not just ignored that rule, but crushed it , starved it and left it to die lmao
@cmdrgarbage18954 жыл бұрын
Work dry fellas and keep single responsibility in mind
@dracofenix38604 жыл бұрын
As somebody told me once: " He killed it, fucked the body, buried it somewhere in the forest, and lived with fear and remorse the rest of his life ":
@quack38914 жыл бұрын
@poor man's rose if you're using it more than once on purpose then wouldn't you just have it be called instead of just writing it out again?
@quack38914 жыл бұрын
@poor man's rose ye ye np
@mohammadfahrurrozy80824 жыл бұрын
Bruh hes actually right tho? He never wrote it twice. He wrote it many times XD
@abcudidhowbdiwnxisndbdjdbjs4 жыл бұрын
YandereDev: _gets a tiny build developer to help work on the game_ TinyBuild Developer: _sees the pile of code spaghetti and starts remaking the code from scratch_ YandereDev: *SOMEBODY TOUCHA MY SPAGHETT*
@user-lc7je8tp3u4 жыл бұрын
i'd never thought there'd be a funny use for that meme, but here we are
@Theoss-sl1fk3 жыл бұрын
Lol, finally a good meme joke, lesson learned, redditors
@fmproductions9136 жыл бұрын
Hi, Unity/software dev here: Funny vid! So I'll do a breakdown of the code if anyone is interested: There are many possible optimizations. 0:15: accessing a transform like 20 times in Update is bad for performance, because there is a transform hierarchy (you have to go from the local transform of the root object all the way down to the local transform of the object you are accessing) and the longer the hierarchy is, the more it costs to access or set the transform values, such as rotation and position. A better solution: access transform.position and transform.rotation one time and store those values into variables. then operate on the variables and set it back to the transform.position and transform.rotation at the end. (double)this.Distance - casting to double is simply unnecessary. Isn't really a big performance overhead, but unnecessary 0:18 - instead of the many ifs, make a class that has a variable for each of the materials (0-3), make all the instances of it that you need and simply assign the variable values to the main textures. Since it is a check from 1 - 6, simply store the instances in an array an access the index (1-6). 0:25: For converting the WeaponType enum to string, there is this function: msdn.microsoft.com/de-de/library/system.enum.getname(v=vs.110).aspx It's more or less a one liner. 0:27: What the hell? Is this a script for setting a time to individual digit objects? 0:31: Not even that bad. Nothing to complain about imo. But you don't have to write "this" before everything, except if you have a variable with the same name in your function scope. I don't expect that to be the case. 0:33: For the affection level, simply divide the affection by 25, cast it to int and you have your affectionLevel number and if it is above 5, set it back to 5. that would be 4 lines of code instead of 12. 0:40: Was a good laugh :D 0:48: Many GetComponent calls in Update kill performance massively. Better use it once at the start of your game and store the components in variables. accessing the variable will be A LOT less expensive than calling GetComponent every time. Edit: After some recent tests I made, GetComponent doesn't have a bad performance and seems to be cached after the initial call between a Component-GameObject relation. Caching components is still faster. And as some people pointed out, a few things were added/changed by the compiler, like what I mentioned for 0:31 GG
@darlenehailey78806 жыл бұрын
What does FPS indicate?(idk a thing about programming) 0^0
@fmproductions9136 жыл бұрын
Hi! It's not a game dev thing. As far as I understand, it is just a frames per second counter. You basically divide 1 by the time that has passed between the current and the previous Update() in the game you can calculate it.
@darlenehailey78806 жыл бұрын
FM Productions thanks 0v0
@zhnigo6 жыл бұрын
>"I'll do a breakdown of the code" >4th entry is already "what the hell"
@fmproductions9136 жыл бұрын
Hi, @TheSomeoneXD, haven't considered it, but you are probably right! thanks for pointing it out. Doesn't make the vid less funny though.
@minenice48904 жыл бұрын
this.guy needs to switch up his attitude cause he got a real case on his hands
@Paralellex4 жыл бұрын
big if true
@strangelf4 жыл бұрын
Or else if not he’ll loose his patrons
@dynaheart4 жыл бұрын
I know what you did there with the switch & case LMAO
@SurmenianSoldier4 жыл бұрын
else if else if else if else if else if else if else if
@vodkawhisperer39234 жыл бұрын
Knee slapper
@thedeliveryboy11234 жыл бұрын
everyone: wtf this is so bad you can just fix it by [detailed instructions involving variables and codes] me, not a coder but someone who got this as a recommendation from youtube: *mhmmm, yeah.*
@Doc514994 жыл бұрын
The Delivery Boy I took a single course in programming before ditching it as it wasn’t for me and even I can tell this is bad code, it seems to me the game doesn’t know how to “nest” things meaning that every in game asset is loaded all at once. Most triple a and indie games make it so shit only loads when you’re in the vicinity of something (which when done to extremes can lead to “popping in and out” effects like in Pokemon sword and shield if you’ve seen that) imagine playing Minecraft on infinite render distance and how shit the frame rate would be on that
@Doc514994 жыл бұрын
tobivandebulk yeah, Java is kinda shit for coding games. That was one of the first lessons in that college class
@Doc514994 жыл бұрын
tobivandebulk also wasn’t yandere sim coded on java?
@blaze5954 жыл бұрын
@@Doc51499 he's using javascript... which is arguably worse than java for games. sure unity TECHNICALLY lets you write scripts in JS; but there's practically no one uses that over C# (at least, you know; of people that are even a mildly competent at programming).
@markTheruler4 жыл бұрын
@@blaze595 lmao he's using fucking javascript over C#? that's dumb af XDDDD
@nikodemruta76864 жыл бұрын
“Everyone who complains about FPS is a kid with a cheap laptop” he says, as he puts in 20 if else statements for a minor change
@testaccount41914 жыл бұрын
Don't forget a lot of that crap is made to run every frame
@erdalguclu4 жыл бұрын
if only there were "if else" statements, they are all "if"s. Which is absolutely inane.
@dreszerg68374 жыл бұрын
@@erdalguclu Just use loops lol
@userious95344 жыл бұрын
Yeah exactly like the you tubers with expensive gaming set ups who have low frame rates are obviously sooooo poor Edit: my original reply said Yeah exactly like the you tubers with expensive you tubers who have low frame rates are obviously sooooo poor
@JHashcroft4 жыл бұрын
YandereSim looks too bad to also run like shit
@yogurtgaminglol4 жыл бұрын
my band director has a quote he always says. "It's okay to be wrong but it's not okay to stay wrong" and I think that applied here. He's literally making the same mistakes over and over.
@darthbag-us49524 жыл бұрын
Erika Allen *cough* Clarinet’s playing like pussy because they don’t want to make a mistake
@sebosebo46614 жыл бұрын
Based band director
@lightlysal4 жыл бұрын
@@darthbag-us4952 I like that quote
@Zekrom5693 жыл бұрын
And by Albert Einstein which phrases the term insanity in a very general sense as "Doing the same thing and expecting different results", well he is i believe if he is banning everyone from discord just for sending a message.
@bedescarlet4 жыл бұрын
theres code in the game that goes like this: if BustSize > 0, then update BustSize to BustSize kill me
@jesuiscrespo4 жыл бұрын
I would say that guy is an pervert, but that would be an offense to all perverts in the world
@CelyanFurry4 жыл бұрын
@@jesuiscrespo yeah >:'(
@saturnichaze4 жыл бұрын
@@jesuiscrespo _Every person is a pervert at heart, but the charisma of each person is what keeping this world at balance..._ Except YanDev's pervertness level would overweigh the fucking world, breaking the balance forever and ever.
@couldntsetpass29014 жыл бұрын
@@tronk44 or just dividing affection by 25
@0x00Fyou3 жыл бұрын
*plot twist Ayano is just shoving toilet paper rolls in her bra*
@gab_just_gab6 жыл бұрын
_...There's a function called "switch", ya know?_
@VictorRodriguez-zp2do6 жыл бұрын
Javascript also have switch cases, and the good programming practices are almost the same in every programming language
@verloren8446 жыл бұрын
switch or if...else, if you have this much cases you're definitely doing something wrong
@VictorRodriguez-zp2do6 жыл бұрын
Verloren not always, but it seems like he forgot the existence of loops
@gefulltetaubenbrust27886 жыл бұрын
@@verloren844 switches, when checking a lot of cases is faster, because how its handled doesn't require every prior condition to be checked beforehand
@kenonerboy4 жыл бұрын
Its not a function tho
@Prettyautumnrain4 жыл бұрын
Bad: If you have weapon in right or left hand, you are expelled GoOd: If you have knife in left hand, you are expelled If you have knife in right hand, you are expelled If you have hammer in left hand, you are expelled If you have hammer in right hand, you are expelled If you have chainsaw in left hand, you are expelled If you have chainsaw in right hand, you are expelled If you have poison in left hand, you are expelled If you have poison in right hand, you are expelled If you have scissors in left hand, you are expelled If you have scissors in right hand, you are expelled If you have gun (type 1) in left hand, you are expelled If you have gun (type 1) in right hand, you are expelled If you have gun (type 2) in left hand, you are expelled If you have gun (type 2) in right hand, you are expelled If you have gun (type 3) in left hand, you are expelled If you have gun (type 3) in right hand, you are expelled
@nathanchocomint4 жыл бұрын
You perfectly summarized this disaster
@belbaka87114 жыл бұрын
Class knife implements IWeapon If currentWeapon is of type IWeapon Expelled (Not a game dev, nut I suppose this would be better)
@Verinius4 жыл бұрын
Ohhhh i get it now
@GunGunAnimated9 ай бұрын
This is why interfaces exist
@Weebabuu4 жыл бұрын
Man he better clean up his code, or else... If Else if Else if Else if Else if Else if Else
@bilbo_gamers64174 жыл бұрын
it's like he attended the first day of university, quit, and then tried to develop a game
@steven16714 жыл бұрын
In my last month at university, one of my professors started talking about cyclomatic complexity. Basically, the complexity of a program is measured by the number of branches/conditionals it has.
@wrathybear4 жыл бұрын
I'm fine with someone try to develop a game from the first day at university but the fact that yandere sim has been developed more than 6 years with no improvement is a real red flag
@ilikesodaa16434 жыл бұрын
69th L I K E
@Theoss-sl1fk3 жыл бұрын
There's actually a game developer who creates his game on Roblox platform, his username is "Planet3arth", he is the creator of Tower Battles but the thing is that he is still in college !! This single guy's game is actually way more successful Yandere Simulator ! This shows how Yandere dev is bad at coding.
@ianlehman83424 жыл бұрын
The question to test every computer build: "Can it run -Crysis- Yandere Simulator smoothly?"
@tylerantony73994 жыл бұрын
This is a bad test since every computer setup under $50,000 would fail.
@thisisa8 ай бұрын
@@tylerantony7399 even the ones above that amount
@hawk43584 жыл бұрын
The strangest part is that he INSISTS on coding it himself rather than optimizing it using other people's help!! I genuinely don't understand! And when he finally recruited one (1) other person to come help him convert everything to Unity, there was so much they had to fix because he does shit like this!! It's so confusing and frustrating, if he just had other people helping him rather than insisting on doing it himself, he not only would have Osana out by now (she's what, 2 years overdue from when he first said she should be coming 'soon'), but he could be a lot further along in development on other things!! Ugh... ...then again, if I were getting over $4k to dick around with coding and have infinite 'else if's and never release a key part of the game that people want to see (aka: Osana), and I've already been doing this for close to 2 years, why stop now? Lol, he's just milking for money at this point, but it feels like very few of us can really see that, and just keep throwing cash at him, hoping he'll finish Osana and we'll have a decent, playable game rather than a sandbox, but the truth is, he probably won't release a true demo for another year at least! Even if the codes are all ready to go, he'll add something else to mess with the progress (Like Raibaru, for whatever reason. Unneeded for a demo, but he's gotta milk for money, and that means postponing releasing a playable game!) and it'll just keep pushing the release date further and further out Oh and the FPS will likely stay at a solid 20 too xD
@CrackThrough4 жыл бұрын
if hes gonna create more he can see the magic fps going down to 0
@novikovPrinciple4 жыл бұрын
I don't know why we got recommended an old vid from 2018, but last I remember, TinyBuild stepped in to help with this coding nightmare.
@Tomyb154 жыл бұрын
It's simple: he gets $4k a month and the longer it stays in development hell, the more money he makes
@seifeeeeeeeeeeeeeeee4 жыл бұрын
I remember a video mentioning that he didn't want any help cuz he wanted to do it himself and because if someone else fixed his mess he prob wouldnt be able to understand his spaguetti code anymore.
@Mepphy994 жыл бұрын
Right now the game runs mostly at 5-10 FPS
@genkugames96164 жыл бұрын
What is your favourite food? Normal people: i like apples YandereDev: i dont like *names every fruit in the world repeating the "i dont like" quote at the beggining of the fruit he says, until the only fruit that is left to say is "apple"*
@pieguy69924 жыл бұрын
Painfully accurate...
@samuelsamuel40994 жыл бұрын
New coders asking a question on Stackoverflow Response:
@anduro74484 жыл бұрын
atleast new coders take criticism
@norre_4 жыл бұрын
I don’t mind if anyone is bad at the beginning, to achieve perfection on programming it’s learn a lot, but when you program for years, and still look like you are 12 year old boy who just started programming, that’s when you fucked up
@DeadNoob4514 жыл бұрын
@@norre_ Especially since a lot of those questions later show up on google searches and help a lot more people than the guy asking the question originally. Although i doubt anyone is going to have the same problems that Yandev has.
@davidtitanium224 жыл бұрын
I'm a programmer and if i was ever hired to work with a codebase like this, I'd seriously contemplate: "is the salary really worth my sanity?"
@0xC4 жыл бұрын
Get a team of 20 people, a kanban board, 10,000L of coffee, and do a full rewrite.
@xwtek35054 жыл бұрын
Assuming you will get a good salary, lol.
@MaQuGo11911 ай бұрын
What's the avarage salary for this line of work?
@yin628711 ай бұрын
that's basically what the TinyBuild programmer was feeling
@SgtSnazzerino4 жыл бұрын
I just went to his patreon: Its gone down to 752 patrons and only 2,500 a month...only a matter of time before this dude loses all his moneys lol
@SgtSnazzerino4 жыл бұрын
@Donald Duc Tru but I'm glad to see it dwindling anyway
@yeremiafrans94254 жыл бұрын
Update: 730 patrons, 2411a month
@SgtSnazzerino4 жыл бұрын
@@yeremiafrans9425 I predict by the end of the year he'll have little to no patrons left
@randomness49894 жыл бұрын
Mama max deserve more than yandere Dec and he is creative af
@pnaixe4 жыл бұрын
at least hes within salary of a junior dev (its also my current salary). I would say this is just ok. but his skill are still leaning on the junior dev
@김용현-h6h5h4 жыл бұрын
Also a Unity Game Dev here who also happens to study 3D Modelling, Draw Arts and stuff. Here's My two cents. ( though late to the party. ) + Turns out in some parts i was actually wrong, So i'm fixing those. 0:07 - There's already too many wrong things here. There's already one script file for events of each day, and each time period. Usually having one event handler that can handle multiple situation is way better, And usually more codes file means more garbage assembly is going to come to that game. Lags, and wasted disk space. 0:08 - They're using array or strings for that said one event script. Espcially for "SpeechText" part i assume this is for character's dialogue lines. I also see "UILabel" component which is NGUI's "Label" component for texts (NGUI is a 3rd party GUI asset for Unity that's widely used for its better functions, Though Unity's built in GUI isn't too bad either now. ) In this case, it's a lot better to use NGUI's built in Localisation component ( which can be edited as csv file, in Excel or Libreoffice ) and only pass "Keys" for actual string of dialogue. In easier words, in the method i mentioned they can put the dialogue in with Excel, and make it automatically switch language accordingly to user's system. Because putting large amounts of text data into Unity editor itself is stupid. - Removed : I initially talked about too many "this" keyword but many pointed out that's generated from de-compiler, rather than original code itself. 0:14 - That's too much code jammed into Update(). Literally as you first make a new Mono script, Unity embeds comment saying " Update() is called per frame ". Already here there's heavy amount of logic checks and Math Operations going on. This will heavily degrade performance. Especially Monobehaviour is single-threaded and will NOT deal with this well. 0:17 [Edit] I initially talked about "switch-case" only on context of making it "a bit better than having if-else" But i looked at the code again. Bigger question we want to ask here isn't really that, But more of why this code is trying to do what it's doing. It's changing main textures of 4 materials that Renderer holds. and the order of texture is different all the time. Mainly it's giving 2 sets of Hair Texture and 2 sets of uniform textures that is on array. Dunno, it should rather have just 2 sets, since other 2 are duplicates. First thing that came to my mind is, rather than switch case, this whole code is useless. You can create a prefab of the model, and then you can create "prefab variant" from it. Variants hold only changed parts of prefab and acts as "child", if you make change the original prefab it will also apply to all variants except the parts that variant had changed from original which is great for keeping track of assets. Then All changes can be made in editor and there's no need for codes to do any processing. Since all that's needed is just instantiating the prefab that's already there. I don't think this is a dynamic generation ( then it needs code ) since it's taking an integer from other class, and simply change textures depending on that number. * Yes, you can use multiple materials in one model to have different results. Is it a good practice? No, it creates more lag since it's literally telling your GPU to draw the same model 4 times with different sets of textures. Usually you only want to have 1 material for 1 model. But yea, in this context the characters would have different eye/hair colors and maybe a bit different set of uniform colors. I'd still say 2 materials max. 1 for static textures, 1 for dynamic textures that can have its color changed. * In same note i have dealt with a pretty horribly made model that uses 20 materials. Just rendering 3 of them made the whole game lag bad. [ Original ] Jesus fucking christ, Have they ever heard of "switch-case" ? I see they're switching order of Renderer's material order in each cases, But the ordering makes no sense. 0:21 - As the other mentioned, enum can be directly converted to string. But imho i don't see the reason why they're converting enum to string at all. Even then, if they wanted to have different string value mapped to enum, again, "switch-case". 0:26 - Too many "if-else" with hard-coded conditions that aren't even that complicated. And the head reads as " Passtimescript ". There's already System.DateTime struct that can hold the time data. 0:31 - I don't know what kind of Input System they're using, But if they used Input.GetAxis this would have be 10 lines of code or less. 0:34 - This can be literally two liner of " AffectionLevel = Mathf.Ceil(Affection / 25f); AffectionLevel = AffectionLevel > 5 ? 5 : AffectionLevel ". > Fix : Actually, one liner is possible : AffectionLevel = (int)Mathf.Clamp(Affection / 25f, 0,5); 0:38 - I'm not surprised after seeing those codes. 0:48 - GetComponent / AddCompoent are all expensive opertaions as mentioned. Unless components have been swapped to other instance ( which also isn't the best practice ) There should be a field that holds a Component. Putting them in Update() is literally saying " I'm stupid. " Plus, Using 3 AudioSource just for blowtorch? I don't know what they're thinking. Unity also has what's called " Maximum Voice Limit ". Spamming AudioSources can exceed the limit and make the audio glitch. 0:53 - Better way is to have an Animator component initially play an animation file that initializes all the positions. And then i also see they're copying individual bone's position and angles via script, worse, in LateUpdate(). There's a good built-in component literally just called "Animator". This was really painful to watch.
@danielhughes37584 жыл бұрын
As a Java development student I can follow quite a bit of this horrendous code, but thank you for a very thorough breakdown.
@orestesbastos4 жыл бұрын
Hey, what would you put in place of the else-ifs he uses? Where should you use them and where should you not use them? I'm not coding in unity but I use it in MATLAB don't know if the impact is the same.
@김용현-h6h5h4 жыл бұрын
@ orestesmkb TLDR : Switch-Case is better for simple values. It really depends on situation. Also for simple " for this value A , give me value B " it's better use some type of mapping data than hard-coding a logic check into a code. Details : To be honest it really depends on situation whether you should / should not use if-elseif-else type of check. If it's about checking a simple value just one time at the start of the application then having those won't really hurt. Or if the condition is a bit too complex, You'd rather save time by first writing if-else condtions, Then later simplify them (if possible) In most of his code, i would rather put "switch-case" instead. That or for simple value mapping, it's much better to just use List/Array with matching indexes ( if the index is simple integer ), Or there's also KeyValuePair / Dictionary Approach ( for C# at least, not sure if similar stuff is on other languages as well ) if index is something that's less obvious. KeyValuePair lets you store a "key" and "value" of any type in C#. So it can be a < int , string > type or even something crazy like < string , Texture2D > type. Dictionary is sorta like collection of KeyValuePair but, better. You can push in key/value and then all you need to do is use it like collection, except with these you are not only limited to the usual integer index. So around 0:21 it can be something like " Dictionary ConversionTable" which eliminates a need for function "GetTypePrefix()" to exist at all. However there's also the problem of whether those types are supported by Unity's default "Inspector". If it's not, There's a way to write a custom one (which is pretty time-consuming) or just use a type that Unity supports. I can't remember all, But from what i know if the type is custom it has to be "Serializable". Then also, if it's a huge amount of data that should be easy to modify/update, But isn't dynamic then it's even better to utilize Databases or external data file which can be edited on dedicated applications. ( like, using SQLite DBs for mobile apps that needs certain data collection with format. ) It depends on "low-level" stuff as well. How many cores/threads are available to process a certain operation? If it's rendering Graphics, What sort of rendering is used? How many objects are out there doing same operation? If one creates a simple C# script that moves object randomly per each frame - If they have one object with that script it won't impact much, But let's say they have, 5000 of those. Then it's bound to lag a lot. More Unity-Related Stuff : Unity Engine, or any application on default is Single-Threaded. If you don't implement multi-threading that is. For Unity's API they've explicitly stated they're not "Thread-Safe" and thus are not compatible with multi-threaded processing. And using more logic in single-thread (especially in Unity's Update()) will heavily start to impact the performance. Meaning among 4~6 cores on CPU the application is going to use only one of them while others sit around doing nothing. However Unity recently introduced a bit of what i'd call "Multi Threading Betatest". That's when things get funny. Usually i would never spawn an object just to deal with hit detection for games ( rather, have the object "Raycast" to the target point ). Because spawning lots of instances of object causes heavy lag spikes. With that "beta test" stuff i applied multi-threading, Where spawing 160~200 objects per second wouldn't cause any lag at all. ( It's a bit complicated to explain here exactly ).
@orestesbastos4 жыл бұрын
@@김용현-h6h5h thanks for replying and with so much info! I may have been using if-elses in a bad way, I'll look at my codes again hahaha, the multi threading seems like it can make less optimized thing run more smoothly.
@김용현-h6h5h4 жыл бұрын
@@orestesbastos I do have to warn you though. Multi-threading "can" increase performance but it's not always the best practice. And generally it introduces more problems if you're not careful enough. For example, different threads cannot share some memory space it's holding. They get their own stack and registers. So usually when passing values you have to use a shared variable that any threads can access but 'lock' them when a thread accesses them. Though this is coming from a game dev ( games are more tricky to multi-thread since update to main thread has to happen in realtime ) , and i'm not sure what matlab does so just take my comment with a grain of salt.
@dezgasting6 жыл бұрын
Holy hell, that's a spaghetti.
@lolzu6 жыл бұрын
TonyMeldscher It's worse than spaghetti
@dandymcgee4 жыл бұрын
it's actually not spaghetti. spaghetti means there are a lot of intertwining code paths and dependencies, but this code is perfectly linear. it's the exact opposite of spaghetti. it's just insanely repetitive and unoptimized.
@pc317544 жыл бұрын
it’s uncooked spaghetti, then
@DazMedizin4 жыл бұрын
Mario: Nice of Yandere Dev to let us criticize his code, aye Luigi? Luigi: I hope it’s made of lots of spaghetti!
@fizz96984 жыл бұрын
It's not spaghetti this is stale tofu code
@thegamingbayskeletor16374 жыл бұрын
Me : i'm so bad at coding **Look at the coding of Yandere simulator** Also me : Nvm
@darthbag-us49524 жыл бұрын
The Gaming Bay : Skeletor I would like but you have 69 and I don’t want to ruin that
@user-lt2rw5nr9s4 жыл бұрын
0:16 *shows hair texture code*
@comet.x4 жыл бұрын
Why the fuck do you even need code for that in unity
@shaynehughes66454 жыл бұрын
@@comet.x I don't think you do unless you want to disregard nesting and check it every single frame like Yandev does. Someone please correct me if I'm wrong, though.
@aaron-gz4 жыл бұрын
Shayne Hughes I see no correction after a month. You are good, man. On the other hand, what the fucc.
@Short-bn4nk6 жыл бұрын
THE absolute state, of yandere dev's coding
@12DAMDO6 жыл бұрын
roses are red violets are blue else if (this.x == x)
@amrsatrio4 жыл бұрын
12DAMDO lmao if (true) {...}
@knuti274 жыл бұрын
Switch{ case u; }
@Prism0194 жыл бұрын
Y'all are failing to realize that "this.x" and "x" would be different variables. "this.x" would be a member of the class. "x" would be a local variable of that function, unless if it didn't exist in the function. But the possibility exists that it's not a stupid thing to do (but is a confusing naming scheme).
@hitthebongbrother10874 жыл бұрын
@@Prism019 nothing confusing about it. just an OOP quirk.
@MrScarf-zm9ih4 жыл бұрын
@@Prism019 It can also be the name of one parameter of the method your working to
@Aes_Saru6 жыл бұрын
Today we learn what not to do. Tomorrow we should proceed with actual lessons on what should be inplace of Alex code. This could become a new series
@bleedingberryjuice6 жыл бұрын
Good idea but Alex is likely to steal the new code and then - - - - - - - Not give credit (surprise)
@catherine998006 жыл бұрын
Well, watching a video on coding is one thing, and doing the actual code is another. Just like drawing, someone can watch a tutorial and still botch up that code, even if they tried to follow the instructions to the tee.
@misheru-senpai10386 жыл бұрын
Have you watched the vid? You should check out one of the comments above, explaining what the heck YanDev did wrong and why his code is the worst thing you could possibly do. The worst thing he causes by letting his code be as it is, is lag. 20 FPS on lowest resolution? I mean, come on!
@cristianmendez3244 жыл бұрын
He’s making less than 2,000 on patreon now after he said he needed a minimum of 3,000 in order to continue the study development of the game. Now he says that if it goes under 1,000 he’ll make it a hobby. So it’ll come out in 2050 instead of 2030
@Klosop4 жыл бұрын
Good Everyone should fucking stop giving monry to this moron
@cristianmendez3244 жыл бұрын
カルミア ehh barley lmao. He’s losing a lot of patrons
@dass81934 жыл бұрын
From 4K to barely 1.8K that's a win in my book.
@megugao4 жыл бұрын
lets bring him down further until he make the effort to complete his game
@rohan29244 жыл бұрын
@@dass8193 Great job guys let's go for 0!
@monadoboy80094 жыл бұрын
Normal people coding: "Is it yellow, long, and is it a fruit? Yes. Then it is a banana." Yanderedev coding: *Goes through the entire dictionary one by one to figure out what it is, most likely skipped it and assumed it was an orange.*
@yeethusthyfetus26484 жыл бұрын
So, basically YanDev's coding is him skipping every detail and having something assume it's another object? I don't know, I don't know anything about coding
@monadoboy80094 жыл бұрын
@@yeethusthyfetus2648 In a nutshell, his coding basically checks the entire long list of details to see what it could possibly be until it finds out what something is or does. It then picks out everything it doesn't need for that moment, which could lead to lingering code for something else.
@yeethusthyfetus26484 жыл бұрын
@@monadoboy8009 Jesus, now I see why everyone clowns on his coding
@lightlysal4 жыл бұрын
@@yeethusthyfetus2648 Here's a better one: A computer takes a number from somewhere, knowing that it's a number and knowing what number it is. It then runs through a list of every possible number, seeing if the input number is equal to the number it's currently checking in the list. If they're the same, the computer found the number. It then does something with that number. When the computer, the entire time, knew what the input number was and he didn't have to do any checks if he implemented it properly.
@ErikaBernLambda6 жыл бұрын
ELSEE IFFFF
@likeanuuk66126 жыл бұрын
SENPAI
@side16726 жыл бұрын
this.
@corostelle49886 жыл бұрын
*E L S E I F*
@tikalthewhimsicott27366 жыл бұрын
Yandere DataDigger ELSE IF ELSE IF ELSE IF ELSE IF ELSE IF ELSE IF
@bluebay10316 жыл бұрын
I have a legitimate question. A game idea I planned out a whole ago needed to have an else if code [I didn't know there was a term for it at the time]. Is else if bad?
@TheDragShot4 жыл бұрын
That shit right there is why people shouldn't seek to learn how to do programming for videogames, but general-purpose programming instead. Once you got that down _then_ feel free to give videogames a go.
@JG-fj6xq4 жыл бұрын
I agree IF you dont follow a tutorial for game development.. if the yanderedev person would have even just followed one, im sure he would know at least how to use variables properly
@henlokitty25914 жыл бұрын
What resources would you recommend to start learning? If I use tutorials, it would have to be active learning and practicing right? uwu
@zhnigo6 жыл бұрын
I remember having hopes for this :
@lolzu6 жыл бұрын
Zhnigo I'm pretty sure everyone else did
@Smiley_Face05 жыл бұрын
Ahhh...the good old days...
@masterblaster26784 жыл бұрын
I was an 8th grader when this game first caught my attention. Around 2 years later I just lost interest in it. Now I'm in uni, and it BAFFLES me that this game is still in development, wtf. So many better indie games have taken less time to develop. He really has no excuse for taking so long to finish even the first damn rival.
@BLASTALit4 жыл бұрын
@@masterblaster2678 same. He always kept giving false hopes like "It will be finished next year" etc. I was very enthusiastic about new updates when i first discovered it. But now I just lost all my interest, nothing happens man.
@chunyinkwan77564 жыл бұрын
This is impressive. He literally just code the entire animation using C#. What a genius.
@toasturhztoastbunz896 Жыл бұрын
Yeah. Instead of using the editor to create the animation, or creating the animation beforehand, and calling it in whenever needed, we'll just animate every single frame by code! What can possibly go wrong?!? **FPS drops by the milliseconds**
@florvillota54 жыл бұрын
“ARE YA CODING SON?” “Sure am dad!” “Good” 😉
@kontrol424 жыл бұрын
if (son.isCoding()) { dad.curiositySatisfied(); son.addMoreElseIfs(); }
@kontrol424 жыл бұрын
@@inevitablejimmy3537 ..what programming language even is this? And I'm fairly sure variables can't consist purely of digits in any language.
@Ikxi4 жыл бұрын
Missing else ifs
@Scien_Tific4 жыл бұрын
I'm self taught at coding just as he is, and I've been learning for about two years, a third of the time he has been developing this.game and I noticed about 75% of the mistakes made in here. Yeah I don't think he's allowed to whine about being self taught.
@yusuf_kizilkaya4 жыл бұрын
"this.game" master level pun right there
@bananagod55304 жыл бұрын
I think he is allowed to whine a little about being self taught. But he SHOULD take critism and Tips.
@Scien_Tific4 жыл бұрын
@@bananagod5530 Well the thing that makes me criticize him about his complaints is that he knows (at least to some extent) that he's not good, and often knows how to do better, but just won't bother. Why complain if you know how to fix it?
@bastion88044 жыл бұрын
@@bananagod5530 Nah, you're not allowed to whine being self-taught. You can let people know, but never whine about it.
@lenon3579ify4 жыл бұрын
Self-thaught programmer here, too, learning for like three to four years, and I came from a background on Humanities and know little maths... and I noticed most of the errors there. This guy has no excuses.
@foussi7396 жыл бұрын
I can't even code but can tell from how its organized that its bad.
@guaju4 жыл бұрын
The point where I realized this was awful was at the last part with no knowledge at all about coding seeing that massive wall of code seemed like garbage
@thauma70554 жыл бұрын
Its bad because his code is as optimized as what a beginner would do. he could optimize it by doing really simple things that just demand a little bit of effort and it would prevent the game to run at 20 fps
@RonWolfHowl4 жыл бұрын
You sure listening to a minute straight of a dude laughing while looking at it didn't influence your opinion? 😁
@XzhiTBK4 жыл бұрын
@@RonWolfHowl you're the voice of reason in the godforsaken land of KZbin comnents
@222o-u3t4 жыл бұрын
@@RonWolfHowl I switched the goddamn meme sound off and it _still_ looked like something even a beginner would know needs optimising
@patrickzhang54304 жыл бұрын
I wonder if this guy has ever heard of the concept of a ‘for loop’ and a ‘while loop’. I am a beginner in Java and that was one of the first things that I learned....
@JasonBeo4 жыл бұрын
The MonoBehaviour.update() function is essentially a while(true) loop. The issue here is all the spaghetti that runs inside that loop that's making it being slow as fuck.
@sa1t9384 жыл бұрын
or a switch statement
@cmdrgarbage18954 жыл бұрын
To be honest i'd skip the while loop, unity doesn't really like those
@oliverlindgren44474 жыл бұрын
@Shaw358 A while loop isn't that different from a for loop though. Unless you do something really stupid such as: while(true){} Then there should be no problem.
@AnnoyedArt12564 жыл бұрын
same but for scratch 1.4 modding
@SuperCartoonist4 жыл бұрын
At least he's preparing for the future when computers have quantum processors. Maybe that's what the code is for.
@AethernaLuxen4 жыл бұрын
0:56 I like how he manually just copy and pasted everything from one character to another
@pandorIa1314 жыл бұрын
Instead of making it simpler and use one line
@Plague_Potato4 жыл бұрын
See, a lot of these lines are copied and pasted, whole segments, so it gets a little confusing.
@johnes23374 жыл бұрын
He could have made a dictionary and looped through it to assign corresponding values.
@shaynehughes66453 жыл бұрын
@@Plague_Potato whole functions, values, so it gets a little confusing
@sickle72916 жыл бұрын
I'm not a good coder, I don't know much. But holy shit, he's worse than me. He has less skill than a dude who code twice per year.
@toasturhztoastbunz8964 жыл бұрын
Yeah. Being in the same shoes as you, what I noticed is his severe underuse of comments. Which are quite important to *keep track of where things are.* And seeing how utterly messy his coding is, it's quite miraculous on how he's able to keep track of it all. *(if he even is)*
@lightlytoastedrye4 жыл бұрын
@@toasturhztoastbunz896 This looks like decompiled code, might not be able to carry over the comments from the original code. Not that this would help his messy and unoptimized code that much.
@lightlytoastedrye4 жыл бұрын
@Brennan Lu Maybe your right, but i don't recall the game code ever being accessible to the public before. And I've seen some decompiled code before, and this looks just like it. I'm pretty sure the decompiler actually gets the variable names somehow. Could be wrong though.
@kneesnap10414 жыл бұрын
This is definitely decompiled code. Comments are not present in decompiled code.
@OrchidAlloy4 жыл бұрын
@Brennan Lu That is not true for languages C#, which keep track of names even in compiled code (which is needed for reflection and stuff)
@Ripahar6 жыл бұрын
>when /v/ tries to program
@ZXY1016 жыл бұрын
Ripahar no /u/
@Slazors6 жыл бұрын
When Reddit tries to program*
@12DAMDO6 жыл бұрын
/v/ actually hates yandere dev for this and for more reasons lol
@apollo92886 жыл бұрын
Wtf is /v/. I've only heard of shit like /b/
@tripslord90294 жыл бұрын
Hey guys I browse le epic 4chan btw :^)
@ShavicHm6 жыл бұрын
I nearly choked at the part his scripts were shown
@sanstheskeleton6794 жыл бұрын
Toby would've finished Deltarune ZUN would've released his last Touhou game Half-life 3 would've come out All of these would occur before he even finishes the second rival
@farenhite43294 жыл бұрын
Assuming he finishes the first one.
@JasonBeo4 жыл бұрын
0:36 That "OOOOH" tied with the zoom in the update function, never fails to get me
@magnum1554 жыл бұрын
KZbin recommends: "Not Everyone Should Code" Hey, that's KZbin, not me.
@knuti274 жыл бұрын
Ah, the polymatter one?
@chestnut454 жыл бұрын
This is what happens when someone learns if statements and then stops learning anything new and decides to make a game lmfao
@dreamisover98136 жыл бұрын
That's even funnier if you know coding and Unity :)
@dreamisover98136 жыл бұрын
There are many possible optimizations, but for performance, it would already help if you don't access transform 20 times in update but to access it one time and store the position into a variable. then operate on the variable and set it back to the transform.position at the end. For converting the WeaponType enum to string, there is this function: msdn.microsoft.com/de-de/library/system.enum.getname(v=vs.110).aspx For the affection level, simply divide the affection by 25 and if it is above 5, set it back to 5. that would be 4 lines of code instead of 12. And the many GetComponent calls are upright bad :D
@deamon66816 жыл бұрын
It's a video of code with a laugh track. I don't know how this would be funny to anyone who _doesn't_ know how to code.
@ZoepX6 жыл бұрын
Having worked on this engine for 4+ years as a hobby, working as a software engineer professionally. This kind of code and structure gives me nightmare but in all honesty, he's doing what he can but I would strongly advise him to hire someone with knowledge in this field. At this very simple glance: it needs a complete overhaul.
@thunderhound2946 жыл бұрын
I took 1 c++ class in high school, and I find this funny. Use a FUCKING SWITCH!
@thunderhound2946 жыл бұрын
Or in other cases a fucking Enum would work too. Yandev you've been working on this game for how many years, how do you not fucking know this?
@mattuiop4 жыл бұрын
This is like going into excel and instead of writing "=vlookup(a2,$g$2:$p$50,2,false)", writing "if(a2=g2,h2,if(a2=g3,h3,if(...."
@rireki_riri4 жыл бұрын
i'm totally shit at excel.. so can you please tell me what is the meaning of this formula?
@Kralledd4 жыл бұрын
@@rireki_riri i second that
@THECREATOR49Steam4 жыл бұрын
@@Kralledd support.office.com/en-us/article/vlookup-function-0bbc8083-26fe-4963-8ab8-93a18ad188a1 microsoft docs are pretty solid
@nullifier_4 жыл бұрын
indeed
@xwtek35054 жыл бұрын
you get a stack overflow pretty quickly.
@arsefactory4 жыл бұрын
YandereDev makes kids on Scratch look professional
@ignorance4134 жыл бұрын
if (video): { creative.comment } else if (good.video): { good.comment } else if (bad.video): { no.comment } else if (negative.video) { negative.comment } else if (funny.video) { funny.comment }
@explosivemodesonicmauricet15974 жыл бұрын
So the fix is (still,this is my attempt to use switch): Scanner sc=new Scanner(System.in); System.out.printIn("What are the comment types generated on different types of videos?"); String name= sc.next( ); switch(name.toLowerCase( )) { case "good.video" System.out.printIn("good.comment") break; case "bad.video" System.out.printIn("bad.comment") break; case "negative.video" System.out.printIn("negative.comment") break; case "funny.video" System.out.printIn("funny.comment") break; default:System.out.printIn("Please type between good,bad,negative or funny video.Example:good.video") break; } (Nah I actually followed and improvised the instructions from this www.shristitechlabs.com/wp-content/uploads/2014/10/Blog1.png so feel free to give opinions,I am not a programmer nor recieved any computer science training.)
@ignorance4134 жыл бұрын
@@explosivemodesonicmauricet1597 damn, I didn't expect that somebody would do that
@CrazzyCrisis4 жыл бұрын
It's been a while since I touched programming but wouldn't you want video to be the parent class here, like video.funny instead of funny.video? I might have it backwards
@ignorance4134 жыл бұрын
@@CrazzyCrisis I have no idea, I only know basics of python
@themidnightspark94314 жыл бұрын
Why not just switch?
@knucklesrox1006 жыл бұрын
Came to the video to see YanDev's coding, stayed for the depression-curing laughter.
@lucashernandez81464 жыл бұрын
The last one got me. That's like 70 lines just renaming variables.
@KevinEontrainer3814 жыл бұрын
This makes me anxious each time I want to use the if-else statement. Not gonna lie
@miguelnogueira81804 жыл бұрын
When I'm coding, I always have these two golden rules in the back of my mind, that influence the final product: DRY, and KISS Do not repeat yourself, and keep it simple stupid (or keep it stupid simple) I also have optimisation and security in mind! Goes a long way to make sure my code isn't a gargantuan monolithic monstrosity that's yandere dev's code. So when coding, just be mindful, and seek to be a better person and developer than the you of yesterday. So long story short, don't be like yandere dev; it'll be a bumpy ride.
@TVAwesomeParodys4 жыл бұрын
Take a shot every time his coding says "else if"
@ussbased-a70744 жыл бұрын
"How to die instantly"
@chestnut454 жыл бұрын
@@ussbased-a7074 literally, on the first 5 lines you'd have taken 5 shots
@knuti274 жыл бұрын
No
@theEndermanMGS4 жыл бұрын
Do you want to give everyone alcohol poisoning?
@Murmarine4 жыл бұрын
Thanks, but i like my liver.
@MADNIKstudios6 жыл бұрын
can you spoonfeed me each part as to why the coding is bad
@btk9466 жыл бұрын
I would guess it can be much more simplified, while he makes the same if >return over and over again
@DokGirlfriend6 жыл бұрын
can anyone translate this
@Reftize6 жыл бұрын
good coding needs to be flexible, quick, and efficient, which this code is not as it makes use of way too many IF statements. it's fine to use a small amount (1-6 roughly) of IF statements, but when you have like 20 visible on a single screen that's a problem. for the person playing the game, this means a slight reduction in system performance because the game's code has to go through all of those IF statements to check if any of the states equals "true", otherwise the argument for the IF statement is correct. tl;dr - take a shot everytime you see the term "IF" inside the video; you'll feel like the poor computer that has to run this shit.
@RSHOE6 жыл бұрын
if statements up the ass instead of using something like switch cases or finding ways to automate shit so you don't have to write every checks yourself Update() methods filled to the brim with shit, which means that said shit is run every frame. likely the main cause the game runs so fucking bad etcetc but generally speaking he writes his code like a 12 year old who just passed a python learning course. in layman's terms he's taking a brute force approach instead of being smart
@LucaShutz6 жыл бұрын
All of this is too simple needing more else if for example, more stuff to process and the game will be slower.
@radp36126 жыл бұрын
Unlimited ELSE IF Codes
@Lrizu4 жыл бұрын
He is saying: "i want cheesecake" Then someone says: "we dont have cheesecake, do you want chocolate cake?" Then he says: "no, i want cheesecake" Then someone says: "we have cheesecake, do you want cheesecake?" Then he says: "i want chocolate cake"
@deter41224 жыл бұрын
Elon?
@Lrizu4 жыл бұрын
@@deter4122 no i am not actually elon
@deter41224 жыл бұрын
@@Lrizu I was joking
@Lrizu4 жыл бұрын
@@deter4122 ok sorry ma'am
@s--b4 жыл бұрын
This is literally the type of coding I learned in my first compsci class freshman year of hs
@yw56174 жыл бұрын
normal person: switch x case 1 case 2 case 3 etc... this guy: for loop
@TheSm1thers4 жыл бұрын
He doesn't even use for loops though, just endless else/if statements.
@terrylarry56584 жыл бұрын
@FireRainV its just select case but switch case instead
@sirkuchen15014 жыл бұрын
Tomer Ben David you have switch and then cases, like switch(Example) case 1: [] case 2: and so on. Its just more efficient I believe
@magma12644 жыл бұрын
He looks like Alfredo Linguini makes sense considering he likes to make spaghetti
@una17646 жыл бұрын
I've never seen a game with so many this. variables. Like, wow. Everything is such a mess, even to me(someone who has absolutely no experience with coding).
@michaelbitzer72956 жыл бұрын
Unakittycat not sure but i think it changes to this.x When you compile it.
@una17646 жыл бұрын
I'm not sure either. Like I said, I have no experience with coding.
@lumalivy71676 жыл бұрын
using "this" is fine, it just means you're accessing a variable in "this" context, so if you're in the scope/context of an object and call "this" you'd be accessing a child value of that specific object, say. A good analogy is if you're in the scope of "person A", you can get their own personal hair colour by calling "this.hairColour", if you named it that for example. The problems this video points out are the horribly inefficient organisation and optimisation issues
@lumalivy71676 жыл бұрын
Also, that's easier than saying "personA.hairColour" or another other personB, personC etc etc everywhere in your code where you may have to reuse that for someone else at a different time. Hopefully this explanation was somewhat clear
@ABCo-ABMedia5 жыл бұрын
@@michaelbitzer7295 Yeah, because C# compiles to IL, and decompiling C# is turning that IL back into C#, and... in the IL, *you have "this" a lot* (because it needs it)
@alper16093 жыл бұрын
Switch statement founded in 1970 People before 1970 :
@Raneyguything644 жыл бұрын
It's amazing to me how most of this code could just be crammed into the Start() method, it would take longer to load but christ you don't need to assign variables every frame like at the end
@jademonass29544 жыл бұрын
i coded once in my life it hurts to look at this
@Kukalooka4 жыл бұрын
Korega... Requiem... Da... YanDev: Else if Else if Else if Else if Else if
@igs41124 жыл бұрын
For those that don't understand what an update method is, imagine a Thread system from a Java app that repeats the frame to infinity, now Update is the same but in Unity with c#, conclusion Avoid using Update for constant getting and finding methods, instead have them allocated from start so you just reference the data, this helped me to get above 180fps for my games.
@BrandonCMaximum4 жыл бұрын
0:17 I don’t even know what he’s trying to accomplish here
@danielhughes37584 жыл бұрын
I missed this part. My god, it's beyond silly. The order of his list items doesn't seem to matter here and he loads the same stuff regardless of outcome pretty much. I feel like he could have accomplished the same thing with one statement or two. He also gets a global variable and puts it into a local variable for no reason. That's just part of all that's wrong with this part alone. 😱
@randomystick4 жыл бұрын
my guess is to load the textures in a select manner such as to prevent z-fighting. still could be better optimised since there are only three possible load sequences (hair texture first, hair texture last, hair texture in between)
@temporality_4 жыл бұрын
This is how many "else if" statements Yandere Sim uses | | v
@FutureMapper4 жыл бұрын
Only 3
@temporality_4 жыл бұрын
@@FutureMapper guess its pretty well optimized!
@oogooro4 жыл бұрын
bruh, you tried
@xwtek35054 жыл бұрын
Warning: he uses far more if-else than how many like this comment will ever have.
@oldstoffire4 жыл бұрын
Bro I'm fucking dying at the HARDCODED DECIMAL .3333 instead of just a fucking fraction
@MechanizedAngelz5 жыл бұрын
My coding is garbage so, knowing that YandereDev's coding is equivalent to mine is hilarious. (Except, I know that my coding is awful.) (I can't believe he kept using the same codes over and, over again... "else is", oh gosh, why.)
@SurmenianSoldier4 жыл бұрын
if
@222o-u3t4 жыл бұрын
if
@nightyboyo4 жыл бұрын
this
@nahodny_marc4 жыл бұрын
.game
@benjaworld28044 жыл бұрын
Ivann700 (3)
@aleksd2864 жыл бұрын
As a web developer, I can definitely say that the code is highly unoptimized.. so many else ifs with tiny differences, when I see that I can surely say that all of those lines can be done in 1-2
@tomtravis8584 жыл бұрын
As a backend developer, I praise those who can manage web development.
@nahodny_marc4 жыл бұрын
@@tomtravis858 i praise anyone that can design a UI
@Peztllence4 жыл бұрын
Im only certified in basic html and css, but oh my god this is serious codetti.
@elliott17814 жыл бұрын
I took 2 years of programming in High School and this is exactly what my BEGINNER Java files looked like. It's not *so* bad when it's like 20-40 lines of total code, but I was a BEGINNER
@missingn0o4 жыл бұрын
Polymorphism: "aight imma head out"
@wrench19424 жыл бұрын
Yandev the type of dude to look for a red crayon by looking through all the other crayons in the box to make sure they aren't red before picking the red one up
@VictorRodriguez-zp2do6 жыл бұрын
there's something callled switch
@michaelbitzer72956 жыл бұрын
Victor Rodriguez whats that
@VictorRodriguez-zp2do6 жыл бұрын
Michael Bitzer the switch case is usually used to compare a variable multiple times so that you don't have to have a bunch of "else if" statements in your code
@michaelbitzer72956 жыл бұрын
Victor Rodriguez i know what a Switch Case is. It was a Joke.
@VictorRodriguez-zp2do6 жыл бұрын
Michael Bitzer srry, didn't realize that was sarcasm
@Smiley_Face05 жыл бұрын
xD
@sircompliments53804 жыл бұрын
Only a couple of people will understand me. A. TOOTHBRUSH.
@javalhayle59674 жыл бұрын
HEAVY
@KatKitty_4 жыл бұрын
POLYGON
@doubleoof79074 жыл бұрын
This reminds me of when Notch messed up the size values for what was supposed to be a pig but instead of creating one of the most iconic videogame monsters of all time, it gives you 5 fps.
@saltyscrimp4 жыл бұрын
So this is why Yandere Simulator requires you to have rich Asian parents.
@LucasIsHereYT4 жыл бұрын
If this 'game' were to come out on consoles, I'm pretty sure a PS4 would take off and fly away if it tried to run it.