October Progress Report: Osana Progress, Framerate Improvement, and Pose Mode

Here’s my progress report for the past two weeks:

I originally planned to make a very different type of video; the original plan was to list every single aspect of Yandere Simulator that is having a negative impact on the framerate (updating the GUI, performing path-finding calculations, performing physics simulations, etc), describe the solution to each problem, and explain whether or not I am currently able to implement the necessary solutions. However, I decided that this would probably result in a very boring video, so I decided to simplify my explanations as much as possible and make a video that could be understood and enjoyed by as wide of an audience as possible.

Most of my time over the past 2 weeks was spent in two ways:

  1. Writing Osana’s story, designing her events, and writing all of the dialogue necessary for her story/events.
  2. Investigating what is affecting the game’s framerate, researching possible solutions, and attempting to do everything I could to improve the framerate.

All of Osana’s lines are written (and recorded, thanks to very dedicated voice actors!), so that was a success, but I’m extremely unsatisfied with how much progress I was able to make with the game’s framerate. I really wished to improve it even further, but researching it and trying to fix it has already eaten up a ridiculous amount of time, and I am very eager to move on to other things, so I will probably postpone the task of improving the framerate.

On that note, I’ve added a Settings Menu to the game that allows the player to adjust the game’s graphics in the following ways:

  • Change amount of particles spawned / disable particles
  • Disable outlines around characters
  • Lower or disable anti-aliasing
  • Disable post-aliasing
  • Disable bloom
  • Enable low-detail students
  • Change camera draw distance
  • Enable fog
  • Disable shadows

Hopefully, giving the player these options will allow some people to improve their framerates.

I’ve also added something called “Pose Mode”, which allows the player to do the following:

  • Move, rotate, or resize any bone in a student’s body
  • Teleport a student to Yandere-chan’s position
  • Customize a student’s appearance (to a certain degree)
  • Make a student perform any animation.

Between writing hundreds of lines of dialogue, researching how to improve the framerate, adding the Settings Menu, and adding Pose mode, I somehow found enough time to take care of the following issues:

  • Fixed bug that would cause Riku to confess to Kokona’s corpse under the cherry tree if Kokona was killed after leaving a note in Riku’s locker.
  • Fixed bug that would cause students to snap out of their “Meeting” protocol if they heard a giggle while waiting to meet someone.
  • Attempted to fix bug that would cuase Riku Soma to fall through the ground sometimes after studying with Yandere-chan.
  • Fixed bug that would allow delinquents to knock out Yandere-chan while she was dumping a corpse.
  • Fixed bug that would cause Kokona to blush at people she’s attracted to…while she was dead.
  • Updated the texture that appears on a student’s face when they are blushing.
  • Replaced the copyrighted bike ride music with original music.
  • Fixed inaccurate student portraits.

What’s Next?

Halloween only comes once a year, and I don’t want to let it pass by without doing something special, so I’m going to try to whip something up. I already have an idea in mind! However, anything related to Osana will be my top priority. When I don’t have any Osana-related tasks to work on, and when I’m done with my Halloween plans, I’ll continue working on the things that the community voted for in the last poll.

Thank you for following the development of Yandere Simulator!

