Idle sweep option

It would be good if we could set an idle sweep + timer for public areas so we don’t have so many people laying around. I always feel like I’m being watched when I’m doing things in public with so many idlers around.

1 Like

Something similar to autosweep, but for idlers and not sleepers? I like the idea :slight_smile: .
I will add it to my ‘todo-list’.

Thanks for the suggestion!

/Accipiter

Ok, I have to admit that I don’t get this one. If one is out in public, one is liable to be watched, whether those persons are idle or not. The solution to that is going somewhere less public. Not demanding that those in public but not interested in interacting right there and then go somewhere else.

It’s simply too easy for a stubborn user to bypass and a proper rule against idling in busy public rooms is nearly unenforceable without some casualties of innocent players in the long run with the state of where this game engine is in the way of (not) tracking or logging data.

At the same time, it should be developed for area admins to utilize in case they want to assign idle-sweep to RP rooms that need sleepers cleared out automatically.

I wouldn’t however assign auto-sweep to be turned on in casual gathering spots such as station park - because anti-idle will be developed by somebody in order to subvert it. (Just like plenty of people do on telnet MU*clients)

Won’t lie - I fucking hate the Tapestries Plaza idle-sweep. My mu*client doesn’t do timer macros, so it basically just sweeps me out and most of the time I disconnect if it sweeps me. Very annoying and usually just discourages me into logging out unless I want to use a client that just lets me bypass the tool.
At the same time, I’m incredibly put off by the idea that people are just there logging existence in popular spaces in hopes of skimming something to read while putting forth no actual effort of their own to contribute toward that. Taps has a bit of that sometimes, where a player logs in like 10+ characters to perma-idle in populated spaces to log everything (and sometimes weaponize those logs for questionable intent busybody whistleblowing against people they don’t like)… it gets pretty old and feels questionably bad-faith to me at least. It’s pretty gross.

I do appreciate the idea for having an idle-sweep developed as a tool to use when appropriate. HOWEVER - right now with as low population as the place is right now… if people get swept over and over again all day while waiting for people do show up, they’ll probably just log out and are less likely to put much effort in growing the place if they don’t even feel like they can chill somewhere quietly.

At this point in time, if there’s a particular idler of concern, it might be best to simply use an unlinked space (or somewhere remote at least since there are no locks currently?)

I think the prime goal right now on this topic is to get the zone/location tools made and implemented so that people can spread out without fear of being unfindable so that they can be anywhere and not essentially funneled into one room (for lack of anybody being able to find them otherwise.)

Okay I understand the concerns here.

It made me think, can we do a reverse gag? Where I can set so someone can’t see my inputs.

(edit: outputs? I hope the meaning is understood there)

A “reverse gag” is trickier to implement, and can’t be done without a large performance impact in well-populated rooms. This is due to the architecture and how room events are handled.

And it would also be kind of weird to have someone not see what you say, but still being able to see what others reply to what you might have said. Making the player ask others “What did he/she say?”. It sounds like an easy way to create conflicts. :sweat_smile:

And, while I liked the thought of having idle-sweep as an option to use if you felt you wanted that for your area, @Jagrabbit’s has good points; it is very easy to bypass. Even more so once custom client-side modules are allowed.

Working on it! :grin:

/Accipiter

So that make me curious - is any gag functionality going to hit performance? Because on tapestries, for example, I gag nearly almost messages that involve people entering/leaving sleep-swept, idle-swept, all that kind of thing. It’s the only way I can follow anything over there.

Gag functionality on the receiving end would be trivial resource-wise; that’s just a matter of ignoring messages from/containing the gagged text.

On the topic of reverse gagging, I am against this on principle. Choosing not to interact with someone is the perogative of the user of course. But denying them context in public interactions where they end up seeing only parts of an interaction because another party has chosen to reverse gag them, is not kosher.

Sadly, people will weaponize things that they know quite clearly that they very obviously shouldn’t if they’re looking to maintain the public peace. It’s really easy for someone to abuse a tool like a reverse gag in order to spitefully fling mud in someone’s eye by making them ask am I missing something, is somebody else talking? Oh.. they have me gagged then? and then suddenly other people in public are involved whether they want to be or not.

Seen it going on even when its just someone blocking people they don’t like and they themselves start asking why they can’t understand what’s going on or start freaking out at even more people after clearly missing context that was added by someone they blocked (gagged)

Its an interesting idea in the scholarly sense of can it be done and how, but otherwise I imagine there are reasons why Taps is running w/p #ignore and otherwise doesn’t officially support gag functionality via any programming. (because of the public miscommunication easily caused by block/ignore/gag)

That all said, we do need some mail/page/whisper/address ignore tools @Accipiter. People need a way to shut someone down who has lost their mind and needs a time out. People really need to know to leave one another alone if there’s a social problem going on tho.

Alright I understand all this.

I’ll probably just wait until there’s some sort of whereare functionality.

Gag function is trivial, as @maximus says. It can be done purely client side with no performance hit server side ; you set up a “gag-list”, which your client will match against on incoming events. On match, it will simply not display them.

