19/04/2025 Patreon devlog (Patreon)
Content
Hallooo~ooooo everyone! Time for this week's update!
Summary
Sprite expressions
Glossary accessibility
Adding new articles with descriptive text
Glossary notification
Writing
Very little actually - I scribbled some notes and a bit of dialogue for some of the POV scenes.
Coding and Other Stuff
So after my update last week, I continued to work on some accessibility related elements of development. I pushed the update I said I would but continued to make some small tweaks and improvements.
One thing I wanted to do was update the glossary to have a sound notification (that will be read to the player if self-voicing is on + articles for all the people and locations introduced so I could insert descriptive text for at least the main visuals in the game.
Though the new articles aren't adding a lot of new lore or info to the project, writing descriptive text of visuals is still time consuming and it ended up being around 5000 words of additional content to describe just the people and environments the player has met up to chapter 5.
Fortunately although there are some new characters that show up in Chapter 6, there are not many new environments (I think the only new one is a maintenance area Wil works in). So I won't have to add many more for the new chapter.
There are still a few small fixes I want to try to work on regarding how the glossary content is being read to the player.
Managing the self-voicing is a little tricky. It's mostly an automatic feature. It's a native Ren'py function that uses the system's native text-to-speech system.
Those two things interface together to read my UI and game content. The problem is that it doesn't always read things in a logical or truly accessible way. Sometimes it reads things in a weird order, sometimes it just wants to read everything at once. Sometimes it won't read things that it should be reading.
This is because you have three systems (the TTS system, Renpy, and my code) all trying to communicate with each other regarding what should be read and when. Doing small things can be surprisingly hard. For instance, just making it read the word NEW in a glossary title is complicated.
The word "NEW" has to show up when a title is new, go away when the title is read, and also be read aloud when self-voicing is enabled. Getting it to show up wasn't too tricky though I also ended up adding a 'sort by new' feature and setting it to the default sort order to make it easier to find the new articles since they'll always be at the top now.
But getting it to READ that thing? Tricky. For some reason it refused to read normal alt text, which is usually how to add text to things. One of my programmer friends joked that the way they typically deal with self-voicing is to make everything a button. And quite honestly, yeah, the way to reliably make the TTS read something is to make things into buttons that have no action. This means that they get read when hovered on but don't really do anything and from the player standpoint just seem like normal text despite being a button behind the scenes.
So strange.
Anyway, that is mostly done so I've also been working on sprite expressions as usual - currently working on Wil's expressions.
Upcoming Week
Sprite expressions.
I said I would probably start writing the POV scenes last week but honestly my week was mostly eaten up by fighting with the glossary and then writing 5000 words of descriptive text for the bridge, the cargo hold, the dark world, the construct, the infirmary, all the characters. All the rest of the ship backgrounds, etc etc.
So this upcoming week will probably be sprite expressions + POV scenes for chapter 6.
Though I still have some tweaks to make for the glossary I want to set that aside for the time being and make some progress in other areas. So that's what I'll be doing.
That's it for this week. It's not a terribly exciting update but it's like that sometimes.
(I have another character wallpaper in progress by the way but I don't know if I'll work on it this week or not! I'll pose the high resolution version here when it's done though, as always).