Hello,
I've bumped into a rather harmless but annoying bug in UT. As my girlfriend plays UT on my machine occasionally I wanted to setup keybinds to change playername quickly.
The problem is that my nick is ¤{tmp//®åþhïdæ}¤, and while this goes fine when I set it as nick normally, when using 'name' or 'setname' somthing fucks up and sees the '//' in the nick as a comment start. So when doing 'setname ¤{tmp//®åþhïdæ}¤' it results in the nick being '¤{tmp'. (Already tried things like 'setname ¤{tmp2F/®åþhïdæ}¤' and 'setname ¤{tmp2F2F®åþhïdæ}¤', but that doesn't help. Also inserting useless escape sequences like a and n between the slashes doesn't help.)
So I thought I'd fix this with a small .u file with the nick hardcoded in, but this proved a bit more difficult.
I downloaded VUC++ and found that the command that changes the nick is located in Engine.Pawn.PlayerPawn -> 'exec function SetName'. Now I read lots of tutorials and I deduced from them that a function prefixed with exec is executable from the console and that subclasses inherit everything from the parent class. With this info I created this:
Code:
//package namefix
class NameFix expands PlayerPawn;
exec function name1()
{
ChangeName("nick1");
UpdateURL("Name", "nick1", true);
SaveConfig();
}
exec function name2()
{
ChangeName("nick2");
UpdateURL("Name", "nick2", true);
SaveConfig();
}
This compiled great and then I had a namefix.u in my system dir. Now, this file didn't do jack shit, because the console commands were not working.
After some more digging around I figured I needed a namefix.int to get the .u loaded... But I can't find anything about it and I haven't got a clue what to put in it. I tried stealing from my specfix.int and tried the following in the .int:
Code:
[Public]
Object=(Name=namefix.namefix,Class=Class,MetaClass=Pawn.PlayerPawn)
[Public]
Object=(Name=namefix.namefix,Class=Class,MetaClass=Engine.PlayerPawn)
[Public]
Object=(Name=namefix.namefix,Class=Class,MetaClass=Engine.Pawn)
[Public]
Object=(Name=namefix.namefix,Class=Class,MetaClass=Engine.Console)
But none of this does anything. I can't find anything related to 'namefix' in the unrealtournament.log either
Could someone here be so kind as to kick me in the right direction? Because I've been at it for hours now and I'm at the point that this _HAS_ to work and that just changing my nick would be too easy.
Thanks in advance.