itch.io is community of indie game creators and players

Devlogs

Weekly News #146

School Game / Sandbox, Simulator, RPG
A downloadable game for Windows, macOS, Linux, and Android

So, another week and a half has passed since the last news from us. It's time for the next part of the release, new information, and we definitely have something to tell you about... However, first things first, and first - a summary of the voting results. We attach a screenshot:

You can subscribe to our Patreon for vote and others privileges: https://www.patreon.com/school123

As you can see, the game for the girl won, as well as work on the RNPS with code refactoring. Some of the points have already been made, right now, by us. However, these weekly news will be strictly divided into points, without related information. Well, we will start not with randomized NPCs as always, but with some more... Required information.

 

First, optimization. As we already said in the previous news, major changes in this direction are planned for this short period, and they have been made. We will go over each point in more detail.

1) Multithreading, where possible. The game, due to the programming language in which it is written, is not strong in multithreading even now, however, this does not cancel the merits of this module. It greatly increases the game's performance if your device supports multithreading. Otherwise, it will, as usual, use single-threaded calculations for everything.

2) Caching. To avoid some unnecessary calculations, the game uses caching functions. Not internal functions of the game engine, but specifically the programming language. This greatly improves its performance. However, there are still crashes, right?

3) About 30 percent of the code was rewritten. The number of vulnerabilities where there could be memory leaks, excessive calculations and many other negative things was reduced. This is a complete module for calculating the activity of randomized NPCs, a complete movement module and many, many other things.

These three elements affect performance and stability differently and everything depends specifically on the device and its capabilities. However, there are fewer memory leaks, fewer unnecessary cycles, and potential multithreading will make the game's performance increase in some moments by two times. In the nearest future we will try to improve the situation even more, but for now you can see for yourself that a huge amount of work has been done. Especially if you look at the game code itself inside. However, not everything ends with code, right?

 

Secondly, system changes. Well, here we have those changes that were required of us, as well as some forced ones that we had to come to. One of them is a complete change of the interface of the settings menu, saves and all categories that are included in this. This is a huge and labor-intensive work, the results of which you can see below. 

Undoubtedly, these three screenshots are only a small part. Why? New save and load menu:

Have you noticed the changes? Okay, let's not keep you in suspense - now each save can be added to the "favorites" menu. In this case, each save added there will be displayed above the others in priority order. Not only that - now you can add notes to each save. They can be changed, written, do whatever you like, to your taste.  It would seem that this can already be called global changes in saving/loading, however, sorting is also added to all this. Now your saves made on different characters with different names are sorted by these very characters. In addition to the general list, there are lists with categories in the form of the name of your character, which will contain saves made only on it.

Story menu. So we immediately move on to another innovation - the story menu. Instead of the usual gray window with nondescript text, there is now a full-fledged interface that displays the in-game text time, day and month. Quite a convenient tool that you can use with pleasure and remember what happened once.

That's all for this menu at this point. However, this category and information block does not end there - a new training system. Completely rewritten training, it is accompanied by a guide who will tell you everything in detail. Will indicate. This training appears at the beginning and when trying to talk to a randomized NPC. Of course, you can skip it at any time and ignore it. However, for new players, this is a mandatory element of the beginning of the gameplay.

In addition, after some time, the guide sprite itself will be changed: redrawn from scratch in a new way while preserving the game design. You can see a sketch of all this below:

Well, and now another global point that was literally demanded of us. Changing the translation into English. We have done quite a lot of work in this regard. About 40-50 percent of the text with Ayano Yoshida was improved. This is about 10-15k words. In some places, the translation was completely changed, in some it was improved, in some it was simply corrected. We started working and this is how we tell you about it. Of course, for this we had to slightly, but expand the staff, but in the near future the translation of the game into English will be, if not perfect, then clearly several heads above the previous one.

 

Thirdly, changes with randomized NPCs. It would seem that there are a huge number of changes. A huge amount of new content. Where else could we want more? Well, we present you with the LEAST content. More than a dozen new tattoos have been added for female RNPCs.

