Plastic Guitar Brinksmanship

There has been a bit of a brouhaha lately with regards to guitar compatibility between Rock Band and Guitar Hero III on the PS3. As of now, you can’t use the Les Paul guitar that comes with Guitar Hero III when playing Rock Band (on the PS3). Why? It’s not like they’re very different — and, of course, you can already use Guitar Hero controllers with Rock Band’s 360 version!

It seems that Activision has demanded that Harmonix/MTV Games/EA (the three-headed monster involved in producing Rock Band) pony up for the privilege of using their guitar. This is all, of course, playing out to Harmonix’s advantage in the court of public opinion, but one additional factor makes me think that this will be resolved to Harmonix’s satisfaction. Harmonix still has a very relevant patent on the scrolling note display used in Guitar Hero III — one that this news article suggests was, in fact, licensed by Activision. (I had heard through the grapevine that Neversoft had investigated using non-patent-encumbered ways of showing the notes for the game, but I guess they gave up on that.) The material covered by the patent is pretty critical to the gameplay of Guitar Hero, and after the stellar sales of the third installment, it’s easy to see that Harmonix could use future licensing of the patent as a bargaining chip.

I don’t own a PS3 (or Guitar Hero III — I had just rented it), so I’m not affected by this issue, but it’ll be interesting to see how this all plays out.

Even When You Wrote the Operating System, You Still Have to Work Around Other Peoples’ Bugs

For all the grief that Microsoft has taken in the past about the bugginess (real or imagined) of Windows, they have definitely put in a huge amount of effort to try and erase that perception. Readers of Raymond Chen’s excellent The Old New Thing blog will no doubt be familiar with the many tales regarding application compatibility (including one about a game) and the extent to which Windows tries to accommodate buggy (but mission-critical) applications. They’re interesting stories to read, not only because of the technical details, but because of the business justifications for such endeavors.

It just so happens that I ran into another situation recently where Microsoft has to play nice and accommodate somebody else’s misbehaving application. The Google Maps Windows Mobile application adds a command for mapping a contact’s address to the context menu for the contact. This is really convenient, and is very intuitive — you look up the contact, and then you can map their address. But in the otherwise excellent Windows Live Search Mobile application, you can only search contacts from within the application itself — you can’t go from the Contact screen to Live Search in the same manner as with Google Maps. It seems pretty clunky and counterintuitive.

Since I figured this was a “slam dunk” kind of improvement, with no potential downside, I mailed the feedback address for Live Search and mentioned that it would be nice to have the same Contact menu functionality as in Google Maps. I got an amazingly speedy response (within half an hour) indicating that they couldn’t add that feature, because Google Maps had issues if another application tried to hook the same menu! Microsoft realizes that, regardless of who is at fault, that people tend to blame bugs on them, so in a case like this, it’s easier for them to step aside than to endure a torrent of tech-support questions.

Fortunately, Google has apparently fixed the bug on their end, so this feature will be added to the next version of Live Search. It just goes to show that, no matter how big or small your company is, if somebody creates a useful application on your platform, you can become beholden to either the need to maintain compatibility with their bugs, or to their goodwill with regards to fixing their bugs. It’s a tough situation in which to be.

The only remaining question for me is whether or not the mobile Google Maps app auto-updates — I know that Windows Live Mobile does, because it downloaded an update the other day. I don’t know if I’ll have to remove and reinstall Google Maps as well. Guess I’ll have to give it a shot…

Fixed: Size of the Moon

The gaming blog Rock, Paper, Shotgun recently ran an article mentioning the next project of the developers of the 2005 PC game Boiling Point. That upcoming game, however, is not the real focus of the article (nor of this one). There’s a bit of pointing and snickering at part of a bug fix list for the first patch for Boiling Point — I’m sure that the bugs in the list seem pretty crazy to most people. I thought it would be fun and illuminating for non-game developers to give my best guesses as to what these bugs actually represent under-the-hood, and how they may have happened, solely based on the descriptions. Note that I haven’t played or ever even seen Boiling Point in action before, so my guesses may be totally incorrect.

