Thursday, January 31, 2013

State House

Yesterday Vermont held an open house for game developers at the state capital. It was part of a larger effort to show the local government that 1. we exist and 2. that development is a really great way to bring money into Vermont (and have it stay there) as well a way to keep some of the "young people" in Vermont.

And while Burlington is a great booming college town, there is a pretty serious age gap between the college aged crowd and new parents. After graduating students, especially in the technology field, are leaving the state for better opportunities.

So for about five hours we joined the rest of the Vermont game development community (all three of them) and showed off some of the projects we have been working on. Hopefully our presence there helped to balance out the public opinion that has been recently surfacing about the content and affect of video games.

Tuesday, January 29, 2013

Closed Beta is Live!

Sent out all of the invites and actually started a game with one of our testers. I know about the scroll button problem already, but other than that seems to be going well. Need to have more maps uploaded so that I can build in the functionality for "Pages" of map's when players are searching/sorting.

Laid out our plans for the next few weeks, our deadline is March 1st for this competition at Cambridge. So the art changes are going to hopefully be the big seller. We have a rough idea of how its going to look and the major challenge for me is creating a new tile flipping animation. The way it works currently is amazingly simple, all done in code so its going to be a pretty big shift.

Monday, January 28, 2013

Second Wind

Our presentation at JDK, coupled with the change that an art style brings has kinda given me a second wind on the project. Not that I was getting bored, but it was beginning to feel overwhelming the number of tasks that lay ahead in getting Overflow to a viable position. And what this change in art style, or theme if you will, does it just gives me a little bit of breathing space from the project.

For those who really like the current aesthetic, have no fear, I'll probably put in a button to change the theme back over to the original, however like I said last week, change is coming.

I spent the weekend thinking about passive animations, stuff that would go on in the background, or when something for the board to do while its not being played in addition to coding new types of tile flipping animations. I'll post a video of some of them later today and you all can let me know what you think.

Friday, January 25, 2013

Reevaluation

Gathering these outside perspectives has been great, it has allowed me to view Overflow in a very different light and helped to identify some of its major failings. Its single largest problem is that that game is not memorable.

There is no unifying theme besides something i might call simple or even vaguely modern. To make it distinct we need to, in the words of an art professor i knew, push it until it nearly breaks. So in the coming weeks we will be investigating multiple different art styles. The core of the game and its strategy elements will remain the same, but I remain convinced that Overflow needs a new coat of paint.

Thursday, January 24, 2013

Ironing

Still figuring out those pesky online bugs. The big one yesterday was having all games handle having players surrender when it was not their turn. Also put in a generic error message screen which tells that user if there was an error in connecting and pulling down data instead of simply getting stuck in a loop of retrying.

What is happening now is me just sitting down, playing, seeing what breaks and fixing the issues one step at a time. On track though for a closed beta hopefully by tomorrow if i can iron out the major connection kinks.

Wednesday, January 23, 2013

Outside Perspectives

Went to Champlain yesterday and talked to some professor's, showed them the games, its changes and talked about what I'm kinda planning for the future. I do this once a month usually, and its a great way to take a step back and view the whole picture.

So after we finish (still hunting down bugs) the online update, at least to the point where we can send it out in a closed beta, I'm going to take some time to re-evaluate everything, nothing (besides the core code) is sacred and could always be overhauled in some fashion.

The biggest things on the table is the need for a better feedback system, to reward the player for making a good move, for locking down the board, and the art style. While I personally enjoy the really clean, modern style we have developed, it doesn't stand to be something that will be remembered by players. There is no personality to it, no real theme. Stuff to think over.

 

Tuesday, January 22, 2013

Bug Hunting

Got invites in yesterday and then preceded to start tracking down and squishing some bugs. Discovered that you could join/quick join your own games! So put a stop to that pretty quickly. The other big buggy thing that was happening was when two games were played/saved simultaneously. The game id's were not getting saved correctly, resulting in moves in game 1 being played in game 2. It was all the fault of a global variable, was able to fix it yesterday.

Should be able to go into closed beta pretty soon, realized that we need to put in some kind of reporting system where players, or us, can flag inappropriate content or names. With user generated content that is just the reality of the situation.

Got scrolling to work in the iPad version as well, did it the cheap way by putting buttons in that control the scroll. Will eventually get a smooth scroll in, but that code base that would help me do that had way too many variables for me to struggle through. I'll come back to it at some point.

Monday, January 21, 2013

Now Announcing

