So as it is now, what you are shooting for may be a bit out of reach. I can't speak to your skill level, but from what I read, I'd say you're just starting out?
We're using Yo-yo Games' Game Maker program. I know this is usually used to create casual games, but I'm confident that it will allow us to implement all the gameplay elements we need for R. I'm less certain about how well we can actually produce a product that can be played on different systems. Ideally, I'd like to see this game on both PC and PS3, but resolution problems are currently a cause for concern.
GameMaker isn't a bad tool. It's fairly basic and clunky, but you can rapidly prototype and test your game. I used it for roughly 4-5 years, and I very much enjoyed it. However, it is a restrictive tool. You won't get amazing performance, but it will be good. That being said, I don't believe PS3 development is part of GameMaker, as with most consoles. This, I'd say is what you should be concerned about least, especially because porting to any console is a huge investment. This is because you need a development kit, or at the very least a $1200 debug PS3 to actually run and test your game on the platform before they accept it and put it onto the network (which they also have a certification process before any of that as well). You can read more about it here: http://www.gamasutra.com/php-bin/news_index.php?story=17707
PC is always a viable and easy option for publishing, so for now I would recommend that you stick to that.
Right now we're coding the game in 1280x720. But what happens when this is played on different screens? Our graphics are all pixel-by-pixel drawn sprites; expanding them by anything other than 2x is going to ( I think? ) look horrible and distorted. I'd rather not expand the view distance on the windows, but would that be necessary? What happens if someone plays this on a standard-definition television? I keep thinking about these questions and having no answers makes me realize just how little I know about what I'm getting into.
So what you're experiencing is a screen resizing issue, and in GameMaker, there's not all too much to be done with that. If you go into the global game options, there's an option along the lines of "interpolate colors between pixels," which changes your scaling algorithm slightly so that around the edges it's a bit blurrier and less distorted. Definitely do that if you're not doing pixel art.
Global game options also allow you to choose how your camera fills the screen, so if you're concerned about different aspect ratios consider this.
You may be able to find some DLL's that provide a better scaling algorithm, or use a 3D DLL and use it's scaling algorithm, but I can't really guarantee either.
OR if you're feeling ambitious, you can also create multiple sizes of your Sprites, and, assuming you can get the screen size, use the best fitting Sprite to fit your current screen. This attempt could reduce your distortion from scaling, but uses more memory and a bit of GML. So if you are comfortable managing duplicate sprites, having a larger game file, and using some GML, you could also look into that.
Again, it's been a bit since I've used GameMaker, but hopefully I've put you on the right track.
And don't forget about the GMC! They're a pretty good community, and much more dedicated and up-to-date with Game Maker than this site, so if we can't really help you, you should definitely ask this there.
One key question I would ask to this is: What motivates people to change weapons? Consider it a given that you have a starting weapon, what will make the player want to stop using it? If all weapons can grow to the same potential, why stray from the weapon you had since the beginning?
Many games that provide a varying degree of weapons do so to give you an idea of strength; the more you adventure, the stronger your weapons and armor, and the greater foes you can defeat. If all weapons are the same, then why go for any other?
Think of it in terms of Pokemon, as strange as it may sound. Most players always keep their starter Pokemon, and in many cases, it's either the same level or higher than all the other Pokemon in your party. Most people avoid going out of their way to get rid of their starter, because in many cases, it's just a hassle to train another Pokemon.
If you can provide incentives to pick different weapons (ie: the new one levels up faster than your current one), then it could be a very rewarding system, especially if you have any plans of PvP (which you probably don't, but it's a thought). As long as you provide a vast array of abilities/playstyles, it could allow players to have a choice - and players like choice. On the topic of choice, I offer food for thought: Perhaps allow for weapons with both passive or active abilities. One may improve stealth and agility, while another allows you to freeze an opponent solid.
Alternatively, if you choose not to go down that path, you can also opt for a perk system each level, not unsimilar to Borderlands. Each level earns you a new bonus, so in the endgame, you have a very distinctive playstyle regardless.
For me, I'd say it's a mix of Olof and Mussi's responses.
When I begin a game, I consider the foundation of it - what I feel makes it unique in both atmosphere an gameplay. From there I more or less branch off in every direction and seek to explore every possibility using the atmosphere and gameplay, so that the player can learn on their own just what they are capable of. Typically it's me sketching new ideas and their functions into a day planner or something, but as I test it, and ask for advice from other, one of the key things I look for is proposed changes.
If an element in the game seems more like a matter of luck than anything in such a way that it seems impossible or frustrating, I remove it or look for ways to better it. Sometimes I have an initial idea of how I'd like something to look, and it ends up not fitting into the game as well as I had hoped.
When I feel that the game is polished, and appears stable, and runs efficiently, then I feel it is able to be released. The main game is complete in my eyes.
However, much like Olof said, I may still support it, design add-ons, extra levels, fix missed bugs, and tons of other things.
When I've exhausted my ideas, when I feel like it is time to move on, then the game is truly finished once and for all.
Likely yes. To my knowledge, a lot of today's 3D games use 2-Dimensional particles in conjunction with a technique called "billboarding" (there's even a recent article that covers it a bit located here, but it may help to also follow the earlier articles he's made as well). What that means is that no matter what direction the object is being seen from, it will always show the same image. To my knowledge, this is implemented by making a square (based on your library it may be made using 2 triangles), applying a particle texture to it (I've attached an example one), apply billboarding, and then program something to make the rendered particle move and fade in/out.
I'm assuming you've worked on 2-dimensional games already. It's really the same concept as that, except using a technique that make the image face you constantly. I'm sure there are other ways of doing it as well, but this is one of the basic ways of doing that.