Archive Page 3

03
Sep
09

Glob FPS Prototype

Glob FPSThis is the spherical billiards prototype after exposure to hazardous radiation. The mutations are:

  • The aim is to prevent balls from falling into the hole.
  • You do this by shooting sticky spheres at them.

Now you’re probably thinking there’s some kind of h-game subtext to shooting sticky globs, but I’ve got a different theme in mind.

It’s very chaotic and not calmed down by the charming bug where clusters of spheres start spinning for no apparent reason. Still haven’t tracked down the source of all this mysterious torque. In any case, it keeps it unpredictable. :-)

Get the windows executable here (5 MB).
Play it on the web.

03
Sep
09

Orbital Billiards Prototype

OrbitalBilliards

This is a little experiment with pool on the surface of a sphere. You make your shots by dragging a rubber band away from the cue ball. It’s a poor man’s pool cue; you might’ve seen the same thing in minigolf video games.

It’s quite satisfying to break and send the balls flying into low orbit, although judging cut angles is distinctly tougher than in normal pool because of the oddities of spherical geometry. I had some difficulties getting Ageia to do gravitation toward a point without screwing up static friction. As a result the balls coast to a stop much too gradually. I haven’t pursued this concept far enough to give it AI for single player.

There’s a windows executable here (5 MB).
Play it on the web.

02
Sep
09

Unity 3D

One of the things I’ve been screwing around with is Unity 3D. Unity is a heavily data-driven game engine with an integrated level editor.

It’s so heavily data-driven that all the game code is written in script and the native code layer is almost entirely hidden (only in the pro version C++ plug-ins can be created). The engine contains most of the systems you’re likely to need for a game: 3D rendering with shaders, a level editor, a 3D asset pipeline, a physics engine, a rudimentary GUI system, network state synchronisation and RPC.

Unity is the subject of all kinds of hyperbole around the web. Back when I first heard about it, I wondered how much of the praise was down to Mac-heads who were simply delighted that the authoring tools were Mac-only. Since then, they’ve ported the tools to Windows and I’ve discovered that it really is pretty damn nice. It’s extremely quick to learn – I had a playable prototype of the game mechanic that I was trying out on Day 2 of using it.

Unity’s greatest asset is its clean design. It has a beautiful component architecture where you write update methods and event handlers in script, encapsulate them into component objects and then assemble them into game objects via drag ‘n’ drop. Exposing tweakable parameters is merely a case of declaring a component member public.

Unity is my first choice for prototyping, but I’m doubtful it’d be flexible enough to ship a full-scale game based on it. The drawbacks are:

  • No script debugger. The editor offers excellent facilities for inspecting and changing object properties in a running game session, but there’s no line-by-line script debugging.
  • No load/save framework. In spite of all the network serialisation stuff, you’re on your own when it comes to writing out a save game. There’s Dot-Net’s object serialisation and I/O though, so it’s not completely low level.
  • The GUI framework looks to be somewhat bare in places. No modal dialogs for example.
  • The physics API is an intelligently chosen 80% solution. It caters to the common uses of physics. If you’re in the weird 20% like Portal or Braid, you’ll probably spend more time fighting Unity than worthwhile.

That said, it’s superb for what it is and it’s been getting more flexible with every release. It’s a taste of the future of game development. Ideally, the only code required for a game should be gameplay-specific. Middleware has been getting steadily more and more comprehensive, and I can see the day when the only folks working on engine-level stuff work at Unity, Autodesk, Epic and Intel.

02
Sep
09

On Holiday

Yay! Clone Wars is all finished up and I’m on holiday. I’m going to be visiting Italy later on, but until then I’ll be screwing around on personal projects.

I’ve been experimenting with web technologies and it’s a nice contrast to console games. I feel that the immense amount of labour and development time in console games has isolated developers from players. With Flash there’s far simpler technology and a culture of releasing early and releasing often. It’s an inspiration to see the Flash devs getting player feedback weekly rather than annually!

I hope to have some interesting prototypes to show off shortly.

14
May
09

Day Job Announced!

swcwrhI can finally say what I’m working on! It’s Star Wars: The Clone Wars: Republic Heroes.

Or as I prefer to call it, Craig Timpany’s Star Wars: The Clone Wars: Republic Heroes: Episode 1: Watch Out For Bears. They still let me master submission discs, so who knows, maybe that’ll be the final title*.

Here’s the press release.

Naturally I’ve got to be pretty careful about what I say about projects in public (Hi employers! It’s good to see I’m developing some Google pagerank), so if you read this post aloud, you should read it in the manner of someone who has a gun held to their head.

If there’s one thing I hate about working in console games, it’s the bullshit secrecy around projects. You spend 75% of the time unable to say anything about your job, and the remaining 25% unable to say anything candid. There’s really only one reason for it: if you ration out information, you gain control over media coverage. Journalists will do terrible things for an exclusive. Never believe anything you read in a preview. Only pay attention to reviews.

* Yes, employers, this is an invitation to take me off build duty. I am clearly not to be trusted and should be assigned to more interesting things.

25
Apr
08

Engagement Distance

One of the key considerations in designing a shooter is engagement distance. This is the distance between the player and their opponents during combat.