So this week I think we are going to do a closed beta of Overflow this week. Those on test flight get to be the first ones to try it out, give us some initial feedback and stress test against our server. Invites are today, need to finish those off and then do an overall critique on the visuals for all of the menus systems. Oh, need to put scrolling into the iPad version, its mousewheel for PC's so that needs to happen. Probably by the end of the week is what I'm shooting for.

Also have a presentation on Friday about Overflow which I need to prepare for. Going to go down and talk at JDK and explain the game and get a critique hopefully. They are known for their graphic work so some insight would be helpful.

We didn't make it into the Pax Independent Showcase :( kind of a bummer, oh well. Called up the Pax people and tried to get a table, but they were all gone. Now we are on a waiting list to see if one miraculously opens up.

Friday, January 18, 2013

iPad Asyc

Is a go! And Mike became the victor of our very first match! Surrender has now been fully implemented, which is great. When a player surrenders, their special tiles grey out and the game skips their turn. If all other players surrender, the remaining player is declared the victor. Victory stats are uploaded upon completion and after the game is over its pulled from the players game list. At some point we will log these completed games so that players can go back and look at them potentially, but not today.

Focus is now on getting a better join system. Currently we have a quick join system, players pick their map size & player count and the server places them in the first available slot.

What we will do instead is have the players pull down a list of potential games they can join, players will be able to filter the list (map size, player count) and from there narrow their search and view the map layout before they commit to joining  a game.

I also need to start dealing with the potential web crashes, of server fetches that fail. If that happens now, the game simply crashes, so i need to account for that kind of error checking.

Online Game Setup

IMG_0283

 

 

 

 

 

 

Browse User generated Maps

 

Thursday, January 17, 2013

It worked!

Got it working yesterday! And whats even more incredible is that we are running the game in sudo-real time! What happens is after a player sends their move up to the server the game refreshes itself, looking for additional moves. When it detects a move was played it pulls down the information and plays the game right in front of you. So, in essence if two players are active at the same time, their async game becomes a real time one! Which is just so awesome.

Today is dedicated to trying to get a surrender system in place. If a player quits, all other players should be notified and the game system should simply skip their turn. If all other players surrender the remaining player should win.

Prediction for the async update: get it out by the end of the month.

Wednesday, January 16, 2013

Ok, that worked

Yay! Converting the game data to XML and saving it worked Was able to successfully load in a save file, grab all of the game data and then create a new game based off that data! Now its step by step. Need to bring in the current states of all player tiles as well, and log the analytic data as well so that the post game report displays correctly. As of this moment i am wary that I will get the replay function to work...

I have to store the game history every turn... which means my save file would get pretty big pretty quickly and the last thing i want is to bloat the size of the game with a save file. However, flash has the ability to convert XML files down into an array of bytes, drastically reducing its size.

But, by saving multiplayer data on the local machine load times will be drastically shortened and the risk of data loss due to intermittent internet is reduced.

Tuesday, January 15, 2013

Stuck

Made it 98% of the way until Async fell on its face. The problem is saving game state data with online games. Each game has a pretty complex amount of data it needs to play. Each player holds its own analytic data, ie: number of each particular tile they put down every turn. The game also holds a history of all turn moves, this history records what that status of the game board was and who owned what. The last big piece of information is the holding of each of the player's special tile states.

All of this information is held in the onlineGameManager class, originally I wanted to just try to save that entire class. However yesterday every time i tried to do so the save would fail. What I have come to understand is that its simply too complex to save.

I don't want to push all this data up the cloud every turn either, that just data loss waiting to happen. So Matt suggested this morning that I grab all of the data out and store it in an XML doc, which is way less intensive.

 

Monday, January 14, 2013

So Close!

Put in a good 8 - 10 hours into Overflow this weekend and now we are so close to getting a-sync working!!! I ended up cloning the group of classes that are needed for the primary game to function (gameManager, Tile, SelectedTile) and created Online versions of them so that i could tweak them without endangering the core code used in the local game mode. Matt helped me out and built four additional PHP scripts as well so now its just debugged.

My prediction: A working, testable version of Async by the end of the week.

Friday, January 11, 2013

Upload Successful!

Map sharing is now operational! As is the ability to browse user created content when a player decides to go online! That is pretty huge and a great step in the right direction. Today will be polishing off the create maps stuff, now that a player can select their multiplayer map from the browser. If a game is created it will create a database entry in the games table and will be "available" for other players to join (once we write the script). Getting to the Join Game script is today's goal.

