Welcome to another State of the Game, where exciting stuff is revealed and your whole world will change!
Not really, but kinda of, because this week [well yesterday] I released the first Social Update snapshot build! This build was packed with a whole slew of new features, but is not at all finished, and according to reports, has a few bugs in it. But, hey, that is what snapshot builds are for!
So what is in this release? Let’s dive into the change list!
Login System Rewrite
The whole login system has been rewritten to give the user a better understanding of what is happening as they log in. It will show when it is connecting to the servers, when it’s logging in, or if it’s connecting to steam. It also handles errors in the login process much better as well. On top of all this, it allows you to connect your Steam copy of M.A.V. to a Bombdog Studios account. This means that if you are playing the game on steam, all your stats will affect your base account, so all your stats are in the same place. This also allows you to unlock any account upgrades [like alpha camo or the alienware cockpit] even if you are playing through steam.
Freeing the Saved Builds
Before, when you saved a build in M.A.V. it was locked to your account name. This unfortunately made it so if you logged in with a different name [like through steam] you couldn’t access any of your builds. It also meant you couldn’t share your whole builds file either! That restriction has been removed! Now, all your builds are still saved with your username as the ‘owner’ but you are allowed to load and build. So share away!
Parts spawn to the side
A large complaint in the garage was people would try and spawn a new part only to accidentally click and pull apart their whole build. This was not game breaking, but it was SUPER annoying and cause many people to nearly smash their whole computers! Not wanting to be responsible for broken computers [and dreams] I made the new part spawning in the garage happen over to the left side of the M.A.V.. On top of this, when you go to spawn a part the camera will move to the side, allowing you to still see your M.A.V. while you select a new part.
If you played with the wheel chassis very much you might have noticed the rear suspension could go completely crazy at times. This bug has ruined many of great trailer shots that I have tried to do, so it had to be eliminated. I rewrote the suspension math and have a much more stable and less wacky system in place now.
I created a new pregame lobby, that is very similar to the garage, but with reduced functionality. In the lobby you can easily see what team each player is on, you can switch teams yourself, and you can even vote on which level to play next! On top of all of this, you can switch your current M.A.V. with any of your saved builds, which should help prevent people from leaving servers just to change their M.A.V.. You are also allowed to preview your teammates M.A.V.’s, and even view everyone’s M.A.V. before teams have been decided.
No More Leaky Memory
The massive memory leak that really reared it’s head in 0.5.21 is now fixed. Before, opening the add part menu in the Garage would gobble up massive amounts of memory, and never release it! I could only open it 16 times before I crashed [I have 32GB of RAM] and many players with less RAM or 32 bit machines would get crashes in as few as 4 clicks. Now with this fix, I opened the menu 75 times, with a memory increase of only 8MB, before I got so bored that I declared the bug fixed. The original issue was caused by how I handled database connections and transactions paired with a strange behavior in unity3d’s garbage collector [the thing that releases memory]. In theory, the memory usage would go up every time a call to the database was made, and the add part menu makes a LOT of database calls. I also reduced the number of calls to the database, which showed a significant speed increase in the opening of the menu.
Some users were concerned that the IP of their server was displayed for everyone to see. This coupled with the known open port of M.A.V. ‘could’ give attackers an advantage to try and compromise the server. I agreed and thus removed the IP address from being listed in the server browser. I also removed all the unlabeled and unused information there as well.
I also wanted server owners to be able to say what port M.A.V. should use. There is now a PortNumber field in the server INI prefs file, which will allow you to change the default port used for a M.A.V. server.
I also changed the preferences to load a local Server Prefs file instead of the global one. This means you can have a MAV folder with one server config file and a separate folder with another server config file. If these servers are setup to use different ports, you can then host more than 1 server on the same computer!
As with most snapshots, there are some bugs with these features, which I will be fixing as soon as I can. After that, I will be working on proper stats tracking, achievements, profiles, and adding TONS of parts! See you next week!