Solved is there a way to force a minecraf...

Discussion in 'Plugin Development' started by Reynergodoy, Jun 15, 2015.

Thread Status:
Not open for further replies.
  1. Offline

    Reynergodoy

    a way to force a minecraft client say something in a server?

    p.chat("somerandomthing") is not working, because its not filtered by the client, i want a way to filter the command, because most hacked clients have .legit, .nuker or things like that, im wondering if we can force they to write that, and if nothing appears, the player is using modded client!
     
  2. Offline

    Zombie_Striker

    @Reynergodoy
    You can deal with packets, or you can simply broadcast a message that has the same characteristics as if they said anything (E.G. "<"+PlayerName+">: "+Message)
     
  3. Offline

    Reynergodoy

    but with this broadcast the hacked client still wont filter anything from the server side
     
  4. Offline

    Zombie_Striker

    @Reynergodoy
    I did not read your all the way through.

    1) First, there is no way to make the client do anything. Everything the client can do is controlled only by the client.

    2) a better way to detect hackers (without looking at the packets the come in) would be to just check for simple things (If instantly 1000 entities of tnt spawn in one area, it is most likely because of a hacker and you could remove every piece of tnt before it explodes)
     
  5. Offline

    pinkitty1

    @Zombie_Striker
    Nuker isn't 1000 tnt entities spawning at once (that would be something hacked clients most likely can't do). Nuker just mines all of the blocks around the player at once/almost at once.
    @Reynergodoy
    are you looking to do an ASyncPlayerChatEvent? Because with that you will be able to read the message the player sent and you can do something like this (I changed the e.setCancelled to false so I am hoping this will force send the message to the server)
    Code:
    @EventHandler
        public void onPlayerChat(AsyncPlayerChatEvent e) {
            Player target = e.getPlayer();
            String message = e.getMessage().toLowerCase();
           
           
            if(message.contains(".legit"))){
           
                Bukkit.broadcast( ChatColor.GREEN + target.getDisplayName() + ChatColor.GREEN + " Has Been Toggled Their Hacks/Mods!", "(Your Permissions Node Here)");
                e.setCancelled(false);
            }
     
  6. Offline

    Reynergodoy

    @pinkitty1 i think that this wont work at all... because thats the hacked client that philter the message .legit
    so... the server wont receive it...
    and the .legit is a method that human beings use to say if a player is a hacker or not, the admin says: say .legit
    if the player cant, he is using hacks
    so... if a legit player says: .legit
    this will send a message that he is hacking, when he isn't
     
  7. Offline

    Konato_K

    @Reynergodoy You can't do this, these messages are catched by the modded client before sent to the server, the server never gets this message and there is no way to do this.

    Also, some hacked clients have a ".say" command, which can be used to send specific chat messages, so doing ".say .legit" will bypass your logic.
     
  8. Offline

    tytwining

    The only thing that you ALMOST could do is require the client to insert .legit into chat and send it within X amount of seconds or else they get banned, but that's also kind of cruel.
     
  9. Offline

    Konato_K

  10. Offline

    Reynergodoy

    yes.. im doing that, you read my mind :)

    but im trying to forcefully demand that player to say that, and the hacked client can be caught on that :)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 12, 2016
  11. Offline

    Konato_K

    @Reynergodoy No, it can't be caught if they do ".say .legit", since it's handled by the client and the server does not know the ".say " part.
     
  12. It can man, just use your brain, if the player dont say that he must be using a hack.
     
  13. Offline

    Reynergodoy

    yes... @Konato_K is not understanding me '-'
    maybe he is spanish, or portuguese... if its the case i will write in a bit os spanish that i know
    Yo estoy tentando fazer el servidor mandar el jugador escrebir .legit, si no hay respostas el jugador esta hackiando
    Eu estou tentando fazer o servidor mandar o jogador escrever .legit, se não haver respostas o jogador está hackiando

    I'm not saying that you're portuguese or spanish, just in case yes... thats one brief explanation in these languages :)

    problem solved... i did better than i expected... you can check this at the link i will leave soon... :)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 12, 2016
  14. Hey man that's not spanish .
    'Yo estoy intentado que el servidor mande al jugar escribir .legit, si no hay respuesta, el jugador está usando hack'
     
  15. Offline

    Konato_K

    @Reynergodoy @MaTaMoR_ No, you are not understanding me, let's put it this way:

    - HackPlayer joins the server
    - Server requests player to type ".legit" to check if it's not using a hacked client
    - HackPlayer types ".say .legit" in his chat box
    - Hacked client intercepts the ".say" command and knows it must sent the text as a chat message
    - Hacked client process command and sends ".legit" to the server
    - Server recibes response
    - Server allows HackPlayer even if he is using a hacked client
     
  16. Offline

    pinkitty1

    @Reynergodoy Well if all else fails I'm fairly certain you can use ProtocolLib to have the plugin check the profile name and the version name (most hacked clients have the version name still set as the name of the hacked client eg: Hazuni.jar, Nodus.jar etc.) you can also use it to check if anybody is using a resourcepack called something like "xray pack". I don't know if you can still check such things with ProtocolLib as I have recently heard about being able to do such things with packets.
     
  17. Offline

    Reynergodoy

  18. Offline

    mythbusterma

    @pinkitty1

    That's only a half-measure. Any halfway decent hacked client will just respond with the same information as a Vanilla client.


    @Reynergodoy

    ".say .legit"

    Your plugin is useless.
     
    SuperOriginal likes this.
  19. Offline

    Reynergodoy

    :) yes, but there are some hacked clients that can't do this :)
    and the client who can, i force he to do ".say .legit", when he says ".say .say .legit" the client "bugs" and whe only says "."
     
    Last edited by a moderator: Jul 24, 2015
Thread Status:
Not open for further replies.

Share This Page