Main | Development »

Curved Space

Posted by Andrew Czarnietzki
Mar 21 2010

“That is the best looking iPhone game I’ve seen!”

Great compliment (until I explain that it’s a video of a PC game shown on the iPhone). Still, I’ve had a lot of excellent feedback from my recent trip to GDC (the Game Developer’s Conference), and now that I’m starting to get back into the swing of things I felt it time compile some of that feedback for this blog:

General Response:

The general response has been absolutely excellent. I’ve shown the short video segment to around 50 people from various positions in the game industry, and almost everyone liked the graphics, the physics, the gameplay, the alt worlds, etc. People really resonated with the physics side – a simple 2d game, but moving around the curve always got a “wow”. More so than the physics, the laser beam mapped to the 3d curve was even better received. Though there were a few comments regarding more special effects, the art style also resonated with people – something clean and simple but aesthetically attractive… more important though, something that really hasn’t been seen before – at least in this context. This sample really does confirm that I’m onto something – something that’s fun, unique, interesting, etc.

Publishing:

After talking to a couple of producers and various people connected to the distribution side of the industry, I think I’m on the right path. I started this project with the mind to build something interesting, which when finished I could take to get published. I was operating under the assumption that its less work and less risk for a company to publish something finished (be it a game or a manuscript) than to fund some bright eyed first time developer walking in saying “I’ve got this great idea, now give me money!” My assumption was whole heartedly confirmed by a number of very experienced individuals – and they all suggested that while this path is apparently more difficult, if I can pull it off its easier and more profitable in the long run.

I talked to a few people regarding how far I need to complete this game before pitching. I received a couple of mixed perspectives, but ultimately the father along the better – and when I do run the pitch, make sure that the 15 minute or so presentation is absolutely rock solid. More important than the level of polish though, I received some interesting advice on how to approach the construction of the game as well as the need for a more resolved concept:

Construction:

The advice I was given was to build the game as “ugly as possible”, focusing on the “fun”. The idea is that it is easier to re-skin an ugly but fun game than it is to rework a pretty game that just isn’t fun to play. While I do agree with this sentiment, an important part of my philosophy on this is that I want the art style to be central to the game (even if the interaction between lighting isn’t going to work out as I originally expected). I also think that the art adds to the character of a game, and that even in the prototype as is the art is critical to the positive reception thus far. I do agree with the sentiment that a fun game is better than a pretty game, but I don’t see why I couldn’t have both – especially when the majority of the buzz on the art side is based on sculptural form (critical to the gameplay) and automated processes like pureLIGHT.

Multiplayer:

Besides the comments on aesthetics vs fun, I also got some very pointed advice regarding the inclusion of multiplayer. To be honest, this is a debate I’ve been having with myself almost since this project began. I don’t like multiplayer. Sure, I love 4 player Left 4 Dead with my friends but 95% of my gaming time is on single player titles I can pick up and play whenever… I prefer my entertainment to be escapist, without having to deal with other people (either for fun or as an obligation – I truly don’t understand how people can put more hours into World of Warcraft than their actual day-job!).

I’m not looking at WOW scaled multiplayer though – I’m looking for something similar to that of Unreal Tournament; simple multiplayer with your friends, battling in an arena or working together against waves of enemies. Even the marble madness component of the game would potentially work quite well with cooperative play. On paper this sounds great – and to be honest, the question I’ve been asked above all others is “will it have multiplayer?”

I personally dislike netcode, but I feel that this is an area of Unreal that I have been avoiding. Eventually we may have to have a multiplayer project at work, and if this comes up I would really like to be better prepared (even the short bit of research I’ve put into the subject has already proved valuable). I feel that if I can pull off multiplayer for this project I will be a stronger programmer – and far more prepared both within Unreal and the games industry as a whole.