The aforementioned article had the following bugs highlighted:

  • fixed: the snake wasn’t able to bite you while you were crawling

    • I have two guesses as to how this may have happened. One would be that the player’s “hit box” and the player’s “personal space” (a space surrounding an object into which other objects can’t move — I’ve borrowed this term from Bioware‘s earlier games) are not always the same. When the player crawls, perhaps his personal space grows large enough that the snake’s weapon range isn’t long enough to reach from the edge of the player’s personal space to the player’s hit box.

      Another guess would be that the targeting AI for the snake (governing where to move in order to attack, and things like that) somehow got messed up when the player was prone, or had an early-out return.

      Odds are good that this slipped through the cracks because either it wasn’t tested, or that crawling was tested for other animals (but not the snake). Not uncommon.

  • fixed: size of the moon

    • My guess would be that, if there was actually a separate “moon” object (i.e. it was not something done entirely in code), that it was created as a copy of another object, and the size was never correctly adjusted.

      Alternately, if the moon was created in code, it’s possible that: a) nobody ever really looked for it, b) it was working at some point, and later broke, or c) if the game simulates lunar cycles, that testers explained away the missing moon by assuming that it was a new moon.

  • fixed: posters in bar vanish as you turn away from them

    • The culling code is buggy for that specific type of object, or the bounding boxes generated for them are incorrect. If the posters are built as three-dimensional solids with a very small depth, it’s also possible that it may be caused by numerical precision or other issues.

      Stuff like this tends to be pretty easy to notice, as long as it’s in an area of the game where players will commonly visit — I’m guessing that the developers knew about it, but it was not determined to be a “stop ship” bug.

  • fixed: dog does not cast shadows

    • For performance and artistic reasons, it’s common to have per-object flags to turn off certain effects or processing. The “cast shadows” flag was set wrong on the dog.

      Likewise, this is not a “stop ship” bug, so it’s a toss-up as to whether or not the developers were aware of it.

  • fixed: a metal clanking sound plays, if the user’s character stabs the curtains

    • As with the dog, this is an issue with incorrect data being set on an object.

      This is also not a fatal bug, but it’s one that I can easily imagine slipping through the cracks, since it is not only object-specific but weapon-specific as well.

  • fixed: jaguar floats across screen at treetop level

    • This is a tough one to hypothesize about without having seen the game. One possibility is that creatures in the game can be set as “flying” (unaffected by gravity), and this jaguar had that flag set on it for whatever reason. If the jaguar was initially placed on a slope, but then walked away, it would seem to be floating in mid-air.

      Another possibility is that it is somehow set to collide with coarse LOD bounding box representations of, say, a village, and is just “walking” on top of it.

      If this bug only occurs in one area, or with one jaguar, then I can see this potentially being missed during testing. If it doesn’t cause problems with the game, either they figured it was okay to ship, or ran out of time to fix non-fatal bugs.

  • fixed: npc die on contact with grenades, and not from the actual explosion

    • It’s not clear from the description if this is limited to friendly NPCs or not, but it’s possible that the damage resolution code for area-effect weapons has an (erroneous) early out for friendlies, while the damage resolution code for other types of attacks does not.

      This might be a case of a regression failure, where functionality that was working at one time later breaks due to other changes. Alternately, it may be a case of testers selectively testing ways of killing friendly NPCs. (Hey, it’s an anti-social thing to do in the first place, so I don’t blame them for not trying out every weapon on their buddies.)

Like I said before, I might be totally wrong on some of these, but it’s fun to speculate and to try and understand how games are doing things under the hood…

True Names and the Fracturing of Identity

I saw a post on the always-amusing Coding Horror regarding the fracturing of online identities. A couple of early blogging pioneers are mentioned, along with the number of separate profiles or identities that they seem to have — in the range of 20-30. The question is, which one of these is “truly” them? The somewhat philosophical question about which of dozens of disparate user identities actually represents a person is an interesting one — it seems possible that abandoned user identities may continue to “outrank” their more updated peers, due to search engine bias or other factors. And, as the article notes, it scarcely seems possible for a regular working person to keep 5, 10, or even 30 different “presences” up-to-date and relevant. The web is littered with abandoned blogs, web sites, software projects, and other detritus, along with sporadically-updated content (such as this blog), for which regular revisits and/or specialized software are required to stay synched.

