The world flounders, but a beacon of stability shines brightly through the fog of panic and pandemic. That beacon is Logic World Wednesdays: ever on time, ever organized, ever punctilious. We are here for you when you need something dependable in your life.
This week I’ve made a number of improvements to the settings menu.
The machine in that video was built by the lovely @woox2k :)
This week I’ve been working on improving the tracker website that the beta testers are currently using for reporting bugs and other feedback.
Firstly, this week I’ve beautified the main page. You can now see each ticket’s creation date, type, status and ID.
I’ve also added another property to tickets: it’s priority. It ranges from 1 to 4, from most to least important.
Thanks to these changes, it’s much easier for us to manage a large number of tickets. We can easily see what needs addressing.
Last week I told you I was working on a rewrite of SECCS, our library for converterting arbitrary C# data into binary and back. This week I’ve continued this work and integrated the new SECCS into Logic World. It’s now correctly reading and writing all the packets, while also being much cleaner and easier to maintain! The next step is making it fast, since up to this point I’ve been focusing on readability over speed.
When Logic World connects to a server, there is a process of initialization wherein the connection is verified and established. Previously this process was very haphazard and error-prone; there were a number of cases where the initialization process would not complete properly and you’d get stuck on an infinite loading screen when you tried to connect.
This week I worked out and implemented a robust and reliable protocol for initialization. It’s a careful back-and-forth with verification at every step. It looks like this:
This is on top of the UDP message reliability features built into Lidgren, our networking library.
Thanks to this new protocol, all the bugs with connection are fixed. You can connect to a server with other players in it, you can connect to a server with a huge world loaded, you can connect while someone else is disconnecting – it all works as it should, and I am a very satisfied developer.
We’ll keep releasing these weekly updates right up until the game comes out. To make sure you don’t miss them, you can sign up for our newsletter. Be sure also to wishlist Logic World on Steam and join the official Discord.
See you next Wednesday!