Ulysses

Ulysses Stuff => Suggestions => Topic started by: mikey on January 25, 2013, 04:08:45 PM

Title: Echo Admin Commands to Admins only
Post by: mikey on January 25, 2013, 04:08:45 PM
Is there something that can currently do this, or can we please, have it implemented into ULX?
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on January 25, 2013, 06:23:22 PM
Already possible, see config.
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on January 25, 2013, 06:29:16 PM
/me sighs deeply.
/me misses the days when it seemed like 1 in 10 actually looked and searched before asking questions.
/me thinks it is now more like 1 in 30.

http://forums.ulyssesmod.net/index.php/topic,5966.0.html
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 03, 2013, 04:37:20 PM
; Echo modes:
; 0 - OFF No output to any players when an admin command is used
; 1 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"
; 2 - FULL Output to players similar to "Foo slapped Bob with 0 damage"


I don't see the mode which explicitly only echoes to ADMINs and nobody else.
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on February 03, 2013, 05:05:51 PM
when using !<command>, they will echo to players chat, at the least, as the text you typed.
Try mode 0. If it works, great. If not, use the console ulx commands.
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 03, 2013, 05:25:23 PM

And my suggestion was to rather; instead of making it echo !kick, to make it echo !kick AND to Admins (You) kicked (Someone) for Blah, rather than just seeing !kick.
Title: Re: Echo Admin Commands to Admins only
Post by: Stickly Man! on February 04, 2013, 08:25:39 AM
Quote
; 1 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"

I'm pretty sure that's what this option is-- Players without access (there's an access tag you can give groups for this) will see "(Someone) kicked Bob!" where admins will see "Person kicked Bob!". If you don't want the players seeing "(Someone) kicked Bob!", then I don't think we have an option for that.

The chat command will show up always for just about every command, I believe.
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 04, 2013, 05:30:54 PM
I'm pretty sure that's what this option is-- Players without access (there's an access tag you can give groups for this) will see "(Someone) kicked Bob!" where admins will see "Person kicked Bob!". If you don't want the players seeing "(Someone) kicked Bob!", then I don't think we have an option for that.

The chat command will show up always for just about every command, I believe.
That's what I'm looking for, for it to say (Admin) kicked Bob; but not to echo (Someone) Kicked bob to non admins.

Do you think you could implement this?
Title: Re: Echo Admin Commands to Admins only
Post by: Stickly Man! on February 06, 2013, 02:52:36 PM
I imagine it would be easy, but, seeing how this is in Megiddo's area of code, I'd have to run it by him first :P I shall keep it in mind though.
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 07, 2013, 07:56:01 PM
I imagine it would be easy, but, seeing how this is in Megiddo's area of code, I'd have to run it by him first :P I shall keep it in mind though.
It would help me alot if you could :)
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 11, 2013, 10:09:56 AM
https://github.com/Nayruden/Ulysses/blob/master/ulx/lua/ulx/log.lua#L351
cookie for me >: )
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 11, 2013, 10:40:43 PM
https://github.com/Nayruden/Ulysses/blob/master/ulx/lua/ulx/log.lua#L351
cookie for me >: )
Yeah, but can you update the code, then you can have a cake :D
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 13, 2013, 08:37:37 AM
i cant because it would create a fork and i dont want that and it's more of a personal preference at this point so it might involve adding convar for it so people can change it to anonymous or something lol
Title: Re: Echo Admin Commands to Admins only
Post by: Stickly Man! on February 13, 2013, 10:53:31 AM
I've talked to Megiddo about this, and he seems fine with it, so we will be adding this feature (time permitted). I need to get an issue created on our issues page as well, but.. for now just know that it's on our radar!

The eventual echo modes will end up something like this:
Code: [Select]
; Echo modes:
; 0 - OFF No output to any players when an admin command is used
; 1 - ADMINS Output to admins only.
; 2 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"
; 3 - FULL Output to players similar to "Foo slapped Bob with 0 damage"
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on February 13, 2013, 07:21:14 PM
Would it not be easier/more backwards compatible for us to just 'add' the option.
Leave current 0,1,2 as is, and add the option 3?
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 14, 2013, 10:49:19 AM
why not just add a config seting so people can set it but it defaults to the old thing so nothing changes if people don't do it

2 - Anonymous outputs to players with out access to see a predefined name to see when a admin uses a command  instead of "(someone)" they would see "(your String here)" slaped bob for 0 damage.

 you would see  (in code) "(".. ulx.echoword .. ")" .. string
