This is the idea I have about how naming should work in an online multiplayer game (such as World of Warcraft or Guild Wars). The current method is that a player picks a name and logs into the game (or world), and everyone else knows who they are by the name they have picked. This isn’t unlike being born into the real world with your name tattooed on your forehead. Everyone knows your name, even if they have never met you. This also means that no two people can have the same name. So if you want to be “Joe”, too bad. The only real advantage with this system is that everyone has a name that is unique and you can, therefore, single people you don’t know out from a crowd.
But, what I propose is that no one in the game has a name by default. When you see someone, you see them, without some magical name floating over their head. At this level, you are lost in a sea of nameless people, so I will discuss the two ways people get names. The first method is to meet and play with people in the game. You can assign any name you want to these people. It can be a friendly name that you know them by. You can also name them “Jerk” if you don’t like them. The other method is to apply a name to someone you know in real life. Each person’s characters in the game has a unique identifier (number or maybe an e-mail address) that you can add with a name to make sure you know your friends when you see them in game without having to arrange a meeting.
No more seeing “L33tDud3” wandering around your server. No more Legolass, Leggolas, Leegolas, and Gandalph wandering around … unless you want to see them. It means you are giving someone a name that means something to you. Of course, all this means that you will be known by your relationships to other people, as well.