We started a new contract recently for a small company in the North-East which is developing a game for the next Sony games console, the Sony Vita. We have specifically been commissioned to design the architecture and implement the networking interface and components of this game. It is interesting to see that there are no fundamental differences between developing an app for a smartphone and developing a game for a portable games console like the Sony Vita.
Like in the smartphone world, one can develop and debug directly on prototypes, using the officially released SDK, long before the console actually hits the shops. Like in the smartphone world, it allows for the ecosystem to take shape ahead of the game. But like in the smartphone world, one ends up developing using a half-finished environment, with barely adequate documentation (if any), fighting your way through hardware issues or not yet implemented features (available in the next few months!). And we are not even mentioning the sudden and unforeseen API deprecations between two consecutive versions of the SDK (released monthly)…
For the networking components in particular, we must admit that the abstraction that Sony has devised in their SDK hides a lot of the complexity of standard network interfaces to the developer, even if it still does take a while to sometimes find out the clear (and best) way to use the APIs. “Best way” is here subjective of course, as one can only hope that when the final device with the final firmware will come out, things will still work! Given the short time between the availability of the SDK, and the fast approaching release dates of the console, there is a constant sense of urgency, and only Agile methodologies can help sort out most issues.
That sense of urgency is what makes it click, as it forces more communication to take place between the developers and the management/client. Being a small team means that everyone is aware of what the others are doing, we hardly have any bottlenecks in our development, as each time an obstacle arises, or a sudden dependency is found, we talk about it and prioritize it to facilitate the implementation of the solution. We are in constant communication with management to make decisions and prioritize the features, and we overall make good progress on a daily basis. We are all committed to the success of this game!
The game itself is really exciting, mixing augmented reality with geo-localisation and cool, urban graphics. It has been officially presented during this year GamesCon in Cologne, and received really good reviews. You can check out the promo video here!