player tag concommand

Discussion in 'TTT Suggestions' started by Temar, Apr 8, 2017.

Tags:
  1. Temar

    Temar Administrator VIP

    When you call someone out using the command , iver inno/suspect/traitor
    it should auto set them as inno/suspect/kill on the scoreboard/player
    however this should ONLY be your scoreboard and your callouts
    this should also be made optional by adding a setting under F1 settings, maybe default off?

    ok after some discussion in the thread the idea has evolved
    now its a simple console command that uses same system as ttt_radio
    so you can bind both eg, bind x "ttt_radio traitor;ttt_mark traitor"
    or just bind it on its own and it will use same targeting system and get that player and set the tag on player / scoreboard

    -- code has been posted that should work
     
    Last edited: Apr 8, 2017
    • Disagree Disagree x 1
  2. Python~

    Python~ Young Bard VIP Silver Emerald

    This would be a bitch to program, if it's even possible. It's also unnecessary.

    -1
     
  3. Temar

    Temar Administrator VIP

    to me it seams pretty easy to program, i havnt looked but from years of coding in gmod i dont think it would be hard at all
     
    • Optimistic Optimistic x 1
  4. Temar

    Temar Administrator VIP

    setting a player status will be a command/function
    just add that into the function the callout command runs, and add a setting box and check that setting
     
  5. Temar

    Temar Administrator VIP

    no longer best code -- see later posts
     
    Last edited: Apr 8, 2017
  6. NeverEnding

    NeverEnding It's Never going to end. Trust me on this. VIP

    Not sure if I get everything you said, but in my own perspective, it would lead to a lot of rdm, chaos and stuff.

    The set function is there like a bingo card, if the guy is marked to be killed due to call, or due to witnessed, you mark it as kill, if you find someone is suspicious, you mark it suspicious, if you find somebody that may be a potential T, you mark it avoid.
    If you find somebody who is a proven guy, you mark it as a friend, remember. this is a human job, not AI job.
    Your hand, your bingo card, your game. choose wisely.
     
    • Dumb Dumb x 1
  7. Temar

    Temar Administrator VIP

    dont see how it can lead to RDM, like i stated this is for YOU only, if someone else called out traitor it WONT be set as thats down to you to notice and decide if valid
     
  8. Zypther

    Zypther #SuitUp VIP Bronze Iron

    -1, for the reason being, that this should be something that a player should do, it brings a more player thing. if a detective doesn't write something down and they forget something, well it's lost to be found again.
     
    Last edited: Apr 8, 2017
    • Dumb Dumb x 1
  9. MythMe

    MythMe VIP

    +1 IF this would be optional. This could be an awesome upgrade to the game. Like when you're testing people, you call them out as innocent and mark as friend. This would be a nice shortcut as you would only need to call them out as innocent and you don't have to go trough the trouble of finding that name out of the other 35 in tab. Also while in tab you can't shoot so you can get killed easily. Maybe a menu in f1 so you could set them to do anything you want?
     
  10. Carned

    Carned ✘o ✘o VIP Silver Emerald

    This is insanely helpful if an optional upgrade, you don't know how much time I spend marking people as friend etc

    Admitedly I do the same with KOSes but that would be way to OP if you allowed any T bind to do so.

    +1 to T binds called out by the player.
     
    • Dumb Dumb x 2
  11. Dolph1n

    Dolph1n Time is an adventure- if you know when to look. Banned Elite

    What about making this an upgrade you buy in the point shop? Something like 10k.
     
    • Like Like x 1
  12. Zikeji

    Zikeji Repoleved VIP Emerald

    The problem with this is ttt_radio is part of the TTT gamemode - modifying the code means any update it would need to be re-evaluated and fixed.

    A suggestion that is pretty identical to this is to make a command to make players, similar to ttt_radio. That way you can add that command to any ttt_radio binds.

    In fact, I've already done this on the other thread. https://www.seriousgmod.com/threads/making-marking-people-easier.35785/page-2#post-356990

    Just saying, I'd much prefer the approach in the other thread as opposed to an automatic approach as proposed here.
     
  13. Temar

    Temar Administrator VIP

    your right if i made it more like a separate command, no ulx needed
    would be a simple console command same as ttt_radio and id make it work the same , last person you looked at etc
    then you can bind separate or together with the ttt_radio command and can essentially do the same with additional option to set with out calling out, and no direct modification should be needed
     
  14. Amr

    Amr Benevolently Committed VIP Iron

    Can I trust that code though, you wrote that comment without adding // before it, it won't run
     
    • Dumb Dumb x 1
  15. Zikeji

    Zikeji Repoleved VIP Emerald

    ULX adds autocomplete functionality for names and statuses though. We use ULX. Using ULX to harness the command is more than proper.

    Like with the plugin I wrote, I can simple go to the console and start writing "ulx ttt_mark f" and it'll suggest "friendly" and if I want to make a player I do "ulx ttt_mark friendly Zikeji". As well, I've added short forms for chat usage so I could also just chat "!mark f zik". ULX is much more powerful for this use.
     
  16. Temar

    Temar Administrator VIP

    yer but would ulx function as well, eg you looked at a player 1 second ago but no longer are looking at him
    plus i dont see the need to use ulx for a simple console command that will get player info from code thats already available as part of ttt (same as ttt_radio) and then make change as needed
    to me using ulx is just making it more complex and adding a dependency
     
  17. Temar

    Temar Administrator VIP

    not tested but here is what we are after i believe

    - Client side code

    Code:
    local tags = {}
    tags["innocent"] = {txt="sb_tag_friend", color=COLOR_GREEN};
    tags["suspect"] = {txt="sb_tag_susp",   color=COLOR_YELLOW};
    tags["traitor"] = {txt="sb_tag_kill",   color=COLOR_RED};
    
    local function RadioCommand(ply, cmd, arg)
        if not IsValid(ply) or #arg != 1 then
            print("ttt_mark failed, too many arguments?")
            return
        end
    
        if RADIO.LastRadio.t > (CurTime() - 0.5) then return end
    
        local msg_type = string.lower(arg[1])
        local target, vague = RADIO:GetTarget()
    
        if(msg_type == "suspect" or msg_type == "traitor" or msg_type == "innocent") then
            target.sb_tag = tags[msg.cmd]
        end;
    end
    
    local function MarkComplete(cmd, arg)
        local c = {}
        for k, cmd in pairs(tags) do
            local rcmd = "ttt_mark " .. k
            table.insert(c, rcmd)
        end
        return c
    end
    concommand.Add("ttt_mark", MarkCommand, MarkComplete)
    
    
    
    a simple console command that uses TTT radio target system and changes scoreboard tag
     
  18. Zikeji

    Zikeji Repoleved VIP Emerald

    Yes. My addon would function just as well as the ttt_radio command. Since my addon utilizes the global RADIO:GetTarget(), the exact command that ttt_radio uses. This saves on resources as well as makes it function exactly the same in regards to who you were looking at.

    But feel free to publish your addon and let the servers that don't use ULX use it. We use ULX, so using a ULX module makes perfect sense. It adds the command to /help, it adds autocomplete, etc.
     
  19. Xproplayer

    Xproplayer VIP Silver

    I've been thinking about this recently but have been banned, I'll poke the upper admins about this cause I'd love for it to be added, of course only for your own client. @Opalium
     
    • Like Like x 2