Reset XBox 360 screen resolution

I normally have my Xbox 360 plugged via a VGA cable into a PC monitor with a large resolution but over the weekend I had to take my console to my folks and when I plugged it into a smaller monitor the screen resolution was not supported and nothing could be displayed on the screen.

Thankfully, there’s a solution!

First remove any discs from the console and then shut it down. Start the console using the guide button on a controller (the big silver button) and hold the right-trigger and Y-button. Keep holding until the Xbox logo displayed on the monitor (this can take a couple of seconds). The screen resolution will be reset to 640×480.

From Xbox Support

I did this, this weekend and it worked like a charm. I have the older white console so I cannot confirm if it works on the newer models.

Some Microsoft support sites I found instructed holding both triggers but this didn’t work, it must just be right-trigger.

Functional Programming with LINQ

LINQ is a functional programming library for C# and allows developers to use higher-order functions.

MAP (takes a function and a list; and applies that function to every element in the list, producing a new list)
List<T>.Select(n => n);

FILTER (takes a predicate (a predicate is a function that tells whether something is true or not) and a list; and returns a new list of elements that satisfy the predicate)
List<T>.Where(n => n == true);

REDUCE or FOLD (takes a starting value (called an accumulator), a binary function (a function that takes 2 variables) and a list. The binary function is called with the accumulator and first element in the list and returns a new accumulator. Then the binary function is called again with the new accumulator and the next element in the list and so on until returning the final accumulator)
List<T>.Aggregate(0, (a, n) => a + n);

These descriptions are not my own but borrowed from Chapter 6 of Learn You a Haskell for Great Good

L4D Card Game uploaded

It’s been almost 2 years to the day since I last posted on my blog but I’m back and with an exciting game development project I’ve been working on for the last couple of months.  The challenge Game.Dev Competition 22 “Genre Benders” was to recreate a game for another genre (find out more on the forum post) and I recreated Valve Software’s Left 4 Dead as a card game.
My entry won 1st place amongst some other amazing entries and so I decided to use it in the next Game.Dev completion, Competition 23 “Get the Word Out!”.  This competition challenges entrants to publicize a game they’ve previously created in the community and get as much feedback, reviews and commentary on their game as possible; ultimately challenges the community members to “step outside the forum” and get recognised as indie game developers.
For my entry, I started by emailing Gabe Newell, Managing Director of Valve Software, to see if he was interested in the game and for permission to use the intellectual property of the game.  So far I haven’t received a response so I’m going to mail some of the other people involved in Left 4 Dead and see if they can pick up on it.
I’ve also now added a new page to my website with all the details of the game including: links, screenshots and reviews.  I want to buy a webcam at the end of the month and record a play through of the game to share.
With a central point for the game (rather than using the Game.Dev forum) I’m going to start posting about my game on the boardgame design website and on the steam forums.  To follow the progress of my entry for Comp 23 read the first post on the Game.Dev forum or go to the L4D Card Game project page.

SA Developer .NET Gauteng Chapter events in October

This month we’re very fortunate to have organized 3 presentations for the community as well as 2 dinners with leads from the Western Cape and KwaZulu-Natal chapters.

Brady Kelly, a SA Developer .NET moderator, will be replacing this month’s TechReel session with a talk on using Windows Powershell; Simon Stewart and Tristan Bergh will be introducing db4o, a database engine for mobile and real-time control systems and lastly Angus Logan, Senior Product Manager for Windows Live, will be given us the inside track on what his team is doing.

Then we have 2 dinners organized. One with Angela Gerber from the Western Cape chapter and the other with Willie Roberts from KwaZulu-Natal. Unfortunately their schedules don’t match so we can’t have one big party with the both of them, but this is an opportunity to find out what other people are doing in development circles across the country.

Overall a packed month, not forgetting there’s TechEd 2007 as well. All the times and directions are in this month’s newsletter as well as the Events forum on the SA Developer .NET website.

Hope to see you there!

