Postmortem


Hi. This is Altila, the project's leader.

Thank you everyone for playing Crimson Thread of Fate! If you haven't, please give it a try as this post contains spoilers.  I didn't expect so many people to play this game. To be honest, I'm still in disbelief. This is an achievement for me and it's thanks to the awesome people on my team and of course the players. In this post, I want to share a bit about the development. Please pardon my terrible English, occasional ramblings,  and the long post. I've underlined the important points (yes, like this) if you don't want to read the whole thing. 

=============

[Planning]

Just like last year with My Personal CH4R0N, I just randomly got an idea for a game about meeting your soulmate before reincarnation or something, AND a game where the love interests don't look like humans (because that time I needed a change of pace). But I have one major problem: I'm a terrible writer. So, I asked Yui to be the writer since she is a great writer and better than me in the romance writing department (well, compared to me everyone is probably better). We decided to do three love interests: two were designed by her and one by me. Then, we started to write their profiles and backstories. The first draft consists of three bachelors from three different worlds: RED one who appears cold (Future), GREEN one who is friendly and romantic (Past), and BLUE one who is always sleepy (Present). Only BLUE belonged to me in this phase. RED is Orion and BLUE is Python. The GREEN one is not the GREEN soul you know. The name was Raiden. Atlas wasn't born yet here.

My original intention was to have her as a writer and use free-royalty assets for the rest (GUI and BGs) but it turned out she wanted to do the BG too, so we decided we would do yet another co-writing like in CODE 1011: HERO (give it a try if you haven't) but this time she was the main writer.  As for the GUI, I've always wanted to try using someone else's template (coding for GUI is such a pain and I hate it so much, I don't want to do it) so we used a template.

Then, we designed the system for the game. It was decided that instead of meeting all three in the same places, MC would meet them only if she entered their respective route through a point system. That required a questionnaire in the beginning. Because of that, we had to design each lead's preferences. AND THIS WAS WHERE MY HEADACHE BEGAN. This made me realize that it was necessary for each of them to be unique and not overlap for this system to work. It was difficult because the characters were planned and written by different people.  Designing characters with differences was hard. I'm not kidding. The planning phase was done before the jam using Google Docs. The game jam hadn't started yet but I already wanted to combust.

If I have something to reflect upon is that we should have done the planning for the system first before the characters. We did it backward and caused me massive migraine. Not sure about Yui. Maybe it was due to my incompetence. Because I had to find a way so that BLUE wouldn't overlap especially with RED who shared A LOT of similar traits, I had to rewrite him many times (by many times I mean every time Yui added a new description and preferences for RED).

We were done with planning the system and characters! Or so, I thought. After considering our workload and capacity, we decided to change the composition to one character for Yui and two for me. However, none of us seemed to know what to do with GREEN. Personally, I didn't want to write him for a petty reason: I don't like a man with long hair (his design had long hair). Another reason is that I totally didn't get his character (and backstory). Yui told me it was okay to change him to someone else, so I did. This was the previous GREEN was replaced by the current GREEN. I left some of Raiden's preferences for Atlas because changing everything means changing the whole questionnaire and I was too lazy to do that.

=============

[Recruiting Members]

During planning, I thought that it might be great to have them voiced which Yui agreed. Not all, just partial voice acting. However, I had zero knowledge about recruiting voice actors. My Personal CH4R0N, my last year's entry which also happened to have partial VA was voiced by an acquaintance. So, I asked around for more information. It turns out that having voice acting in your game is a big deal. You need a casting director and sound engineer on top of voice actors to help you with the audition and process of the voice actors' lines. The ideal situation is to have a studio to do it for you. Of course, I heard that you can do it yourself but I can't imagine the workload on my side. Actually, I almost backed off here. But when I told Yui that we probably should give it up, she said she knew someone who might be able to help with the casting and introduced Anna (wow, what a network!). Thanks to Yui and Anna, we managed to find ourselves some voice actors. I'm genuinely surprised there are actually people who had similar voices as the characters in my mind. It was an experience.

=============

[Writing]

As expected, it was a mess haha. Having two writers meant we had to find common ground and perceptions. Of course, I had written the plan in the documentation but I realized that I wasn't being clear enough with my intention which caused some misunderstandings. One thing that I stubbornly insisted on not doing was mentioning their 'real name' (Orion, Raiden, Python, Atlas). I just didn't like the idea of them being reincarnated with the same name and in the first place they didn't remember their name and cause of death (inspired by Noragami). My original idea was just to refer to them by their color or something like their nickname. In the end, we settled with numbers.

Our process basically went like this:
My part: started writing > sent my draft to Yui for correction > Yui made corrections> I corrected the places she mentioned > I put them in-game
Yui's part: started writing > put it in a spreadsheet > I checked the script and made comment if any> Yui made correction if any > I put them in-game.

I'm such a dumbass who is too used to working alone and I, as always, wrote my script directly to the code editor to save time and effort. So, I had to copy-paste my code to Google Docs so Yui could correct the story haha.

Yui and I could start to write simultaneously since we were in charge of different characters. Oh, but of course I've already prepared a guide for the general flow. What surprised me was the difference in our word counts. I wrote Python first and was writing Atlas, but then I realized that Orion's script was twice longer than Python's. I panicked. So I had to adjust the length to match Orion's length. This is also why Atlas got a filler question and a lengthy epilogue. As for Python, I just rewrote things. 