In other news, we have entered two additional contests with Overflow. The first is MassDigi, a competition in Cambridge Mass, which we will have to drive down too and present at. There are two rounds of presentations, the first is a 10 minute, 1 on 1 with a judge. The second is a 8 minute in-front of everyone at the conference. So that's something to look forward too.

The second contest is the 9th annual Mobile Games Summit competition. We submit, the work gets judged, and any finalists are invited to the conference held in Barcelona.

So big things could be happening soon!

Thursday, January 10, 2013

Map Marketplace

Yesterday we started on that page and scripts needed for a Create Game option when players are online. Planning ahead we want players to not only create games on the standard maps or on their own created maps, but on any map uploaded by another user. In order to browse through this hopefully large selection we have created a Steam Workshop esk hub for viewing the creations of other players. On this screen players can filter these maps via map size as well as sort by popularity, date created, rating, and map name.

Today's goal is getting this fully operational and attempt to build the system for map uploading (right now we are cheating and putting in a data directly into the database.)

Wednesday, January 9, 2013

Building Overflow's Community one PHP script at a time.

Every day this Async update gets more and more exciting.

Yesterday i finished up the player home screen that they will load into when choosing to go online. This screen will show all of the players current games they are in. From this menu players will also be able to create or join a game.

And getting that creation piece up is what today is all about.

Knowing full well that we want a browse-able workplace where players can view and play on maps created by other players, I'm planning with that in mind. So that means that this create game screen will need to pull down list of games and be able to sort them by size, or search by name. Eventually I want to be able to search by map creator, or map rating, or by newly uploaded content, etc.

Tuesday, January 8, 2013

Back to Async

With the post game report update finished, its now time to turn back to creating Async.

The good news is that user login has been completed, the thing to do next to create the players online "home page" a place where they can view all current games that they are involved with. This space will also link to their own profile which would track their win/loss ratio as well as other stats which are now available from the Post Game Report.

Words with Friends is the main inspiration when it comes to how this "home page" will look. A scrollable list of games waiting on your turn, the opponents turn, or games that are still waiting for players in order to begin. The main issue i have with the Words with Friends page is the number of ads... They are everywhere and it is safe to say that is not how Overflow is going to be. Not on my watch.

Monday, January 7, 2013

Post Game Report!

Completed the first iteration of the Post Game Report this weekend! And took it on its first game test to see how well it would do. Here are the results:

IMG_0277IMG_0278IMG_0279

Going to make a few changes, spacing and color wise. But overall it looks pretty good. The image of the left is the state of the board at the end of the game. The second image is a overview of the whole game, and the graph shows the total number of tiles per player over the course of the game.

Marguerite played as Green, I was Red and Mike was Blue. It was close, but i lost... Mike handed Marguerite a good portion of the map which she then immediately locked down. But it was pretty close until the very end.

Going to try to get this update out by the end of the day to the web & all testflight users.

 

Friday, January 4, 2013

Up Next

Finished off the editor overhaul yesterday, updated test flight, the web build and sent a new one out to apple.

Looks good so far. Now we are getting to the bigger ticket items. Talked about it yesterday and decided that of the four major elements that need to be added,

1. AI

2. Async Play

3. Map Sharing

4. other device/resolution development

Async will be the deciding fact in creating a community who actively plays the game and wants to see updates. Other device development would also increase this base, but it would not keep them active long enough for the async update to roll out.

Thankfully Matt and I did some pre-planning back in November so we kinda already know how this is going to work development wise.Before I jump into that kind of work however, i want to make sure that all the smaller (easier to code) elements are out of the way.

Which means i finally get to create a proper post-game report. As a strategy player i have always loved the stats and graphs shown at the end of my game and one of the best games that does this is Starcraft. It shows a host of great statistical information that really drills down into how a player did over time.

Thursday, January 3, 2013

Brrrrrrrrrrrrrrlington

Back from break!

And Colorado has nothing compared to Vermont when it comes to temperature. -1 this morning, hello to you to Vermont.

I get to work on my PC now! Yay! my laptop is great for wordprocessing and that's about it, never meant for coding. The goal is

that by the end of the day i get the map editor update out, need to tweak a few things graphically since my laptop height resolution is smaller than an iPad, so when i play on my laptop i'm not really seeing the whole screen.

But the update should include the following:

1.Saving to any of the designated slots within a certain map size directly from the editor.

2. Loading from any slots directly from the editor.

3. Building maps with pre-populated player tiles.

K, off the work, stuff to do.