Wednesday, September 1, 2010

Early first person shooter test (in progress)

(demo at bottom of post)
Currently being coded in AS3; my second attempt at a AS3
game (first being the "Never Ending Shooty-thing" practice game).
I really should of finished this game ages ago... it's really not a
complicated game to make, and the goal was quite straight forwards...

Just before I switched over to AS3 I started coding what I was
calling the "RIIC" engine (Raccoon Crisis II) in AS2..
As you can see; the engine
didn't include wall textures.
This was because I didn't
know how to do this at
the time and I believed it
would of ran too slow.
This engine worked by
turning 2d vector based
maps into 3d projected
walls... It all ran quite
fast until I added in wall
collision detection and
tried to make modest
sized maps for the game.
I ended up rewriting the
collision code many times
in an attempt to make it run faster, but I came to the conclusion that AS2 just
wasn't fast enough (well, when running on my crappy notebook).

After coming to this conclusion I decided to code an engine closer to the
old-school wolfenstien 3d styled raycasters... I still used vectors to create
the walls, but it was closer to Ultima underworlds block based maps (but
alot more simple). Once making a map viewer with textures (yup... I did
some research), I came to the conclusion that it was too slow... sure; it
would of ran fine on a faster computer, but I don't want to make casual flash
games that require "good" computers... I want it to work on more peoples
computers... so I decided to bite the bullet and learn AS3.

Luckily for me; AS3 wasn't such a jump... infact I found it more logical and
alot nicer to work with than AS2... it reminded me of C++ in alot of ways.
I taught myself the basics over 5 days (yes; the NEST game)... then went
straight to work on converting the last engine I was working on in AS2 to
AS3.

The basis of the engine
were written on the first
day... but because of
University and sickness;
I fell behind in my
programming and only
recently got back to the
project. Currently it has
one kind of monster, a
default weapon, operatable
doors and stereo sound.

Alot really needs to be
added, but these are very
small things that won't take much time... well... the graphics will actually... I've set
up an annoying process for myself (yes; silly me).

I'm hoping to have a playable demo ready very soon (more playable than the one
I'm adding at the bottom of this blog entry) which will have more map tile textures,
life, a life bar (so yes; a way to die!), coloured keys for coloured doors and an exit
for the level.

In the Final version I want at least 2 more monster types, two more kinds of gun and
a lot of levels... Maybe a survival mode like Raccoon Crisis and highscore tables.

You're probably wondering why this is so primitive compared to alot of other 3d
flash engines out currently... Well that's simple:
1. I wasn't aware how much faster AS3 is than AS2 when I started coding this.

2. I wanted to make something that runs fast on most computers... the problem with
alot of these newer engines is that you require alot to get them running... sure; the
tech demos seem fast, but when adding in the further complications of a games logic
(collision detection, multiple animated objects, physics, particles and so on), you
might notice a bit of a slowdown... but if you have a cheap notebook like me;
A MASSIVE SLOWDOWN! So I wanted to just make something most people
can play.

Well, hopefully this will be done soon so I can move onto bigger and better things...
I hope you enjoy the tech demo:
...demo removed...

No comments:

Post a Comment