Title: Re: Echo Admin Commands to Admins only
Post by: Stickly Man! on February 14, 2013, 12:30:57 PM
Would it not be easier/more backwards compatible for us to just 'add' the option.
Leave current 0,1,2 as is, and add the option 3?

I brought this up with Megiddo when I first asked him about this, he said that having the configuration in the proper order would be less confusing in the long run. We'll obviously have to make a prominent note about it, however.
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on February 14, 2013, 02:13:44 PM
Harumph, I'm just gonna call Megiddo mini-Gar...uh, nah, he's NEVER that bad.
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 15, 2013, 04:57:40 AM
I really really really appreciate it :)
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 18, 2013, 09:00:22 AM
did a modification to add the ability to set a convar in config.txt https://github.com/nathan736/Ulysses/tree/patch-1/ulx
this is not a stand alone this patches the stock ulx code
-warning this may not work-
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 25, 2013, 12:40:16 AM
did a modification to add the ability to set a convar in config.txt https://github.com/nathan736/Ulysses/tree/patch-1/ulx
this is not a stand alone this patches the stock ulx code
-warning this may not work-
this isn't what I was asking for  :'(
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 25, 2013, 07:06:38 AM
https://github.com/Nayruden/Ulysses/blob/master/ulx/lua/ulx/log.lua#L351
change someone to what ever you want in that dir and your set, what did you want then ?
Title: Re: Echo Admin Commands to Admins only
Post by: mikey on February 25, 2013, 11:48:27 AM
https://github.com/Nayruden/Ulysses/blob/master/ulx/lua/ulx/log.lua#L351
change someone to what ever you want in that dir and your set, what did you want then ?
Instead of it saying (Someone) to all the players, it just doesn't echo to anybody BUT admins.
Title: Re: Echo Admin Commands to Admins only
Post by: nathan736 on February 26, 2013, 08:27:09 AM
k ill see if i can figure it out
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 21, 2013, 12:26:41 AM
Hi guys,

I hate bumping new threads but on this occasion I feel I need to.

Can I just ask if this was ever completed? We have an extensive structure of staff within our community.

We currently have the owner who is 'superadmin', we also have 'founder', 'co-owner' and 'headadmin' that are all inherited with slight variations from 'sadmin' (senior admin). 'sadmin' inherits from 'admin' and intern goes from 'tadmin' (trial admin).

We would ideally like to be able to have ULX echo all admin commands used but so only 'sadmin' and higher can see the echoes.
We don't want 'admin' and lower to see the echoes as we don't actually want them to know we can see them.

Brief bit of background to understand why - there is a culture where some of our admins kick or slay during TTT rounds for sometimes very petty reasons often because the admin was a T and they got killed. The owner is not on very often so getting him to check server logs is difficult and we would like to be able to deal with this quickly when he isn't online.

Me and him have agreed if we can get this working he'll implement it. To be honest, I'm quite the Lua junkie, I can edit the code with a basic understanding of what I'm changing but no good at new code. If someone could simply tell me where the Lua checks to see what usergroup they are in when it echoes and I'm sure I could do the rest.

Thanks!
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 21, 2013, 04:42:36 AM
It has not been done yet. The code for logging is in logs.lua. You'll want to look near the end of the file.
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on August 21, 2013, 01:56:37 PM
I believe we have a group flag for seeing console log functions.
Don't we?
Maybe not. It's been too long for me since I looked at our groups.
Maybe I'm thinking the seeasay with operators.
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 21, 2013, 05:17:41 PM
You might be thinking of the permission that lets you see who used commands when logging is set to anonymous mode.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 22, 2013, 12:28:05 PM
You might be thinking of the permission that lets you see who used commands when logging is set to anonymous mode.

That is pretty much what I want. So our higher admins can see every command our lower admins are doing without anybody else seeing the echo.

I see this in log.lua on line 21 and 22:

Code: [Select]
local seeanonymousechoAccess = "ulx seeanonymousechoes"
ULib.ucl.registerAccess( seeanonymousechoAccess, ULib.ACCESS_ADMIN, "Ability to see who uses a command even with ulx logEcho set to 1", "Other" )

Now the ability to change ULib.ACCESS_ADMIN to a custom usergroup and being able to change it to work when echo is set to 0 would be PERFECT.
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 22, 2013, 03:57:51 PM
Now the ability to change ULib.ACCESS_ADMIN to a custom usergroup
It's just a standard access tag.

being able to change it to work when echo is set to 0 would be PERFECT.
It's not a simple change, but it's one that you should be able to accomplish given basic Lua experience and an hour of time.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 23, 2013, 04:44:30 AM
I'm just looking at the code now. Surely the easiest way to do this would be to change:

Code: [Select]
ULib.ucl.registerAccess( hiddenechoAccess, ULib.ACCESS_SUPERADMIN, "Ability to see hidden echoes", "Other" )
to this:

Code: [Select]
ULib.ucl.registerAccess( hiddenechoAccess, ULib.ACCESS_HEADADMIN, "Ability to see hidden echoes", "Other" )
Would that have my desired effect?
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 23, 2013, 05:05:04 AM
No. The easiest would be to give that access tag to the appropriate group using "ulx groupallow". Changing that code only effects clean installs.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 23, 2013, 06:36:39 AM
I'm very confused then.
The groups I want to be able to see echoes have ulx hiddenecho, I can see that in the groups.txt file.

So I can understand this, assuming group headadmin has hiddenecho allowed and echo is set to 0 and an admin (without hiddenecho) does "ulx kick RandomNameHereLol" who should see what if anything?

Sorry if I'm getting annoying, I just really wanna get this to work as we want it. I'm happy to edit Lua but reluctant to mess with ULX if it already does what we want - ULX is great as it is!
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 23, 2013, 08:51:53 PM
The access tag is "ulx seeanonymousechoes", and it only has any effect if the echo mode is set to 1.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 27, 2013, 05:47:11 AM
The access tag is "ulx seeanonymousechoes", and it only has any effect if the echo mode is set to 1.

Ok, but you haven't actually answered my question though...
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 27, 2013, 06:54:35 PM
If you're expecting me to make the modification for you, I'm not going to. I know it sounds harsh, but I could spend all day on these forums making modifications for specific requests. It's not that I don't want to help, it's that other things are more important.
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on August 27, 2013, 07:14:10 PM
Echo mode in 0 would see nothing.
Echo mode in 1, those with seeanonymousecho would see "username kicked username2" while others would see An admin kicked username2.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 28, 2013, 08:10:49 AM
If you're expecting me to make the modification for you, I'm not going to. I know it sounds harsh, but I could spend all day on these forums making modifications for specific requests. It's not that I don't want to help, it's that other things are more important.

I'm not expecting you to make the mod for me. I just wanted it to be made clear by the ULX developers themselves how a particular ULX function works.

Echo mode in 0 would see nothing.
Echo mode in 1, those with seeanonymousecho would see "username kicked username2" while others would see An admin kicked username2.

Thanks, I understand that part. In your above scenario, what would someone with hidden echo see with either of those echo options (0 and 1)?
Title: Re: Echo Admin Commands to Admins only
Post by: JamminR on August 28, 2013, 02:07:11 PM
This is getting repetitive.
Megiddo and I have only answered your question 3 or 4 different ways now.
I'm not quite sure how to make you get it.
If you don't get it after this answer, I'm not answering any more, and you must figure it out by testing on your own.
As long as it's taken, most would have figured it out on thier own just by changing the settings in thier server.

Quote from: https://github.com/Nayruden/Ulysses/blob/master/ulx/data/ulx/config.txt#L31
ulx logEcho 1 ; Echo mode
; Echo modes:
; 0 - OFF No output to any players when an admin command is used
; 1 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"
; 2 - FULL Output to players similar to "Foo slapped Bob with 0 damage"

Echo mode in 0 would see nothing.
EDITED to match our own code examples
Echo mode in 1, those with seeanonymousecho would see "Foo slapped Bob with 0 damage" (as though you were using echo mode 2), while others would see "(Someone) slapped Bob with 0 damage"
Echo 2, everyone sees who did it no matter the permission
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 28, 2013, 03:44:40 PM
This is getting repetitive.
Megiddo and I have only answered your question 3 or 4 different ways now.
I'm not quite sure how to make you get it.
If you don't get it after this answer, I'm not answering any more, and you must figure it out by testing on your own.
As long as it's taken, most would have figured it out on thier own just by changing the settings in thier server.
Echo 2, everyone sees who did it no matter the permission

Well you clearly don't understand what I am asking so there is no point carrying on.
Considering the ULX developers can't/won't tell me what the difference is between hiddenecho and seeanonymousechoes - that's a simple enough request that neither of you have managed to answer.
Title: Re: Echo Admin Commands to Admins only
Post by: Megiddo on August 29, 2013, 04:29:25 AM
Communication takes two parties. One to speak and one to listen. ;)

