Wednesday, February 10, 2010

The greatest games are the ones you make yourself

I am currently on day 13 of my 30 day free trial of the Torque X game engine from GarageGames. One reason for writing about my game development process is to hopefully exchange my words for an engine license code ;) Below is a short video showing where I'm at with my game.

Balls of Fire!


Making the Game

I have a fairly good idea of where I want to go with this game and I hope I make it there!

If you are thinking about getting into game development and distributing your game on the Xbox Indie Channel, TorqueX is definitely the way to go. GarageGames has a list of games created with TorqueX here, List of TorqueX Games A few of those have been released to the Xbox Marketplace.

Most of those games seem pretty simple, but most of them were probably created by developers new to game development, which is what I think the indie games channel on the Xbox is all about.

I mentioned in my previous post about some code from John Kalanakis's website envygames.com. He has some code there with around ten or so sample games, each making use of a different feature of the TorqueX Engine, and with easily reuseable components.

Some of the components I'm using
AiPathFollowingComponent
AiPlayerChaseComponent
AiProximityAttackComponent
AnimatedCharacterComponent
FireProjectileComponent
WeaponComponent

Those do what you probably think they do and I was able to drop them into my game with no modifications in most cases. I don't even have the book from which those samples came from and I am still able to use them. To use components all you do is add them to your characters or game objects in the builder and then set the options. The AiPlayerChase has a target,speed, and chase or avoid option. It's that simple lol. And so much fun. I'm already spending lots of time playing my simple game and it's not really a game yet.

Here is the meat of AiPlayerChase to demonstrate how simple things can be.

private void _UpdateChase(float elapsed)
        {
            // determine angle to point our ship to the player
            float angle = T2DVectorUtil.AngleFromTarget(_sceneObject.Position,
                 _TargetObject.Position);

            PlayMyAnimation(angle);

            // set the ship on its way towards the player
            _sceneObject.Physics.Velocity =
                T2DVectorUtil.VelocityFromTarget(_sceneObject.Position,
                 _TargetObject.Position, _speed);

            return;
        }


sceneObject is the AI and TargetObject is whatever you would like the AI to chase. This component is attached to every Wizard in the first video above, the Large Warrior is using AiPathFollowing which is pretty simple as well.

There is a learning curve to the TorqueBuilder and it will definitely help to have some background knowledge of C#, but you don't need much knowledge to start making games. I tend to learn the most when I don't know how to do something, if that makes any sense lol.

I'm also thinking about buying this Character Pack from the Torque Website, it's only 30 bucks which works out to 2 bucks per character so that's a pretty good deal.

I think these guys will be fun to shoot at :)



-Ben

No comments:

Post a Comment