I'm a terrible writer, I'm sorry.

=============

[Graphic Assets]

For the BG, my original plan was to just give it a black screen. Yes, I'm a dumbass. Sorry. Thankfully, there is Yui who strongly opposed the black screen and drew the real BGs.

About the sprites, since I didn't want human sprites, we decided to go with colorful Soul Balls (inspired by Soul Eater). Atlas's sprite was probably the one with the least trouble overall. Both Orion and Python got redrawn several times. For Orion, I literally redone his sprite from scratch. Python mostly had problems with adjusting the color and brightness.

Something that I learned during the development was about art cohesion. It was really tricky to balance the BG and the sprites here, in my opinion. The sprites were soul balls and they were like super simple and I certainly couldn't do shadeless sprites like I did in CODE 1011: HERO. Meanwhile, the BGs were very beautiful, rendered, and colorful. If I were the player, I would want that sprite to be out of my sight so I could just enjoy the scenery. I wanted the player to be able to enjoy the scenery while still keeping their focus on the sprite. We tried some things like blurring the BG when the soul was speaking, split screen, etc. In the end, we settled for making the sprite more glowing. But yeah, once again I was dumb and I realized that I actually didn't have the original working file for Python because I had to recolor him sooo many times (this one problematic child, I swear).

For the GUI, we were using a template, but I had to change some things like the color of the text. I made the reincarnation pass and birth certificate just for fun. Actually, I wanted to make like a ticket or death certificate but I scrapped the idea. For the logo, we had Yuuki to help us. Yuuki is also in charge of CODE 1011:HERO's logo and monsters. We had two versions of the logo. One is the current logo and the other one has the color of the starry sky. I like it but we ended up using the current logo since it matched the UI better.

For the CG, Python was drawn first even his BG was finished. It was why his CG was a little different than the others. But not gonna lie, I love his face and his CG could work in landscape and portrait which also made me weirdly happy. Atlas' CG was probably my favorite. I swear it was not intentional that his CG looked a little better than the others. Also, the current CG was the edited ver. The original CG had bigger eyes (and eyelashes) and he looked very young. Then, when I tested the game after inputting the VAs, it didn't seem to match, so I edited it a bit. I was surprised that just by making the eyes smaller, he looked like a totally different person. He was so handsome to the point I couldn't take my eyes off the screen. Orion. Orion oh Orion. I think I need more practice in coloring tan skin because he looked pretty like a girl at first. Either because of the shading or because my style got big eyes and darker skin made it even more visibly big. I lost count of how many times I recolored this dude. But with Yui's suggestion, I think the current version looks good.

=============

[Sound Assets]

Haha. Planning the sound assets of this game made me want complete silence. My ears were tired from finding BGMs, inputting every audio, trying to adjust the volume level between the BGM and VAs, etc. 

I had some moments during the development, in the middle of the night, I just had to scream or squeal at least once when checking the VA's voice. Haha. Good thing my room was soundproofed or my neighbor would be mad. Of course, I love the VAs' voices. I was fangirling their voices as I put them in-game. I especially loved Atlas' "Eeeh" voice. That thing filled me with joy. I was also thankful that Python's VA got variations in their acting because I was a little afraid that playing the same thing over and over again might demotivate the player since Python's lines were mostly him yawning or sighing. And of course, thanks to Anna and their friend for processing (IDK what is it called) and cutting the lines. I couldn't say much about Orion since it was in Yui's jurisdiction, not mine. One thing that I learned from this is I had to learn to write better directions and choose what lines to voice more carefully.

The most problematic thing during the sound implementation was after triple-checking, we found out that one of the BGMs we used was AI-generated. Thanks to that, we had to change the BGM of Orion's epilogue. Really, AI-generated musics were everywhere, so we had to be extra careful. And thanks to that, now I have a trust issue.

=============

[Programming and Testing]

The last week of Yui and I checking for mistakes and testing the game was like hell for me. I was so bored with my own game because I played it so many times and every time I checked there were always mistakes. Since my ears and eyes were so tired and I couldn't take it anymore, once I thought the game was presentable enough, I tried to ask some female friends (since females are the target audience) to test the game. Their feedbacks were really valuable and helpful. 

Buuuuttt, a few days before release, when I was doing the final (but not really) checking, I found a bug in Orion's route. This dude's route, since day 1 had been riddled with bugs. I didn't understand why there were so many bugs despite I was only making a normal visual novel. I thought I had solved them all, but apparently one managed to escape. And this one bug was really persistent. I didn't know what to do. I even re-wrote that part of the program, I changed the variables, but it was still there. Then, I found out the cause. One shouldn't add a hard pause after escaping a menu loop. Haha. I didn't even remember putting a pause there.

=============

[Ending Talk]

That was long. How can I write a postmortem this long but can't write a long story?

I had only been working on this game for two months, but it felt like years. This was by now my biggest project and collaboration. For two months, my weekends and some of my weekdays were dedicated to developing this game. I'm so glad we managed to finish it!

Lastly, please play Anna's, Yui's and my games and previous works! Links below! Thanks a bunch!

Might drop character profiles if we hit a certain milestone. IF.


Sincerely,

Altila

=============

[Post Script]

Here, recommendation for you, otome game lovers:

Transparent games' Saintess with the Golden Bow

Yui's Milcham

Altila's My Personal CH4R0N

Get Crimson Thread of Fate

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.