XaiJu
yekkusu
yekkusu

patreon


Development Update #13

Hello guys, here I am to tell you how the development of the game is going.


First of all, I have two things to report here, one is about the game and another is about side projects that have born of Just Friends, that second part isn't important to the development update so you can stop reading on the first one.



About the game:


About the new software:

So, to understand about the new software you first need to understand how the game works: The game has two parts, the first one is a JSON File which stores all of the information of the game.

Here's a simple example of how the data for the Introduction of the game is stored: 

The Character was added just to show you guys, everything inside the game is written like this. Every dialog, every animation, every single thing, even the music that plays when you change locations, everything is on this json file. 

The Character was added just to show you guys, everything inside the game is written like this. Every dialog, every animation, every single thing, even the music that plays when you change locations, everything is on this JSON file. 

If you're curious about what a JSON file is, you can read more about here.

You see, the problem with this is that every dialog can have the character information, and the character information has other information and so on. Imagine me having to write this line by line without anything to help, on a day like the 2nd day with more than a hundred and four routes. Can you see over there the "route" starts on the top, and at the end of it, there's a name: "main". That's the name of the route. After that, another route would come to bellow this and so on.

So, with that in mind, when we (Wagner and I) were discussing how to make this game to happen, he was the mastermind behind this amazing system using JSON, and he created the software for me to use. While he created the software I was tasked with creating the actual code who would read and apply those rules the JSON file has on the game.


When he finished the software, it looked like this:

The routes on the top left, the dialogs on the bottom left, the edition of the dialogs and character on the middle below the preview, and the answers on the top right with the editions for the points you could get if you answer the selected question and the anchor that question would lead you to. It looks amazing for me because this software makes two things to happen: First - An entire document that would take more time than needed with commas and brackets, it also makes the document more reliable. You know, JSON is very case sensitive and if a comma is missing from the right place, it won't open at all. 

There's not an official solution for JSON editions online, so we had to create software for our needs. 


So, why a new software? Well, there are two reasons actually.

First of all. check this:

This is a close up of the Dialog box. You know, JSON is case sensitive and the software does make it sure every single comma and brackets are on the right place, but the information on the JSON NEEDS to match the current file names on the game system. My code makes sure he can read what the JSON gives but it does need to be perfect. You see, on character, for example, I have to write the correct name to call Wagner's sprite, in this case, "mutt", if I write: "Mutt", or "mut" or anything wrong, the game will be unable to work out and it will crash. and the same can be said for music or background. 

This type of thing would make it really easy for me to mess up repetitive information since the next dialog I will need to write everything again. 


Of course, the number of crashes weren't as many, but every now and again someone comes to me saying the game was crashing, and the issue was the character had this date: "mutt", "worrield" instead o "worried" for example. It was frustrating.


The same can be said about Routes, but in that case, there's not much I can do really. I need to write everything the perfect way or you will never see the next dialog after an answer, instead, you will be sent to the next day. 

Take special attention to Anchor Info now: character is always the same name, so Anchor does have a character, but only the name not other information about him, even so, I need to use the same name. If I put, for example, mutt on karnal's route, maybe you will never be able to go to the next route, instead, you would be sent to another route if possible, if not, to the next day.


To minimize the crash issue of "worrields" misspelled words, new software in which I could add all the information on a separate file just one time, then access it as a list on the editor would be better. So the only things I would need to write would be the Dialogs, which aren't case sensitive, and the routes and the points. This stuff I'm always careful with, because this need to work at all times and it's all me, but the fact that I need to write every single dialog the same little text and that text cannot be wrong at all, after a long day of work the chances of it always being wrong would be of 100%.


But there's the second reason right? Well, I'm not in a comfortable place right now to just stop the development of the game to create another tool to help me with it, as I said, not only I have to work here I also have other stuff to do. I'm pretty sure in the future I will be able to live only here on patreon with your help, but for now, I need to work with what I have. And what I don't have is time. Free time.


That being said, there's only one person who has this time to spare since he got some vacations for himself, and he does love a challenge. You know, Wagner was very very very not in the mood to change the current software, but when he discovered that Discord was made with a tool named Electron  which for his delight and my despair, it uses HTML as its base code. 