The potential confusion of abandoned versus current identities is part of the reason that I finally decided to buckle down and register eriknovales.com — I figured that it would be the easiest and most specific way for people to easily find me. Personal domain names are kind of like the true names of the 20th and 21st centuries — if you know a person’s name, and it’s fairly unique (as mine luckily seems to be), odds are good that if you just try going to “name.com,” you’ll find them. Sadly, in spite of several months worth of posting, and a domain name that matches my own name, my site still only ranks as the 13th “major” result in a Google search for “Erik Novales.” Looks like I’ve still got some work to do to “reclaim” my identity from all these other community sites!

High Fidelity (Part 3)

Yesterday I finally managed to redeem the Best Buy rain check for my free copy of Heroes Season 1 on HD-DVD. I originally got this rain check almost two months ago when I bought the HD-DVD add-on for the 360, and the boxed set hasn’t been in stock since then.

Over the last couple of months, I patiently kept checking to see if it was in stock whenever I was at the store, wisely choosing not to rely on the alleged phone notification you get when the item is in stock. (In the end, I never got a phone call of any sort.) I also investigated other avenues. Apparently you can’t redeem a rain check at another store. At another point, I attempted to convince customer service to just give me store credit for it, but apparently they can’t do that either. They told me that I wasn’t even supposed to get a rain check for a free item that was out of stock. I went back and checked the circular for that week, thanks to the archival powers of the Internet, and it did not indicate that was the case. Since the circular did indicate that other free offers were limited to stock on hand, I was pretty sure that I really was due my free boxed set. In the end, thankfully, justice prevailed.

I haven’t watched the boxed set, though. I’ll have to set aside some time to watch it, along with the Arrested Development Season 1 set that my brother gave me which I still haven’t watched…and then, there are still the 5 extra movies that we’re still expecting via the mail-in rebate…

Big Game Hunter (Not Starcraft Related)

In furtherance of my recent Gamerscore binge, I decided to branch out a little bit and explore a new game genre for me — hunting games. I rented Cabela’s Big Game Hunter for the 360, and just got done getting all 1000 Gamerscore a little while ago. I have to say that I was fairly disappointed with the game and the hunting game genre. As someone who basically knows nothing about the topic (never mind the fact that I also lack interest, for the most part, on the topic), I was disappointed that there wasn’t really any pedagogical material in the game relating to hunting — there was a brief weapon/gun encyclopedia, and that’s about it. There were no tutorials on hunting technique, or the use of the various lures and other items you can get in the game. In short, it seems unlikely that anyone would learn anything useful from this game.

In essence, the game boils down to essentially a corridor shooter where nothing attacks you (with the exception of the “rival hunts,” against creatures like bears, leopards, and lions). The checkpoint-to-checkpoint action is broken up occasionally by shooting-gallery segments, and the occasional frustrating mini-game, but that’s about it.

I wound up going through the game twice, because I missed one of the optional mission objectives the first time through. You can’t go back and play prior missions once you’ve completed them, so I had to replay the game in order to get the “full completion” achievement, which was worth 120 points. (I initially had the auto-save functionality on, which prevented me from backtracking. I recommend playing with auto-save off.) The game is pretty easy, and all of the achievements can be obtained (even in easy mode) in a couple of hours if you know what you’re doing, and keep track of what you need to accomplish.

The game has a general lack of polish — most quadruped animals move with exactly the same gait, and do not react in realistic ways to events around them. Animal bodies vanish in front of your very eyes, and the animation in general is not very good — your character can run full speed up a very steep slope, but uses the same animations as he does when running over flat terrain. There are invisible walls and arbitrary walkmesh blockers everywhere — half the challenge of the game is trying to figure out how to traverse the terrain to get to your next objective (which is clearly marked on your map). I think I got more joy out of calling it “Marmot Blaster 2K8″ than from actually playing it.

I’m once again reminded of the “Mass Effect Hard Landing” article that I mentioned awhile back. Big Game Hunter definitely exhibits a lot of signs of changed/curtailed plans, as mentioned in that article. The first mission contains a mini-game (rock climbing) which is never used anywhere else, and has a cutscene of an animal (a bear) menacing the player — something that’s never done again in the game. Dialogues with NPCs are much shorter and less frequent towards the end of the game, and the last couple of missions are almost devoid of any spice or polish. The last “boss,” a lion, looks decent, but many of the other, previously-encountered creatures don’t look very good. There are weird statistical anomalies, such as how many animals that I’ve shot are exactly 10 years old, according to the saved statistics. (This includes things like hares, for which a 10-year life span in the wild would surely be several standard deviations from the norm.) This strongly suggests to me that there was default data used to set up creatures that, in some cases, was never overwritten with proper values. I could probably point out a dozen more things, but you get the idea.

