Surprise!

It’s not today silly! It’s next Saturday.
Stay tuned for more details for the extravaganza next week!

Posted in Blog PSA | Leave a comment

My new (two month old) laptop

Here are the specs which never put up…Sorry? :3

Straight from DxDiag:
Processor: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz (2 CPUs), ~2.4GHz
Memory: 4094MB RAM
Card name: ATI Mobility Radeon HD 3650
Display Memory: 2298 MB
Current Mode: 1280 x 800 (32 bit) (60Hz)
DirectX Version: DirectX 10

Posted in First, Me | Leave a comment

SpaceDefenders: Circles and arcs

Warning! Boring Maths/Geometry ahead!

While developing concepts for this game, I decided to do things the simple way and focus on getting it done rather than to learn and use complex systems that were beyond me. So I decided to learn and make my own collision system.

I came up with a crude but working method using simple geometry rules. First up to have a list of all the objects that need checking and run through them all once per update. Easy enough. Once that was done actual collision detection was needed.
To find out whether a point “Collided with the earth or not, I simply used this: "(x-center_x)^2 + (y - center_y)^2 <= radius^2". That simply checks if the distance of a point from the centre of the circle is less than or equal to the radius of the circle. Done!

Working with the paddle was really annoying. Before I began I planned to use flash's hit test but that only compares the boxes of the Movie clips and the Bitmap hit Test is really fussy. So I decided to use the same approach as above. After many (two) trials, I finally found a working solution. I would first find out whether the bullet is within a ring around the earth or not, then I would compare it's angle relative to the earth and the paddle's angle relative to the earth.
Using the same approach as above I made sure that the point was always between X and Y distance away from the earth to be considered touching with the paddle. Next using arc-tan I found the paddle's angle from the earth and the bullets. If the angle was X+-Paddle's angle then it was considered to be within the paddle's "range".
Several things complicated this part. Flash's Movieclips are stored as values from -180 to 180 where I was working from 0-360. Didn't realise this so that halted my progress for a while. Also didn't realise flash uses radians instead of degrees for trig. Easy enough problems to solve though, just had to do some detective work with the debugger (which is not that great to be honest).

There is one more problem with this system. When testing I spawned bullets at any of the 7 aliens at a keypressed. When I button mashed enough runtime errors would start flashing and everything would crumble apart. I'm not going to fix this because of two reasons:
-Stock songs will never have more than one bullet launched at the earth at the exact same time.
-It is impossible to block two bullets at the same time (even adjacent ones).
So I left it :p

In retrospect, two simple things which should have been polished in less than a week took over two. Learning's a slow process I guess :D

Posted in Dev, Space Defenders | Leave a comment

SpaceDefeners: A brief overview

Bit.trip beat was my original inspiration for this game. I watched a video from tigsource and was amazed by the sheer awesomeness of the concept. Essentially, it was single player Pong. In sync with music. With retro graphics. Then during a particularly boring lesson I thought “What other classic retro game would make a great rhythm game?”

Arkanoid.
But I wanted something different, something more original, so I decided to make it a mash up of Arkanoid and reverse Space Invaders. And thus was born, Space Invaders! (further research showed that it was quite similar to Orbient as well)

I started making art for it that very night. Art was the ultimate cause for demise for my other project so I decided to do it first this time. I made a simple spinning globe in 3 hours (though in retrospect, I would’ve done in half the time) and began work on the enemies the next day. There was very little art to do so I was done within the week.

Art!

Next came the fun part, creating the game engine. I decided to write my own collision detection system for this game.My experience with Box2D proved very helpful. Without going into too much detail, an object is added to the collision list and every update, the system checks if it is with in the earth, if it is the a thud sound is played and other magical score related things happen. It also checks if the object is within a ring around the earth or not and compares it’s angle of impact to the paddle’s angle, if both return true then a successful block is triggered :]
Very simple, very fast, very easy :D

Dynamic Sound generation was easy because there were quite a lot of already available on the interwebs (although I have yet to see a game to use this!) I eventually found one that generated square waves which were perfect. Great read here. Look for a demo half way down the page. Once that code was in, I played around a bit with random pitches witch was in the demo because I wanted XML Parsing in first.

XML, one of the best resources to use ever. Basically you get to create you own file format, no fuss. Kirupa has a good introduction for this. Each XML will contain a number of songs, and each song i turn will contain a number of notes. Finally each note has an unique ID, starting point, pitch, length and origin. Simple enough, a new array is created of each song with the notes in it.

Now all that’s left is for a switch to take in the pitches and input the correct frequency into the sound generator. This handy diagram helped. I decided to restrict the switch to accept values from C3-B5 which should be enough for songs, besides entering more values are easy enough.

GFX was interesting. To make it more obvious that enemies were firing, I decided to give each bullet a glow effect when firing, made an new class for this. Nothing worth noting.

FUN PART READ THIS IF YOU SKIPPED EVERYTHING ELSE.
User created CONTENT, That’s right, user’s get to create their own songs. Planning to include a simple one track sequencer that spews out the XML, shouldn’t be too hard. Won’t have a mp3 track playing under it like stock songs but it’ll be usable.

That’s all folks next post will probably an in depth look at collision detection.
Remember to comment on what you’d like to see next!

Posted in Dev, Space Defenders | Leave a comment

About Time!?!

Sorry for another two month break, but I do have some great news.
Make alot of progress on Space defenders after exams two months ago, will be making an indepth post tomorrow.

Until then why not try this out?

Posted in Blog PSA, Space Defenders | Leave a comment

OMGWTFBBQ?

New Laptop?
WTF?
I have no idea…
Satellite A300
More details later

Posted in Me, Random Rambles | 1 Comment

More Updates

Posted in Dev, Space Defenders | Leave a comment

Minor Update

Photobucket

Photobucket

Posted in Space Invader | Leave a comment

Teaser

Photobucket
Posted in Space Invader | 1 Comment

Weapons Free!

I’ve just played two really fun new games, Blush and HAWX!

Blush First:

Blush is a 2D “free roaming” game, similar to Flow, However it’s timed just like all the other games made by Flash Bang Studios. The game is about a jellyfish-esque fish that is trying to collect eggs to better itself… You collect eggs and attack other fish using your tentacles which makes for really interesting gameplay….Now go play it!
Done? you see? It’s really good huh! It’s 3d almost lagless graphics in a browser are awesome and it’s executed superbly, luckily I OCD otherwise I’d be playing this game for hours!

HAWX Demo:

I’ve been waiting for a realistic flight combat sim for AGES and this really hits that spot!
It has two control schemes normal and advanced. At first I was playing with the normal scheme but it felt kinda awkward since pitching up meant pitching up even if you were rolled on your side, but after using advanced, I can really say they’re done a really great job with the controls of the game. The combat can be quite confusing for a newbie but I recommend anyone who likes shooters to try this, maneuvering in true 3D is quite the experience! (The demo is 1.2Gb though)

Posted in Gaming | Leave a comment