I don't know if you're still paying attention to this thread. But I have done some research for something I am working on and have some more information for you.
fetch_musername is the function & hook that creates the html marked up username. This is what allows you to colour names based on usergroup and such.
Now, near as I can tell, to achieve what you desire you will need to do the following:
- Create a user profile field to contain your display username.
- Create a template and register the variable for dusername.
- Query the sql table for the field you created in step 1 and assign that string to dusername.
- NOT RECOMMENDED You can now overwrite the musername function through a plugin substituting the dusername variable for the username one currently in the function. This is simplest, but use it at your own risk.
- The other method is to create your own function fetch_dusername, copy the musername function, subbing as I suggested above, setting it up as a hook as well. Then going through your templates and replacing all references to musername and fetch_musername.
It's a bit of a PITA the second way. And probably someone better at me with php and vBulletin will be able to offer you better direction. But since no one spoke up, I thought I'd share the information I had.