On the flipside, netcode is tedious, frustrating, and could potentially require more hours than the rest of the project combined. This is no small consideration, as if making this game took 2 or 3 times longer, it already stands a greater risk of not making it to completion (and that doesn’t even count the hit to moral working on something as frustrating as netcode). To complicate things further, if I want multiplayer support I really need to add it now – retrofitting this small prototype is already proving difficult, and I can see where retrofitting the final game would be nigh impossible. I know that things are a little more forgiving than this “now or never” picture, but I really do feel like I need to make a decision.

This is the debate I’ve been having on my own since the project began… the advice I received at GDC further complicates things. The one producer adamantly warned me that if I’m not passionate on multiplayer, “DO NOT ADD MULTIPLAYER”. He warns that if I did add multiplayer like this, I would risk burning out and dropping the project, risk doing a poor job on the execution, and risk making a game that actually works – as if I don’t like multiplayer, how can I possible build a multiplayer mode that is fun?

Joining the debate, I spoke to a few other people that warned me if I didn’t do multiplayer, would I be happy with myself for abandoning the challenge? I would I constantly be looking back at this project wondering what could have been? Very simple statement, but I’d be lying if I didn’t say that this mirrors my own thoughts on the subject.

Frankly, this advice really hasn’t helped any – and I’m sure that regardless of the path I choose this debate will haunt me throughout this project. I’ve done quite a bit of soul-searching since I’ve heard this though, and while I’m still a little unsure I think I’m going to choose the stubborn and difficult path (as where would I be if I didn’t always do things the hard way?). I’m going to keep pushing on the multiplayer support that I have in, and provided I can keep the momentum moving I’m going to continue developing with a mind to netcode. I can always abandon multiplayer support in the future if it truly becomes a black hole, but in the short term I don’t really think I have a choice on this one.

Concept:

This last piece of advice really got me thinking. The advice is basically that I should try to find a “high concept” for what is otherwise an extremely abstract game. The producer I spoke to warned that while games like Osmosis and such are awesome, they are the outliers – and that to pull off such an abstract game I would need flawless execution and not just a small bit of luck. Comparatively, by giving the game a defined concept it has more of a story to tell – and would potentially improve the signal to noise ratio when in the wild competing against countless other games of the same scale. This concept doesn’t have to change the gameplay, but a little bit of humor or context could potentially make my game project a lot more memorable and approachable.

I do agree with this sentiment, but at the same time I beg to differ. I _like_ abstract games. I _like_ games like Geometry Wars or Osmosis or Orbital (even though Geometry wars is successful due to being a well executed launch title). I also have difficulty with things like humor – we joked about various concepts including “sphincter wars” (based on the shape of the map) – sure, this got a smirk (the drinks helped), but I don’t think I would be happy with the type of game that this (or any humor based theme) would produce – though I would admit that such a concept would make it more notable in certain marketplaces.

I do give him that a concept will help ground and guide production of the game, and that currently I really don’t have any sort of concept – starting with the name (or lack thereof). After sleeping on this, I have an idea that is starting to resolve – and therefore I officially christen this project Curved Space. I like how this name highlights the unique aspect of the gameplay, and I like the science and physics connotations that go with it. I don’t know how many more conceptual elements I will eventually add (I’m happy with glowing abstract shapes shooting at each other – I see little value in making them spaceships with miniature animated humans inside) but I do think that this starts to give the project a theme and direction.

It’s a little hard to get back in gear after a trip like GDC, but I’m energized and ready to dive back into this project. I definitely feel that the trip confirmed that I’m onto something interesting, and gave me a lot of useful advice to think of whether I choose to follow it or not. I also made some great contacts at the show, some of which may certainly leave a mark on Curved Space here – but I’ll wait to further those relationships before adding to this blog.

Cheers!

Categories: Design, Development

Networking

Posted by Andrew Czarnietzki
Mar 01 2010

Small milestone: first connection between client and a server! The game is completely and utterly broken, but the connection was made and now I can start fixing things!

Categories: Design

Gameplay #3

Posted by Andrew Czarnietzki
Mar 01 2010

New Gameplay Video! Taking some of the inspiration from Gamecamp, I’ve captured a new gameplay video! A lot of the fine control adjustments really don’t translate to a video presentation, but some of the points to look for include: compass arrows for off-screen enemies, enemies that shoot back / different enemy types and alternate worlds:

Two points with this video: the first, the compass arrows are an interesting experiment. I’m not sure if I like them or not, but from a gameplay perspective they make a huge difference (and are more successful than alternate solutions including rendering enemies through the geometry (which only works in a select few cases) and an overlaid radar which doesn’t map well to the 3d space). The second point: for the alt worlds, the idea is that when in the red world, the white world enemies are shadows (and otherwise unable to see or touch you). While you can see the red enemies in the white would, you can’t hurt them and they can’t see you – but if you go to the red world, they now become quite violent and aggressive. Note that the red enemies are converting the white coins to red (which slow you down in the normal world but become collectable in the red world) – the radius by which they affect them is currently too small, but I will change how all that works as soon as I get back into the code.

I tried having a pickup trigger alt world switch ability (as well as specific portals in the world), but ultimately the push-button switch seems to be the best. Provided the user is prevented from getting into the alt world before the red enemies and coins, the switch allows for an easy option to escape as well to strategically attack / avoid larger enemies. Watching my Fiancé’ play last night, she made huge use of this feature without any prompting – I’m not quite sure where it will end up, but that first initial test is encouraging.

I’m going to continue to refine this, but I’m also going to start looking at what sort of changes multiplayer will require. I’ve kept half a brain to the netcode requirements (and I am familiar with Unreal’s networking system) but I also haven’t done any multiplayer development in about 5 years… which should make this interesting. Fingers crossed though!

Categories: Design, Development, Gameplay, Testers, Video

Gamecamp

Posted by Andrew Czarnietzki
Feb 28 2010

Last night I attended Gamecamp Edmonton – an excellent opportunity for industry networking (and similar interests) that I full intend to be a big part of in the future. Until then though, it also gave me a fairly good test session on Disc Game – stretching beyond the friends and family and actually getting into the hands of people who hadn’t even heard of the project.

This was a great test opportunity, and while I’m burning with excitement to continue working on it (I have had a busy morning so this is the first I’m back at my laptop) I figured I’d try to collect some thoughts I had from watching people play last night:

General Observations:

- There is absolutely a game here. The weird 3d navigation was clearly a joy on people’s face, and several actually came back and picked up the controls without prompting. I know I’m still only in the beginning of this project, but this gives me a lot of encouragement!

- The controls actually work pretty well! I’m still not sold about the right joystick tilt (I understand its purpose though) but the strafe / drive / turn navigation seems to work quite well.

- Weird 3d geometry and action gameplay does get people lost though… I think the current arena map works well for this in that you’re really not navigating a maze but rather sticking to two sides of a fairly simple coin; which watching people play seems to work fairly well. For more multiplayer type scenarios, the playable area (even if it shifts over a couple of rounds) needs to stay simple enough that people can get “lost” without too much pain (thus keeping the focus on the high energy / trippy distortion thing I have going)

- The aesthetics were very well received, especially the alternate world. I only heard one complaint that things are a little too bloomy (thus making it hard to keep track of what’s going on) but for the most part I think there is a style here that works to my needs and is enjoyable by the end users. (the bendy lasers were also a big hit)

- The 2 minute pitch of the game seems to resonate fairly well – and I agree 100% with the one fellow who called it “3d air hockey with lasers”

Negative Points:

- My speed-based camera pan broke down a little with the speed at which people were playing the game (flashing white as the camera intersected with the overhead “moons”). Easy enough fix, but I cringed every time!

- People seemed to drive the game a lot harder and faster than I or my testers do… which is interesting in that about 8 times people “broke” off the surface and started drifting out into space. While I am aware that this can possibly happen, hours of testing on the physics system has shown it to be nearly impossible – which means that I need to tweak the controls or figure out what people are doing differently. (that said, the couple of failures due to high speed boost around the sharp lip got cheers and a very positive reaction – I think I just need to ensure that the system is consistent there)

