Hola,
Crear juegos de computadora junta varias áreas de conocimiento.
Creo que en tu caso (Juegos Flash en 2D) se podría dividir en 3 áreas importantes (brevemente):
1. Programación.
Lenguaje de programación ActionScript (ECMA Javascript subset + OO Object Oriented). La mejor herramienta creo que es el propio Flash (por los extras autocompletar, parameter hints, etc.), pero inclusive puedes usar solamente el "Block de notas".
2. Diseño Gráfico.
Cualquier herramienta de diseño como Corel, Adobe, Paint ! etc., te sirven para diseñar todos los "sprites" del juego. Realmente no es necesario un producto muy complejo por que los detalles se pierden muchas veces, al hacer gráficos para juegos. (Un juego podría llegar a tener miles de cambios por segundo, si tus gráficas son demasiado "bonitas" (grandes en bytes) pierde agilidad el juego en muchas computadoras)
Cada quien menciona el programa que mejor le parece, así que tienes muchas opciones, Bitmaps en Photoshop, PhotoPaint, sinfig, GIMP, Vectores en Corel Draw, Illustrator, Freehand, Inkscape, etc.
Y mucha inspiración. ¿Está de más mencionar que tienes que ser muy "artista"? El lápiz óptico es opcional, si los gráficos son muy elaborados (al estilo Street Fighter II, que es un juego en 2D con apariencia de 3D) ... entonces es indispensable.
3. Animación.
La herramienta va a ser Flash, para juntar, animar y "binding" los movie clips con el código de programación, probar y depurar. Aunque no es estrictamente indispensable, puedes usar otro como por ejemplo SwishMax.
¿Por qué enviarte 1 link si puedes tener 702.000?
http://www.google.com/search?q=hacer+juegos+flash
Y en la 4 opción aparece esto:
http://www.forosdelweb.com/f16/como-...-flash-355045/
Que te lleva a esto:
http://www.creatusjuegos.com/inicio/
Y buscando por allí encuentras esto:
http://www.creatusjuegos.com/inicio/...showpage&pid=6
Que te puede servir como una introducción al desarrollo de juegos en Flash.
Saludos,