The Nintendo DS version of Geometry Wars: Galaxies shipped yesterday. I picked up mine at GameStop along with Petz Wild Animals: Dolphinz (for Samantha). I don’t know if the dolphins game is any good, but Galaxies is incredible.
Some quick thoughts:
- It uses the same control scheme that my homebrew game, Extreme Onslaught uses, but they’ve made it much more intuitive by using aiming graphics in the top screen.
- The full Geometry Wars: Retro Evolved game (the XBox 360 Live Arcade version) is included. That was a nice surprise and a wonderful fallback if you decide you don’t like the Galaxies game.
- Galaxies is fun, with a lot of variations on the normal Geometry Wars rules.
- The drones (independent ships that fly next to you and have their own weapons and powers) really add to the variety and are a blast, especially for an RType/Gradius fan like myself.
- To unlock new drones, planets and solar systems, you need to collect geoms (enemy wreckage) during normal gameplay. I don’t like that aspect of Everyday Shooter, so I was surprised that I actually enjoy doing so in Galaxies.
- I’m looking forward to trying the multi-player game types.
This question comes up from time to time – How do you get started writing Nintendo DS Homebrew. Here’s a very brief intro:
- DevKitPro or PALib (which is based on DevKitPro).
- The DSDev / GBADev forum is a good place to start learning about the two.
- PALib has a lot of great documentation and has a very active community, but it insulates you from the hardware more than DevKitPro does.
- You’ll want to test with one or more emulators. I like Dualis, but I hear that no$gba is rapidly becoming the compatibility frontrunner.
- First, read about FlashMe.
- For the DS or DS Lite, I think the new DS-X card is the most interesting for Homebrew Developers. It fits in the DS slot, not the GBA slot and you don’t need to buy a micro SD card. DS-X requires that you use FlashMe and not a PassCard. Frankly, I’m glad, because I prefer having a flashed DS – it’s safer, because it reduces the risk that your DS will get bricked by malicious code.
- If you can’t wait for the DS-X to ship, you should consider the SuperCard Lite. It fits in the GBA slot, so you can use FlashMe or a PassCard.
- You can buy both of those cards at http://www.divineo.com or http://www.winsunx.com.
I’ve been working on this game for months, but it hasn’t changed substantially in a week, so I think this is the time to release it and gather feedback.
I’ve been working on a homebrew game for the Nintendo DS. Before starting the game, I spent some time with libnds and PALib (which is built on top of libnds) before deciding which API to write to. I chose PALib because I knew I could get the game working sooner. I also knew that I’d run into limitations with PALib, eventually. I haven’t hit those limits, yet, but I feel they are right around the corner.
Meanwhile, I have some tips for programmers who are just starting out with PALib:
- Using Stephen Stair’s wifi lib is hit or miss with PALib’s wrapper. If your app will rely on wifi communication, know that you will have to call through to the libnds wifi lib directly rather than relying on the PALib wrapper. In my experience, the wrapper locks up when you try to connect if there is no network present. It should fail gracefully.
- Don’t call PA_DeleteSprite. If you need to hide a sprite, move it offscreen or change it’s gfx setting to an image made of transparent pixels. Using PA_DeleteSprite and PA_CreateSprite over and over will eventually corrupt your VRAM.
- If you are setting tiles on a background that is 512×256, use PA_SetLargeMapTile. I originally thought that function was reserved for larger maps, but I was wrong.
If you know one thing about me, I bet it’s that I love WarioWare Twisted for the GBA! That was the first game that really showed me how powerful motion sensing can be in a gaming experience. Today, I heard a rumor that a motion sensing expansion pack will be available for the DS this year!!
It sure would be great if a combo gyro/rumble/memory option pak would be released.