Hey everyone it’s time for your weekly update. Flavien has made some progress on the remaining networking issues however it isn’t completely resolved yet. With game networking there are significant challenges around compensating for latency and synchronizing game state – particularly when it comes physics simulations. To summarize the difficulty at a high level, games use lots of fancy math to estimate where everything is supposed to be and then subtly correct errors when an authoritative update from the server is received. Throughout this process there are many places where additional, small errors can accumulate within these mathematical computations. In most/all other games this small accumulated error has no discernable effect on gameplay as it results in the position of an object being off by a few millimeters or less. In Infinity: Battlescape objects are moving at speeds of thousands of kilometers a second and at such high velocities what would be a millimeter or less of error in other games becomes many meters for us. This is what was causing the stuttering we previously described and Flavien has implemented a fix that reduces it to a point that’s “good enough” for now.
Unfortunately, there’s still an issue remaining with physics updates that causes collision detections to have a slight delay. Once Flavien gets that sorted out he’ll get back to server-side planetary collision detection and after that we’ll finally be able to release the next patch. On my end I spent half of last week out of town traveling to a couple of weddings around various parts of the country. Fortunately, before I left, I made some significant progress on UI support for text. As expected text layout is quite complicated. Due to our international playerbase we want to be able to support different languages, many of which have special layout considerations depending on line breaks and how characters should be merged or replaced due to ordering. While macOS and iOS provide Application Programming Interfaces (API’s) to handle just about any sort of text need you could possibly think of, the API’s available on Windows aren’t quite as thorough. This means I must fill in the gaps with my own layout engine. The good news is that our near-term text needs are relatively simple and I’m only adding support for the things we absolutely require. The initial implementation is nearly finished and I’ll add more advanced features as they are needed.
There’s not much new to report on the art side. Work continues on the land base, station materials, and destroyer. All of that should be wrapping up in about a month or so, at which point we’ll move onto the remaining 2 capital ships and weapon special effects. That’s it for this week – until next time!