Monday, January 3, 2011

Reboot

OK, so here's the deal! I got bogged down and mired in doing programmer art, and really, I hate doing programmer art. This in turn sucked the very life out of me and quite frankly, all my motivation for making this game evaporated. I'm a programmer dammit, not an artist!

Two months later, I have a resolution. I have convinced my partner in crime, Monsieur Damon DuBois, to do the art for this game. I am ecstatic! I am more than thrilled!

I had come dangerously close to de-scoping the project and re-designed it, so the art would be more manageable and easier to do. The original idea of a crazy-ass, Starship Trooper-esque, shooter-thon, was put aside, and I was seriously considering making the game into an oldschool vector graphics, shooter. Don't get me wrong, that would have been super cool, in it's own right, but it wasn't really what I wanted to make. I wanted visceral, bloody, insectoid action; chaotic and frenetic, and anything other than that was an abject compromise!

But, salvation is at hand!

After talking to my pal, Damon, about styalized vector graphics, a la Graviron360, it was clear that he and I both wanted to stay true to the original vision and style for the game, namely beautifully rendered insectoid enemies, and so, Swarm is back on track, and I have Damon on board and I am a happy man.

So, I am revitalized s such. I have my buddy on board and I am excited about the direction of the game and the cool, creative and artistic input I'm getting from Damon!

Kindly watch this space ..

Saturday, November 13, 2010

Distractions

It's easy to get distracted, especially when you're life is generally hectic. There's always something that needs to be taken care of or requires your attention, like the day job, or the family, or new toys. What this ultimately means is sometimes, things are prioritized and I don't always get to put the amount of time I'd like, into my game programming. This is simply the reality of life, and you can't beat yourself up about it.

So, all that said, I've not managed to put more than 15 minutes into my game over the past few days, and I'm not too happy about that. Generally, I get 1, maybe 2 hours a night if I'm lucky, to program. Between getting home late, finishing up paid web work, and hanging out with my lovely wife, it's hard. OK, I'm beginning to sound whiny and like I'm making excuses, so I'll stop now.

Sunday, November 7, 2010

Another Progress Update

So, I did a bit more work on the game today, and thought I'd post another progress video. I basically created a templated "entity" class and a manager, finished up my FSM, refactored a whole lot of code, and wrote the collision system. And if that wasn't enough, I reorganized the whole project, set up 4 different build configurations in Dev Studio and set up my Mercurial repository on BitBucket.org. Phew!

Anyway, check out the (dull) video below. The white squares are enemies ..

Friday, November 5, 2010

To Do List

I put together a rough "To Do" list for the new game .. It's already fairly substantial. This is what I use to track progress at a very high level. Typically, as I work through a prioritized task list, I break these down into finer detail. I find it super useful having this kind of thing worked out up front, as I pretty much know exactly what I have to do to get the game done.

· Player Base class

· Player Manager

· Player Logic

· Player Shield Manager

· Base enemy class

· Enemy Swarm Manager

· Enemy Swarm Logic

· Enamy AI System

· Enemies

o Bosses (5 - 1 boss every 20 waves)

§ TBD

o Fodder (various)

o Dozer

o Shielder

o Burrower

o Centipede

o Swarmer

o Straifer

o Drifter

· Enemy Weapons

o Plasma

o Pulse

o Tremor

o Fire

o Bomb

· Base Weapons class

· Weapons

o Single shot (base)

o 3 Way

o Spread

o Tesla (lightning)

o Homing missile

o Flame thrower

o Smart bomb (both mouse buttons)

o Powerup Plasma (hold to powerup, release to fire)

o Gattling gun

· Collision detection

· Play Arena

o Generate

o Scroll for boss battle

· Powerups / Pickups

o Shield power

o Weapons (all / ammo / power)

o Bonus Scores

o Super star bonus (1,000,000 pts)

· Scoring

· Wave Editor (IGE)

· Wave System (100 waves)