Ramp Metering Implementation – 26th September 2007

Just a quick post; I picked up the pamphlet they were handing out at the New Road on ramp explaining the new ramp metering they’ve implemented to try and curb congestion on the highway. The Go-Live date is set for the 26th September 2007 and the roads affected are:

  • Samrand, only south bound
  • Rooihuiskraal, only south bound
  • New Road, north and south bound
  • A quick search of The South African National Roads Agency Limited (SANRAL) reveals a press release, dated 6 August 2007, with a contact number for more information.

    Courtesy of The South African National Roads Agency Limited (SANRAL) “Yes, we know you’re limited”

    Guitar Hero 2 competition

    If it’s not to late to change your weekend plans, how about joining me at a Guitar Hero 2 competition in Boksburg, Gauteng?

    I’m organising a friendly competition of Guitar Hero 2 on the Xbox 360 at this month’s Mayhem Open LAN on the 15th September 2007 at the Casa Dos Poveros Hall in Boksburg.  This friendly competition will, hopefully, be the start of something more regular and is a bit of a build up to the Guitar Hero 2 Encore competition at rAge 2007.  Unfortunately there are no prizes this time around but come and check out the competition and find out if you’ve got what it takes to rock air guitar.

    When: 15th September 2007 10:00 – 15:00
    Where: Casa Dos Poveros Hall, Dayan Street, Dayan Glen, Boksburg (directions)
    Cost: R50 entrance to the Mayhem Open LAN
    Bring: Blonde wig, leather or latex stage costume, face paint & groupies :)
    Really Bring: Money for refreshments
    RSVP: On The Xbox Lounge website (http://www.thexboxlounge.co.za/Site/Lans/ViewLan.aspx?tid=176) or on the day

    I’ve setup the stand so that the players will be facing the audience (i.e. adoring fans and other players) and both will have a TV to watch the action.  The finalists will also be judged on their stage presence as well as their score so it should make for an entertaining event.  Of course there’ll be loads of pictures taken and I’m sure Craig will record the proceedings and put it on Zoopy or similar.
    See you there.  Rock on!

    Dev.Mag Issue 16 available

    The next issue of the local, online game development magazine is available for download from the Dev.Mag website.

    Issue 16 really highlights the continuing effort that the contributors are putting into this community project. In particular there’s: Part 2 & 3 of A Beginner’s Guide; Part 3 of Game Coding with Trigonometry; Part 7 of the Roach Toaster 2 post mortem and Part 6 of The History of I-Imagine. There’s also the continuing Blender tutorials, opinion columns and local and international news.

    So grab yourself a copy and enjoy!

    The long awaited update to Adventure Quest 2

    I’m taking the opportunity, now that my work schedule is returning to normal, to get back into my favourite hobby; game development.  I have 2 games I’m working on: Adventure Quest 2 – The Return of Lord Deathskull, a Diablo-style action adventure and an RTS simply titled Medieval RTS.

    Over this past week I’ve been working on Adventure Quest 2 (direct download) and I’ve ripped out all the monsters, items and animations and implemented a random dungeon generator.  This generator creates a 10×10 tilearea of passages and rooms based on 32 predefined tiles which you can check by pressing the “m” key while in the game.  You can also press the “z” key to zoom out and see the whole level that was generated.

    Photo Sharing and Video Hosting at Photobucket

    The problem I’m sitting with now is that when the game starts I create nearly 6000 object instances which slows the game down even on fast machines.  I’m hoping to solve this by only creating the objects in the players view but I have to think of a clever way to manage this.

    I’m also working on the network-ability for the game before I re-add the monsters and animations.  The hardest part in networking is not the implementation but the timing so the same event happens on all the machines simultaneously so I want to make sure the networking messages are solid before processing with the action part of the game.  I will however add some items for players to collect while I’m working on the combat to give an incentive to explore the dungeon and test the system.

    If you’re interested in more detailed progress on Adventure Quest 2, I’ve started a thread on the Game.Dev forum which you can participate in.