Archives by Day

May 2018

Orcs & Elves

Platform(s): Nintendo DS
Genre: Role-Playing
Publisher: EA
Developer: Fountainhead Entertainment

About Rainier

PC gamer, WorthPlaying EIC, globe-trotting couch potato, patriot, '80s headbanger, movie watcher, music lover, foodie and man in black -- squirrel!


'Orcs & Elves' (NDS) Developer Diary #5

by Rainier on Nov. 6, 2007 @ 1:30 a.m. PST

Orcs & Elves is a first-person fantasy role playing game, featuring higher graphical fidelity, more levels, items and monsters as players explore a massive Dwarven kingdom riddled with ancient treasures and fierce enemies. The game features hybrid gameplay, combining the best of first-person action and fast-paced tactical RPG gameplay.

Orcs & Elves marks one of the first games developed specifically for the mobile platform that has crossed over to another game-specific device. The Orcs & Elves franchise has been lauded for marrying the storytelling and visuals of the fantasy RPG genre with the accessibility of the mobile format, which has appealed to casual and hardcore gamers alike.

id Software has crafted an entirely new version of Orcs & Elves that utilizes the Nintendo DS unique technology platform. Orcs & Elves will feature higher graphical fidelity, more levels, items and monsters as players explore a massive Dwarven kingdom riddled with ancient treasures and fierce enemies. The game features hybrid gameplay, combining the best of first-person action and fast-paced tactical RPG gameplay.

Dev Diary #5: Technology and Games
Id Software, Inc. John Carmack

Most of my time lately is spent working on Rage, id Software's Id Tech 5 based game that runs on PCs, Macs, 360s, and PS3s. A modern high-end game is a really breathtaking consumer of computation and storage resources for anyone that has been around computers for any length of time. Our target platforms have at least 512 mb of ram, almost 20 gb of media storage, and many tens of gflops of computation, but the development environment involves an even more massive deployment, with a terabyte of raw data being generated before the final culling and compression is done. It is easy to be a little nonchalant about the continuous pace of improvement with computing, but I still take the time to feel a sense of awe about it all.

I started programming on a Commodore VIC-20 with 4k of ram and a tape drive, and I remember writing absurdly long lines of basic code to save the couple bytes that a new line number would consume. As the years went by, and my projects moved from the Apple II to the PC and the early consoles, I continued to gain new insights and perspective on different problems, and I often thought that it would be fun to go back to one of the early small systems. Now that I "knew what I was doing", I could do a lot more within the tight constraints than I was ever able to before. I actually carried a bunch of old systems around with me from house to house for many years before I reached the conclusion that I never was going to spend any real time on them again, and finally tossed them out.

As technology continued to rapidly advance, I saw a lot of good programmers sort of peel off from high end game development, and migrate to other platforms where their existing skill sets were still exactly what was needed. There was a large contingent of hard core assembly language programmers that never wanted to "get soft" with the move to C for more complex game development, and many of them moved from PCs to platforms like the super Nintendo, and eventually into embedded systems or device firmware. There was another contingent that never wanted to move to windows, and so on.

There is an appeal to working with tighter constraints. The more limited the platform, the closer you can feel you are getting to an "optimal" solution. On a modern big system, there are dozens of ways to accomplish any given task, and it just isn't possible to evaluate all the tradeoffs between the implementations of hundreds of different tasks. On a little system, you have to constrain your design to have a much smaller total number of tasks, and the available options are a lot more reduced. Seeing if something is The Right Thing is a lot easier.

I probably had my personal "moment of truth" around the beginning of Doom 3's development, when it became clear that it is no longer possible to deeply understand every single part of a modernapplication. There is just too much. Nevertheless, I found that I could still enjoy my work when confined to a subset of the entire project,and I have thus remained committed to the high end. However, the appealof smaller systems still lingers.

A couple years ago, almost on a whim, I got involved in developing games for mobile phones. The primary instigator was when I ran a bunch of games on a new phone and was left frankly appalled at how poor they were. I was thinking to myself "I wrote better games than this each month before we founded Id". I downloaded the SDK for the phone, and started tinkering around a bit. A proof of concept demo and a plan for a game play style specifically tailored for cell phones followed, and we wound up with DoomRPG, and later Orcs&Elves which turned out to be big hits.

In an ideal world, where I could either stop time or clone myself, I would act as a lead programmer for some smaller projects. In the real world, I can't justify spending much time away from the high-end work, so the low-end work gets done in a few short bursts of engine creation and foundation laying, which is then handed over to the Fountainhead team to actually build a great game. After that, Anna mostly uses me as a threat -- if her programmers tell her that something she really wants in a game can't be done, she threatens to call me up and have me tell them how straightforward the problem really is, which usually fuels them to figure out how to do it on their own.

Mobile development was fun in a resource constrained design sort of way, but the programming didn't have the "tight" feel that early gaming had, due to the huge variability in the platforms. When I was messing around on my own phone, I spent some time doing java bytecode disassembly and timing, but it was fairly pointless in light of the two hundred or so different phones the game would wind up running on.

Enter the Nintendo DS.

Orcs & Elves for the NDS is scheduled to be available Nov. 13, 2007.

More articles about Orcs & Elves
blog comments powered by Disqus