Once upon a time (2001), I wrote an arena shooter called Mojotron as a hobby project. It was somewhat similar to Geometry Wars, except that Geometry Wars hadn’t been written yet (I was inspired by Llamatron instead). After I finished it, I worked on a sequel that would take that fast-paced combat and place it into a top-down maze exploration game. Like a combination of Gauntlet and Geometry Wars.

I took the Mojotron combat model, added scrolling and hooked up a random level generator that would produce networks of rooms (DungeonMaker, very cool).

Suddenly the game became noticeably less fun.

Continue reading ‘Engagement Distance’

18
Sep
07

Drinking in China

In China, most drink beer. There’s good reason for this. Many parts of China are life-threateningly hot; so much so that cold beer is an integral part of your life-support equipment. That and spirits drinking is a knotty, complex area of Western culture that is stubbornly resisting assimilation into Chinese culture.

Case in point, an exchange with a waitress at a spirits-themed bar in Yangshuo:

“I’ll have a rum and coke.”

“Rum?”, she asks uncertainly.

“Yeah, rum.”

Waitress hurries off and scans a shelf of spirits bottles. Her finger passes Bacardi, Coruba and Captain Morgan.

“We don’t have ‘rum’”, she says anxiously.

“Uhhh huh… Well, I’ll have a bacardi and coke.”

“OK!”

Later on I’d order a Black Russian and receive a Martini glass filled with something milky-white coloured. At first I thought it was straight Kahlua, but on closer inspection I saw it was floating on top of about half a shot’s worth of Coke. Looks like somebody accidentally reversed the proportions in their bartending manual.

I feel curmudgeonly to be bitching about this. The fact that I could order in English at all is a tribute to the vast effort they must have put in scaling my side of the language chasm. They’ve obviously worked a lot harder than I have. I tried to learn some Mandarin phrases, but whenever I went to use them, the situation’s confusion and trouble just deepened.

18
Sep
07

GTA Beijing

tractorthing.jpg

After one of many close calls during our tour buses’ overtaking manoeuvres, one of the other tourists joked that it was just like playing Grand Theft Auto. He has a point.

  • No apparent speed limit.
  • Right of way isn’t enforced.
  • Nobody indicates.
  • Police only get involved if they witness an actual collision.
  • Even if the police do bust you, a donation can set you on your way again.

Seems to me like Asia is the natural setting for GTA. Why do Rockstar keep setting Grand Theft Auto in New York, Miami and LA lookalikes?

Think of the possibilities:

  • Denser, more chaotic traffic, to keep things interesting. Perhaps it’d be best suited if it were a final level of the game?
  • More varied interesting vehicles. I kept seeing tuktuks, rickshaws, huge tricycles with a big carrying tray between the back wheels (pickup tricycle? ute trike?), motorbikes converted into minibuses, tractors converted into minibuses, and so on. I even saw one guy cycling through the hutongs on a ute trike with its tray removed and a charcoal grill welded in its place. He was a mobile shish kebab stand!
  • Pedestrians whose courage and stoicisim is matched only by their keen senses and finely tuned reaction times. Not to mention their sophisticated flocking behavour which allows them to make impromptu pedestrian crossings, much like a column of army ants will form a bridge out of their comrades.

hk-small.jpg

18
Sep
07

Rail in China

Beijing Railway Station is intense. It feels like an airport with all the gigantic architecture, but the thing is when a train arrives, it turns mosh-pit. In China, rail is serious business. They even X-Ray your baggage.

The departure boards probably had around 50 trains listed, and over how many platforms I have no idea. I do know that when we went to the departure lounge-like waiting room on the way to the platform, it was waiting room #13.

Back when I was leafing through the tour notes, a sleeper train didn’t seem like a bad idea at all. After all, my only notion of sleeper trains had come from 1950’s films.

My preconceptions of a sleeper carriage:

interior_c_final.jpg

Our actual sleeper carriage:

sleepertrain.jpg

Around 60 people to a carriage, triple decker bunks, and just about the only door on the carriage is the one on the heinous squat toilet. It’s a barracks with wheels.

The top bunks are roughly 8 feet in the air. I was in a middle bunk, and an elderly couple had the top bunks. Before I could figure out how to offer to swap bunk assignments, they had scrambled up top with surprising nimbleness. Good on them.

16
Sep
07

Terracotta Warriors

As impressive as the Terracotta Warriors are (8,000 life-size statues with unique faces, sculpted in 210BC), you do have to wonder about the guy who commissioned them, the first Chinese emperor.

You know, I’m no Qin Shi Huang, but I’d like to think that I would’ve realised that the Terracotta Army was a silly idea at some point during the estimated 38 years it took to complete them. I’d like to think I’d realise it before I’d go and commission a bronze handkerchief for my bronze charioteer to wipe away his (bronze?) sweat with.

bronzehandkerchief-small.jpg

But then again, it’s just that kind of unimaginative thinking that’s stopped me from unifying any Chinas lately.

Or thinking up any awesome stunts like this:

A German art student briefly fooled police by posing as one of China’s terracotta warriors at the heritage site in the ancient capital, Xian. Pablo Wendel, made up like an ancient warrior, jumped into a pit showcasing the 2,200-year-old pottery soldiers and stood motionless for several minutes.