· Game progression

· Difficulty balance

· "Glue"

· Game Loading / Saving (progress)

· Backend / Server RPC system

· Hi-score Table system

· Leaderboards

· Animation system

· Particle system rewrite

· HUD

o Score

o Wave counter (badges)

o Weapon selector

o Progress meter

o Smart bombs

o Weapon power / Ammo

o Shield power

· UI Widget system

o Dialog box

o Text input

o Buttons

o Sliders

o Checkboxes

· Shell

o Loading screen

o Splash screens

o Name input

o Titlepage

o Options

o Music volume

o SFX volume

o Widescreen toggle

o Tutorial / Tips toggle

o Difficulty setting

o Credits

o Game Intro

o Wave Intro

o Wave complete bonus tally

o Boss Intro

o Pause menu

o Game Over

o Game Win

· Tutorial / Hints system

· Art Integration

Wednesday, November 3, 2010

More Progress!

I got the bulk of my Enemy manager and base Enemy classes written this evening, but nothing visual to see yet. I also tidied up the weapons system a bit and captured a video of work so far. As you can see, not much there yet, but it is progress!



Next up will be a generic enemy (EnemyZero), to test out some generic AI (nothing too fancy, just a FSM), and give me something to write the collision detection stuff against, and ultimately give me something to shoot at :) After that, I may overhaul my particle system, but that's fairly low priority right now, and may get bumped for something more fundimental. This is what I love about working on my own stuff; I get to pick and choose what I do :)

This weekend, I plan to take a break from madcap coding and take a step back to do some housekeeping and project planning. I need to get my SVN repository set up for this project, and build a big old task list. Fun!

Oh yes, I also pinged my artist friend, asking him if he'd be interested in working on this thing with me. He said "Yes, of course", before even seeing it or knowing anything about it, which made me smile. I am really excited about the prospect of working with my old buddy again!

That's it for tonight. More tomorrow!

My Day Job and Some Context.

In a previous post, I talked about my day job as a coder working on low level systems and technology. I feel I should provide a brief update on this, as it may give some context to my current desire to make my new indie game.

About 8 months ago my role changed here, when I joined a new team as their technology and development lead. I feel it was a great move, both personally and for my career, and so far it's working out quite well. I love challenges and the opportunity to take on the technology responsibilities for an entire property, afforded me many. In fact, I've been more challenged over the past 8 months than ever before in my career. Granted, it's a different kind of challenge to programming, but it still has a lot to do with applying common sense and problem solving, which I love, and do well.

So here's the conflict (yes, there's always some with me). I've been a programmer for almost 28 years now, and it's so deeply part of me, that I honestly struggled with giving it up. Actually, I mulled on it for ages before deciding to jump in with both feet. So now I am a manager. I solve problems and thing strategically. I honestly love it, but ..

I've managed to put my programmer self away in a box for the past few months, and I can no longer ignore the sad, muffled whimpering sounds coming from it. A week or so ago, I took the box down from it's high, lonely shelf, and took a peek inside, and that was it. This is why I'm writing a new game.

I think only a programmer would understand this :) Or maybe not. Maybe I'm just a bit mad!

Okay, Not So Fast ..

So in my last post, I said something new and exciting was afoot. Well, as you can probably guess, it didn't pan out. Now it's 11 month later (blimey!), and I have actually got off my arse and started writing a new game. It's a shooter with a twist. Working title is "Swarm".

Last weekend, I gutted my last game (Mythic Mahjong), and turned it into a generic game framework. Tonight I got a whole bunch of stuff done, including the player class, weapons class and projectiles class. i also wrote my projectile manager. Right now, I have my gun emplacement, tracking the mouse, firing tons of bullets :) Everything is working well, and not bad progress for an evenings work!

All the art is flat colored circles and squares (programmer art), and I'm now officially looking for an artist.

Tomorrow, I'll be working on my basic enemy class, and maybe posting a very early video.