Ben's Busy Blog
My personal online journal of daily accomplishments and setbacks
Late to the Party: BioShockFriday, February 08, 2008
Inspired by this post over at Ascii Dreams, I started thinking about the games I've played. The games I finished, the unfinished and my pile of shame (Those games you never quite get to*) Why did a game wind up in one category or another? This was fruit for thought.
Of course, being your intrepid everyman, I am not reviewing your bleeding edge stuff. I'm casting my eyes backwards. In this frame of mind, I bring you Late to the Party.
BioShock - STATUS: Unfinished
Now how's this for an embarrassment? It's been out for months and I've barely left Fort Frolic! BioShock is a game I greatly respect and enjoy. I love it, and yet I'm turning it into a slog. When I come home tired from a day of work, it's just so easy to reach for a Tony Hawk or Crackdown, as opposed to the careful attentive playthrough that I feel BioShock deserves. So often, I'm loading it up like I need to punch a timeclock. Why? The rich environment and intricate narrative make it into a poundcake of a game for me. It's just heavy with goodness. When a story features the complex interplay of Randian philosophy versus selfishness and hubris, that's something that requires intensity and attention to detail. Now don't misunderstand me here. Bereft of its rich narrative, BioShock would be a pale imitation of itself, and wouldn't be a must-play experience. I wouldn't change a thing (aside from getting myself stuck inside a wall in Fort Frolic).
So things stays the same, I find myself home at the end of the day and thinking about unfinished projects, social obligations, and spending time with my lovely wife. When I can play something of my own choice, I rarely play BioShock, because when I play that game I want to have peace of mind. I want to be able to turn the sound up and the lights down. I want to know that I will not be interrupted. I don't get that enough. Oh BioShock, why are you such a selfish mistress?
* An amusing aside is that the 1UP Yours team actually managed a pile of shame squared by starting a feature about neglected games, and then neglecting that feature.
Of course, being your intrepid everyman, I am not reviewing your bleeding edge stuff. I'm casting my eyes backwards. In this frame of mind, I bring you Late to the Party.
BioShock - STATUS: Unfinished
Now how's this for an embarrassment? It's been out for months and I've barely left Fort Frolic! BioShock is a game I greatly respect and enjoy. I love it, and yet I'm turning it into a slog. When I come home tired from a day of work, it's just so easy to reach for a Tony Hawk or Crackdown, as opposed to the careful attentive playthrough that I feel BioShock deserves. So often, I'm loading it up like I need to punch a timeclock. Why? The rich environment and intricate narrative make it into a poundcake of a game for me. It's just heavy with goodness. When a story features the complex interplay of Randian philosophy versus selfishness and hubris, that's something that requires intensity and attention to detail. Now don't misunderstand me here. Bereft of its rich narrative, BioShock would be a pale imitation of itself, and wouldn't be a must-play experience. I wouldn't change a thing (aside from getting myself stuck inside a wall in Fort Frolic).
So things stays the same, I find myself home at the end of the day and thinking about unfinished projects, social obligations, and spending time with my lovely wife. When I can play something of my own choice, I rarely play BioShock, because when I play that game I want to have peace of mind. I want to be able to turn the sound up and the lights down. I want to know that I will not be interrupted. I don't get that enough. Oh BioShock, why are you such a selfish mistress?
* An amusing aside is that the 1UP Yours team actually managed a pile of shame squared by starting a feature about neglected games, and then neglecting that feature.
Labels: Bioshock, games, late to the party
XNA: Maybe I'm just not suited to engine developmentFriday, February 01, 2008
So I'm trying to get back into programming again. I want to take more risks and hopefully have more achievements. Yet as I enter back into it, I find myself running back up against the same wall that I stopped programming on before: I have no clue whatsoever as to how I should keep my things in order. SpaceHook, the first game I've been working on, is going to have lots of stuff on screen: Rocks, aliens, blackholes, power-ups, your ship, etc. In C#/XNA programming, what is the best way to keep track of all of these entities moving around the screen? How do I keep all of the little bits straight? Is there a given data storage object that's best for keeping track of all of things? How do I program this thing so that it doesn't suck up all of the processing time?
Metaphorical example: Our little white cat is bothering me for treats before I go to bed. To get her out of my face so I can type for a bit, I toss one of her toys at her. Normally this ruse works with her, but at this point of the night, she promptly places it into the "Not Chicken" category and promptly ignores it. How do I program my game so that it can ignore things? In concept, you can't use your tractor beam on a black hole. Do you just check everything in its path to see if it's a black hole and then ignore it? Or do you start checking by eliminating black holes from the pool you're examining? What's more, how do you find out what's close to your ship? Do you check every goddamned object in the game? If I throw a grenade in Halo, I don't think that the game checks every fucking object in the level to see whether or not it's eligible for getting blown to hell. How do I program that?
Keeping track of a multitude of entities and running analysis of them goes into Big O notation and other stuff that bores me to cross-eyed distraction. This sort of engineering just is... fuck all boring to me. I look at it, and I think, "Hey, shouldn't someone have already designed a better mousetrap for this?" But I'll be damned if I know the magic words to use on Google for summoning up the desired results. Object management? Item database? Entity management? I feel like I want a database or just simply a big ol' table that I can sort on demand, but I don't see that functionality as being available. If you say database, that's a magical programming term that means you're demanding an enterprise-class beast of such complexity that will require enough books from O'Reilly to devastate a rain forest. I just want my stupid data sorted and I don't even know how to do that.
All this seems to say to me that maybe I should look back into Torque or perhaps check out developing with the Source engine. I'd rather design than engineer. Give me some Legos. Don't ask me to figure out the best design for bricks with interlocking pegs and sockets.
Ugh, in the end, all I've really accomplished tonight was adding 100 more points to my Gamerscore by beating the time trials in Crackdown on Psychotic difficulty. Woo, breakin the 4000 point barrier. Put that on my resume quick. /self-deprecation
Metaphorical example: Our little white cat is bothering me for treats before I go to bed. To get her out of my face so I can type for a bit, I toss one of her toys at her. Normally this ruse works with her, but at this point of the night, she promptly places it into the "Not Chicken" category and promptly ignores it. How do I program my game so that it can ignore things? In concept, you can't use your tractor beam on a black hole. Do you just check everything in its path to see if it's a black hole and then ignore it? Or do you start checking by eliminating black holes from the pool you're examining? What's more, how do you find out what's close to your ship? Do you check every goddamned object in the game? If I throw a grenade in Halo, I don't think that the game checks every fucking object in the level to see whether or not it's eligible for getting blown to hell. How do I program that?
Keeping track of a multitude of entities and running analysis of them goes into Big O notation and other stuff that bores me to cross-eyed distraction. This sort of engineering just is... fuck all boring to me. I look at it, and I think, "Hey, shouldn't someone have already designed a better mousetrap for this?" But I'll be damned if I know the magic words to use on Google for summoning up the desired results. Object management? Item database? Entity management? I feel like I want a database or just simply a big ol' table that I can sort on demand, but I don't see that functionality as being available. If you say database, that's a magical programming term that means you're demanding an enterprise-class beast of such complexity that will require enough books from O'Reilly to devastate a rain forest. I just want my stupid data sorted and I don't even know how to do that.
All this seems to say to me that maybe I should look back into Torque or perhaps check out developing with the Source engine. I'd rather design than engineer. Give me some Legos. Don't ask me to figure out the best design for bricks with interlocking pegs and sockets.
Ugh, in the end, all I've really accomplished tonight was adding 100 more points to my Gamerscore by beating the time trials in Crackdown on Psychotic difficulty. Woo, breakin the 4000 point barrier. Put that on my resume quick. /self-deprecation
Labels: games, programming