The system itself has been rewritten following other systems. It now takes into account the position of the hands, the display of these tattoos has been improved.

Another system, which would seem insignificant - now, if you have x-ray glasses from the corresponding story character, you can adjust the transparency of the clothes themselves in this menu:

Have you noticed... Some changes in it? We will not keep you in suspense - changes have occurred not only in the transparency setting of the RNPCs clothes, but also in the new system - the view system.

Now, during conversations with the RNPCs, your character can actively look at any part of the body of this very RNPCs. The RNPCs will react to this, this will improve or worsen your relations. Increase or decrease the number of relations received for interaction. In fact, some people will really like it when you look them in the eyes during dialogues, some when you look at the floor, and some... At other parts of the body. However, no one denies that this system is basically for RolePlay within the game.

Another system that you could see in the screenshot is the system of memories. A huge system, for which we had to modernize some existing systems. However, this does not deny its importance: As you can see, memories are an analogue of logs with RNPCs. It records your actions towards it, time, location, as well as success/failure. What distinguishes this system from logs is its influence on the game. Depending on the intelligence, a randomized NPC has more memory cells, his opinion influences you in a much greater coefficient. Other, less intelligent characters, more impulsive guys in this regard - they quickly forget everything, remember less. The system itself has a direct influence on RNPCs, due to which the latest events will influence him/her in a much greater value than the events before. They can forget in the same way as ordinary people, refusal can have a critical effect on the opinion on memories. However, in order not to complicate the system of relations with RNPCs, the name decided not to overdo it with the influence on the relations of this system.

 

Fourth, code refactoring and fixed bugs/errors. Here, as always, we will make do with the usual list of changes, which you can read below:

 

  

 New content:

The story interface, which opens from the settings menu and displays the text that was in story-type events or between the RNPS and your character, has been completely changed. In addition to being changed to match the design of the new interfaces, it also has more information about these dialogues: they now have an in-game date, which is minor, but simplifies interaction with the interface. Also, instead of an empty line, the name "Narrator" is shown, as it is done in the game itself.

The save/load save interface has been completely changed to one that better suits the current style of the game interface. It has become more stable, has fewer problems. In addition, it itself has become smaller in terms of code, which makes it easier to understand, and new types of sorting have appeared in it: by characters. A newly created character with its own name now creates a separate button with categories, by which you can conveniently separate different game sessions.

A global system related to randomized NPCs has been added to the game: there is now a button instead of a calendar that opens their memories of you, which can be generally interpreted as logs where everything you did with a randomized NPC is recorded. It records time, location, activity, if new systems related to the attitude of the NPC to your character depending on recent events, modifiers and other indicators that will be interesting to study and manipulate for easier interaction with randomized NPCs.

The gameplay tutorial at the very beginning of the game has been completely redone: it is now more visual, uses a new interface, talks about more things, and is also generally a better option for explaining the gameplay than before.

The translation of a huge chunk of the plot that is responsible for Ayano Yoshida into English has been improved. A lot of time was spent proofreading, a lot of text was corrected and even more was rewritten. Overall, about 40-50 percent of the plot with Ayano Yoshida has been improved for reading in English.

More than a dozen new tattoos have been added for female NPCs. Including those that take into account hand positions, on different parts of the body.

The interface for changing content and game difficulty in the game settings has been changed: the main changes have occurred only in the design of this interface.

A new filtering option has been added to content filtering - plot. With it, you can either enable or disable plot content, if your desires require it.

A minor refactoring of the code responsible for displaying tattoos on female NPCs has been carried out. This system produces fewer errors, is less of a problem than before, and also now takes into account the hand positions of the NPCs.

A new button has been added to the interface for interacting with randomized NPCs - hide/open the interface.

New possible interfaces have been added for creating hints, tutorials, and other things. They have new systems, the ability to close interactions with the interface, have new typical tips.

