Day 153: Today, I tried to finish all the work for this sprint. I wanted to have a free day tomorrow. But I gave up. It was just too long. I would have finished at least at 22:00, and it was too boring. Oh and I’m still sick.
Daily interesting stuff:
Reddit post about the released version of Hack n Plan. It’s a tool like trello, but specialized for game development. I should give it a try sometimes
Tasks done:
Changed the logo. It still said “alpha”. And it got shipped in the beta build… Bah, it’s alright. Nobody plays the game anyway. To avoid further mistakes, I removed the “alpha” all together, and didn’t put a “beta” tag. It just say “Rogue Cadet” now.
Did an overhaul of the credit pane. It was very much needed. It was really ugly… Now, I wouldn’t call it pretty. But it’s less vomitive. I added colors to the names. And I categorized the entries with a nice centered header. I have “music”, “graphics”, and “everything else”. I also added a “special thanks” section. So far I have my roommate, coca-cola, reddit gamedev, and the testers.
Started to localize the game. I thought that since the game will be played by french people, and that I’m a native french speaker, it would be stupid to not localize the game. So I started. That’s what I wanted to finish today. But I guess that implementing a whole localization system AND translating all the texts was a bit to big for one single day. Who would have thought? That being said, I did implement the localization system and I translated roughly half the game. Which I think is still pretty badass. I made the localization system myself. I could’ve use an asset from the Unity asset store. But I don’t really like those. And I have really simple needs for this tool. So I made it myself. It’s based on a “LocalizationDataBase”, which is a simple ScriptableObject that has a list of “LocalizedText” which are just an ID and a list of string indexed by the language (0 is english, 1 is french). Then I have the LocalizationManager (yeah I know “manager” berk). This class provides a static method that returns the localized text of the given text ID. It also caches stuff in a dictionary for fast random access, and tracks the current language use (to give the right localized text). Finally I have a super simple UI script that change the text of UI it’s attached to at start. It also listens for a language change to change the text again. As you see, it’s a pretty simple system. But it works well for my needs. Plus, by using a ScriptableObject for the database, I have a built in Unity interface to make the translations. After making this system, I began actually localizing the game. And that proved to take a LOT of time. I mean each individual text is easy. But there’s so many of them. I never realized how much text I actually have. But I guess it could be worse.
0 comments