I'm currently a PHP programmer and one of my childhood dreams is to create a game.
The problem is I don't know Flash. I'm not great at drawing stuff or even artistic. I could program a little with JavaScript and I could consider myself intermediate with JQuery.
Question
How do I get started with Flash Game development? What books do I read first?
The type of game is a side scroller about an Indiana Jones type of character and the setting is on the jungle with trees and snakes and a lot of animals.
Try
http://www.kirupa.com/developer/flash/index.htm (Game Development) section.
You need to go through actionscript.
get a actionscript book and flash ide.
ActionScript: The Definitive Guide
Two and half years ago I was exactly where you were. I've since learned Flash and released a couple of popular games. Here's what I found out along the way:
You can find some pretty good game development tutorials at http://www.makeflashgames.com
The tutorials will lead you through some simple but iconic games into more advanced ones like Tower Defence.
All source codes are provided, and you will find step by step, line by line explanation of what's going on. =)
Welcome to the wonderful world of Flash game development!
There are some tips I'm going to give you for beginning:
You come from a programming environment. That is good, as you will find the Flash CS* is a very hostile IDE when you want to do some serious coding, as you will do in your game. Recommended IDEs: Flash Builder (formerly known as Flex Builder) is a great IDE, based on Eclipse, but you'll have to pay something for it, it comes with everything you need to start developing in ActionScript 3. FlashDevelop, if you are in Windows, it's also a very good IDE, though you'll need to install the free Flex SDK along with it to begin.
"Wait, ActionScript 3? WTF, I just wanted to make games in Flash!". Well, yes, you can make games in Flash, but it's a difficult place to code, so you just keep ActionScript 3, which is the underlying programming language, and use a better IDE to keep you code together. Having said that, you still have a use for Flash: to make the illustrations. You can do the illustrations in Flash and insert them into your code.
You might want to learn the ropes with AS3 first. It's very different to PHP, but you will do OK, it's very similar to Javascript!, as they come from the same ECMA standard.
Once you know your way with basic AS3, you will want to know how to dispatch and listen for events. Events in AS3 are the main way to communicate between classes. Events allow you to give an instruction to load a file, and then process the file only after it has been downloaded. They are also crucial to use Flex, the graphical library.
"But it's Flex the SDK?" Yes, it's a combination of things: it's the SDK, the whole package you download, it's the AS3 compiler, which takes your code and outputs it in a SWF file, and it's the graphical library, which you could use to build UIs quickly. But you probably don't want to use that yet for your game project.
Once you know AS3 and events, you'll probably want to download a AS3 game library like Flixel (http://flixel.org/) or FlashPunk (http://flashpunk.net/), which have some classes that will ease you the way you'll think about your games.
Make a Pong, and make a Tetris. Both games have all the necessary things games have, like a game loop, collision detection, sounds, etc. These are relatively simple games.
After you know how to make A game, you should start beginning to make YOUR game. You will also want to share your goals with other game developers. I recommend you to go to the The Independent Gaming Source, http://www.tigsource.com, which has some of the best forums for game developers, and you will find a lot of games, wacky, weird and good ones.
It's important that you release your games, no matter how unfinished or bad they seem to be to you. It's a common issue that game developers are a little bit too perfectionist, and that is a problem when you go around 2 years and you're still making a game. Cactus (http://cactusquid.com/) is a Swedish game developer that has easily developed like 40 games in two years, though he mainly uses Game Maker for programming. You will like him.
I have run out of tips, so it's time to get going and start learning ;-) Good luck!
You might be also interested in similar questions like:
There's a similar question, What technology should I use to write my game?.
My suggestion there, was to consider the Unity 3d Game Engine. In addition to being a fairly powerful development tool, it has several cross-platform deployment options. You can build both a stand-alone executable (for Windows and Mac, not yet Linux), and a web-browser version.
It also uses both Javascript and C# (and Boo, a variant of Python) for scripting languages. These are based on Mono, the Open-Source version of .NET, so it's not just a gaming platform, but has access to all of .NET's abilities (well, those implemented in Mono anyway).
See the Licensing page for a long list of Unity's features (the Basic version is free). And check out the list of Unity-based games, of which the first is Tiger Woods PGA Tour Online, by Electronic Arts.