Somewhat off topic, but that's seems to be our speciality
I agree with Daniel, the question marks are there for a reason, if they bother you so much, then they are doing just what they were meant to do
Hailstone does of course raise a very valid point, I think a two pronged attack is in order...
1. HUD displays, we add the ability to specify one or more 'HUD counters', with a text description pulled from the lang file, which can then have a number (dynamically set) displayed next to it. This provides a mechanism to display some sort of 'score' or a countdown timer, or other things of that nature.
-- eg...
registerHUD("Score", "top-centre");
-- ...
setHUD("Score", 0);
--...
score = score + 10;
setHUD("Score", score)
2. For using the player's name we could add 'variables' in the lang strings... I'm not actually sure this is a good idea though... might get messy. In essence, lang strings could have '$1' or some such in them, then in Lua this could be set (possibly in the showMessage() call).
-- in the lang file...
hello=Greetings $1, welcome to such-and-such a scenario.
-- in Lua
showMessage("hello", "header", playerName(0))
Of course different languages have different grammars, for a simple use like the above this would be fine, if someone tried to get to clever with this, they could easily render their scenario untranslatable (or make it very difficult).