- The player avatar was a little (to my surprise) confusing to people! The way the 4 quadrants change colors had people thinking it was a radar or it showed where you were taking damage. The aesthetics (i.e. the lack of photorealistic little spaceships or such) were fine, but the player avatar needs work.

Power / Health:

- Again, this fundamental component seems to break down… the inverted ring scale I think works well but the ammo == health system was completely missing

- One person pointed out that rapid fire and otherwise sloppy weapons don’t work to well when you’re sacrificing your life force – where every shot should count

- I’m not sure if the randomly spawned coins are working too well… perhaps coins should all be based on enemy destruction or otherwise spawned a little more forcefully.

Regarding the Power / Health observations, I’m considering separating the two – making the ring describe perhaps your weapon power and keeping the health something a little more modern (the basic take damage and recharge when out of danger convention). Perhaps (this needs testing) the result will be two rings – so shooting separates your weapon from your general health – this works on paper, but I’m not sure if the visual information will be too much to the player.

Weapons:

- Other than the ammo / health connection, the basic weapon and aiming seemed to work quite well. Players had no trouble hitting enemies with a fairly solid accuracy – though one point is that the enemies tended to take about 75% damage then escape – repair, and repeat the process.

- Boost-head butting was a huge hit, and while it is a touch over powered it was probably the most “fun” component of the game so far. The penalty for boost in terms of control and coasting seemed to be dead on, but despite a significant power drain people never noticed (and suggested a few times that boost should drain power… ). Boost also became problematic in that people were single-shot-killing (or close to) the more interesting enemies I added – including the ones that actually shoot back! (meaning the players who favored boost quickly pushed through the waves until things got too difficult). I think I need to selectively tone this system down, without losing too much of the potential fun...

- Jonathon and Dave apparently hyped up the rocket launcher I wanted to have in… (which didn’t make it due to time constraints) but I think I’m on the right track for weapons. I’m not sure (watching people navigate) if pickup based weapons are the key – perhaps it may be more pickups / powerups modify an archetypical set.

Alt World:

Just in time for the demo I added simple support for the red alt world, allowing the user to switch world stages at the push of a button. I originally had a timer /delay type thing but that just didn’t work for people. Watching people play, the alt world was an aesthetic hit but had some major issues in the current implementation:

- Until the later waves, there were no red coins… thus no health in the red alt world. With weapons burning health, people would go into this essentially empty world, navigate around, shoot, burn power… and then return to the main world to get their ass kicked.

- Until the later waves as well, the red world is actually pretty boring. This says that either special enemies or objects need to be spawned upon entry (or the start of the game) OR the ability to enter the alternate world is limited (perhaps with some sort of pickup or the like).

- By becoming invulnerable to enemies (or at least the basic enemies in the root world) the red alt world became a viable place to escape too when combat got a little too heated. Only a few players picked up on this, but there is definite potential here. (that said, it may become too easy to avoid combat)

Enemies:

- The behavior of the basic first enemy was a big hit – especially the “AI” where it tended to make a J shaped past around the player and “kick them in the ass” (all a simple balance of attraction and repulsion forces!).

- The second enemy, which shoots back, was also a hit… when people stopped long enough to notice it shooting back. The enemy’s use of the weapon worked quite well, but the avatar itself (despite by best efforts) was not visually distinct enough. Also, the susceptibility to boost didn’t help much.

- Most people seemed to understand (after a very quick introduction to the concept) how the red enemies and red coins worked in relation to the red alt world.

- People suggested using alternate colors and potentially having a set of 4 colored worlds… but I did get a word of caution that relying on color to differentiate core gameplay pieces becomes an accessibility issue on people who are even partially color blind. I honestly hadn’t thought of this before, but its an interesting problem (and quite manageable if I consider it in advance)

- Enemies were most successful in groups of 1-3. I tried having the later waves get a little more crazy but this just ramped the difficulty to almost guaranteed failure. Also, the more enemies, the more the player tended to get confused and frustrated. I think the balance is that this game needs to focus more on distinct battles – 1 gold enemy, 1 gold enemy with lasers, 2 gold enemies and 1 with a laser, 1 red enemy, etc. The waves could better communicate this as well, and if I do implement some sort of compass (which I will discuss momentarily) a smaller number is easier to manage.

