Devlog Week 21

Another week another Devlog. There isn’t much to show off this week, a lot of it is related to NPC stories and the story of the game, which I obviously won’t spoil, but here’s a short summary

Story writing

All I can say is that I have a draft for the main NPCs that progress the story, and also another draft for the major events of the game, which is about 80% done for now. I think once I figure that out, it will be easier to add the “side” content, which is more about the community and the characters and things like that, like a slice of life kind of storytelling. My aim is to make the character and world building meaningful and also enjoyable on its own, and not just something I’d to to make the story/gameplay appear longer than it really is. The game shouldn’t overstay its welcome just for what I consider a meaningless metric.

NPC Interaction

I added three simple features to the interaction system :

1- UI : I made a UI for the interaction text. I wanted it to feel like an 80’s command-line program, but mainly orange, and with some scanlines. I used a font that resembles the MS-DOS font and simplistic square borders.

Interaction UI

2- Delay: add an option to delay the interaction a little bit before loading the next line. This can be useful for example to let an animation play before loading the next line, or simply to control the cadence of a conversation.

Interaction Delay

3- Pitch modifier : it makes the pitch of the interaction sound higher or lower. It can be used in conjunction with text, punctuation, and character facial expressions and movements to convey emotions better.

Pitch Modifier

4- Text Highlight : I made some changes to the UI and replaced the Text object with a Rich Text object, since that supports more features. I chose some colorblindness-friendly colors, so even if they don’t look the same way, they’re at least distinct enough from the rest.

It’s still not fully implemented, because it displays “Text with a <Highlight_Object>Highlighted Object</” before it reads the last character “>” and becomes “highlighed object“. I’ll leave this for future me to solve.

Bug while the text isn’t fully loaded. That’s a problem for future me.


I want to think in advance about accessibility and not just leave it as a afterthought. The design of the game, being text-based, means there will be no issues with hearing impairment.

Visually, I’ve thought about color blindness, low vision, and dyslexia. For colorblindness, I will try to keep any necessary visual cues visible to the players. I got lucky with my art direction and the choice of using predominantly the orange color, because apparently it’s very color blind-friendly. I also made sure the highlight colors were readable enough. I was initially going to use Cyan and Blue for objects and NPCs, respecitively, but I found them hard to read for some types of color blindness, so I adjusted them to be brighter. And while it’s not easy to distinguish sometimes between an object highlight and an NPC highlight, I don’t think it’s going to give any kind of disadvantage, as long as it’s at least highlighted

Test with a Color Blindness Filters

For low vision and dyslexia, I added an option to toggle between the artistic style I want, and between a higher contrast and larger text. I thought fonts like OpenDyslexia helped, but studies show no actual benefits, and using a sans serif font is a better alternetive. I chose Cascadia Mono for that.

Alternative high-readability UI

Other than that, I did some basic blockout of houses, then tested The Grove, a blender add-on for making trees, and I liked how quick and flexible it is. I studied a few models and scenes from a pack I bought from Leartes Studios too. I also read a bit about Unreal Engine, things like event dispatches, game instance, player state, game mode, and also watched a few videos about save files.

That’s it for week 21. I’ll try to get some more blockouts of environments this coming week, and maybe even some more story writing and implement more features.

See you next week!

Leave a Reply

Your email address will not be published. Required fields are marked *