PDA

View Full Version : What kind of games are best to start with?



Eriken
06-01-2003, 03:54 PM
I'm currently considering creating (or at least start with :wink: ) a game, and I've got a few ideas which seems to be fun enough to try making.

I'm just abit unsure about taking too difficult things on. Maybe a project with others might be a better idea, but I don't know.

My previous experience in game programming is limited to creating a shoot'em thingy in Turbo Pascal, and Snake also in TP some years ago. Now to get started again, I might need a few advices :?

My ideas so far are:
1) Space Strategy - (basically like Master of Orion, just simpler)
Should basically be 2D with planets, ships and so on to move around turn-based. (also considering to do it as an online game with client/server)

2) Catapult game, a 2 player game where the goal is to hit the other player's man. To do this you have to tear down quite a bit of his wall first. (If someone remembers the game from an old catridge-box back in the early 80's) (2D, turn-based)

Those are the ideas I've been thinking about most, other ideas:
- Catapult-game in 3D with variable types of walls. (I've never done 3d)
- I'd like to see Super Cars (The Amiga-game) on a PC someday :wink:
- Battleship with IP-connection between players.

I'm full of ideas but abit slow on the start. Any comments?

-------
Eriken (-20 degrees Celsius outside, anyone got a blanket?)

Alimonster
06-01-2003, 04:11 PM
How about a 3d version of this (http://www.flingthecow.com), where you have to hit a moving target. You know it makes sense!

Of course, you might want to have a think about the DGDev team of winners who are planning to write some sort of game. Or something. Various threads about this are peppered throughout the forums - here are a few (you might have to wade through a bit of off-topic stuff, but that's half the fun!):

one (http://terraqueous.f2o.org/dgdev/viewtopic.php?t=34&postdays=0&postorder=asc&start=0)
two (http://terraqueous.f2o.org/dgdev/viewtopic.php?t=35)
three (http://terraqueous.f2o.org/dgdev/viewtopic.php?t=144)

There may be others too - it's kinda hard to follow :wink:

Eriken
06-01-2003, 04:19 PM
Oh right, cow-flinging in 3D, I'll leave that to the pros and farmers who wants to do something with their computer :twisted:

I have been reading through the DGDev-Project-threads earlier (Oh yes, I've been stalking for a while) I'm not sure that I can help there. Maybe I can join on as the Newbie? :wink:

TheLion
06-01-2003, 05:24 PM
A good game to start with is some sort of Space Invaders game, just to get the basics and the feeling... Well most people than advice you to move slowly up the ladder, but I won't ! :) After that just rush in, write a few really bad unfinished games and end that line of failure with sometime that is viewable for the audience ... If you done that you can take on projects you like! ;)

savage
07-01-2003, 01:23 PM
2) Catapult game, a 2 player game where the goal is to hit the other player's man. To do this you have to tear down quite a bit of his wall first. (If someone remembers the game from an old catridge-box back in the early 80's) (2D, turn-based)


Hi Eriken,
As has already been mentioned start with something simple that will allow you get to get to know your API of choice ( DirectX, OpenGL maybe even SDL ) and then build on that knowledge that way you willl build on your successes and will be more likely to complete each project as it gets more complex.

Just a note on the Catapults game. There is one that makes uses of SDL and runs on Windows and Linux ( using JEDI-SDL for SDL ) and you can get more info about it @
http://www.global-rd.com/catapults/
The game supports "classic" style and "real time" game modes.

Ariel ( the owner of the above version of catapults ) has also released the source code .

Eriken
07-01-2003, 04:57 PM
Thanks for the ideas.

I'll think I'll try something easy just to see if I actually can create anything at all. And if I don't end up changing my mind it'll be the 2D Catapult thing, which isn't exactly like the thing Ariel created. It's more like the cow-flinging thing where the goal is to knock down the opponent's wall and hit his man. Should be easy enough, if I can sort out gravity :wink: (Houston, I do have quite a few problems)

And if that works or gets completed I'll just throw myself at the Space-stuff, or maybe just call NASA and ask if they need an astroid expert. :lol:

--------
Eriken

TheLion
07-01-2003, 05:07 PM
Gravity is not the hardest thing to do... Take a look at a basic particle engine for 3D and find out how it works it's basically the same.

In theory you just have 2 variables, one is the force the catapult gave to the projectile, say 10px (per frame, would be much though), to make it move up. Then there is our normal earth-gravity, say 4 px. Every second (or less) you just substract the earth-gravity from the force the projectile got from the catapult.

So after 1 second it moves up 10 - 4 = 6 pixels
after 2 seconds it moves up 6 - 4 = 2 pixels
after 3 seconds it moves up 2 - 4 = -2 pixels (so it moves down)

and so on and so on until you hit something or a minimum height is
reached and the projectile is destroyed :)

Of course I would use smaller time frames than seconds! ;)

Alimonster
07-01-2003, 06:11 PM
If you want some simple gravity then check out this bouncing ball program (http://www.delphiforfun.com/Programs/bouncing_ball.htm). It's simple enough to change it into a catapult - add a horizontal movement. You can then give the object an initial upwards speed and let gravity take care of the arc. The horizontal speed will be the same all the time (just add it each time) unless you want things like wind or air friction. The main challenge after that is the collision code and creating good cow graphics (possibly rotating them mid flight :P).

In case you're interested, note that Alexander Rosendal has a tutorial on a space invaders shooter w/ DelphiX here (http://www.gameprogrammer.net/index.php?fuseaction=tutorial.tutorials).

Eriken
08-01-2003, 01:33 PM
The main challenge after that is the collision code and creating good cow graphics (possibly rotating them mid flight ).


Excuse me for being abit chicken, but I'll think I'll go for something either completely round or square (rock or brick).. If I decide to do something advanced like cows (hum, I get a Monty Python-flashback here somewhere) I'll let you know AliCow :twisted:

And Gravity should be possible to handle yes, thanks for the info.. I haven't started worrying about collision code yet :roll:

TheLion
08-01-2003, 01:38 PM
collision is easy too! ;) Just check for the position + width (and height) and check if the value is higher than the position of another sprite if so then you collided, if not than you didn't, this method is also known as a rectangular collision detection! :)

The entire story changes of course when you want pixel perfect collision detection, but this is easy too! ;)

Eriken
08-01-2003, 01:43 PM
The entire story changes of course when you want pixel perfect collision detection, but this is easy too!

Somehow I think I need this one since not everything will be rectangular. So do you have some links or something about it? I think I've read something about it somewhere, but at the moment I'm not able to find out where.

TheLion
08-01-2003, 03:31 PM
Well rectangular collision detection is not only for rectangular images, but it is less accurate (alot less) than pixel perfect! :) I'll have a look for a good tutorial and otherwise I can e-mail you one...

EDIT : Okay, the tutorial I used to learn it is located here:
http://www.ifm.liu.se/~ulfek/projects/tutorial.pdf
It's a very good tutorial, only downside is it's in C and that it uses masks to do the collision detection. I used a simple collision array to do it, which simply is a 2 dimensional array filled with 0 and 1 and on of those numbers (your choice) is used for transparent areas and the other for solid areas. The tutorial can strike you as very hard but it isn't, I must admit that I had to read it 4 times to understand what he was talking about, but a bitmask is simply a 1bit bitmap which means that the pixels can either be black or white. What he simply checks for is if any of the solid pixels of both bitmasks (or collision arrays) overlap eachother and if that is the case you have a collision, if not then you don't! ;) I never used his code, but only the theory. I'll try to write a tutorial on pixel perfect collision detection in the near future. ;)

Hope this helps a bit...

P.S. If I where you I would start out with rectangular collisions! ;) If you are going to use pixel perfect cd you will need rectangular too, since it's best to first do rectangular collision detection and only if there are two colliding rectangles to do pixel perfect cd since otherwise the speed of you program decreases with about 25% - 50% !!!