The game also gets my personal vote as having the most worthless paid downloadable content that I’ve yet seen. You can pay 350 Microsoft points to receive another rifle, and the ability to hunt another creature (some kind of sheep) in “instant hunt” mode. Now, you can get some very good Live Arcade titles for only 400 points, so the value of this offer is, to say the least, extremely suspect.

Oh well. Another 1000 points are in the bag, so it’s on to the next game.

Gladiators, ARE YOU READY?!?!?!?!

One of the biggest guilty pleasures of my youth, American Gladiators, is being revived for 2008. This past Saturday, me and Sandy went to see a taping of the new show at Sony Pictures Studios in Culver City. The hosts of the new show are Hulk Hogan and Laila Ali — pretty decent choices in my opinion. When we arrived, they were taping the new “Hit and Run” event in one half of the set, opposite from where we were sitting. In this event, the contestants basically have to dash across a flimsy bridge structure while the gladiators try and knock them into a pool of water below using “demolition balls” (basically tethered medicine balls). We only saw one round of this, but the contestants were pretty conservative, going slow and low — nobody got knocked off. Boo.

On our side of the arena, we got to see Powerball, which, for the uninitiated, involves contestants placing balls into containers in the arena, whilst being deterred from doing so by the gladiators. A bonus for placing a ball in the container in the center of the field provides a risk/reward trade-off. The men’s round, I believe, was dead-even in this event — the gladiators were more focused on stopping the contestants rather than really bringing the pain, so to speak. The women’s round, on the other hand, was a lot more fun to watch, because there were a couple of occasions where the contestants got SLAMMED and THROWN DOWN. Pretty crazy. Even though the show is 100% pure cheese, the actual games themselves definitely seem to be taxing — one of the male contestants came up limping a little bit after Powerball, and the female contestants were pretty much out of breath during the post-event interview. I guess getting BODY SLAMMED will do that to you! (To the producers’ credit, the post-event interviews generally did take place almost immediately after the event — there wasn’t much of a delay in setting up for them.)

We could tell, based on the layout of the arena, what some of the other events are going to be. The Wall is returning — and, now that I have actually done some gym rock climbing, I recognize the fact that it’s generally a very simple course, with lots of monster handholds and lots of choices. I think anyone who’s done a bit of rock climbing would do well at this event — but then, the same thing goes for the gladiators, so it will be interesting to see how this event will play out compared to how it did in the original series. There was also some kind of gigantic half-pyramid structure that contestants would need to ascend while being attacked by gladiators. The steps on the pyramid were probably between 20 and 30 inches high — not a trivial thing to get up. Wikipedia informs me that this event is simply called The Pyramid.

Fortunately, our experience didn’t match that of this other blogger — the taping was actually on schedule, according to a crew member, and there wasn’t too much dead time between takes. We received some cans of an energy drink being promoted during the show, but it didn’t taste too hot, and it didn’t make me want to POUND SOME MORE in an XTREME fashion. The show premieres on January 6th, although I have no idea when the segments we watched will be shown. There’s a decent chance that you’ll be able to pick us out in the footage, though — we were sitting in the 2nd row, near the “friends and family” section. (The parents and other family of several gladiators, as well as the “ref”, were sitting near us, which was pretty funny.)

Weekend Series Split

The Arsenal avenged a loss on Saturday to the Bakersfield Jam with a 119-109 win at home. Even though the box score doesn’t reflect it, I thought this game featured a fairly solid defensive effort from the Arsenal. Ivan Johnson had a monster game, with 27 points on 10-of-14 shooting, and some key steals and contested shots on the defensive end. The Arsenal were up by 17 at the end of the 3rd quarter, but Bakersfield made a bit of a run to get within 7 towards the end of regulation — thankfully the Arsenal held on to win.

One thing that I’ve noticed is that I have yet to see any garbage time in the D-League. Perhaps it’s because of greater parity between the starters and bench than the NBA, but you don’t really see any flood of bench players coming into the game, even if there’s a big score differential. I guess it’s possible that there may have been garbage time in this 134-109 drubbing of the Fort Wayne Mad Ants at the hands of the Iowa Energy, but the 4th quarter scoring seems to indicate that they were still playing for keeps.

