1. Conversing with good/great players. You can only get good to a certain extent without playtesting with players who are better than you. You are able to learn the attributes which make them good/great players, how the top decks are played and constructed, etc.
2. Not limiting yourself to what deck(s) you will use for tournaments. I haven't read all this thread, but people who claim they are better with one deck than another and refuse to use another type of deck just aren't great players. A great player can pick up any deck and be proficient with it within 5 games, like Fulop said.
3. Knowledge of the metagame. Scout what people use, whether it's one tournament, two, all season, etc. If you know a player prefers to play certain types of decks for tournaments, make a note of it. Know what to expect, or at least have an idea. Even when a set hasn't hit tournament play (like Platinum now), think about what players around you used beforehand. Past history often makes a huge difference among the overall field. Often you are able to at least scale down what people will use, unless you live in California like me and have to deal with 100 possible opponents every tournament ;p.
4. Knowing the rules. You don't have to be like Pokepop or BDS or even a Professor, but know the basic rules and how they are applied to tournaments. Some of this comes from experience, some of it comes from just following up on things. Rules, penalties, etc., know when, why, and how they are used in tournaments. Do not think just because we have judges that you don't need to know the rules and regulations.
5. Confidence. I personally never go into a tournament thinking, "I'll be happy with a 5-2 whiff cut today". If you have playtested, and done your homework, you should be confident in your abilities enough to win the tournament. Of course, the more time you spend testing, the more tournaments you go to and the more tournaments you do well in, your confidence will rise, but never have a loser mentality if you want to be a great player.