You’re a good player. You’ve got all the basics down pat: you understand your character, when it’s your turn you make decisions (even bad ones) rather than hold up the game, and when you sit down at the table you are ready and eager to play.
You’re definitely holding up your end, but as you’ve already heard a thousand times, gaming is a social activity, and to really bring a game session to the next level everyone else has to play well too. You might still have fun even if you’re the only one playing well, but if the game gets cancelled because no one else is having fun it won’t do you much good.
Luckily you can help your fellow players. No, not tactical help — this is not about making sure everyone is healed up or has a marching order buddy before you head into the kobold caves. This is about voluntarily passing the focus, giving up some of your own glory to help others shine.
1) Embrace their character concept — A player wants his necromancer to be dark and mysterious, so try and play like he is, no matter how badly that player sells it. Give him the benefit of the doubt and buy into the character concept he is trying for, don’t disregard it because “you’re not convinced.” If you embrace the concept you will make it easier for that person to play better.
2) Play up their talents — Much like embracing their character concept, mentioning things that another character is good at reinforces their character idea and makes it easier for them to play up their own strengths. Having clear strengths (or weaknesses) makes it easier to get a grip on the character. “Hmm, some kind of markings here in the mud. Redhawk you’re supposed to be the hotshot tracker, what can you make out of them?” The temptation is always to be the one to do things, particularly when the GM has already handed you the situation, but if something involves a trait that is more important to another character, roleplay passing it to them instead — not because they are more likely to succeed than you, but because it’s cool for them to do it.
3) Create soil for their issues — Help generate roleplaying situations that suit the other characters. If one character is supposed to be a bereaved paramour, start innocent discussions about how nice it is to be a family man. Be the straight man and lay ground work for the other character to step up and play into the spotlight.
4) Metagame your tactics to let them win — You just finished off your own opponent, and this round you could snipe the badly-wounded evil prince with an arrow and take him out, but your buddy has been dueling the creep for rounds. Dramatically he deserves the kill, or at least a chance at the kill. Don’t just check out of the fight or leave him hanging if he needs help, but maybe delay and let him go first, or attack another secondary opponent instead of stealing the kill. [The opposite case is the one where your fellow player would enjoy roleplaying having his kill stolen, but that's less likely.]
5) Call in other characters — When you are in a scene where the characters are split up, roleplay calling in other player characters for help. “Alien DNA? Look, I just work here sister. You better call Doc Huxley.” This can be a sub-case of referring to other character’s talents, but you also might just bring them in for rationalized reasons (“Liz got us into this, she better think of a way to get us out!”). The alternative is to remain passive and let the GM control when characters join the scene, but prompting the GM to pass the focus to another character who isn’t getting any at the moment is a good constructive move.
Help others play better and you’ll find you’re in a better game overall — more fun for them and more fun for you. Next time it might be them helping you.