A system with weather conditions has been added to the game: now with some chance it can rain outside, which will make randomized NPCs "scatter" to other locations: shopping centers, their homes, and so on. This rain has its own effects and sounds, which is why it is quite difficult to miss it.

A completely new function for communication and interaction with randomized NPCs has been added to the game: looking at different parts of the body. During a conversation, your character can look at different parts of the NPC's body: eyes, chest, thighs, calves, arms, valuables and the floor. All these views affect the RNPC in different ways within your dialogue and, of course, he may absolutely not like the look of your character at some part of the body. Everything directly depends on your relationship with this character, on his character traits and many other things that affect this both directly and indirectly.

New possible functions have been added to saves: adding to favorites, which will make this save ahead of others, as well as adding your custom notes to the save. 

The game settings interface has been changed. Firstly, in addition to stylistic changes in the interface, which are more suitable for the current design of the game, the settings have been changed into several categories: general game settings and performance settings. Secondly, many settings within this interface have been refactored, some have been restored, and some have had their performance slightly improved. In addition, more different functions have been added to some categories, with the help of which the player can better customize the game for himself.

The interface for changing the text for game events has been changed: the main changes occurred only in the design of this interface.

The game's sound system has been significantly improved: instead of a logarithmic change in the volume value in the game settings, now the usual change familiar to the player with the correct display of all this. Previously, even if the icon was in the middle of the status bar, the sound could be 12 percent - now in this case it will be 50.

The position of additional buttons for opening the profile, exporting, etc., everything related to randomized NPCs has been changed in the game. Now this is a separate interface with its own categories, capabilities, animations and many, many other things. 

Added more reactions of randomized female NPCs to any actions of your character that he may not like, which will make the system of communication with them more lively.

Now a randomized NPC literally remembers everything that your character did with him. From beginning to end. All interactions affect the potential relationship with him, his desire to talk to you, the success of the interaction. There are several parameters: memorization efficiency, initial opinion, current opinion, and a memory modifier. Absolutely all parameters interact with each other, creating more opportunities for interaction with the RNPCs, and also making this system more sophisticated than before. In addition, the amount of memorized information for a randomized NPC directly depends on his intelligence, and some of this is forgotten over time, and this parameter is also directly affected by his intelligence.

Now the path from any location to the location where your character is has some time, which is calculated using the Euclidean formula. On average, from the beach to the cinema is 8-9 minutes. 

Multithreading was added to the game for devices that support it (most often specifically PC devices). If your device supports it, the game will switch to multithreaded calculations. If not, single-threaded. Multithreading is available only for some functions, but it significantly increases performance, stability, and also significantly improves the situation with memory leaks, due to which after a certain number of cycles the game could fill up RAM and simply crash. (Python library multiprocessing)

Some specific functions now support internal caching capabilities, which improves the performance situation significantly from what it was before. In addition, the game's performance itself is also improved to some extent by reducing the number of crashes due to fewer unnecessary and unnecessary calculations that could have been avoided at some point.

The concept of the RNPCs activity module has been changed, due to which their activity now changes not once an hour, but much more often, as it happens in real life. 

A minor refactoring of the code responsible for the transition of the RNPS between locations was carried out, due to which the overall performance of the game has improved by five percent. The code itself has become more stable and understandable, and has also begun to use the computer/phone resources much better.

The network code of the game itself on the client side has been significantly improved, which fixes a lot of errors and bugs related to this, and also generally has a positive effect on the performance of the game itself.

The code for connecting to the game servers has been significantly improved. It was made from scratch, again. Prevents many errors, crashes and other problems that were relevant for the game servers. Now everything works stably and there should be no more errors related to this.

The code responsible for the triggers of story events has been completely refactored from scratch: now it is a completely different code. It has become more modular, gives more space for potential modders, and also generally works much better and clearer than before.

The systems responsible for determining when to calculate the activity of randomized NPCs, their movements, and much, much more were refactored, due to which the game's performance increased fourfold in some moments. Especially during events/some interfaces/interactions and other game mechanics. 

