Starting game dev as a hobby

Something I've often wondered; if I wanted to be able to mess around making potentially very simple little games on a windows PC, where would I start in terms of what software is needed, are there freeware versions, and good tutorials?

I've dabbled a bit in the distant past with game makers like DarkBasic, but I felt I should probably get to using the tools directly.

I'm an experienced PHP dev, so I know how to learn a language and construct programs in an OO way. I would to get into iOS stuff when time permits, too - so some version of C is the language of choice I'm guessing.

I'm just wanting to do this as a hobby - to learn something new and have a bit of fun with it, so I need to think about making it cost as little as possible.

Thoughts/pointers? :)
 
Cool stuff, it is an addictive hobby ;)

I use Microsoft's XNA to hack out quick things, it uses C# and you can do it for free using Visual Studio Express. A great start if you don't mind getting your hand's a little dirty.

On the other hand the Unity engine is also free and whilst it only looks like a level editor, you can actually build anything in it; and the engine is all build and ready to go.

There are so many great choices out there today, so don't take my word for it; go out try a few and decide yourself what you are most comfortable with. But most importantly have fun! :D
 
pointers? :)

You'll get into those soon enough...

For general-purpose stuff, you're ideally looking at either C++, C#, or Java. Coming from PHP I'd suggest the latter two.

If you're going the C# route, and using Windows 7 or earlier, then Visual Studio Express + XNA is completely free, and pretty much sets itself up, plus has tons of tutorials to get you started. Mono requires a bit more effort to set up, but it's worth it if you want cross-platform development (including iOS and Android). I find it's great for both getting a prototype built and polishing a finished game, so I'll sing its praises for ages.

There are plenty of options, on the C++ and Java sides too, so don't rule those out. It's most important that you find something you're comfortable with. :D

EDIT: Wow, I pretty much just wrote Kerrash's post word-for-word... :D
 

Slopey

Volunteer Moderator
For cross platform, in a variety of languages (Javascript/C#), Unity is the way to go. It's incredibly powerful, and easy to use. You can write a simple game in a few hours (if that), and compile it for their web player, PC, Mac, iOS - you name it.

It also has nowhere near the learning curve of XNA or DirectX.
 
If you're interested in making simple games with very little hassle, then I'd recommend downloading Construct 2. It's a very accessible, but pretty powerful, 2D game engine that uses visual programming to make HTML5 games (you can also dabble with the code directly if you wish).

I design and prototype game ideas in my free time using this and it is extremely easy to get started on an idea very quickly. There are also a lot of useful resources on their site for newcomers.

The free version gives you loads of flexibility to make games, but once you're used to it you may want to upgrade to the personal edition. Anyway, check it out at www.scirra.com
 
Last edited:
BlitzPlus is a good place to start...

For a limited time it's free (normally $59 USD), all you have to do is register on their official site... it's primarily designed for 2D games...
http://www.blitzbasic.com/Products/_index_.php

an example here...
http://www.youtube.com/watch?v=hE6EJUnLTmE

You can upgrade to a more advanced version for 3D (and of course 2D), producing things like...
http://www.youtube.com/watch?v=LvFMZNmj-Eo

I tried Blitz, having learned the original years ago on the Amiga. I had very bad experiences because it is such an old product the support for it is terrible.

But I can thoroughly recommend Nuclear Basic. It has great shorthand game development and for those that want to progress the power of their engine it has great plug-ins for C++ development. If you want to do anything in 3D I thoroughly recommend how uncomplicated NB makes it. If I had more time I'd be finishing my game.
 
Unity looks interesting (and I had no idea that it was free) .... I quite liked darkbasic back when I tried that, but in a way it felt like I was learning a niche language, and if you're going to learn a language - its better (imo) to get one that you can use for other things too. Does unity do 2D as well as 3D?

I also didn't want to learn something that was just written and compiled into C when it would probably be of more use just learning C as then you can program a language, not just use a language built specifically for a certain purpose, if that makes sense. A bit like with PHP you can script other server stuff (I don't do python or perl).

I saw construct 2 only the other day (and I've got one downloaded called gamemaker studio which sounds like its on the same lines).

The problem I'm likely to have is lack of time and the ambition to do something greater than I should at the start.
 

Slopey

Volunteer Moderator
Does unity do 2D as well as 3D?

Yes, it does - after all 2D is just a flat plane in 3D with the camera looking directly at it....


The great thing about Unity is it has a huge installed user base, it's trivial to import assets/models into, and you have a choice of languages to use within it. The support forums are excellent, and the net is full of tutorials for virtually everything.

And it cross compiles to Mac/Windows/iOS, and you can even run your game in a web browser - it doesn't get easier than that!
 
I would recommend using LIBGDX as it is free for running on Windows, Android and HTML5. To run under IOS you do need to spend some dosh.

It has great demos and simple sample code, really helpful forums, is really quick and big feature set which is expanding all the time.


Edit: Also "Spine" is a great tool for Unity and LIBGDX and others to create fab animated characters and items. See http://esotericsoftware.com/
 
Last edited:
I'd suggest using something like GameMaker as a starting point so you can get to grips with how it all works and comes together. You basically drag and drop your core elements and can script whatever you wish to do within the objects. Once you've got your head around the basic concepts, you can choose to either take it to the next level by snaffling the pro edition which gives you some shiny extras but you have to pay for that.

If you're feeling a little braver, Unity is probably the next step up and maybe a better starting point if you're comfortable with the structure of a game.
 
Just seen this thread... Unity is a fantastic tool for doing things quickly and easily. I strongly recommend it. Lots of my friends use it for professional game-making, and they swear by it.

However for 2D games I'd recommend GameMaker, as it's a bit better set up for 2D games. Don't listen to anyone that tries to insult it or say it's not proper game-making. It's a great pace to start, and can be surprisingly powerful. The original Spelunky was made in GameMaker.

It helps to know what sort of games you want to make though. There are lots of good dedicated game tools out there.
 
Back
Top Bottom