Posts Tagged ‘Xbox 360’

A small XBList update to 3.2.1

Yesterday I updated XBList to 3.2.1. This release is mostly bugfixes - it fixes a problem where Xbox Gamer Tiles wouldn’t load because xbox.com changed the format they stored pics in, and it fixes an issue where gamers who are away but in a game would show up as on the dashboard. The only new feature is that I’ve changed the sound that’s played when your friends come online. It’s now the same as the Xbox 360’s notification sound, and is much less jarring than the old sound. I hope that comes as a welcome change. Grab the new version and let me know what you think.

360Voice.com Challenges Windows Sidebar Gadget

In my post introducing the Bungie Card Windows Sidebar Gadget I mentioned that I was making one more gadget that would be of somewhat more limited interest. Well, I’m finally finished with it: the 360Voice.com Challenges gadget! 360Voice.com is a fun little site that started off by giving your Xbox 360 a blog that would summarize each day’s gameplay. It’s since grown far beyond that, but the feature I like most is the “challenges“. Challenges are a little meta-game where you get some friends together and see who can win the most gamerscore via unlocking achievements over a set period of time.

I do a lot of these challenges, so I wanted to be able to keep track of their progress on my sidebar. The gadget shows you the time left in the challenge, the current standings, and the “live score”, which is the gamerscore each player has earned that day that hasn’t been counted in the official standings yet (gamerscore is sampled by 360Voice.com at midnight PST each day). Once the challenge is over, the winner is given a little crown and the gadget waits for the next challenge.

Fortunately, the 360Voice.com developers had the good sense to provide an XML web services API to their challenge data (and a lot of other stuff too!) so it’s not too hard to make cool things like this gadget that tie into their site. For this project I went ahead and included my favorite JavaScript library, jQuery, and a neat jQuery-based databinding library called chain.js. Using these made development a lot smoother - the old familiar Sidebar bugs and Internet Explorer weirdness was still there, but overall it wasn’t too bad. I’ve specifically designed it to be as light as possible on 360Voice.com’s API too, so hopefully it won’t impact their service.

I think this is the most attractive gadget I’ve made - it’s certainly the most data-rich. I’m really proud of how it came out. I hope everybody enjoys it, and if you haven’t ever done a 360Voice challenge, go start one! Also, if you like it, please rate it at Windows Live Gallery.

P.S.: While I was monkeying around with gadgets, I’ve made some minor changes to my Top Process gadget - the text-fade option is no longer there since it really didn’t add anything, and I may have fixed a couple minor bugs.

Bungie Card Windows Sidebar Gadget

I suppose I’m a glutton for punishment. After writing my last two Windows Sidebar gadgets, I really meant to swear them off entirely. They’re really a pain to develop. But when my favorite video game developer, Bungie (recently of Halo fame) launched their new “Bungie Cards“, I knew I had to support them. Bungie Cards are basically like Xbox Gamer Cards, but for Halo 3. I assume when new Bungie games get released, they’ll feed into the Bungie Card system as well. My new gadget is not terribly complicated - it just displays your Halo 3 Bungie Card, in either the small or wide form.

When it’s floating, you can choose either form of the Bungie Card. It’s a little weirder when it’s docked to the sidebar. First, it scales down to fit the sidebar. Then, to see the wide version, you just click on the gadget and the wide card shows up in a flyout. It’s a nice way to keep track of things without taking up too much space. As a bonus, double-clicking on either form will take you to your Halo 3 stats page.

Like the other gadgets I’ve done, this was much more difficult to develop than it should have been. The hardest part was getting the scaled-down card for when the sidebar is docked. At first I just zoomed out the page, like I had done for my Xbox Live Gamercard gadget, but it looked absolutely awful. With the exception of newer browsers like Firefox 3 and Safari, “resizing” an image by just changing the HTML element’s dimensions has always used nearest-neighbor filtering, resulting in a truly horrid image. My first instinct was to try and use the MS-proprietary “filter” CSS property to apply a Matrix DXImageTransform that would do the scaling, since that transform has an argument that’ll get it to use bilinear filtering, which is at least decent. However, Sidebar seems to think that that is a dangerous “active content” operation and blocks it. I tweaked it around for a while before stumbling on a workaround - the BasicImage filter was not blocked, and if I applied any transform at all, the basic zoom scaling would filter the image in a more pleasant way. So right now I’m using an opacity filter set to make the image completely opaque. It’s silly, but it works, and I guess this is what I should expect at this point. Trust me, you wouldn’t have liked it before - the image on the left is the way it looks now, the image on the right is with the original smoothing method:

I actually have another Xbox-related Sidebar gadget in development which is more complex but of limited interest. I hope everyone enjoys the Bungie Card gadget - feel free to send me feedback directly, and please rate the gadget at Windows Live Gallery.

XBList 3.2.0 works with the new Xbox.com

I read today that Xbox.com had gotten a redesign. I had hoped it wouldn’t impact the friends list page, which XBList uses to get its friend info, but unfortunately it had. The friends list is now split into 16-friend chunks. That meant I had some work ahead of me to make sure XBList could work with the new format. I’m pleased to announce that after only a few hours of work, XBList 3.2.0 has been released, which works just fine with the new site. I’m glad that all the refactoring work I had put into the software in the past allowed me to make a change like that without breaking anything. There is now the possibility of some slight weirdness if a friend changes status in the split-second between XBList loading one page and another, but I don’t think much can be done about that.

Of course, I couldn’t just make the fix and call it a new release. I’ve neglected XBList in the last year as I’ve been deep into work and other projects, but I’ve been accumulating little fixes, and as long as I had the code open today I added a much-asked-for feature: Halo 3 integration. OK, it’s not the best integration, but there are now menu items that link straight to your friends’ Halo 3 Service Record page, and better yet, Halo 3 emblems are now loaded in preference to the old Halo 2 emblems. If your friend has both, they’ll just get the Halo 3 emblem. I was amazed at how many people on my friends list (who hadn’t had Halo 2 emblems) popped up with Halo 3 insignia once I finished the feature. I hope this is enough to tide people over for a while.

I also improved the detection of Xbox.com outages. They seem to be better now, but around December the site was down all the time, and now XBList will be pretty clear about when it’s Xbox.com’s fault that you can’t log in. Hopefully that’ll reduce some confusion.

Please pick up XBList 3.2.0 and let me know what you think! The full changelog may be of some interest also.

MSN Messenger needs to be able to sign in from multiple locations at once

Like most Americans, I’ve been using the AOL Instant Messenger IM network for the last 10 years or so. As I’ve made more friends who prefer other networks, I expanded to multi-platform IM clients that let me sign into all the major IM networks at once. I’ve used Trillian, Adium, Meebo, and Pidgin over the years, and I have active screen names on AIM, MSN, Yahoo, GTalk, and various Jabber services. So when it was announced that the Xbox 360 would include an MSN Messenger client with the Spring update, I was excited. I’m already signed in to MSN all the time, so I thought this would just be another great way to stay connected.

Unfortunately, MSN has a pretty big problem. Whenever you sign in to your MSN account from one location, it signs off, all the other locations. If I’m running Pidgin on my desktop and I open Meebo on my laptop, my desktop gets signed out. And when I start my Xbox, it automatically signs on and knocks everybody else off. The end result is that I’m almost never signed in to MSN, which pretty much defeats the purpose. My buddy list reflects this - my friends are online only when their Xboxes are on. It’s worth pointing out that Yahoo Messenger suffers from this problem too, but it doesn’t bother me as much since I don’t have many Yahoo friends.

MSN getting kicked off

With more and more devices getting IM capability, I can’t see how this restriction can continue. My desktop is always on and signed in to my IM client. My phone will have an always-on IM client. Another one on my Xbox. Another on my laptop. Another at work. And I’m switching between them all the time. And with more and more people using multi-protocol clients, they’re less likely to notice the one account that’s decided to sign itself off. It’s especially frustrating on the Xbox, since it means I can’t just use my laptop to send IMs to my friends while I play and still get notifications on my TV. IM has the potential to be awesome on the Xbox, but not as long as it’s stuck with a one-device-at-a-time protocol.