Hello everyone, happy May!
It's a bit of a long one this time, so I'll get right into it.
I started off the month absolutely raring to finish refactoring my code to add much needed QOL features, including rollback and controller support, so that it would finally all be ready for my planned releases in the summer. However, after wrestling with the code for around a week, I ran into a frame rate issue that I simply could not fix, even in a completely empty project.
After tearing my hair out for around 6 hours working on it, I made a 4AM decision (which is apparently when I make all of my semi-significant game dev decisions): I would try out a new game engine.
If any of you have played my games since Karamu, you know that I originally worked in Unity. This was for a variety of reasons, but mainly I was a novice dev and I wanted a flexible engine that would allow me to target mobile devices. After the Unity pricing debacle a couple of years ago, I swapped to Godot because it was open-source and would allow me to reuse my C# code that I wrote for Unity. It was also the only open-source engine that supported the 2D animations that I used. However, of course, after the 2D animations weren't supported on Android for the longest time and proved to be controversial (some people did note that they were the only things they didn't like about my games, haha!), I decided to drop them - and there was really no reason for me to stick with Godot, other than sunk-cost fallacy.
Most of you probably enjoy OELVNs, and if so you're probably familiar with Ren'py. It's a game engine designed specifically for making visual novels, which is why it's so popular in the indie VN space, and it comes with most of the features that you would like when playing or making a VN. This included a lot of features that I wanted to implement myself in Godot, including rollback and controller support. Ren'py also runs rather well on a wide variety of platforms, both when making and playing games - which was ultimately the reason that I decided to try it for a few weeks.

Without getting into the nitty gritty, I spent the latter half of the month working in Ren'py, and I found it to be wonderfully easy, convenient to use, and logically organized. I pretty quickly implemented the GUI for My Husband is a Stranger and Project R, and also implemented the basic script, voice acting, and game selection for the Karamu trilogy.
You can check out some of the screenshots sprinkled in between the wall of text here (it's all looking very spiffy, if I do say so myself! A big thank you to my talented GUI artists, Kathaeris and Elduator!)
Since everything is going rather well, I've decided to shift all of my future projects to Ren'py for the time being. This includes My Husband is a Stranger, Project R, the Karamu trilogy, the MindMindMind Android port (I hope to make a Web build of this one as well since the assets are pretty lean?), and the full version of The Deepwater Witch (+ other various unannounced projects).

Here is a (not definitive) list of features that I will be removing/changing because of the change in engine:
-The speech bubbles will not dynamically resize to fit the size of the text. This isn't impossible to implement, but it's a little more work than it's worth. Instead, speech bubbles will remain a static size for several lines until I manually change them. I don't think this in particular should bother anyone, but this will lead to a few other changes as well.
-Because the speech bubbles aren't dynamically sized based on the size of the text, I will be removing the ability to choose the font size. I will, of course, make the default font size relatively large and readable (I want everyone to be able to experience my games without getting headaches, after all!) It just doesn't make sense to accommodate smaller text sizes that won't fit well in the speech bubbles.
-I will also be limiting the amount of chooseable fonts. Beforehand I basically added as many fonts as I thought was reasonable (6 with MindMindMind... I basically just kept adding fonts as I made more games...) since more options = better, but because I'll be manually sizing the text bubbles from now on, I'll need to check that the sizes work for each font. To make this doable, I'll probably be limiting the font options to 4: a serif font, a sans-serif font, Open Dyslexic, and Atkinson Hyperlegible. If you have any requests for accessibility fonts, please let me know and I'll try to accommodate those as well!
-I'll be removing the dark and light reading options. It's not impossible to implement in Ren'py, but it's a little more difficult. Instead, I plan to use a more varied amount of speech bubble designs and layouts that are designed to fit the overall presentation of the games better.
Here are features that will be added in my Ren'py games:
-All of Ren'py's built-in QOL features 馃檹. If you're a visual novel enjoyer, these will probably be familiar to you, but they include: rollback, quick save/load, optional self-voicing, full controller and keyboard navigation, etc.
-Better performance and platform support (I hope). From what I've heard, Ren'py games are a bit faster and easier to run than either Unity or Godot games, on a wider variety of operating systems. My Godot games also didn't run on MacOS Monterey at all for some reason, which shouldn't be a problem in Ren'py (unless I am somehow cursed by the Apple gods). As I mentioned before, I plan on adding Android builds for my future games, and with Ren'py I will also look into adding Web builds (if I can - a lot of my games will be a little too heavy for it, most likely!)
For anyone who just wants to play my games, the tl;dr of all this nonsense is: I'll be making games faster, they should run better, and I'll be trading some QOL features for much more helpful and better QOL features. For anyone who plays a lot of OELVNs, essentially you should expect my games to run like and have the same features as most of the other games you play 馃槀
Since this month is Otome Jam, I really want to release something for it! The last Karamu part needs to cook a little bit longer because I'm waiting on some assets, but I plan on releasing the demo for My Husband is a Stranger, likely sometime next month. For that, I'll be working on the final CGs and coding in the script. If I have time, I'll also work on putting together the CGs for the demo of Project R and tinkering away on the Karamu trilogy and the MMM port.
Thank you to everyone who's following along, and see you next month!
Chattercap
Did you like this post? Tell us
Leave a comment
Log in with your itch.io account to leave a comment.
OMG Good luck with the porting Cap! 馃檹馃檹 I'm rooting for you! Oh and the extra QOL features you mentioned intrigue me haha, especially implementing dark/light mode... it should be possible! Probably global variable set for each theme... 馃 have to brainstorm!
AW thank you kona 馃槶馃槶馃槶 and yes, I think that it should be possible... 馃 whether people will actually use it is the question 馃槀 I wish I could ask people to fill out some kind of survey for the QOL features that they find the most useful 馃槀馃槀
YAYYYY renpy is wonderful 馃槶 good luck on everything!!
It really is 馃ス Thank you so much, grey!!! 馃槅
OMG! Welcome to Ren'py!! (hope porting isn't too much of a pain)
HONESTLY way easier than I thought it would be 馃槶 got me banging my head on the desk wondering why I didn't move sooner... and ngl part of my thought process was "if I can do half of what taumi does with their games I will be VERY happy with myself" 馃槀
Oh, this is so fun!! I can't wait to see what you'll cook up!
Thank you so much!!! 馃槉