247 thoughts on “October Progress Report: Osana Progress, Framerate Improvement, and Pose Mode

  1. Personally, I wouldn’t want to have the silhouette students in the final game, because it would give away which students are important and which aren’t, which would be especially bad for the matchmaking elimination method, where you’re actively searching for traits the girl likes. The less students there are that aren’t silhouettes, the easier this elimination method becomes.
    Also, it’d be kind of weird to see some normal students walk in a sea of silhouette students. It would be kind of ruining the immersion.

    But your problem with too many students having to check for corpses nearby reminded me of Mark of the Ninja.
    They had the same problem, and what they did is not having the NPCs checking for suspicious things (corpses, sounds), but having the suspicious things check if there are any NPCs nearby.
    That way, the checking-scripts would be executed far less often, and only when it was actually something worth noting nearby.
    So in your case, maybe have Yandere-chan (while doing something suspicious) or corpses check if there are any NPCs nearby and if so, if they are looking at the emitter of the checking script. That way, you should (theoretically) be able to save some processing power and obtain a more stable/ higher frame rate.
    Of course, it wouldn’t help with other checks the NPCs need to do (like checking time of day), but it should at least help in some situations.

  2. The silhouette students would be pretty boring, to be honest.

    Since you’ve already included detailed, colourful students, it’d be a shame to add these silhouettes into the game, especially where the pose mode is concerned, as the whole point of it is that the characters have some sort of unique appearance or personality.

    Yandere Simulator already has a reputation for its characters due their wide range of appearances, expressions and origins. It would be a foolish idea to make most of the “insignificant” students into low-poly flat-colour husks. The player should choose to make them this way within the camera’s range (for example, 10 metres), as part of the experience is having colourful characters.

  3. Personally, I think having an option to see the world as grey except when you’re near Senpai is a great idea, regardless of silhouettes. I think it should be considered as an optional setting in the final game.

    Additionally, faceless boys and girls with generic models would be much more appealing than raw silhouettes.

  4. that looks so intresting, this pause mod is a great idee. 🙂

    however, the idee of faceless students is maybe not a good Idee: I mean frog is normal, that exist in real life. but, when you are crossing something like silhouets …
    it’s kind of scary and weird for people who don’t understand what it means and most of time (I know that’s not your case) gives the impression that you realy don’t care about caracters customisation. 😦
    just for example look at 17:00 of this video to see what I mean. it’s maybe in french but the problem explained there is the same. you’ll understand what I mean.

    exept this little think, great progress. realy 😉

    • In many animations, silhouette characters exist to create a crowd without having to putting much effort and detail into every character. And since they don’t have much detail to them, viewers will usually ignore them.

      Since players play as Yandere-chan, YanDev thought that players should see the game’s world the way Yandere-chan sees it. When Yandere-chan sees a silhouette character, she unconsciously thinks that they are not important and typically just ignore them. Of course, it’s just one of YanDev’s ideas, and he may or may not implement it into the game.

  5. Hey, YandereDev,

    I’m pretty sure you already know about this, but it sounds like to me that you should use the “observer pattern” to track mischief behavior in your game. Here’s a link:
    http://www.habrador.com/tutorials/programming-patterns/3-observer-pattern/

    As for the silhouette students, why not just have a low-poly model for each of the students that render when the students are far away? I suppose that won’t address the low framerate when Yan-chan is in a highly populated area. Plus, you’ll need a low-poly model for each and every student, as well ._.

    • Er… To elaborate, the observer pattern makes it so that, rather then the game constantly checking if each and every student actor is in a certain state (Dead) or performing a certain action(Found a dead body), the student actor would send a signal out to the game when the state or action occurs.

  6. I have some ideas, but no experience in game development so they might be naive.

    For the framerate issue, is it not possible to reduce the number of checks that has to be performed on surroundings ? for example, analysing surroundings at a variable, randomized time interval ? It could be expressed at an “attention level” of characters, with some characters not caring much about surroundings, even with a chance to miss things if they are lost in their thoughts or doing something else such as reading a book or watching their phones. Something like this could be used to decouple some computation from the effective frame rate, moving the coupling to known time units instead.

    The various checks that are performed when adding a new student could also be moved elsewhere to limit their execution frequency. For example, suspicious things checks could be initiated directly from the suspicious things, like : “-I am a dead body, is anyone in range to see me ? – I am in range, but without direct contact. – I am in range and I see you, now running my function handling reaction to this sighting”. The range parameter could be used to express how close you have to be to notice something weird. For example, you would notice someone holding a katana easier than someone holding a small knife.

    It’s just some ideas, but some technical solutions might definitly be possible and implemented in recent games, given how much they can both render and process.

    The silhouette idea could be a good idea, but I don’t think it should be used to limit framerate. I think it could be used to express something like yandere-chan happiness level in a more dynamic way, not just a fixed boost when senpai is around, it could be used to gradually increase happiness and sanity (laughing is too easy). this feature could force you to stalk senpai every day.
    So it should still be possible to display characters at full potential at any time.
    Also, is it not killing the matchmaking elimination method if you can’t see details ? Or maybe yandere-chan could have a “focus” functionality to see nearby or specific students, or this elimination method could require some minimum happiness or sanity.

    Why is the logic processing directly linked to the graphical processing ? Some games such as total war retain full graphical capacity (moving camera is smooth) when there is too much processing for the CPU (the game is still slowed down).

    Last but not least :
    Thank you for leading the development of Yandere Simulator.

  7. I’m torn on the visuals / frame rate issue. On the one hand, having Ayano seeing the world as grey and people as faceless but everything bright with Sempai is very interesting. But at the same time, it would mean things would look bland and boring most of the time. Some thoughts I had which might not even be slightly realistic to implement:

    What about having a playable prologue where everything is grey and everyone’s a grey-face? Then we can play out Ayano’s first meeting with Sempai. This meeting causes her to “care” about the whole world (because it all affects or is important to HIM) and thus realize that she could have rivals to begin with. Doing things this way, you can apply some very basic tutorial elements, mix intro cut scenes in with game play, and have a playable use of the world concept (which really is a cool idea in and of itself regardless of frame rates) while also keeping the colorful and interesting world of Yandere-Simulator / Lovesick for main game play. Maybe I’m wrong but I think most people love the variety of students and little details too much to give them up entirely.

    It might sound silly, but what about tying visuals into a “morality meter” or broader sanity meter? Right now, sanity has very direct game play impact but it’s mostly limited to killing and remaining undetected. What about having a separate sanity or “morality” meter that’s affected by game play and either increases or decreases the level of detail in the world based on whether Ayano’s love for sempai (and player’s actions) has made her view people as more important or less important. Basically, if you’re playing as a ruthless murderer and violent manipulator, grey world and faceless hordes. If you’re “kinder” then brighter world and more details.

    Just my thoughts. Wanted to share with anyone who will read.

  8. Honestly, I think he should have worked on implementing Oka first, instead of Osana. I say that because she is already a character in the game, making it easier for him to implement the game’s very first rival, so that he does not have to make an entirely new character to the game. I think that if he did this instead, it would not be as long of a wait for our first rival, and it would be easier on his part because it is not as difficult as making an entirely new character, and it is less work for him.
    But I support Alex’s decisions, and I can’t wait to see how this turns out! 🙂 I am waiting for him to add this build to be available on Mac so I can play it. I hope it does not take too much time to update the Mac Builds website, because I really want to be able to play this new build! ^-^

    • Well, true, Okay is alredy in the game, but YandereDev also already have Osana’s model, which only meant that all he had to do is wait for all the other assets he need to fully implement a working rival into the game. It would also be harder for him to not implement the rivals in order, since it can cause confusion. Since Osana will be the First Week’s Rival/ The Tutorial rival, it makes sense to make her the rival for the Debug Build. 🙂

  9. My thought would be use a quad tree of some sort to divide up the map into a grid, and only run the AI for suspicious activity in the zone and surrounding zones that Yandere is in or any suspicious evidence left on the map. Could reduce the overhead at the expense of bloating the code a little.

  10. I do think the silhouette students would look better as actual silhouettes. As it is now, they seem very jarring.

    I don’t think the silhouette thing will work very well. Anything involving the picture function would be rendered useless, and any quests involving more than one student would be nearly impossible – unless, I guess, that student was brought into focus for that task, but if there’s supposed to be some difficulty to it, that might not help.

    I like the idea of implementing it with the sanity meter, and I like the idea of the world being dull only when not around sempai (but that messes with the sanity meter effect).

  11. NO, PLEASE.

    This game is not just about how Yan-chan sees it, but also how the player sees it. Plus, it doesn’t make much sense to be seeing the world through Yan-chan’s eyes, since the game is in third-person anyway.

    The different students and hairstyles the game has are actually a really big part of how the fandom thinks of Yandere Sim.

    Maybe instead of completely silhouettes, the unimportant characters could have dimmer colors and no outline? It wouldn’t do much to improve framerate, though. Still, I like that idea of deciding what to spawn from the settings menu.

    • If YanDev decides to make the game a little more immersive, he may want to get the player to see the world the way Yan-chan does. Showing the world in dull colors and make many people appear as silhouettes would be two ways to achieve that. Just because the camera is third person does not mean that seeing the world as a Yan-chan sees it doesn’t makes sense.

  12. I have a question, am i the only one having a bit of trouble updating the game? like, it freeze’s and then won’t continue to update, or it tell’s me there was a error and try again latter.

  13. Oooh I like the idea of every student being faceless until Yandere-chan takes notice.
    I can just imagine a faceless student all of a sudden gaining their distinctiveness once they’ve seen Yandere-chan do something wrong or suspicious. They’re now someone Yandere-chan has to remember, and has to control or watch out for, so she will remember what they look like.
    It also gives the game a better sense of apathy towards the world. “These are all just useles blobs. The only one in my world is Senpai.”

    Maybe 3 settings, 1 for all students being the low poly models, 1 for all students being the faceless grey models, 1 for every student having unique models (IIRC you worked on code to have students generated randomly).

    Either way, I like the route you’re taking with regards to the frame rate issues and its impact on the game’s narrative.

  14. I really think the idea of seeing sillouttes of students you don’t care about is interesting. If the game could start with nothing but these faceless students and senpai, then slowly you start to see other students for what they really are, because they start to matter to you. Taking pictures of their faces and sending it to info chan unlocking a student for you if they are a major player. This could be keyed to an unlock progression, unlock characters for customization options and so on. Turn her sociopathy into a gameplay element. I’d like to see more subtle silouttes, or maybe even just a low-detail generic student look until you discover their personality. Might even give a path for a ‘good’ ending where Ayano learns the value of the student body, and learns to see people as people.

    I dunno, food for thought. The concept of it struck a note with me as being potential for interesting, beyond framerate saving. But it would be nice to see the classrooms full and the hallways busy.

  15. I don’t like the idea of the fog or the sillouettes. We’re not seeing the game in POV, because we can see yandere-chan. if we were to see the world in yan-chan’s eyes, I would support the idea. Please, Plllllleeeease, add the POV and the non- POV option to the game. both would be awesome.

  16. I like the idea of the Settings menu, and how you can change so much up. Psychopaths do experience the world differently, so it kind of makes sense that Yandere-chan would only see things from a perspective that includes only what benefits or affects her.
    Keep up the good work, Yandere-dev. I’m sure once Osana is ready, it’ll be amazing.

  17. The fog is so creepy and yet…so beautiful!I can’t wait to play this update!
    However…I don’t know, but the silhouettes idea doesn’t feel right to me. I mean, they are NOT real students, and you can’t interact with them, so.. what’s the point of having them? I prefer to wait until there will be true students.
    (And YES, I know they are just an option)

Leave a Reply