The module responsible for calculating the RNPCs at the location was refactored. Now it is separated from the RNPCs activity calculation module, and works separately from it. In addition, its values are cached, due to which the game's performance will improve, at least a little

The code that calculated the number of minutes and hours was refactored: now it is moved to a separate module and calculates time slightly differently, avoiding errors and unnecessary calculations inside the method.

Now, if randomized NPCs have the appropriate orientation, some romantic interactions can be with RNPS of the same gender.

Now randomized NPCs can change their location not only once an hour, but much more often, depending on the activity of the player.

A minor refactoring of the code responsible for the transition of the RNPCs to locations was carried out, due to which the overall performance of the game improved by five percent. The code itself became more stable and understandable, and also began to use the resources of the computer / phone much better.

A significant refactoring of the code responsible for searching for all game NPCs in the session was carried out: firstly, it was rewritten, new input data were added there, secondly, this module became faster due to the introduction of data caching.

Now with a fairly low chance, randomized NPCs can walk around the "Forest" location inside the city.

Profit from in-game businesses that can be bought on the player's PC is 10 times, in accordance with the interest rate of the in-game bank.

New possible cheats for Patreon subscribers in the console were added to the game 

Now, if your character has X-ray glasses, which are given to him for the quest of one of the quest givers, a new icon appears in the menu with the interface for interacting with the RNPCs - an icon with which you can adjust the transparency of the clothes of this very RNPCs.

A global refactoring of the systems responsible for constructing game sprites was carried out: female RNPCs. Now, firstly, all functions have become unified, only the layered construction system itself is preserved, secondly, now many filter systems are added to each element, which simplifies modding and many other possible functions. In particular, this fixes a huge number of errors and bugs associated with this system.

A minor refactoring of the systems responsible for displaying interfaces in the game was carried out: many bugs that could be associated with non-display of content were fixed, the interfaces themselves were sped up in some cases.

A bug was fixed due to which a hand remained on the RNPCs waist in the RNPCs editor when editing a female RNPCs and the position of the hands was changed.

A bug was fixed due to which changing hands in the RNPCs editor did not work correctly, due to which hands could be on top of sleeves, and the game itself could have other problems of this kind.

Fixed Bugs:

Fixed a bug that could cause an exception after purchasing the "Exhibitionist" perk while moving around locations, trying to interact with the game in any way. The game would completely crash after that. Fixed a bug that could cause the game to work incorrectly and story NPCs to have no desire to communicate with your character.

Fixed a bug where the Occult Club Management interface would show the old interface instead of the new one on some specific versions of the game. 

Fixed a bug where some newly added content might not display properly on new versions.

Fixed a bug where an exception could occur when switching to the activity definition interface for NPCs in some very rare cases.

Fixed a bug where male NPCs' emotions would not change when reacting to your character. 

Fixed a bug where female NPCs' front arms could overlap multiple times, creating a graphical flaw when constructing a sprite.

Fixed a bug where female NPCs' clothing might not change color, even when changing the color in the NPC editor.

Fixed a bug where randomized female NPCs' earrings could appear on top of the front of their hair, being directly on top of the hair itself instead of behind it.

Fixed a bug where randomized female NPCs could walk around the Academy locations even on weekends, no matter what.

Fixed certain caching issues where at some point a randomized female NPC from one game session could be transferred to another game session from a completely different save.

Fixed a bug where an exception could be thrown when trying to generate a game session with certain pre-installed mods in-game.

Fixed a bug where a randomized female NPC's thighs and calves could reset while your character was interacting with that NPC.

Fixed a bug due to which your character could simply "Freeze" in the state and attempts to enter the abandoned factory. 

Fixed a bug due to which the NPC could translate in some places, like NPCs in Chinese and English.

Fixed a bug due to which the scroll position on the grocery store screen could not be reset, due to which when switching to different categories of products, the screen could eventually seem empty due to a visual bug.

Fixed a bug due to which an exception could occur after purchasing the "Exhibitionist" perk while moving through locations, trying to interact with the game in any way. The game would completely break after this.

