Sign in to follow this  
Nightslyr

Beginner looking for a nudge in the right direction

Recommended Posts

Hi guys. I'm a freelance web developer looking to try my hand at making a simple game. Due to my day job, I already have a lot of the basics down - variables, control structures, basic data structures (arrays, lists, stacks, queues), some basic OOP (factory method, abstract factory, composite, observer, strategy), and some general experience writing programs and getting them to work. So, with that all said, I haven't really tried to make my own game yet (well, there was that web-based RPG I tried to make in ASP.NET... yeah, it was as painful as it sounds) as I don't really know where to start. I've decided to try my hand at a Tetris-esque game for my first project, and I think I've identified the areas I need to look at, but I'm not sure where to find quality, modern information.

[list][*]Game loop. I'm not sure how to figure this out, in terms of frame rate, let alone implement it.[*]Game 'flow'. Title screen -> game proper -> game over/title screen again. I'm guessing game state could be saved in a stack, but not sure.[*]Algorithms. I haven't had to do math more complicated than balancing my checkbook for over a decade, so I'm pretty deficient in that area (not that I was especially gifted before - a year of calculus in college, and that was it). For my game, specifically, I'm curious as to how I can tell my puzzle pieces to not escape the boundaries of the game 'board' area, and how to fit together without clipping.[*] Graphics and sound. No idea here. Puzzle pieces would be objects, but I'm uncertain if each shape would be of its own class, or if the pertinent information (size, shape (including the 'physical' information of its sides), and graphic) would all be loaded into generic Shape objects. Sound is a bit easier, I think, as each action (shape rotation, shape collision) could invoke a sound.[/list]
I have some background in PHP, C#, and JavaScript. I have done some C++, but that was over a decade ago. I'm leaning towards using XNA as I have VS 2010 Professional and I'm familiar with the core language. I really just need a nudge in the right direction - tutorials, videos, books, anything else you can think of/recommend.

Thanks! :)

Share this post


Link to post
Share on other sites
[quote name='KevinM1' timestamp='1317994467' post='4870115']
Hi guys. I'm a freelance web developer looking to try my hand at making a simple game. Due to my day job, I already have a lot of the basics down - variables, control structures, basic data structures (arrays, lists, stacks, queues), some basic OOP (factory method, abstract factory, composite, observer, strategy), and some general experience writing programs and getting them to work. So, with that all said, I haven't really tried to make my own game yet (well, there was that web-based RPG I tried to make in ASP.NET... yeah, it was as painful as it sounds) as I don't really know where to start. I've decided to try my hand at a Tetris-esque game for my first project, and I think I've identified the areas I need to look at, but I'm not sure where to find quality, modern information.

[list][*]Game loop. I'm not sure how to figure this out, in terms of frame rate, let alone implement it.[*]Game 'flow'. Title screen -> game proper -> game over/title screen again. I'm guessing game state could be saved in a stack, but not sure.[*]Algorithms. I haven't had to do math more complicated than balancing my checkbook for over a decade, so I'm pretty deficient in that area (not that I was especially gifted before - a year of calculus in college, and that was it). For my game, specifically, I'm curious as to how I can tell my puzzle pieces to not escape the boundaries of the game 'board' area, and how to fit together without clipping.[*] Graphics and sound. No idea here. Puzzle pieces would be objects, but I'm uncertain if each shape would be of its own class, or if the pertinent information (size, shape (including the 'physical' information of its sides), and graphic) would all be loaded into generic Shape objects. Sound is a bit easier, I think, as each action (shape rotation, shape collision) could invoke a sound.[/list]
I have some background in PHP, C#, and JavaScript. I have done some C++, but that was over a decade ago. I'm leaning towards using XNA as I have VS 2010 Professional and I'm familiar with the core language. I really just need a nudge in the right direction - tutorials, videos, books, anything else you can think of/recommend.

Thanks! :)
[/quote]

I am working on a [url="http://http://www.gamefromscratch.com/page/Game-From-Scratch-CPP-Edition.aspx"]C++ game tutorial[/url] that while not finished, provides a lot of the information you are looking for, including game loops, creating a base graphic class, input, game flow and to a degree algorithms ( more so once completed. ). You can probably [url="http://http://www.gamefromscratch.com/page/Game-from-Scratch-CPP-Edition-Part-2.aspx"]skip ahead to part 2[/url] as the introduction and part 1 are more about setting up your development environment and configuring SFML ( which is more tricky than you would expect ). Although it's C++ the basic concept will apply to C# or other languages.

It's long for what is a glorified pong clone, 7 parts already and we only have a single paddle and a ball so far! That said, this is intentional as I found there are very few tutorials about laying out an actual game in it's entirety so this is the most overkilled pong tutorial you will ever read! :)


EDIT: Oh, by no means is this the only way to lay out a game, nor probably even the right way! ;) It is however "a" way. Along the way it tries to be a bit of a C++ primer as well, so if you are going to choose another language, you can skip all those bits. Although, many of the OO concepts in C++ are identical or near to identical to C# and very close to Java, so there might be some value there.

Share this post


Link to post
Share on other sites
Here are some resources I've been using to learn XNA / C#.
Microsoft's 2d shooter tutorial - [url="http://create.msdn.com/en-US/education/tutorial/2dgame/getting_started"]http://create.msdn.com/en-US/education/tutorial/2dgame/getting_started[/url]

[url="http://www.xnadevelopment.com/"]http://www.xnadevelopment.com/[/url]

[url="http://xnagpa.net/index.php"]http://xnagpa.net/index.php[/url]


[url="http://www.riemers.net/"]http://www.riemers.net/[/url]


[url="http://www.bluerosegames.com/brg/xna101.aspx"]http://www.bluerosegames.com/brg/xna101.aspx[/url]



That should give you a good start with XNA if you want to give it a try. I've been messing around with XNA for about a month, and I really like it so far.

Share this post


Link to post
Share on other sites
I highly recommend the GameSalad engine for beginners as there is very little programming needed. We have a great set of [url="http://www.design3.com/software/gamesalad"]free tutorials on GameSalad[/url]

If you don't mind some programming Unity has a free version that you can make commercial games on just about any platform and is very user friendly. Their user base has been booming over the last couple years. We have a mixture of free and subscription [url="http://www.design3.com/software/unity"]tutorials on Unity[/url].

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this