Archive for the 'Games' Category

Pick-o-Mania puzzle game in alpha

December 30, 2010

Hope you all had a great Christmas, and I’m looking foward to next year. I’ve already managed to roll out my first game this year, just before the year is over. It’s Pick-o-Mania, a straightforward puzzle game on matching colored pieces. It’s still in an early alpha stage for now…there’s no scoring system and menus aren’t in place yet. But most of the interaction is there, and I want to have it tested to see if it works properly (no crashes) with other people. Aside from what I just mentioned, some other game rules would be added, and graphics will surely be different in the final product.

This game was made on my graphics engine, which I will continue to develop as I learn more from this experience. Some of the features that the game uses from the engine are:
– Incremental loading (3D models are loaded as smaller chunks to keep a consistent framerate in loading screens)
– Entity handling and smooth movements of 3D models
– Per-instance culling (although it’s barely used in a game like this)
– Support multiple shader effects
– Color picking system (entities have unique ‘invisible’ color IDs that get detected when the mouse clicks on them)

Pick-o-Mania puzzle game

Wanna try it out? Download it here:

Simply click on the pieces that match two or more of the same color to remove them from the board. In the play screen, press “enter” to go back to the starting screen, and load the game again with a different set of pieces.

It’s for Windows only, and uses DirectX/Direct3D for graphics. So you may want need to download the Visual C++ 2008 runtime library, but I didn’t include it in order to save download time for those that already have it.


Ah, a new start

December 18, 2010

I am reviving this blog for game development purposes. From now on, The 32 Bit Shell will be a game development blog until I move to another blog or change its name. And for starters I don’t like the name much anymore, but it will stay until I am set on something better…

What am I starting out with for now? As you may notice from posts a few years ago, I was exploring “rolling marble” games. I consider them a great blend of platforming action and puzzles. Well for a couple months now I have been working on a game framework to make one just like that.

Along the way, however, I may release other, more basic, games to tack on more progress and experience with making games. Developers too often get burned out by working on the same projects and sticking with the same goals. Making other simple games would be a good way to show progress of my coding and design process with game engines. The next post will be going into more detail in the actual start and progress so far with my work.

First video of Roll ‘Em Out

December 20, 2007

Having been busy with finals and other projects, I haven’t put much time into working on Roll ‘Em Out, but to keep things going, here’s just a short gameplay video of a still early debug build of the game. The score display is just a mockup- I won’t actually be using this in the final game.

Kart racing approaches the sound barrier with M&M’s!

December 15, 2007

Third party developers and the Wii have an iffy relationship right now. Some of them really mean well, and others want to get away with the bare minimum (i.e. lazy bastards). With M&M’s Kart Racing you get the latter kind AND hilarious results from it. But you need to turn up your speakers to understand what I mean. Props to you, Destination Software. Your game is now ranked #1 in the Google search results for APPROACHING SOUND BARRIER (linky)

This game is meant for little tykes, and it may provide a small snack before the main course that is Mario Kart for the Wii, but its in-game announcer voice is immortal. Who knew breaking the sound barrier would require little effort in this game? I had a hard time doing this in the original X-treme G. A fellow member in a message board stated that the “sound barrier” quip might have been taken from the gyrocopter pilots in Warcraft III. Interesting assumption.

Wait till it hits the bargin bin, it will be the most sought after so-bad-it’s-funny game since Big Rigs. Maybe this is why the developers are so uppity about the posted Youtube videos of their game (most were taken down).

Balls to the Wall: A review of four “-ball” games, part 2

December 15, 2007

It’s been a while since I posted, but it’s still time to wrap up my last two-part post where I briefly reviewed two of four “rolling ball” games. Well, now for the rest. This time the games are Switchball and Super Gerball.



Switchball, the 800-pound gorilla- er, steel ball of the crowd. This game has the best production values, professional marketing and distribution put behind it, and backing by a major PC games publisher, Sierra. Just from visiting the game’s website, you can tell a ton of work has gone just into making it pleasing to look at. It sounds unfair to compare it to the other games on this list, but it’s all in a couple days’ work of research and testing out the competition.

Unlike the other ball games, and especially against Hamsterball Gold, Switchball is played at a more methodical pace and its central focus is solving puzzles. In the early stages you never feel like you’re coming close to falling off the ledge. It’s all about finding out what to do next, so logic prevails over steady nerves and reflexes. This would be a great game for anyone that finds other similar games frustrating because of frequent deaths. Adding to the puzzle-solving element are special contraptions that turn your ball into different materials. Your ball becomes marble, steel, or light-weight, depending on the situation at hand. A steel ball, due to its greater momentum, rolls down faster and moves objects around effortlessly.