The main part about adding a gag-function is to do the GUI for it, and to add some support to store the gag-list server-side.

Such a gag-feature would affect all communication, including mail. Would that be sufficient, @Jagrabbit?

There are other means of communication too, such as changing Gender to “Spottycat, have you gagged me?”. Maybe the gag should also hide them from Awake and In room lists? Or is that taking it too far?

Best not to overthink it. If someone is making clear and obvious attempts to get around a gag, then it’s time to get mods involved. I’ve seen this before on FM where the person would change their name, or use furrymuck’s insane ‘double comma’ feature ("Hello,Accipiter would write ‘“Hello,” Early says, “Accepiter”’) in order to confound gag search strings, all that stuff.

If someone asked me what I would want to see in a gag, there would be a checkbox for ‘whispers’, ‘pages’, ‘public’, and a switch that lets you turn on or off ‘placeholders’ (if you gagged me, and I posed ‘Early hops around’, you would see a placeholder ‘Early did something but is gagged’ (or something like this). Maybe give the mods extra powers to include alts controlled by the players but again, if someone is clearly trying to work around a gag then it doesn’t matter what kind of insane tools we put together, they’ll find a way around the gag.

I guess it would be good to know what level of idling is okay. So on Furrymuck, or Taps, if I’m in public and paying attention, but don’t have anything to say, I’ll throw in a ‘ws’ or ‘wf’ command now and then to keep me active, which seems to be a trivial amount of brain power for me to apply. On Wolfery I’ll click on a player avatar which clears out ‘idle’ status.

So a quick thought experiment. What if there was a way for Wolfery to know that someone was idling and the player was asleep, or was idling but was going on a trip to Australia, then would it be acceptable for the player to be idle swept? Because I saw someone in this thread say ‘If there is an idler of concern, it might be best to simply use an unlinked space’, and it’s really starting to stick out to me.

When I visited the first time, there were a couple of idlers in the park. I came in with my friend and I said some things (yes, they were not nice things but I was having fun and goofing around, and later apologized because they were pretty mean in the end), then later Accipiter found out about this. I thought at first that he was looking at logs, but now realize it was a good chance that Idlers took silent note of my actions (or just saw them when they got back from their trip to australia) because they did not talk or react to my existence at the time. So there is one possible example of people idling then reporting their idle findings. I guess it’s always been the case that you should watch what you say when people are silently watching you.

I think so. I wouldn’t mind giving room-creators the option to auto-sweep idlers. But a script that does a look every 5 min would bypass it, and also ruin the idle indication function. You would never know who is really idling.

It is like my webbased Tapestries client; it sends background commands to keeps its Watch For and In Room panel list constantly updated. But due to this, it will cause my characters in Taps to never seem idle, even if they are.

Ah, yeah. Moderation was actually present and wasn’t even idle as it happened. We decided to sit on it, but we did immediately inform one another (within minutes). Thankfully, there’s only been one other completely unrelated incident since then.

Ultimately, people shouldn’t be going to war against one another while on Wolfery regardless of if anybody is watching or not. So long as people can respect the rules, we’re pretty hopeful that cooler heads can prevail rather than letting ancient history come create a warzone out of this (currently) small webMUCK.


On to other stuff tho~

Regarding Idling:
• As far as moderation is currently concerned (due to tools available) idling is basically fine anywhere.
• Ideally however, zone owners will be capable of creating a little bubble around their domain and setting some catch-all parameters like idle-sweep to their liking. (~and more!)

Regarding Gags:
This would branch out into a site-wide character block/mute/ignore feature with appropriate GUI and whatnot.
@EarlyBunny has a good idea there @Accipiter, regarding a placeholder with a toggle on/off.

► For local level communication we’d be calling it an Mute list most likely at this point. (my bun’s idea, since we’re not blocking transmission of the message so much as simply muffling it client side)

  • Server-side: Mute/Block list stored (so it persists multi-client)
  • (( Question : “Do we want character by character mute/block functionality?” or “Do we want account vs character mute/block functionality?” (and how do moderation/zone owners/admin character or account flags interact with this functionality?) ))
  • Client-side: The Mute tool would placeholder replace or fully omit any messages prior to rendering the normal ungagged output for the user according to user setting, but the message would still be transmitted to the user behind the scenes regardless of how the user decides to display it to themselves.
  • Server-side: Store a setting which allows users to determine how their mute list handles ‘local chat’ messages from muted users. Omit vs Placeholder
  • Client-side: Placeholder messages can be clicked directly in output window to ‘expand’ what is contained within the placeholder and clicked again to ‘collapse’ the block-filtered placeholder component if they’re done looking at the message in question. (functionality would be similar to discord in this regard - woo, Quality of Life!)

The reason for this is that this is a roleplay site ideally, and therefore there will be incidents where two people who don’t get along and want no private communication may still be roleplaying tolerantly within the same public space and they need to be able to function around one another without getting other users involved in their spat. Allowing a clickable placeholder provides ease of access and helps enable civil/tolerant situations (…and otherwise allows the user to torment themselves by testing their own willpower day in and day out until they ultimately clear their mute list because its silly and you’re looking at the muted messages anyway - If you’re me. XD)

  • As far as blocking whispers/pages/mail is concerned: The way I see it we can go the mute catches all route and make it simple or alternatively go the twitter route of mute and block being separate
  • Ideally, we want mute/block list functionality to provide a neutral tone default message (as much as I like setting a custom message to notify people why they’re on my ignore list on Taps, I feel like its just another avenue for weaponized spite by any user who might not have the clearest head as they set a message - and then the staff would just have to slap them for attacking from behind a shield rather than properly disengaging.)
  • I don’t know how page/whisper function, (hopefully not 100% direct peer-to-peer since that completely disables anybody’s ability for staff oversight of problem users?) but ideally anybody on block/mute functionality would not succeed to transmit to the recipient in question in the first place and would instead receive a canned response of ‘nope’ from the server. Probably something that simply says 'Character/User has you blocked." in order to keep it from outputting anything somebody would screenshot as a trophy I guess?

I’m sure there’s more to this to explore, but that’s the start of my mind on such a tool at least. The placeholder thing is good stuff tho, definitely don’t skip that QoL if you think you can get it to work, @Accipiter.

I guess if anything the people I saw appeared idle. They did not say hi or go like, ‘Hi guys what’s up. Don’t make fun of our fountain please!’. It’s not my intention to get into a petty argument here or to air past grievances, that just happens to be my best example so far of someone who seemed idle, who listened in on people, didn’t engage with them, then reported them. I was new I didn’t know how to determine if they were idle to begin with.

It was mean spirited of me to do what I did but the fact that I came in, said hi, and nobody said anything back kind of egged me on to be like, ‘ok nobody is around I’m just going to have fun chatting with my friend’, which is what I do with them on furrymuck. The fact that the people there at the time weren’t actually idle just makes me wonder why thy didn’t say hi when they saw new folks.

Oh! I feel like there might be miscommunication on my energy and participation in this thread perhaps based on the idea of a ‘petty argument’ being anywhere even in the fringe of this thread?

I’m a naturally anxious sort and the scope of my thoughts into features like these is far more generalized than this one particular scenario. As with anybody who’s been around on the internet for a long while, its easy to see where other games and services have had abuseable tools - so trying to avoid pitfalls of those designs while building a new one for here is mostly all I’m worried about. ^^ (especially since moderation and staff doesn’t have a vast wealth of logging and oversight tools here on the site - with that in mind, tools needs to be designed in ways that minimize the ability for people to use them in ways that would cause otherwise unseen transgressions)

As far as anyone cares about anybody’s specific situations: So long as they’re civil to one another when/if they interact with people they dislike so that nobody else gets involved, nobody here actually cares. Besides, everybody says that the statue looks like its barfing. XD

Yeah we’re cool :rabbit:

I personally think that mutes should be on the character level and not the account/player level, because it could be used as a tool to very quickly determine character alts. Just mute one character, turn on placeholders, and you’ll learn them all eventually.

Yeah, that’s what I was thinking too.

Idle-sweep

I’ll put that one on ice for now. Maybe it is solvable with some captcha-like idle check. But I will not work on that at the moment.

Muting

What I got from reading your great thoughts.

  • Great thoughts!
  • I love the idea with placeholder + option to view it.
  • Muting affects all communication (say, ooc, describe, message, etc.) . Mail? It is already collapsed by default, so, we’ll see. Maybe just a “muted” marker?
  • Muting does not affect Awake, In Room, Character Info, etc. listing.
  • Muting is not done retroactively. Older messages will still show after activating a mute.
  • Unmuting is not done retroactively either. Previously muted messages will still show as muted.
  • Muted-list is stored server-side.
  • Muted-list is per player, not character. A muted character is muted for all of your alts.
  • But muting is done per character, not player. Don’t worry :slight_smile: . Muting a player’s Alt1 will not affect the same player’s Alt2.
  • He is totally drooling! :wink:

First implementation would not contain blocking; no “auto-reply” about being blocked. Also, I think placeholder is superior to omitting for muting, so I might not initially provide the option to omit. Though, I will make it so that more detailed settings may be added later.

This all looks good and as imagined. I imagine muting previously transmitted messages would involve some sort of active scan of client-side held data and would thus be more of a pain in the ass than needed, so probably not important enough to both with.

Having the mute list be account -> character would probably work well enough to keep the amount of data required lessened, so that seems like it would be a practical solution. As you said, so long as muting a character doesn’t provide any angles for that character’s player to detect that you’ve muted them (other than uncontrollable possibility of the muting player’s loud mouth bragging about having someone muted and forcing the staff to suspend them for being a shithead).

As long as any subsequent development on a block feature is character -> character instead of account -> character, then this mute functionality should be a good starting point for allowing players to obscure/remove unwanted communication (so long as they can control their own actions with some willpower.)