So I've had this desire to write my own rpg game that emulates one of the classis SNES rpgs - Zelda Link's Awakening, Chrono Trigger, Secret of Mana, Breath of Fire, FF3-6 (depending on which countries release you're referencing).

I started wrestling with organizing the classes I'll need, the method I'll use for storing and loading map details, graphics, and especially how I'll manage the active plane (what the user sees on the screen), as well as some sort of animation engine that will let me manage a larger volume of individual elements that appear to be moving.
My first step, after failing miserably at creating some basic character concept graphics of course, was/is to break the project into smaller peices and tackle its individual parts. I'm sure at some point I'll be able to create an ok looking character, it'll just take time. In the meantime, lets work on animating the character...or something simpler. What about a ball? I can draw a ball right?
I did some research and found that for my purposes using an older technology Sprites, I can effectively manage quasi-3d animations in a 2d plane. The idea behind Sprites is to take a larger image (what I'm calling a SpriteMap), and draw each frame for a shape for a single movement loop for each of it's directional movement patterns. I've created a SpriteEngline dll that allows me to regsiter sprites in a dictionary, specifying a Uri uri_spriteSource, double cellWidth, double cellHeight, int fps, enum AnimationDirection etc. which will allow a SpriteManager running a single DispatchTimer to interact with each Sprite, telling it how many frames per second to run the animation, which directional animation to animate, and if the animation should be animated in the first place.
I've almost got a test application running that will allow users to use their arrow keys to move a ball that will appear to be bouncing across the screen. In reality, a rectanglegeometry the same dimensions as a single frame on the ball's spritemap hides the rest of the image from the user, and what we are actually seeing is the entire spritemap's Canvas.Left/TopProperties being manipulated.
This being the first step in what will no doubt be a long journey, I'm thinking I'll develop environmental graphic elements next, keeping in mind of course that everything will need to be reusable. Templated trees, bushes, rock formations, and basic dirt/grass/sand/rock patterns for flat surfaces. I could very well be working at this in my off time for months if not years to come...but it's all in good fun =D