The biggest issue with enemies was that there were distinct moments of dead air, where the enemy was stuck in some corner on the other side of the world and people were trying to find it. Several times a simple compass or radar was suggested (though I can say from my own thoughts on the topic that this gets extremely weird with the type of world geometry I’m dealing with). I think that improving the AI will help, but even with the tendency of the enemies to wander back into the playable area, I think this is a significant problem. The ideas I have to solve this issue are either some form of rotating 3d compass (simple little wireframe mesh of the world), some form of 3d guide (say lines penetrating through the player avatar pointing to where the enemies are) or perhaps some sort of shader trick (where enemies are visible through the world mesh). I’ll do some testing and see what works out the best.

I think that pretty much covers up my thoughts… I want to try my hand at implementing some of the ideas and adjustments while they are still fresh, and as soon as I’m done that I’ll capture another view. Until then, cheers!

Categories: Design, Testers

Update

Posted by Andrew Czarnietzki
Feb 24 2010

Despite a rather distracted weekend, there have been quite a few developments on Disc Game here. I want to make a few more visually distinct changes before I take another video (it looks very similar to before) but the gameplay experience is quite different.

First off, I have support for the xbox gamepad! You can still play completely with the keyboard, but the strafe adds a whole new level of control to the game (it handles more like driving a Warthog in Halo than playing Geometry Wars). The gamepad also allowed me to tweak the handling a fair bit – there is a fairly aggressive braking system but in a way that is (hopefully) transparent to the user: if you’re pushing forwards, its retarding your velocity backwards, etc. If you let go of controls or use the boost you still coast very freely – but the result is that the controls feel a lot tighter to the user.

I have also changed how the status rings / power reserve concept works. Previously, the larger your ring the more power you had. Now, the more power you have, the smaller your ring. This is a huge improvement from a gameplay perspective (as your need decreases, it becomes more challenging to harvest) and I think the first pass at the visuals helps sell this to the player… small rings buzz with bright energy and larger rings get thin and weak looking. First playtests have been really encouraging.

I also connected the weapon strength your power system. This is far more intuitive and allows for an interesting dynamic with a super-charge: you can keep collecting power above 100%, but any boost or damage will drop you back to 99%. I’m a little disappointed in that I had high hopes for connecting the weapon power to the intensity / color of the lighting around the player… but this just wasn’t working with my testers. The new ring concept though, and super charge effect, is working quite well though – so while I see a few improvements, I think this settles on the direction.

Now that I have the power dynamic down to a point I’m comfortable with, the next big hurdle is the alternate color spaces. I really want this to be central to the gameplay, but the few options I’ve tried just don’t work well. I’m leaning now to an almost Ikaruga idea where the red-coins (which currently are considered “corrupted” coins made so by the one enemy type) would become positive when the user jumps to the red world… and potentially the red enemies could become vulnerable or the like. Perhaps the ability to switch could be enabled by a pickup as well. This needs to be explored a little more, but if I make any progress on the topic I hope to show it in the next video.

Categories: Design, Development, Pics

Thexder!

Posted by Andrew Czarnietzki
Feb 20 2010

As I think about the aesthetic behind enemies, I'm reminded of Thexder - a game I used to play as a kid on Dad's Apple II-GS. The graphics and technology is almost painfully crude, but I appreciate the wide range of visually distinct enemies they managed to get with very simple abstract graphics and basic patterns of behavior.

Categories: Design

Gameplay #2

Posted by Andrew Czarnietzki
Feb 19 2010

