Something, Something, Something, Networking.

I’ve been wanting to write for several weeks now, but the time just hasn’t been right.  A lot of private things have happened, that are beyond the scope of what I like to write about here, but they involve loss , grief, and general sadness. Those are not the reasons I’ve been wanting to write.

This also isn’t going to be an update about my family.  That one will come soon. (Spoiler alert:  Kids grow up too fast.)

My emotional state has jump started me back into working on my projects that I’ve been not giving enough attention to.  I’ve jumped ship from my previous development platform, though, and am now trying my hand at Unity.  I have to say, it’s pretty powerful, and does a lot of what I want to, and a lot more.  But I feel like I need to learn a lot to really excel with it.

One of the things that I really want to get right with my software is networking support.  My game will support asynchronous online play, and far too many of the games that I play don’t get asynchronous play right.  I’m looking at you, Catan.

I have a very clear vision of how Asynchronous play will look in Gestalt, and it’s a model that has worked very well for games like Ascension and Penny Arcade.  When you load the game, if your credentials are saved, the app connects to the game server.  The server stores a list of games that are active or recently completed, as  well as a move history, the contents of each deck, and individual information about the players.  The contents of hands, discard piles, decks, as well as keeping track of the last move the player participated in.

When you join an existing game, it will set the board to the position it was in the last time you played, and then send you each move that has been made since.  Each of those moves would be displayed to you, then you’ll be able to play your own moves, if it’s your turn.

So I’m spending a lot of time making sure that the routines to handle the network are all in place.  I want to be able to store exactly what I need and retrieve it properly.

I feel like I’m learning a lot every day, but I also feel like the process is going a lot more slowly than I’d like.

I know this is probably my most boring post to date, but I just want to get down some of my thoughts about what I’m working on.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.