This is a lot of serialization for the controller to know about.  I'd suggest having a `GameSerializer` class to handle the building of the hash.  That way it could be unit tested and more easily reused if needed.