We have explained the differences patiently, even though it would have been far easier for everyone involved for you to just read the instructions and try it out yourself.
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 30, 2013, 06:40:45 AM
I've talked to Megiddo about this, and he seems fine with it, so we will be adding this feature (time permitted). I need to get an issue created on our issues page as well, but.. for now just know that it's on our radar!

The eventual echo modes will end up something like this:
Code: [Select]
; Echo modes:
; 0 - OFF No output to any players when an admin command is used
[color=red]; 1 - ADMINS Output to admins only.[/color]
; 2 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"
; 3 - FULL Output to players similar to "Foo slapped Bob with 0 damage"

Stickly and mikey clearly understand what I am trying to achieve. JamminR and Megiddo, I think it's probably best you don't answer anymore questions regarding the ULX Lua as you don't seem to have a clue how any of it works. Did you just copy and paste another admin tool, change a few bits and then release it as ULX?

If you don't know what the difference between hiddenecho and seeanonymousechoes is then just say, would have been far easier from the start for both parties instead of pretending to know what you're talking about -  wasting my time and your own.

I suspect I'll be banned for this post so I guess I'll have to find another crappy helpful forum to ask my questions on.
Title: Re: Echo Admin Commands to Admins only
Post by: Stickly Man! on August 30, 2013, 08:56:26 AM
JamminR and Megiddo, I think it's probably best you don't answer anymore questions regarding the ULX Lua as you don't seem to have a clue how any of it works.