Former Bakersfield guard Yuta Tabuse was signed by the Arsenal to take the roster spot of Bryson McKenzie, who was waived due to injury. From reading the transactions page, there seems to be a pattern of players in the D-League getting injured and then later re-signed by the team that waived them — not sure if there is an official injured list or not, but it doesn’t seem like it. The diminutive Tabuse played alright in his 13 minutes — his speed and passing make him more of a playmaker guard than anyone currently on the roster, but it remains to be seen how he’ll fit into the team’s scheme.

The King of Peter Jackson’s King Kong: The Official Game of the Movie

Continuing my Gamerscore binge, I rented Peter Jackson’s King Kong: The Official Game of the Movie, another (mouthful of a) title that is somewhat infamous in the 360 world for being a relatively easy 1000 points. I picked it up last night, but didn’t get a chance to play it until today. With the help of the invincibility code (which, conveniently, still allows achievements to be earned), I powered through it in about six hours. Overall, I would say that, especially now, there’s not much to recommend about this game.

Most of the games that I’ve played so far during this binge were released at or close to the 360’s official launch, and you can definitely see the rough edges here and there:

  • In King Kong, there is some shoddy animation in the game (particularly during the introductory boat-rowing sequence), missing lip-synch in some areas, dialogue vocals that were clearly recorded in pick-up sessions (and not by the original actor), missing links in the story, and lots of missing details. Characters in the game pivot about their origin, rather than taking a step or two. They frequently get caught on terrain, too. It’s clear that, from a technical standpoint, much more effort was invested on Kong himself than on the FPS sequences that comprise about 75% of the game — as a result, while Kong still looks decent for a next-gen game (and his animation still looks quite good), the rest of the game has a decidedly last-gen feel to it.
  • I ran into a bug in NHL 2K6‘s player editor where, if you try to exit editing a player, but cancel the exit, you will be unable to save the player until you completely exit the player editor and return. (Any changes you have made will be lost — there’s no way around this.)
  • NBA 2K6‘s player profile unlocks seem to share data with College Hoops 2K6 (which I had played long ago). After I started playing, I began getting tons of unlock messages as the game progressed, because it was using the same profile stats as College Hoops 2K6. Since the code checks for see if something should be unlocked whenever the appropriate game event occurs (i.e. a score, a dunk, a 3-pointer, a block, an assist, etc.), whenever I did just about anything in the first few minutes of the game, I would see an unlock message. This shouldn’t happen.
  • Madden NFL 06‘s commentary is pretty dreadful (and the color commentary is basically non-existent), and the in-game presentation itself is pretty lacking — I don’t recall seeing many post-play cutscenes or any other “flair” except some bizarre camera shots of an unoccupied part of the stadium. Also, it’s very clear that this edition of the game still uses a traditional single-threaded approach — when simulating seasons, the interface is generally unresponsive, and the background UI animation is very herky-jerky.

While it’s understandable that launch titles are going to have fit-and-finish issues, it is definitely a bit jarring playing them two years into the 360’s lifespan. Fortunately, for the most part I haven’t had to play these older games for very long…

Solving the Flash

The Arsenal finally managed to defeat the Utah Flash tonight, 99-91. While the Arsenal couldn’t stop James Lang (who scored 23 points, mostly down low), he drew his fourth and fifth fouls early in the fourth quarter, and sat down with about 8 minutes to go. (He later returned and fouled out.) The Arsenal stayed out of foul trouble (unlike Monday), shot a decent 48% from the field, and did not yield any big runs to the Flash.

Unfortunately, during the game, Bryson McKenzie was injured on a drive to the basket. Since the game recap is not available as of this writing, I can but speculate that it was either a hyperextended knee or a ligament tear in the knee. There was no contact on the play if I recall correctly — he was leading a break off of a turnover, and, after a few steps, all of a sudden fell backwards clutching his knee as his momentum kept carrying him forward. He was taken off of the court on a stretcher, which is never a good sign.

Right now the Arsenal really lack a defensive presence in the post — Marcin Gortat is back in the Association, and McKenzie was the tallest player left on the roster at 6’10”. I don’t think it will hurt them much in their upcoming game against the Bakersfield Jam, but I think it’s going to be an issue for the rest of the season unless they can pick up another big man.