As said before, this game pulls out all the stops in its presentation. This is the only game where you would actually need a good graphics card in order to experience all the goodness that its graphics have to offer. Features include high-quality textures and the ever-ubiquitous light bloom. Fortunately for users of older computers, you can turn these enhancements off and improve speed and performance. The menus are professionally done, as well as the sound effects. The music is never too invasive or annoying, but it does sound generic at times. Maybe not much of a big deal- you can turn down the game’s music if you so desire. Finally, the aesthetic is consistent and pleasing- the steampunk look works well all around and nothing feels out of place.

The physics are also worth mentioning. After proper adjustments, you never feel out of control of your ball. Your interactions with the environment are very convincing, and it’s all due to the highly acclaimed PhysX engine that the game is built upon. Switchball has a slightly weightier price at $19.95, but considering its production background, it’s a very good offer.

Super Gerball

Super Gerball

Now we’ve come to the last game that I checked out, Super Gerball. We’re back to budget quality, but how does this game hold up? Well, this game is high in spirit and hopes, meaning that its creator really tried to push to make this a Super Monkey Ball clone to the best of his abilities. Neverball and Switchball, beyond the gameplay, never tried to be exactly like SMB. But Super Gerball tries to get everything down pat, including the announcer voice-overs, cute critters and checkerboard patterned floors. You collect crystals, the equal to Aiai’s bananas, and many obstacles abound the trickier levels. The levels are grouped into themes just like SMB, and each set of themes are divided among three difficulty levels.

So is it a sure winner? I’m still hesitant to say yes. It has the fundamentals right, and even has the best control scheme imaginable with a mouse. You can click-drag to tilt the floor and releasing the mouse button “snaps” it to neutral position, just like a joystick. However, everything else about the game is not up to par. Most of the levels aren’t very creatively designed, or at least the easy/medium ones (you have to pay to play the hard difficulty) and the overall feel and look is sorta cheap. The midi-sounding music is not the best out of the four games I played, and the graphics, well, are passable. It would benefit greatly just from better textures. Neverball was done with programmer graphics as well, but at least with Neverball its creator understood his creative limits and played it safe by making the setting more abstract. In Super Gerball, you have to roll your gerbil in different house environments like the backyard, attic, etc. You need to put up with more realism to make you feel like you’re in the game (though I have to add, the motion blur on the ball is a nice touch).

The visual flaws in Super Gerball just stand out more simply because it strives the most to emulate a commercial-quality game. The similarities are many and they’re not subtle. But all is not lost with the game. It does have the added benefit of having a level editor, so you can choose to create wackier, more exciting levels if you choose to. They will just not look as good as ones in Super Monkey Ball, that’s all. Also at $19.95, the price is up there with Switchball, so I strongly recommend trying before you buy.

That is all for the review of Monkey Ball clones, and if you have found any more freeware/shareware/demoware games in this style, let me know.

Portabalooza, my new site

December 6, 2007


For the past week, I’ve been concentrating on getting a new site up and running, and making some further tweaks to it. It’s called Portabalooza, which will be a place for updates and news on portable video games. Soon I will be thinking about doing game reviews, as well. Keeping up to date with the news is tough, but it’s still nice to give my views about certain stories and games. So whether you’re a DS fan, PSP fan, or love any sort of portable games, keep posted, because as the site grows it will be updated on a frequent basis.

Balls to the wall: a review of four “-ball” games

December 1, 2007

While I was busy working on Roll ‘Em Out, it seemed fitting to do some research on any possible clones that might already exist, both for inspiration and to evaluate the competition. I have found four PC games that closely fit this “rolling ball” genre, and here are my reactions after giving each a try. They are Neverball, Hamster Ball Gold, Switchball, and Super Gerball. And this is also why I chose the title that I did for my game, because anything with “ball” in it already sounds overdone and unoriginal. Today I will be talking about Neverball and Hamsterball Gold.