Well that has to be the funniest thing I've read all week!

Did you just copy and paste another admin tool, change a few bits and then release it as ULX?

K, never mind, you just beat your own record there. (I'd advise looking up our history-- we've been around since before admin mods were a thing)


okiedoke, you got confused when you started talking about "ulx hiddenecho". Megiddo clarified in his next post that...
The access tag is "ulx seeanonymousechoes", and it only has any effect if the echo mode is set to 1.
...because "ulx hiddenecho" has no affect on any of the echo modes. You never specifically asked us what "ulx hiddenecho" did, you just stated that you would like to use it to do what you wanted to:

The groups I want to be able to see echoes have ulx hiddenecho, I can see that in the groups.txt file.

At least, you didn't mention it up until the point where you were saying we can't/won't tell you the difference.

Now, here is some hopefully useful overall explanations to make sure we're clear:
As you're probably aware, there are only the three echo modes right now:
0 - No output to anyone
1 - Output to everyone, but groups that don't have access to "ulx seeanonymousechos" see "(Anonymous) slapped Foo!"
2 - Output to everyone, and see the full output "(Stickly Man) Slapped Foo!"

We have an issue on our bugtracker (https://github.com/Nayruden/Ulysses/issues/180) to add the feature discussed in this thread- but we can only get to it when we have the available time, meaning you will need to do some of your own edits to the code (more on that in a bit).

There are some commands, such as ulx spectate and rcon that are set to be hidden since we would never want all players to be able to see those. For these commands, only groups that have access to "ulx hiddenecho" will receive the echos that an admin has spectated someone, used an rcon command, etc. So hiddenecho works on a per-command basis, and has nothing to do with the other echos.

Code: [Select]
local seeanonymousechoAccess = "ulx seeanonymousechoes"
ULib.ucl.registerAccess( seeanonymousechoAccess, ULib.ACCESS_ADMIN, "Ability to see who uses a command even with ulx logEcho set to 1", "Other" )

Now the ability to change ULib.ACCESS_ADMIN to a custom usergroup and being able to change it to work when echo is set to 0 would be PERFECT.

This is an FYI, but "ULib.ACCESS_ADMIN" is just a variable that contains the admin group name as a string ("admin"). So, you could replace it with "admin" or "superadmin" or whatever you want, but all that would do is change which group gets it by default when the server starts-- which is why we recommended using "ulx groupallow" to assign the tag to groups like you would any other access tag/command.

Now, possibly the easiest and hackyish way to get what you want without putting much thought into it is to go through our codebase and find every function call to fancyLogAdmin (https://github.com/Nayruden/Ulysses/search?q=ulx.fancyLogAdmin&type=Code), and set the second parameter to true. (You can use the ulx rcon command echo as an example for what it should look like). Unless I'm mistaken, all echos should then be treated as hidden, and only the groups who have access to "ulx hiddenechos" will be able to see them at all.

The better way to fix it would be to edit the fancyLogAdmin funciton itself to ignore the check to see if the command is hidden or not:
Code: [Select]
if hide_echo then
     <code>
end
Just remove the if statement and leave the code, and it should treat all echos as hidden. However, this area of code is Megiddo's, and I know very little about it besides the quick glance I've just done, so I can't guarantee 100% that these methods will work or be without side effects (as in, hiding much more output than I intended).


And lastly, never ever assume someone else is at fault when you're not getting the information you want. Take a step back, calm down, have patience, and clarify in more detail what you are asking. Others may have misread what you've stated previously, and clarifying will give them another chance to read it properly- nobody is immune to communication problems. You didn't deserve a post like this, so be thankful I'm in a good mood today. :P
Title: Re: Echo Admin Commands to Admins only
Post by: okiedoke on August 30, 2013, 09:36:11 AM
Well that has to be the funniest thing I've read all week!

K, never mind, you just beat your own record there. (I'd advise looking up our history-- we've been around since before admin mods were a thing)


okiedoke, you got confused when you started talking about "ulx hiddenecho". Megiddo clarified in his next post that......because "ulx hiddenecho" has no affect on any of the echo modes. You never specifically asked us what "ulx hiddenecho" did, you just stated that you would like to use it to do what you wanted to:

At least, you didn't mention it up until the point where you were saying we can't/won't tell you the difference.

Now, here is some hopefully useful overall explanations to make sure we're clear:
As you're probably aware, there are only the three echo modes right now:
0 - No output to anyone
1 - Output to everyone, but groups that don't have access to "ulx seeanonymousechos" see "(Anonymous) slapped Foo!"
2 - Output to everyone, and see the full output "(Stickly Man) Slapped Foo!"

We have an issue on our bugtracker (https://github.com/Nayruden/Ulysses/issues/180) to add the feature discussed in this thread- but we can only get to it when we have the available time, meaning you will need to do some of your own edits to the code (more on that in a bit).

There are some commands, such as ulx spectate and rcon that are set to be hidden since we would never want all players to be able to see those. For these commands, only groups that have access to "ulx hiddenecho" will receive the echos that an admin has spectated someone, used an rcon command, etc. So hiddenecho works on a per-command basis, and has nothing to do with the other echos.

This is an FYI, but "ULib.ACCESS_ADMIN" is just a variable that contains the admin group name as a string ("admin"). So, you could replace it with "admin" or "superadmin" or whatever you want, but all that would do is change which group gets it by default when the server starts-- which is why we recommended using "ulx groupallow" to assign the tag to groups like you would any other access tag/command.

Now, possibly the easiest and hackyish way to get what you want without putting much thought into it is to go through our codebase and find every function call to fancyLogAdmin (https://github.com/Nayruden/Ulysses/search?q=ulx.fancyLogAdmin&type=Code), and set the second parameter to true. (You can use the ulx rcon command echo as an example for what it should look like). Unless I'm mistaken, all echos should then be treated as hidden, and only the groups who have access to "ulx hiddenechos" will be able to see them at all.

The better way to fix it would be to edit the fancyLogAdmin funciton itself to ignore the check to see if the command is hidden or not:
Code: [Select]
if hide_echo then
     <code>
end
Just remove the if statement and leave the code, and it should treat all echos as hidden. However, this area of code is Megiddo's, and I know very little about it besides the quick glance I've just done, so I can't guarantee 100% that these methods will work or be without side effects (as in, hiding much more output than I intended).


And lastly, never ever assume someone else is at fault when you're not getting the information you want. Take a step back, calm down, have patience, and clarify in more detail what you are asking. Others may have misread what you've stated previously, and clarifying will give them another chance to read it properly- nobody is immune to communication problems. You didn't deserve a post like this, so be thankful I'm in a good mood today. :P

Thank you for the very in depth summary of everything I need to know.
Perhaps I should have been more clear when I first asked the questions but assumed by giving an example of what I wanted, someone in the know would then be able to help me.

I apologise for being so rude. I also apologise for removing 1 Karma from each Megiddo and JamminR.
Title: Re: Echo Admin Commands to Admins only
Post by: Topher III on January 02, 2019, 01:45:43 AM
I've talked to Megiddo about this, and he seems fine with it, so we will be adding this feature (time permitted). I need to get an issue created on our issues page as well, but.. for now just know that it's on our radar!

The eventual echo modes will end up something like this:
Code: [Select]
; Echo modes:
; 0 - OFF No output to any players when an admin command is used
; 1 - ADMINS Output to admins only.
; 2 - ANONYMOUS Output to players without access to see who used the command (admins by default) similar to "(Someone) slapped Bob with 0 damage"
; 3 - FULL Output to players similar to "Foo slapped Bob with 0 damage"

Its been 6 years, this still hasn't been implemented even though it would benefit many Garry's Mod communities.