Tuesday, December 20, 2011

Sending/Receiving Data

     Welp, I haven't posted in awhile. I finally got the core of the server to run correctly, given the specified amount of ticks.After figuring that out, it was finally time to move on to sending the correct data back and forth. Since all of the art assets will be on the local machine, I don't have to worry about storing any of that on the server. This allows me to just focus on making the server the last say in all game functionality and not have to worry about downloading files from the server (at least not yet).
     Now comes a very interesting, yet somewhat frustrating part. I have to determine which data is essential for the player to have right away as soon as they connect. This is basically the loading screen section of any multiplayer game. The server and client are communicating back and forth, so that we can get them both on the same page, before showing the user anything and handing over control. This prevents any unsightly loading of assets or preventing data that is reliant on starting the game from being seen before it is all there.
     We will be using loading screens for each map. We are already (kind of) working on those. We really just want to get a feel for what they are like before anything at all becomes final. And of course, we have to make the maps fully before ANY of the loading screens become final.
     This is where my head starts to spin a little, because I have to a) determine what data is needed right away. For instance, the max player count on the server is needed right away because the Player list on the client side is dependent on that number. Then there is b) Making sure I am 100% the data is there/sending and that it is going to the correct people. I have been trying to make my code as flexible as possible to help make this part a little easier. For instance, when a player connects to a server, the following (so far) happens:

a) The client connects and sends a string of their name to the server
b) The server receives it and creates an instance of a Player with that name and a free ID
c) The server then has to send the max players number it has and send it to the client that just joined (not all of the clients) so that I know how many Players to initialize on the client side.
d) The client receives that creates the specified amount of Players
e) The server then sends the name and ID of the newly joined player to ALL clients
f) The clients set a new Player with the ID and name sent from the server

There is a bunch more to have to be sent, and a bunch more checks that need to be done before handing over control or showing anything, such as determining the current map, figuring out all of the current players, etc.

-Dave

TL;DR: This is hard.

Saturday, December 10, 2011

Progress Check

This post is going to be created for the sole purpose of seeing where I stand right now, before I begin working on our epic holiday sprint of game development. Then, after this break is over I will make a new post with everything I have done at that given time to see just how much I accomplished in a short amount of time. This list is only for the visual side of Galaxy Gangs.

Currently Achieved
---------------------

Menus : 90 - 95%
HUD : 0%
Death Anims : 25%
Walking Anim: 80%
Weapons : 50%
Characters: 90%
Scoreboard: 0%
Team Logos: 100%
Levels: 5%
Effects: 0%

Of course, these numbers are pure guess work mostly due to the fact that I have no idea what all content we plan to include when we are all done.

E

Thursday, December 8, 2011

New Background!




Just posting the new main menu background that we now have included.