How To Strip Comtitles in PennMush



  • Comtitles drive me nuts, especially if long and coloured. Absolutely hate being forced to read 'Cute n Fluffy Lil Bunny <name> over and over. Does anyone have a way of stripping them my end so I just see the name of the person on the channel?

    I've been able to do this before on other code bases, but I'm getting desperate now.

    It's the code that uses: @chan/gag pub and @chan/recall pub etc. I don't want to have to be forced to gag/leave channels.

    Halp?


  • Pitcrew

    Personally, I wish more games would just ask people to keep to a character limit on comtitles. I don't mind the succinct ones. But when they're really long like that, they drive me bonkers, too.

    But agreed, more com systems need ways to gag them on your end. I don't know a way on Penn personally.


  • Coder

    If it's a specific one that's bothering you, you ought to be able to create a filter in your client to trim it out. Of course, that depends on your client. I don't know of a way to do it in Penn. (ETA: There is - see comments below about chatformat.) I'll create a way to turn them off in Ares, though, that's a good idea.



  • @auspice said in How To Strip Comtitles in PennMush:

    Personally, I wish more games would just ask people to keep to a character limit on comtitles. I don't mind the succinct ones. But when they're really long like that, they drive me bonkers, too.

    But agreed, more com systems need ways to gag them on your end. I don't know a way on Penn personally.

    The long ones are annoying but the ones that annoy me far beyond that are the 'changing' ones. I really have no desire to see different 'cute' phrases each time something is said.



  • @faraday No, it's all comtitles in general. Long, short, (multi)coloured, cute. I'm just grumpy that way.


  • Pitcrew

    @pondscum said in How To Strip Comtitles in PennMush:

    @faraday No, it's all comtitles in general. Long, short, (multi)coloured, cute. I'm just grumpy that way.

    There is absolutely nothing wrong with being a curmudgeon.


  • Coder

    @auspice said in How To Strip Comtitles in PennMush:

    But agreed, more com systems need ways to gag them on your end. I don't know a way on Penn personally.

    There is no 'built in' way, per say, but you can do some clever trickery with @hook.

    You essentially do a @hook/ignore and code in logic against @chan/title so that if length() is > X or if player = Y don't allow comtitles.

    That should effectively lock down the size of the comtitle and also tag an ability to entirely ban set player(s) from being able to set comtitles entirely.

    You could even skim the command to verify only certain comtitles were allowed.

    As far as I'm aware, I think that's about all you can do (short of hardcode mods) to block comtitles.

    EDIT:

    Ooo, what do you know... there's a way to block titles entirely off channels, but you still need @hook if you want dynamic control.

    > help @channel priv
      The <privs> for @channel/add and @channel/privs should be a space-separated
      list of priv names, or a string of priv chars, from the list below:
    
      * "player" (P) - players may use the channel
      * "object" (O) - non-players may use the channel
      * "admin" (A) - only royalty/wizards/chat_privs may use the channel
      * "wizard" (W) - only wizards may use the channel
      * "quiet" (Q) - channel will not show connection messages
      * "open" (o) - you may speak even if you aren't listening to the channel
      * "hide_ok" (H) - you may hide from the channel who list
      *  "notitles" (T) - chantitles are not displayed in channel messages 
      * "nonames" (N) - player names are not displayed in channel messages
      * "nocemit" (C) - @cemit is prohibited on the channel
      * "interact" (I) - Interaction rules (defined in local.c) are applied to the channel
      * "disabled" (D) - noone can join or speak on the channel
    
      The default privs are determined by the 'channel_flags' @config option.
    
      Example:
        > @channel/add Public=player quiet open nocemit
    

  • Coder

    I think you can use CHATFORMAT to do this?

    Here's the example from help chatformat:

    @chatformat me=<%1> [switch(%0,@,%2,edit(wrap(speak(&[if(%4,%4%b)]%3,%0[stripansi(%2)],%6\,),sub(width(%!),add(4,strlen(%1)))),%r,%r<%1>%b))]


  • In Penn...

    If this is something that you're doing as a player, you'd have to use triggers to strip the chan title for everything before the player's name.

    If this is something you're wanting to do as staff, just set the chan_title_len to 0 which will stop chantitles altogether.


  • Pitcrew

    @bobotron Pretty sure that in Penn there's also literally just a setting to not allow comtitles on a channel. Because I recall turning it to OFF on a game I staffed on. Because I'm a tyrant.



  • @roz

    You can set individual channels to not have comtitles through @chan/privs channel=notitles which does it on a per-channel basis. Setting the thin to 0 does it for every channel.


  • Pitcrew

    @bobotron Ooooooh, I get you!


  • Coder

    @bobotron said in How To Strip Comtitles in PennMush:

    @roz

    You can set individual channels to not have comtitles through @chan/privs channel=notitles which does it on a per-channel basis. Setting the thin to 0 does it for every channel.

    Hum... just realized something... what about @chaformat?



  • @ashen-shugar

    Maybe? Set a chatformat on yourself, to strip before() the name but after() the channel tag? I've honestly never played around with @chatformat.


  • Pitcrew

    Isn't that what @faraday was just saying?


  • Coder

    @bobotron said in How To Strip Comtitles in PennMush:

    @ashen-shugar

    Maybe? Set a chatformat on yourself, to strip before() the name but after() the channel tag? I've honestly never played around with @chatformat.

    @chatformat can distingush a message without a comtitle, so theoretically you could set something like:

    @chatformat me=%5
    


  • @roz

    You're right, my brainmeats are just not working.



  • @Lotherio pointed me to 'help mogrify'. Thank you Lotherio.


  • Coder

    @pondscum I thought the mogrifier thingy was an admin level control for a channel, and 'chatformat' was for individual players?

    Mogrifiers let you tweak every aspect of a channel's output, before it goes to individual players' @chatformats.

    I think if you want to customize just your own output, you need chatformat, as mentioned above.



  • @faraday Yes, you're right. It does seem to be admin level, and whilst I staff on the game in question, I'm clueless with code. There does appear to be a helpfile for 'chatformat' so I'll look at that now.