Admin Mod / Chat Filter
I know there were a couple of people working on UT3 admin mods. Has anyone heard if they are ready yet? I'll have my clan's UT3 server up in a week or so and I would really like to have a chat filter in place. I really appreciate those of you who take the time to make these mods and share them with the public :thumbup:.
|
I plan on making a chat filter for the Titan servers soon, however the first release will probably just be a serverside chat filter for the time being (I intend to make a clientside one eventually, which would use up less server resources).
|
Here is a rapidly thrown together test version:
*old link* No idea if it actually works because I can't test it (no UT3 client), please let me know if it does/doesn't. |
As per Shambler, I'm waiting for a client. Will start as soon as I have one.
I put some debugs in there and got someone with a client to connect - can see it loading the words OK - but it doesn't appear to be filtering at the moment. As soon as we get the client it's going to be rather easier to test! Should also be rather easier to write stuff once the webadmin code is there and the TCP/UDP classes are exposed in uscript As for logging chat, I couldn't immediately spot a way of getting date and time - couldn't see any equivalent of Level.Year / Level.Month / Level.Day / Level.Hour / Level.Minute / Level.Second to use to create log file names For logging players, the UniqueId doesn't seem to cast to string to be written to a log file...which could be a problem! Hmmm - it's stored in a config string when the player is banned (var globalconfig array<UniqueNetID> BannedIDs; ) - which must cast to a string at some point.... I've not had much time to look over the ut3 code so I could be completely wrong. |
Got another testing version done; since we now have help testing it, I will wait until I know it is working before posting an update here :)
|
I'll be working on testing that tonight. It'll be even better if we get the first server patch to base things on. Last I heard it could be today unless they need to do more after their Thanksgiving holiday
|
If you need more help testing stuff out let me know.
|
I try to help test as well later today. Am I correct in assuming if I don't have a Published\CookedPC\Scripts folder that I need to create it. I only see Unpublished...
|
Quote:
|
I fastly coded a Spam-Protector, which will simply allows admins to mute player for 1 map. Furthermore it allows player only to chat after a certain interval (can be configured).
Very simple, my mut, as I only coded it to come into UT3-script, but might be useful for someone. |
^^ Nice, there is a compatibility problem though:
Your mutator simply destroys and replaces the existing BroadcastHandler, it doesn't save a reference and pass back function calls. So that means other tools which override the broadcast handler won't work anymore. I coded mine to save a reference to the original handler and then pass back function calls (creating a pseudo linked-list, in a sense), so that it should be compatible with other tools, it would be helpful if yours did that too :) (check the code in mine to see how I implemented it) Would be nice if, in a future patch, the broadcast handlers were turned back into a proper linked list ala UT2004. Otherwise I suspect a lot of tools are going to conflict like this. |
Hey, I run mutiple servers using the -gameini and -engineini parms which point to sub-folders under Config; where you say to put the UTTitanAdminHaxUT3.ini file (whew...long file names FTW!). So, if I want to just test on one server I can't then, can I?
Something to think about with the BlacklistedWords is to add a parm at the end for bMandatoryBan (default=False). That way one could leave MaxHitAction=HA_Kick and MaxWordHits to handle the rest. |
Ye, I miss the linked-list, too^^
And I knew that it wouldn't be compatible with future mods, but anyways, the mut is very simple and better mutators will come which replace my one fully. |
Agreed. You need to capture the current broadcast handler and then route all output to it after you're done with it. It will then be down to the server admin which order to load the serveractors to ensure that the broadcast things areapplied in the order they want.
I found a small bug in Shambler's code and added in chat logging and swear logging - I'm just waiting to see what direction Shambler wants to take this in before giving anyone this version of the code. I suspect it'd be better to add the logging as a separate serveractor coded to build up the chain of broadcasters The bug means that the code will not kick you after reaching the swear limit. If you want to try it out it's running on 192.168.24.199:7930 |
Nah no need for a new server actor, I just added more config options :)
Slaughter: The tool is enabled through ServerActors in UTEngine.ini, since you specify a unique engine .ini for each server, you can enable/disable it that way? I've added the 'mandatory ban' option to my todo list :) |
Doh. Roger on the ServerActors in the specific UTEngine.ini.
How about chat/swear logs for multiple servers (assuming these are currently set to go to the Logs folder)? |
* Shambler adds to 'todo' list :)
Currently we are bug-fixing it again, UT3's level streaming has changed how some things are initialized and so it doesn't re-initialize after map changes, that will need to be fixed first before we work on other things. |
Thanks for all your hard work guys :thumbup:
|
Here we go - I had a weekend off and came back with a few ideas for how to get round the problems!
Chat Filtering and Swear Logging Please let me know how you get on with it |
In the install instructions you're using the "my documents" location for the files.
Is this compatible with use of the -nohomedir dedicated server ? These folder destinations don't exist in the "program files" ut3 directory structure. I suppose I could create them ... thought i'd ask before spending another 1/2hr troublshooting :confused: |
Just stick it in the appropriate directory for your server. If you're using the -nohomedir just put it in the \UTGame\Published\CookedPC\Script within the directory you're using.
|
This is no longer a ServerActor??
|
It cannot be done with a serveractor.
1. Server actors are sent to the client (bug?) 2. Server actors are not able to specify which things need to be preserved during seamless travel to the next level. I can do you one which is a serveractor. It will get two sets of logs - one during game and one for chat during server travel...the big "however" is that there is no way to close the file. No trigger I can see to know to close the file (and flush the buffer?). The result of this is that the logs are created but they remain locked until the server is restarted (or reset with "admin exit" console command). There's also no way to put an "end of log" message (not that that should be a big deal) I'd very happily code this up for you. Ideally there should be a GetSeamlessTravelActorList function within Actor for serveractors that gives server actors the opportunity to do stuff around streaming to next level. There isn't though. I wonder what the best way of reporting these problems is: 1. Serveractors get replicated to clients 2. No GetSeamlessTravelActorList function within actor to allow serveractors to determine what to persist into seamless travel state. |
Thanks for the explanation. No need to code anything special as I just wanted to make sure I didn't put that in when not needed. I most certainly would want the files closed and buffers flushed so nothing is lost.
Sorry I haven't any time to test this out yet. An "Army of One", as it were. |
Quote:
Does this make a server "non-standard" like non white-listed mods did in ut2004 ? I still have no client side software, i'm operating blind in the browser functionality department. |
I suspect that it will. I really would like it a serveractor.... :(
What are your follow up questions? I might start on the To-Do's soon and the earlier people ask the better.... |
My server host hasn't gotten our server up yet, so I haven't been able to try it out yet :(
|
Quote:
1) nick filter
Captain_Tea - feel free to head over and curse to try it out. The server is up for testing in the DM section - (Co30):House of Crusty. Three strikes and your out, or depending on the word immediate removal. Patched client required to connect. |
Quote:
|
Nice guys,
iam trying to code a mut that gives oute the log to php with SQL. Complete administration with an external tool based on c++ But it take a while --> Not time atm :/ |
There is very little way to get anything out of UT3 yet - no tcp or udp classes. The only way I can see that you could get any information out is to write out a line using filewriter and then close the file. Have the external process scan the logs directory and read in all that named log file, process the content and then delete the log.
That's one-way communication though.... Session ban? Hmmm - yes. On the to-do list.... |
well, ive seen that.
Then i have to wait :/ |
Ha! Got session banning working, but on next map all the players but me joined as spectator and could kill anyone!
Hmmm- think I need to try again tomorrow.....:D |
Quote:
Is the patch needed on the server to run the Chat filter? I was going to wait to patch my server till the official patch came out unless I ran into some problems. So far so good. |
I don't think it'd need the patch.
I think the next version will keep the server "pure". Watch this space. I'll see what I can do tonight (UK time). Tomorrow I'll be building a PC I can actually run UT3 at more than 10fps, so coding will not be an option. |
Quote:
|
Next version for you folks to try out:
http://ut2004.titaninternet.co.uk/pi...3-v0.9beta.zip * Adds HA_SessionBan to session ban pottymouths * Is not sent from the server to the client :D but does remove from the pure list still :( * Adds admin session ban command adminkick session playernameornumber Note that you need the command line parameter ?AccessControl=TitanAdminHaxUT3.TitanAccessControl in order to get session ban functionality. As always, please let me know how you get on. |
No problems so far Piglet. The server is far from busy currently, slow uptake in our group from UT2004. Many need hardware updates including me.
One other thing that severext provided in the past was the ability to do server messages - the RSS feed funtionality. Colour of the text message / timing / etc. Allowed admins to push messages automatically , rules , web page etc. Since you're in a coding mode , thought i'd ask ;-) - appreciate your Titanadminhax work. |
Quote:
|
We need a pure list. There isn't one atm.
|
Rather than start a new topic, is there to be a titan team fix? :)
|
I'm not sure. Shambler's having a break from coding as far as I know.
Having gone to a random server and seen 12v7 and the like several times I can see a need for something to be done. Ideally Epic should produce a built-in team balancer that works. Ideally... |
If Epic produced anything that worked, I'd be amazed ;)
|
Quote:
Quote:
|
Is the server showing as pure with the chat filter now with the changes in the new patch 1.1 that is out?
|
Don't know - do try and let us know :). No response from Epic on a whitelist either.
|
I'm waiting for my server host to get the patch on. As soon as thats accomplished I'll give it a try :)
|
Captain_Tea - I have Beta4 loaded which is the same as the official patch, and I reactivated the chatfilter this morning. I still don't have a client so can't tell easily. Although http://prx.apophis.ch/viewer.php currently shows it as pure. Maybe look us up in the browser to check with the client software.
|
Quote:
|
And still no response from Epic over whitelist - though to be fair they've got much bigger issues to deal with atm
|
All times are GMT +1. The time now is 04:33 AM. |