I’ve now had a chance to start putting these fundamental pieces together and it’s time to show them off in another video! (music the Hanging Gardens track curtsey of dj://spaz)

I hope you can see where this is progressing, if only compared to the first few samples. Here we see the new map (“light” world only though I do have a few other colors ready to go), simple enemies spawned in waves and a basic weapon. (The controls and camera are also a little more friendly). Before I start musing about some of my gameplay concepts and critique on this first version, here are the “rules” as they exist now:

- Your power (both health and ammo) is represented by the white ring around your disc. This also defines your influence on coins, and the point at which you repel enemies. You gain this power back by collecting coins.

- The weapon does damage based on the current lighting you are in – if you noticed, the beam intensity and color changes to reflect this. When in the direct sunlight you do massive damage, and when on the underside, you are comparatively weak.

- Boosting into an enemy does damage as well – boost results in a loss of control though, and can break you free from some parts of the map.

- Enemies also collect coins (except for the enemy type that “corrupts” them) – when an enemy is destroyed, it spawns coins based on how many it had collected. (note that corrupt coins don’t do anything yet).

Some parts of this are proving really fun – the abstract surface navigation is a huge hit for my testers, as is the surface hugging laser beam, the fluid interaction with the coins and the general aesthetic (note simple textures and normal maps while keeping the surface clean and lighting friendly). I still want to add a lot of ambient flem (particles, crazy background, etc) but I think this is narrowing in on a general aesthetic that is easy and fun to produce yet visually stimulating and interesting. (even though it relies on high res lightmaps, the size of these maps is fairly small as well – I know it wouldn’t run as-is on the iPhone, but I want to avoid needing a super high powered computer to run what is really a glorified arcade game)

Other parts are a bit questionable though – the “lighting = weapon power” feature is mostly ignored by the testers, though my Fiancé learned (without prompting!) to lure the enemies to the top side where they were more vulnerable. Still, this needs to be more clear and I’m wondering if that’s simply a visual cue or something more drastic – I have a wonderful way to sample lighting at a given point, but making this lighting relevant to gameplay is harder than I thought!

The influence ring is a big hit, but using it as a health meter breaks down… it seems backwards almost, in that you have an easy time collecting coins (and thus health) when you don’t need them but have difficulty when you do. You also repel enemies when you are your strongest, they are all but attracted to you just when you have the most to lose. I need to explore this more and find a way that is clear yet perhaps a little more reasonable from a gameplay perspective.

I also want to work in the means by which you can switch to the alternate worlds (colors) – aesthetically I love them but I’m still not sure how to activate them. I did some test with “portal” meshes, but that was just confusing to the testers.

Besides these gameplay questions, I also have a lot of ideas where to keep adding development. Concepts for enemies, powerups, weapons, and affectors are practically writing themselves (affectors being things like bumpers or force fields that spawn in the world and shake things up). The way the one enemy type can corrupt coins has also been a big hit – now to figure out which of the dozen or so directions I should go to making those corrupt coins matter from a gameplay perspective.

I could add these little parts all day, but I think the next step is to try and resolve some of the fundamental gameplay questions. I’m going to try and nail some of that this weekend, as well as hookup a gamepad as a controller (the lack of strafe was bothering a few people) and perhaps another weapon, enemy or two. I want to be a little careful as it’s easy to get distracted at this point and I’d rather have as strong a beginning as possible without having to rewrite large sections down the road. After this next stage I also want to look into adding multiplayer support – though despite almost 10 years working with one form of Unreal or another, netcode still scares me. Should be an interesting experience though – half of this project is to try and stretch my skills a little… (and if I didn’t start thinking multiplayer, I fear my testers would probably lynch me, so it’s not like I have much choice!)

Categories: Design, Development, Gameplay, Video

Suggestions

Posted by Andrew Czarnietzki
Feb 19 2010

I've been showing this prototype to quite a few people and have been getting some interesting feedback... Here are some of the more notable points:

- Make the game sounds in the same key as the music; I love the idea of making the audio more cohesive and relevant. Currently we have a mix of my old game sounds and some library elements, but for this to work audio is just as important as any particle effect. I also would like to arrange custom music for the game - looking at you DJ://Spaz, but anyone up to help out with this is more than welcome!

- Make the foreground elements fade when in front of your view (I think this can be done with a simple shader)

- Make the player avatar less symmetrical and potentially a little more interesting (more variation in the shapes for all the coins / enemies / etc)

- Gamepad support (easier controls for strafing)

- Ability to “lock on” to an enemy (not sure on this one – I see where it makes sense but at the same time it breaks some of the free-flow gameplay)

- More world interaction (jumps, bumpers, force fields, etc)

- More weapons (pickups, mines, etc - but some interesting suggestions including one that’s basically an energy beam grappling hook sounds really slick)

- Make the "repulse" aspect more of a shield with associated visuals

- Have a second level of charge once you max out on power / health (though this may change with some of the power / influence adjustments I'm working on the key point I guess is that you never cap out when gaining power)

- Multiplayer (single most asked for feature...)

I have had lots of other suggestions and ideas really are pouring out but the ones above seem to come up over and over (or are very pertinent, such as the sound effect suggestion). Thank you everyone for your feedback (I'm always open to suggestion via andrewc[at]purelighttech.com ) - I'll keep you posted as this develops!

Categories: Design

Gameplay Test!

Posted by Andrew Czarnietzki
Feb 01 2010

In a flurry of inspiration and code this project (which I holds the uninspired working title “disc game”) came to life this weekend. There is still a long way to go, and admittedly the parts are still rough around the edges, but I my instincts say there is a seed of something really interesting here.

So without any more preamble, here is the first video:

Now that you’ve had a chance to watch the video, let me break down a little of what is going on there. The basic idea is that the player is controlling a dist that is hovering a short distance above a surface. You could think of this like a magnet over a superconductor or an air hockey puck. The controls give a small force to the puck (forwards / backwards / turn) and while there are some limits to prevent extreme cases, you essentially coast without friction. The puck also has extremely high restitution, meaning it will have a fairly pronounced kickback against collisions (not unlike an air hockey puck). For all intents and purposes, gravity for this world follows the normal of the playable surface.

The interesting part in all this is that the surface can be any abstract shape (though things like sharp corners would understandably cause problems). This “surface hugging” approach makes what is really a very simple 2d control schema into something rather wild. The system I have here works on a sphere, inside of a tube, all over any sort of wildly twisted geometry… I’m even interested in making a mobius loop at some point!

I don’t want to get to much into the code of how this works – suffice to say it’s a rather odd interpretation of Unreal’s PhysX. Despite quite a few more quaternions than I’d ever like to see again, this implementation is entirely in UScript (which is a real testament to the capability of UDK). I’ll also point out that the system works for not just the player’s disc, but potentially dozens (if not hundreds) of discs active at once. (with only a few minor optimizations, I maintain a solid 60 fps with over 1000 live discs floating about the world).

This brings me to the second half of the video – now that I have a discs on a surface, where is the “game”? My first test involved randomly spawning 100 “coins” onto the surface – which can be physically influenced by the player (or potentially each other, enemies, etc). I see a whole library of possible surface-bound objects that range from small health-style pickups (like the coins in the video) to enemies, pickups, projectiles, weapons, etc. I also see this game as a potential multiplayer experience – so while it could be “hungry hungry hippos on acid” I see I’m seeing something a little more aggressive – with plenty of explosions and particles to go around. (Mario Kart battle on non-rational geometry?)

I also want to incorporate pureLIGHT into the gameplay. As part of this, I have a small object that (through a little development black magic curtsey of my co-worker Jason) reads the current color of the world under the player’s disc. This has performance limitations (I couldn’t sample hundreds of points at the same time) but it does allow me to (with more development black magic) read the pureLIGHT result for the world at the given location… meaning I could have the color or intensity of the light affect the player. One of the original inspirations in all this was a “physics game where light of the color blue was slippery”. I’m not quite sure how to integrate all this yet (the first test where you’re speed / power was based on lighting was confusing to my testers) but an idea is that the light you are in will affect your influence – shown in the video as a white ring around the pawn. I have to do some testing on this still – I’m interested to see where this will go.

(I also have ideas for switching the lighting state for the scene – going from this white light to something high contrast black and red, etc. I love the aesthetic possibilities in this, but I don’t know how this will relate to the gameplay yet – I have to do some more thinking on the subject)

As for the world, this first test has a few notable parts – I really like the distortion when you go around the fold in the world or get close to the sloped ground at the “red” end of the track. I also really like the bounce, but if anything, I find the environment a little constraining – I’m not sure if this is an arena type battle game or a linear puzzle game like Marble Madness. The more I think of it though, I wonder if it’s both – the movement mechanics would make for a very interesting linear game… but a spatially distorted combat game like Geometry Wars could also work. For ease of testing I think I’ll start with more of an arena focus, but I definitely think there is a single player puzzle / navigation aspect to this as well (all based on the same gameplay mechanics). In the short term though, I do think the current world breaks down. While it has some really interesting pieces, I’m not sold on the scale or layout. I have a few thoughts floating around for a more appropriate world test (I may revisit this first one in the future) – I’ll post some screenshots as that one comes together.

Categories: Design, Gameplay, Physics, Video

First Light

Posted by Andrew Czarnietzki
Jan 29 2010

Introductions out of the way, let’s get into this little project of mine. In my professional life, I have spent the last 5 years building either intricate environments in pureLIGHT or working on advanced physics based simulators using the Unreal 3 engine. I also have a bit of a background through school in abstract sculpture and have always described myself as “thinking in 3d”. While I am looking forward to certain challenges in this project, I figured I’d start out easy by playing to my strengths. Therefore, the quintessential points of this game are:

- Heavy use of pureLIGHT (I have a soft spot for the clean “lighting study” aesthetic)

- Heavy use of physics

- Interaction between the physics and pureLIGHT (have to give this a bit of a unique gimmick after all!)

- Abstract shapes (with an emphasis on form vs texture)

- Emphasis on 3d gameplay

The first thought that came to mind could be described as an odd blend between Marble Madness, Pinball, Geometry Wars and Super Mario Galaxies. A bit of an odd mix, but I think it could work! As a teaser, here are some screenshots showing the first test environment with two alternate lighting states:

 

Categories: Design, Pics

First Post!

Posted by Andrew Czarnietzki
Jan 29 2010

Hello internet! Welcome to my little development blog!

Before I get into the project, a little bit of back-story. For my day-job, I’m Technical Director for 3DI. I’m also the original pureLIGHT user, hammering out projects back when it was a clunky piece of software called “lightmapper”. I’ve lost count of the pureLIGHT scenes I’ve built over the years, but my favorite have always been the abstract architectural lighting studies – many of which now decorate the pureLIGHT website. This style doesn’t really apply to the serious games work done at 3DI, but I’ve always maintained that somewhere, somehow, this style would fit wonderfully into a game. My first attempt at applying this style to a gaming environment was Hanging Gardens – a project that I had a lot of fun working on and generated a very positive buzz regarding the rather unique aesthetic. Hanging Gardens scratched a creative itch and certainly proved that there was a place for pureLIGHT lighting in a gaming environment. With the release of UDK, I started thinking that I could apply my background with both pureLIGHT and Unreal and actually make a game that played to those little abstract lighting studies I’ve always enjoyed making.

That brings me to this yet-to-be-named pet project – a project that plays to my strengths in both pureLIGHT and Unreal and gives me a creative outlet without the stress of the projects I deal with at work. (I absolutely love my projects at 3DI, but there is something to be said about instant gratification – like making a quick sketch without having to see it through to a completed painting). I would like to see this project turn into a fully fledged independent game, but right now I’m in it for the journey and not the destination. I figured that this journey might be an interesting story to tell (at the least it will likely show some pretty pictures involving pureLIGHT) and I hope to tell this story through this blog. I hope this glimpse into my process is interesting and useful to you – personally, I’m very excited to see where this will go!

(until comments are worked out, I fully welcome your input via my e-mail: andrewc[at]purelighttech.com)

Categories: Design