0.3.3.23

Posted On 27 Feb, 2016

Main change in this patch is I am attempting to support machines with default languages other than English. Details inside.

So a lot of people who don’t speak English have been experiencing crashing, or at least I assume it was a lot of people, because one of them finally contacted me. Just 1 person. If someone from Korea had issues on steam and sent me an email in English, I imagine plenty more had issues and didn’t have the ability to send an email in English, and even more simply never tried.

The issue is with numbers, and I’m only about 50% sure it is solved because I don’t have a Korean or Chinese install of windows to test on, however I’m nearly certain the issue arose when trying to measure the size of a text character that could not be rendered. Monogame has a limited number of characters that it can draw using sprite fonts, and when it is offered a character it can’t draw it happily draws junk instead, the issue is that sometimes I was looking up the width of a word in order to position UI elements intelligently based on their width. Since it can’t draw these characters, monogame dies a horrible death when I ask it what size they are.

To fix it I had to go through about 100 different locations in my code where I use that method and make sure there was an alternative solution for picking a size, and test for invalid characters offered by the operating system of a non-English computer. Obviously since monogame was designed to handle my special case, it is a bit hard for me to test all of the edge cases that may still exist, so if you are on a non-English install and you are still experiencing crashes, please do try to contact me so I can look into it. Thanks!

0.3.3.23

  • changed how unlocked modules get into your save games. They no longer touch save games and now simply exist in addition to the content of your save game during single player
  • changed how unlocked turrets get into your save games. They no longer touch save games and now simply exist in addition to the content of your save game during single player
  • fixed approximately 100 instances in the code where I measured the length of a string to account for the fact that some people will run the game on computers in other languages and might insert characters that can’t be rendered or measured using monogame. If your computer is in a language other than US and you see text that is in a slightly wrong position or is missing characters, it is now showing that instead of crashing the game