Fixed a bug due to which the game could work incorrectly and story NPCs had no desire to communicate with your character in any way.

Fixed a bug due to which the game could use old functions to try to determine the number of NPCs, instead of new ones, which could lead to unnecessary calculations and incorrect values in some mechanics.

Fixed a bug due to which the game could throw errors and exceptions when trying to start a new game session with some very low chance.

Fixed a bug due to which the game could throw an exception after trying to determine the activity of the RNPS in the location if there are more than 160 NPCs. 

Fixed a bug due to which the automatic pubic hair growth system for female RNPS could work incorrectly.

Fixed a bug due to which the "shave" rule for female RNPS could work completely incorrectly and simply be ignored.

Fixed a defect due to which bruises and blood from the RNPS disappeared too quickly, although they should not have.

Fixed a bug due to which the warning about expulsion from the academy simply could not be shown to your character due to the fact that by mistake it was made only on the easy difficulty level, where it is impossible to bring the conditions to expulsion.

Fixed a bug due to which the game could completely ignore one of the events of the additional plot nature due to problems with plot triggers. (The plot concerned Yuki Oota and Hitomi)

Fixed a bug due to which after entering your email to receive Patreon subscriber privileges, the game could simply endlessly search for servers regardless of anything.

Fixed a bug due to which after loading the game with the entered code, it could freeze on a black screen and not allow you to enter the game at all, completely freezing.

Fixed a flaw due to which the body conjuncture setting was available in the main character editor not from the body settings menu, but in general through the appearance settings, which is considered a rudiment.

Fixed a bug due to which when changing the hairstyle on a male RNPS/your character, if this hairstyle was from 6 to 9 base type, then he could be bald for certain reasons.

Fixed a bug due to which in-game time could be calculated incorrectly after some time and instead of 60 minutes the game would wind up like two hours.

Fixed a bug due to which the game could throw an exception when trying to scroll through time in the RNPS activity calculation module.

Fixed a bug due to which RNPS could be absent from locations due to certain script issues. Mechanically they were there, but in fact the list of NPCs in locations was empty.

Fixed a flaw due to which the interface for interacting with RNPS could show variable names when changing this very clothing in the RNPS editing interface.

Fixed a bug due to which the characters that exited in the dialog box had game control buttons right in the left corner.

Fixed a bug due to which saves could show incorrect time (not days, but specifically hours and minutes) if the save occurred before the start of the game session. 

Fixed a bug due to which the initial state of the "Skip confirmation for exiting the game/overwriting save" trigger was set as enabled, due to which you could lose your saves or unintentionally exit the game. 

Fixed a bug due to which the "Character is stuck" function could work incorrectly on a permanent basis, constantly teleporting the player to certain places that he might not need.

 

As you can see, we listened to some requests (translation of the game, performance), to advice, where the same improvement of saves. You can leave some of your advice under our official platforms, under the comments. We will definitely listen to them and improve the part of the game that you want. In the near future, there will be more and more such big news, which means that the release of the game on Steam is getting closer and closer. Well, in the meantime, you can try out all the innovations that are described in these posts in 0.957b. The next full update will be on September 27th, and the next post will be then. In the meantime, you can write your comments about what you think about the game, how you see it, and what you expect from it!

Files

  • School Game v0.957b Windows Version for itch (MEGA)
    4 days ago
  • School Game v0.957b Linux Version for itch (MEGA)
    4 days ago
  • School Game v0.957b MAC Version for itch (MEGA)
    4 days ago
  • School Game v0.957b Android Version for itch (MEGA)
    4 days ago
  • School Game v0.957b Windows Version for itch (Google Drive)
    4 days ago
  • School Game v0.957b Linux Version for itch (Google Drive)
    4 days ago
  • School Game v0.957b MAC Version for itch (Google Drive)
    4 days ago
  • School Game v0.957b Android Version for itch (Google Drive)
    4 days ago
Download School Game / Sandbox, Simulator, RPG
Leave a comment