Basically, the system uses a web browser to make everything happens so yeah, that's what discord is: Another chrome instance running with the name of Discord on your pc. We learn something new every day, aren't we?


Anyway, that's what made him want to create the new software: To test his skills while he could learn about Electron. He does love HTML and doesn't get me wrong, it's a powerful language when you understand everything you can run with it, and that's what I hate about it. In just one website I have to understand at least four languages and I don't like that, but he does. Oh, he loves it.

He loves it so much, that he made a software sooooo beautiful that he decided to change every single stuff he didn't need to and I had to stop my work to redo the code inside the game because he won't change it back! *screaming internally right now*. But that's fine, I'm the better person here, he's helping me a lot creating this, and he also has to make the drawings for the game, so what a week of constantly checking of everything that broke on the game because of the changes he did on the json would interfere with the project at all? Well, now you understand why only 25% of Karnal's route is ready.


Anyway, Electron picked his curiosity, and that curiosity became this:


Beautiful isn't? It shows in real time the background, the text and how it does look inside the game so I can have a more accurate simulation of the game below, it also shows the character on the side. It's like playing a slide show with a preview of the game every time I select a dialogue! 



Now, when I create a new Dialog, it will open a window for me so I can select stuff. With this new software, a new JSON file is used named assets, in it, I need to write the path of the current files and their names with the format of the images and characters, music, etc. You see, I only need to make this one time or at least one time per Day since you can only be at three places on a day, there's no need to have a huge list of locations or characters. BUT, the thing is: I just need to make this one time, then I just need to copy the asset.json and rename it to another day and just put what I will really use on that day, this way I will never ever write stuff wrong. Because I only need to do it once. 


There's a drawback, however, every time I use a character I will have to select manually that character and it's expression, since this software doesn't save the last settings to put on the next dialog, and I hate HTML to even try to add this feature, and Wagner already did what he needed to do with this, so I will lose some time but I've got stability, that's a fair trade-off.


And here's how the anchor and decisions are displayed for me now, way better than before I have to say. Also, it's not showing right now because of a small but already fixed but the affinity needed to go to those routes are there, don't worry. 


But the best feature is this:

This little button always will play "Still Alive- Portal 1"  if I click on it,

There's no better way to edit a day with GLADoS voice singing for me, don't you think?


So, it took us a week. For him to make the program and every five seconds ask for my opinion because he forgot how the JSON worked, and then because he does like to see my suffering sometimes and change stuff he didn't need to. Anyway, now it's done and I can actually go back to Karnal's 2nd day.


And, before I go to the next topic, here's a sneak peek of Karnal's route:

Scrivener is an amazing software, I do recommend it to anyone who wants to write anything professional. Note that sometimes I tend to discard an entire route and re-write it because I want this game to be flawless and I'm more harsh with myself than any food critics of Gordon Ramsy at your restaurant's food in Kitchen Nightmare. So sometimes I will remake something three to four times, yes, sorry. 


About the side projects born from this one:


 So, a lot of good stuff happened because of this project. Two software was created just to edit a JSON file, the last one is so well done that could make anyone think it's the actual visual novel editor and software who runs it. I'm pretty sure if I photoshopped that picture of the full software for you guys, it would make you believe that you could play the game just by clicking here.

When I said this to Wagner, something clicked, and with that, I can guarantee you guys, he is working to make the JSON Editor become a Visual Novel Maker, without depending on Godot at all. He's so interested in making that something everyone can use it, that he will put on steam to sell as a competitor to programs lie Ren'py and VNM. The idea is kinda amazing, and that's why the project was split into two variations, one is mine: The project that I need to edit my json. I don't want a software who makes me be limited to it, that's why I use Godot and make everything from scratch than trying to understand the labyrinth that is Ren'py libraries. 


But for a lot of people, this way of making Visual Novel is way easier than any software we have today, so yeah for now one, Wagner will be working to me only by making the images (I still pay him for every single drawing), but he will also be working on the new Visual Novel Creator. And if he succeeds I'm pretty sure he will earn a lot of money from it.


I'm excited myself because it's really good to see stuff happening because of this game that I love so much. So, please guys continue supporting me here so I can continue feeding you with amazing content. 

Thanks for everything, and have a nice day guys.

Development Update #13

More Creators