Archive for July, 2009

Massively Multiplayer Mayhem

Friday, July 31st, 2009

I used to play a lot of World of Warcraft. I loved just about everything about the whole “Massively Multiplayer Online Roleplaying Game” (MMORPG) genre except for some of the “massively mutliplayer” part. I like people, I really do. But man, something about the anonymity of the internet occasionally brings out the ass in people.

This recently hit a lot closer to home with my iPhone app, Boom Dice. I just wanted to make a simple little game and I thought it would be neat to incorporate the Open Feint chat system. Unfortunately, all the chat rooms were taken up by 12 and 13 year olds (at least that’s how old they were telling each other they were) being really obnoxious. So I’m probably going to disable chat in the next version.

But it’s gotten me thinking… I’d really like to someday create a massively multiplayer game (or at least a moderately multiplayer game). Is it possible to do that without it devolving into a giant chat room with usernames like “xxx*PenisMightier*xxx” saying stuff like “ne hot girls wanna cyber? pm me!!!!!!!!”?

Test Script

Wednesday, July 29th, 2009

I found out about a neat plugin called Scrippet from my friend Stephan’s website. (If you’re interested in independent film making, check it out!) The plugin lets you create boxes formatted to look like screenplays. Unfortunately, it doesn’t work if you’re viewing this post from an RSS reader or something like that. But if you actually come to my website, this actually looks like a script:

INT. MACH is sitting at his desk, typing away on his laptop.

MACH

Wow, this is going to be awesome! I’m going to write my first script for the blog.

(beat)

I wonder what it will be about.

Moments pass.

MACH does not come up with anything awesome.

MACH

What would Michael Bay do?

The room EXPLODES.

THE END

Flashback to the 80s, Part II

Monday, July 27th, 2009

I just got back from my high school reunion! It was lots of fun hanging out with old friends and meeting new ones (either significant others of classmates or classmates that I didn’t get to know as well during high school). It’s funny how familiar people are, even after two decades. It got me to thinking how much or little I might have changed. I think I look pretty different from when I was in high school, although I’m pretty much the same size. And personality-wise, I think I’m more outgoing now than I was back then. One thing that hasn’t changed, though, is that I’m still pretty goofy…

Flashback to the 80s

Friday, July 24th, 2009

I’m headed to my 20th year high school reunion this weekend, which made me think of Depeche Mode. I was really into them in high school so I dug up this video on YouTube. Oddly enough, I think this is the first time I’ve ever seen this video. Growing up, we didn’t have cable and hence, no MTV. Oh, but I can hear you young whippersnappers asking, “What does MTV have to do with music videos?” Well see, back in my day, MTV used to play music videos. Man, I’m old…

applicationWillResignActive

Wednesday, July 22nd, 2009

When you turn off your iPhone while an app is running, that app gets sent an “applicationWillResignActive” message to tell it to stop running things like recurring timers or whatnot. I just recently noticed that a certain exploding dice game does not properly do this when I continued to hear a tick-tick-ticking even after I turned off the phone. So … umm, yeah, make sure your apps don’t do that.

Sunburn

Monday, July 20th, 2009

On Sunday, we met up with a bunch of friends and enjoyed a wonderful outdoor concert by the San Francisco Symphony in Dolores Park in San Francisco. The music was fantastic and the weather was great, but I did get a bit sunburned in the process. Note to self: it’s important to apply sunscreen everywhere that’s exposed, not just the places I can reach…

Boom Dice AI Faces

Friday, July 17th, 2009

I had one of my friends playtest the game with the new AI for Boom Dice. He liked the AI, but he got a little confused when it came time to picking the AI opponent. Originally, I was just going to have the player tap the corresponding dice type (ie., they’d tap the silver die if they wanted to play the silver opponent).

But it gets a little confusing between the part where you select an opponent and the part where you select your own dice set. So I decided to put some little character faces on the dice when you’re selecting an opponent to differentiate it. And then I thought, “Hey, there are six sides to each die — how about putting a different expression on each one?” Of course, that’s six times the work but hey, you guys are worth it.

I haven’t gotten very far with them, but this screenshot gives a rough idea of the direction I’m going in. Click on the thumbnail to see the full size image.

Thoughts on AI

Wednesday, July 15th, 2009

I’ve written a very rudimentary AI (artificial intelligence) for Boom Dice and it definitely makes the single player game more fun. It’s functional, although not particularly hard to beat. One of my readers, Andy Daniels of Enginuity Games, kindly sent me a much more well thought out Excel spreadsheet to analyze the optimal number time to reroll or not. But I wonder: is the best AI necessarily the best for a game?

I’ve also been thinking about this since the wife and I have started playing the original StarCraft again (we play co-op against a couple computer AI opponents). She usually plays Terran and if you’re familiar with the game, you know that the starting game for Terrans involves building bunkers and if the enemy rushes you, you just send out a bunch of SCVs to repair it. Fortunately, the computer AI focuses on the bunker although a smarter one would go for the SCVs first, rendering your bunkers much less useful. But then where would the fun in that be?

Anyways, the point of the StarCraft anecdote is that it got me thinking about what the goals should be for designing an AI for a game. Here’s what I came up with:

  • The AI should be challenging so that you have to think to beat it.
  • The AI should be consistently beatable if you are good.
  • Beating the AI should involve playing the game in a fun way.

Mystery Update

Monday, July 13th, 2009

So, I check my sales stats daily to keep track of how my apps are doing. (Mach Dice tends to get about a dozen or two sales a day and Holograms gets less than half that. Boom Dice might get a couple sales in a week.) In addition to sales numbers, I occasionally see that people update to the latest version of Mach Dice. But last week, according to the stats, it looks like someone updated their version of Holograms, which is odd because I’ve only ever published one version of that app. Spooooky…

Bouldering

Friday, July 10th, 2009

I recently decided to get some more exercise in my life. And when I say “more” I really mean “greater than zero”. So I joined an indoor climbing gym. It’s a great workout for the entire body but especially for the fingers and hands. That may not sound especially useful but if I keep at it, I may someday be able to crush coconuts with my bare hands! (Right now, I think I’m up to boiled egg crushing level … well, maybe if it were shelled.)

My arms are pretty sore for an hour or so afterwards, which is fine unless I go climbing in the evening like last night. The problem is that I ride my motorcycle home and the clutch and front brake are controlled by hand levers. We’re only talking a couple pounds of pressure but sometimes even that’s a bit of a challenge after a good session of climbing. Thank goodness for the rear brake and neutral gear…