Archive for the ‘Projects’ Category

Oversight

February 3rd, 2010

Oversight is a stand-alone mod made for World of Warcraft. It is a unit frames Addon specially designed for arena and battleground play to present data in a way that is easier to assimilate by the average or beginner player. It may also find use by advanced players when making videos to better illustrate their strategies and swaps as targeting is made very visible to the user.

Bug reports are more than welcome.  All serious feedback may be posted on the Oversight forums located here.

Oversight

Latest Changes in 1.02 (not yet released)

  • Added default debuffs for silences from gag order, improved kick and avenger’s shield

Latest Changes in 1.01

  • Pet health bars and bars in general made more responsive.
  • Removed now-redundant Russian translation for buff list.

Latest Changes in 1.0

  • Coloured health bars to turn red with health status
  • Made default buff list local agnostic
  • Bugfix for DRs not always disappearing when expired
  • Bugfix for not all frames updating if the same unit is in multiple frames
  • Coloured player names with their class colours

Latest Changes in 0.91

  • Added option to turn off cast warning sound
  • Bugfix for said warning sound not always going off
  • Bugfix on PvP Trinket indicator to make it locale agnostic
  • Added Russian translation for default buff list. Translation courtesy of Кагасиро – Вечная Песня E

Features

  • Movable, scalable unit frames arranged in a pleasing circular formation.
  • Original Blizzard unit frame artwork, because circles are cool.
  • Enemy frames are party targets during normal use, but are arena opponents when inside an arena.
  • Spotlight targeting system to visibly show who’s targeting whom, with a number of spotlight options.
  • Cast bar for each tracked unit.
  • Aura configuration so that specific buffs/debuffs may be displayed for ally or enemy players. Aura’s may be shown in a ranked list of seven, or may replace the character’s portrait.
  • Configurable Unit Frame highlighting for poison, curse, magic and disease debuffs on friendly players, as well as dispellable buffs on enemy players.
  • Race portraits for all units except pets.
  • Raid target icons display.
  • Spec detection and display.
  • Locking of party member frames so that the same party members are displayed in the same order and same raid target icons when entering battlegrounds or arenas.
  • Sound alert for when the focus target is casting a spell, or when the target is casting a spell if there is no focus target.
  • Diminishing returns tracker that tracks up to six diminishing return types.
  • PvP Trinket tracker.
  • Profile manager to copy configurations from other characters.
  • Extremely low resource usage.
  • Does not depend on the combat log.

Known Issues

  • Diminishing returns will count down on a selected target if the target was previously selected and had a non-expired debuff of that DR type. This is because Oversight has no way of knowing when exactly the debuff expired unless somebody had it targeted at the time.

Posted in Projects | Comments (2)

Ninja Assassin

November 5th, 2009
Title Screen

Title Screen

This is an iPhone game based on the soon-to-be-released movie of the same name. It’s basically a horizontal scrolling action fighting game that uses swipes and gestures to control combat moves.

Menu Screen

Menu Screen

Interestingly, for this project, I worked on everything but the main game itself. The accelerometer physics-based main menu to the Facebook highscore upload functionality. I even coded a bonus feature that is multiplayer over bluetooth and wifi (the main game, interestingly, is single player only) that involves throwing virtual things making use of the in game accelerometer.

The movie is due to be released at the end of November, and the game is already out at the iTunes Store.

Posted in Projects | Comments (0)

J2ME Virtual Machine

November 5th, 2009

This is a mobile J2ME project. From a central Midlet, users can download various games in the form of scripts and resources from a central server. This midlet then interprets the scripts on the fly to execute the game content.

The project makes use of the JSR 75 File Connection API as well as tools such as LWUIT and FScriptME. I basically took all these components, and welded them together into a functional scripting system through which you can create simple animated games. This was then handed off to the UI artist/programmer who I suppose will make it pretty and add polish.

They are probably still doing that now, so no names, no pictures, all in the name of the mighty NDA.

Posted in Projects | Comments (0)

Crane Simulator

November 5th, 2009

This program simulates dock-side cranes, and is used as a training aid for aspiring crane operators. The hardware resembles the interior of the crane cabin, with 3D graphics and physics simulating the actual dockside environment. There is also a trainer station, from which trainers can both modify environmental effects as well as observe the progress of the trainee. Multiple trainees can work within the same simulation.

There was a small team of developers working on this, and my job scope was to engineer the input system, interfacing it with the hardware, as well as providing a “virtual console” which can be used to test the product on a PC. I also provided consultation for the programmer who was in charge of implementing the physics using the PhysX engine.

The graphics implementation was farmed out to yet another company, which was pretty screwball. In the end, it was a huge project that employed a few individual disparate teams. It would probably have been much simpler to have all the development done under one roof.

I’m not sure if the company has gone live with this, so no pictures or names for now.


Posted in Projects | Comments (0)

Virtual Store

November 5th, 2009

This is a shopping store simulation where customers can browse store products and purchase them through a realistic 3D application. The virtual environment is an exact replica of the brick-and-mortar store itself. The purchasable products are also exact look-a-likes of the real goods. Customers can manipulate these products, rotating and zooming in on them in full 3D.

This was all done using… wait for it… the Unreal Engine 3! Say overkill? It’s amazing what can be done when you have budget. We were sent to Shanghai for a 3 day training course and consultation. After that, we rolled up our sleeves and got to work. Our artist was going balls-to-the wall with all the fancy shader effects. I’m pretty sure he was in a constant state of artgasm.

Meanwhile, I got to touch on the finer points of Unrealscript and the underlying engine. What we came up with in the end was pretty darn good looking. But from what I know, it isn’t really launched (yet?). So no pictures. *shakes fist at NDA*