The first game I tried, Neverball, was made by a grad student that actually attended the very same university that I am attending, and around the same concentration of interest (electronic visualization). How awesome is that! Never got to meet him, though, so I just know about him from his brief bio page and an interview he did (You can find more about him on his website,

Now for the game itself. Unlike the other three games, Neverball is completely open-source, allowing for tweakable levels and custom music, and it’s all freeware. Big points already right there! Control is what you’d expect to be for a keyboard and mouse. A lot of people would complain about motion sickness because the levels meander quite often as you move the ball. You get that in the Monkey Ball games too, but at least the movement feels quick and responsive. Neverball’s controls feel floaty and a bit too loose, and it definitely needs getting used to.

Aside from this issue, the levels provide a good challenge and the core game is divided into three levels of difficulty. Due to its open source nature, Neverball has gotten a loyal following and the dev community has made marginal improvements to the game, including new levels and features.

But the presentation is a bit lacking. While clean and simple, this doesn’t have the polish of a full-blown commercial game. Not to say that it’s ugly, but it follows the “if it’s not broken, don’t fix it” mantra- sparse text menus, voices, and simple visuals- it’s all thrown together in a no-nonsense manner that you would expect from an indie game developer. Neverball still gets props from me, as it gives a reasonable learning curve, solid gameplay, and extensive customization from a developer’s point of view.

Hamsterball Gold

Hamster Ball Gold

Some games aren’t what they seem until you play it for yourself, and that’s what I got with Hamsterball Gold. Instead of tilting the level around the ball, you just guide the ball directly with the mouse, as in Marble Madness. The style of play follows that game as well, since all the levels emphasize speed over dexterity, in a mad race to get through an obstacle course in the shortest time possible.

This is a more polished, commercialized shareware game and it shows. The levels are very colorful and have some sort of theme to them, at least presented in a more illustrative manner than Neverball. And unlike Neverball, the music is mostly upbeat as well. The shareware value is acceptable- you can progress through the game until you reach a certain level, where the game freezes in the middle and asks you to buy the game. But the levels you do get to play are still pretty good, and fun to beat your own personal records.

That’s it for now. I’ll continue the reviews in the future, when I’ll be scoping out Switchball and Super Gerball.

A Rubik’s Cube that’s comfortable in your pocket

November 29, 2007

Mix The Cube! screen

If you ever threw an unsovled Rubik’s cube at a wall out of frustration- well, you probably won’t want to try this because a broken $10 puzzle is still better than a broken $150 game system. Created by Sinasquax, Mix The Cube! takes that square-spinning puzzle to a whole ‘nother level with a feature set that’s pretty extensive for a first iteration release. I never did play with the real thing that much, but this one might actually grow on me because of what it offers. Included is a set of tutorials which ease you into the game and into the challenges ahead. You start from a 2x2x2 cube, with a few shuffles and moves, working your way up, or you can solve any cube you want in Free Game mode.

Also amazing for a homebrew game is that it uses the PSP’s own built-in save system to keep and load files. This alone adds a professional feel to the game. The options are also abundant; a lot of graphical tweaks and directory options for game files are available. In-game features include screenshots, which is nifty though maybe not crucial for this type of game. I would really welcome it in action games, though.

A common complaint is that the game freezes if put in the wrong directory- it needs to be put in a directory named by your firmware version. So if you are using firmware version 3.52, put the game and its contents in PSP/GAME352. With all that said, Mix The Cube! is a good take on an already existing concept, and programming-wise, the creator of the game seems to know what he’s doing. So I look forward to a likely improvement in the future.

Hurry up dude, boss is coming in…

November 27, 2007

Thank you, marketing department for Westwood College, for providing us with hilarious source material to work with. Because without it, people wouldn’t be making gems like this one (This is probably NSFW…you have been warned!)

Can you believe they get jobs doing this?

The .obj file format, demystified

November 27, 2007

If you have ever thought of doing any 3D games programming, your first thought might be how the graphics are done. From the highly polished Final Fantasy games, to the abstract look of Geometry Wars, the answer varies. But more often than not, you would need to use visual assets that were made with other programs. For 3D modeling programs the formats widely vary, but out of all these, the .obj (or object) file format is the most generally accepted. Think of it like the PDF for 3D modelers. Most popular packages will support this format, so it’s easy to pass along without worring too much about what software others are using. The following text is an introduction for people that are not yet familiar with this format.

The .obj file format is one of the easiest to work with in programming 3D games, since .obj files are all text and the data is organized in a very straightforward manner. A typical .obj file would contain the following:

  • Vertex locations in x, y, and z coordinates
  • Texture mapping in u and v coordinates (optional)
  • Orientation of normals in x, y, and z coordinates (optional)
  • Face represented by a set of one or more indices

An .obj file can have either texture or normal data, but it must always carry vertex data. They are represented as an array of values, each line being a new entry in the array. This line starts with “v” followed by the coordinates. Optionally, you have lines for the vertex texture data (starts with “vt”) and vertex normals (starts with “vn”). Near the end of the file, the face data is represented, as a group of integers. Each line starts with “f”, and each number corresponds to the item on the data list in the order that it’s displayed. A line containing the numbers “1 4 3” correspond to the 1st, 4th and 3rd entries of that data group. There’s something important to note here: There is no index numbered “0”, so keep this in mind when parsing .obj files.

Each line contains indices for exactly one face, whether a triangle, quad, or other convex polygon. Furthermore, the indices can be grouped as single numbers, pairs, or triplets. The grouping depends on whether any texture or normal data is given. The following groups are possible:

"n n . . . n" - vertex location only
"n/n n/n . . . n/n" - location plus texture, or vertex plus normals
"n/n/n n/n/n . . . n/n/n" - location, texture, and normals

It should be clear that in a set of pairs or triplets, the location indices are listed first. Following that are the texture mapping coordinates and then the normal coordinates.

Finally, there might be some relevant information about grouping polygons into sets (lines starting with “g”) and usage of materials specified by the program that made the file (lines starting with “usemtl”). These may be used for programming model renderers, but they are not really crucial for displaying the geometry, so we won’t talk much about them here.

Well, that’s it for understanding the structure of .obj files. In a future post, I will show you how to apply this information to create your own .obj file parser.