Posted in Projects | Comments (0)

Project Alpha

November 5th, 2009

Project Alpha is the working title of a turn-based strategy game built for the iPhone for Personae Studios. It was created using the iPhone SDK and Lua back when the iPhone SDK was still in beta.

My main responsibility was as the Project Lead, managing and mentoring 3 interns to deliver the prototype within 1 month. In addition, I also coded the more complex features of the game, including a simple demonstration of a custom touch gesture.

While we did manage to deliver some interesting, if ugly (we had no artists) gameplay, the main thing seemed to be the framework which Personae used (I’m assuming) to develop a bunch of simpler titles to catch the launch of the app store.


Posted in Projects | Comments (0)

Gather Your Gurbles

November 5th, 2009

gurblestitleGather Your Gurbles is a casual physics-based game. The objective is to slingshot your character, Gale, to knock the enemy Gurbles off the play area. It features a wildly casual art style, semi-realistic physics, and a utility through which you can design your own Gurbles for in-game play.

The main menu

The main menu

The project was done for a startup casual game company called Brick Age. I was the sole programmer for this prototype, but did not have to handle project management or design. It took a total of 3 months to complete.

The game itself features three game modes. The first is the adventure mode. This is where the player plays through all the levels in succession, and is peppered by humorous comments by the enemy characters along the way. Completing each of these levels unlocks it in the second mode… the Challenge mode.

Gameplay

Gameplay

In the Challenge Mode, players need to beat certain objectives in each of the levels. Doing so awards the player with a plain Gurble, which he can decorate with his own textures and stitching patterns. These can then be used for the third mode of play – Multiplayer. For the prototype, however, multiplayer play was not incorporated.

The whole thing was done with Playfirst’s Playground engine which I have grown to hate. The engine is multi-layered, usually leaving an easy way to do things and hard way to do things. Always a sucker for the easy way, I often ended up doing both. So yes, you use their sprite class to attempt to do positioning and deformations, find out that it can’t quite cut it, then go back to calculating your own good old-fashioned matrices. And then you take that and try to integrate that with their lua-based framework which encompasses the main game loop. Painful!

Posted in Projects | Comments (0)

Gillette Champions Street Soccer

November 5th, 2009
The intro screen

The intro screen

This was a quick flash-based pseudo-3D goal kicking game meant as an advertising gimmick for Gillette. Basically, it is penalty kicks with  a bunch of obstacles for the ball to bounce off.

It was integrated as a mini-suite of games that included soccer, golf, tennis and cricket. It was fairly entertaining implementing 3D pseudo-physics in a 2D environment, aided by some research in art that I happened to be doing at the time. In the book “Drawing on the Right Side of the Brain” by Betty Edwards, she stresses that you draw what the eye can see, rather than the brains pre-conceived notions of what should be there.

Gameplay

Gameplay

Taking that in mind, my “physics” comprised of making the ball smaller or bigger, altering the direction and speed based purely on what you would see if the ball were bouncing in 3D. This is opposed to the “math” approach where you take proper 3D physics and transform it to a 2D environment. It turned out to be more efficient too. Yay for innovation!

You can play this game at Gillete’s website.

Posted in Projects | Comments (0)

iPlayMahjong

November 5th, 2009

This was the first freelance project I had for a group of individuals rather than an established company. These people were business opportunists as opposed to game industry veterans, making it all the more harder. All in all, it was an interesting is somewhat painful learning experience.

What we did manage to develop was an online Hong Kong style Mahjong game, with AI opponents as well as multiplayer action. It was meant to be an offshore-hosted online gambling deal. After going through the design and showing them the storyboards, it was decided that it would be done in 2D. Thus I employed Haaf’s Game Engine and integrated that with CEGUI.

Unfortunately, the clients weren’t too happy with the 2D look and feel when they saw it, and we eventually ended up tweaking it by making it pseudo 3D with fake perspective transforms. This too, caused artifacts, and it was evident that they needed a 3D implementation. Something that they weren’t prepared to budget for.

In the end, I let this project go, feeling so bad that I refunded them half of their initial paid-up fee. What I picked up from this is that you can never do too much storyboarding, especially with clients who are inexperienced with the gaming industry.

Posted in Projects | Comments (0)

Constructicons

November 5th, 2009
Title Screen

Title Screen

Named after one of my favourite Transformer sets when I was a kid, Constructicons is a simple physics game where you link together boosters and balls to form some sort of craft and attempt to keep afloat.

All these parts drop from the top of the screen. The balls stick to your base object, each other, boosters, and pretty much everything. They are the glue that holds everything together. Boosters provide propulsion which helps you navigate your ship. There are two different colored ones, each type of which can be fired off by either mouse button. All these of course, have mass, which is weighing you down. Once you drop off the screen, your game is over.

Some Gameplay

Some Gameplay

This was done as part of a coding competition. Code-a-thon is what they called it. Sponsored by EDB, and held just before AGDS. 30 hours was given for each group to develop a game from scratch based around the theme “Growth”. My team only consisted of my lonely self. But I still managed to complete it, and clinch the “Best Game Design” and “Best Technical Design” awards. The other one, “Best Art” went to a Katamari-like game made by the 7cans team.

There are still a couple of bugs. The occassional crash, caused by Audiere (or rather my hasty abuse of it), and sometimes, if the forces are just right, the whole structure spins horribly out of control. I left those in, just to show what can be done in 30 hours.

More Gameplay

More Gameplay

You can download the whole game in zip format from here. Feel free to cannibalize any of the assets, though why anybody would want to pinch my ugly programmer art is beyond me.

Posted in Projects | Comments (0)