Filled AloeWatcher

Discussion in 'Plugin Requests' started by Skrubzy, Apr 24, 2016.

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

    Skrubzy

    Plugin category: Administrative

    Suggested name: AloeWatcher

    I'm really tired when I'm writing this so some things might not make sense but I don't want to lose the idea, I'll come back and fix any mistakes I make tomorrow night.

    What I want: I need a plugin that can add players to a "watchlist" as a punishment. Their IGN along with any other Minecraft IGN's logged into the server via the same IP will added to a notepad.txt file named "watchlist"(Using the format below). /watchrandom will teleport you to someone random online that is also on the watchlist. The other commands are self explanatory below. Chat formats should be configurable in the config.yml file.

    Ideas for commands:
    /watch <player> - The player will be added to the watch list, other previously logged in accounts will be added to the watch list aswell.

    /unwatch <player> - The player will be removed from the watch list, other previously logged in accounts will be removed from the watch list aswell.

    /accounts <player> - Lists all IGN's of other Minecraft accounts that have logged into the server under the same IP: Aliases are /acc <player> and /a <player>

    /watchrandom - Randomly teleport to a player that is online and is listed on the watch list (Other accounts that have logged in under the same IP are included): Aliases are /watchr and /wr

    Ideas for permissions:
    aloewatcher.watch.use - Allows the user to do /watch and /unwatch
    aloewatcher.accounts - Allows the user to view all accounts logged in under the same IP
    aloewatcher.random - Allows the user to teleport to a random player on the watch list
    aloewatcher.exempt - Anyone with this is unable to be added to the watchlist by anyone
    aloewatcher.notify - Get notified if a user is now on the watch list, is removed, has multiaple accounts etc...
    aloewatcher.* - Give access to all of the above

    Watch List File Format: c2631339a2c4482264078db103716d86.png
    Config.yml File Format: a982fc11bf1c4c5eae7eef74df497d5f.png


    When I'd like it by: ASAP
    EDIT- I just noticed that in the config.yml example I said 5 accounts but then only listed 3, there should be 5 listed (6 In total, the original username plus the 5 other accounts) I'm too lazy to fix it so...yeah
     
  2. Offline

    Firestar311

    @Skrubzy It would be much easier to use a yml file format for the watchlist part. Other than that, this is a sound idea
     
  3. Offline

    I Al Istannen

    @Skrubzy
    At least where I live users will get a new IP every 24 hours and you can use a proxy. That means the plugin has some limitations, but it might be enough. Just wanted to point it out :)
     
  4. Offline

    Skrubzy

    I don't think an IP can ever change automatically, the IPV4 address however does. But this plugin would be searching for the IP address used to log into the server, so I doubt there would be an error. Unless I'm completely wrong and the IP does change.
     
  5. Offline

    I Al Istannen

    @Skrubzy
    The IPv4 address IS the Ip address. They log in to the server with their IPv4/IPv6 address, which can change. That is also the reason you can bypass an IP-Ban with a Proxy. I don't know how many of the "hackers/griefers" out there are able to use a proxy though, so it might still be able to do what you need.

    Somwhat more technical, you can get the InetAddress with a plugin (using this). Which is an IP address (Wikipedia). You can see yours if you visit myip.is, whatismyip.org or similar services.
     
  6. Offline

    Skrubzy

    Well as long as the majority of players can be traced for other accounts they have logged in with, its fine. I would still like this feature to be implemented, even if it doesn't work perfectly with "advanced" hackers/griefers who know how to use a proxy. Plus, most hackers on minecraft just know how to download a client and use it, they don't actually know anything about real hacking.
     
  7. Offline

    I Al Istannen

    @Skrubzy
    Hey, I might do this if I have the time. Why do you need a Special format for the watchlist.txt. As JayFeather said it would be easier to do it in YML. Your format is still possible, but what is the need behind it?
     
  8. Offline

    Skrubzy

    I don't really care what format it's in as long as it's organised. The example I posted was using a text file, but you can do YML if you want.
     
  9. Offline

    I Al Istannen

    @Skrubzy
    Do you have Java 8? Or do you still use Java 7?
     
  10. Offline

    Skrubzy

    Java 8
     
    I Al Istannen likes this.
  11. Offline

    I Al Istannen

    @Skrubzy
    How should that work? Should it only work for online player's whose IP you can get? Or should it look through it's saves and grab the first IP address this account is associated with?
     
  12. Offline

    Skrubzy

    Hopefully both, so if the player logs out you can still check the accounts they've logged in with before. But if the player is still online, you can also check their accounts then.
     
    I Al Istannen likes this.
  13. Offline

    I Al Istannen

    @Skrubzy
    aloewatcher.accounts and aloewatcher.notify arent they the same? I mean notify allows them to receive a notice about multiple accounts. What did you intend with them?
     
  14. Offline

    Skrubzy

    Yeah...just make the permission aloewatcher.accounts. I just wasn't thinking I guess.
     
    I Al Istannen likes this.
  15. Offline

    I Al Istannen

    @Skrubzy
    The Watchlist is just to be able to teleport. Is this wrong? I mean I must save the things anyways to provide the ability to later look their past alts up.
     
  16. Offline

    Skrubzy

    Not exactly,when they are added to the watch list they will be added to the whatchlist.yml file. This also allows them to be teleported to.
     
  17. Offline

    I Al Istannen

    @Skrubzy
    Is the first part important? Currently I save it as a YML object which will look similar to this:
    Code:
    Tester:
        ==: me.ialistannen.inventory_profiles.players.Profile
        op: false
        password: teste
        bannedUntil: 1462634237
        money: 10.25
        name: Tester
        xp: 0
    And somewhere in there would be a small boolean saying I am on the watchlist or I am not on the watchlist.
     
  18. Offline

    Skrubzy

    Well I want to be able to look at the watch list file and see who is being watched.
     
  19. Offline

    I Al Istannen

    @Skrubzy
    Through a command or through the real file? If the latter, when should the file get updated? On Disable (Restart/Reload) or every time it changes (heavier on server resources, but not much)?
     
  20. Offline

    Skrubzy

    It should update every reload (Or restart) And /watch [player] adds them to the watch list, to view who is on it you must go into the watchlist server file.
     
  21. Offline

    I Al Istannen

    @Skrubzy
    I don't know which of his accounts to put on the top. I will just put all alts in there.
    Is this format ok?
    Code:
    Accounts: TestAccountOne, TestAccountTwo
    Ip address: /127.0.0.1
    I won't be able to test this plugin, as I can only connect with my local IP. So I have absolutly no clue how it will work for you later.
     
  22. Offline

    Skrubzy

    Yes that's fine, if you can (I don't mind if you don't want to) Could you put the accounts in order from most recently logged in to most time offline? So if the account named Test1 logged in 0 seconds ago (Online now) and Test2 logged in 3 days ago, it would be displayed like this: Test1, Test2.
     
    Last edited: May 7, 2016
  23. Offline

    I Al Istannen

    @Skrubzy
    It does that now.

    Unwatch and Watchrandom left.
     
  24. Offline

    Skrubzy

    Ok, thank you for doing this. Don't forgot the aliases though
     
  25. Offline

    I Al Istannen

    @Skrubzy
    It's sad to say, but I wasn't whole-heartly behind this plugin. This reflects quite heavily in the code and maybe in the functions. I apologize, but I do this because I have fun doing it.

    And again, I can't really test it, as I can only login from ONE Ip address.

    Dropbox link: here.
     
  26. Offline

    Skrubzy

    Could you make an English.yml file so I can edit what it says in chat and with the colors I want? If you don't want to do that, could you just send me the code please? EDIT: I tried decompiling it but every time it said "Internal Server Error"
     
  27. Offline

    I Al Istannen

    @Skrubzy
    It does have a config file. It just doesn't save it. Try this (old link).
     
  28. Offline

    Skrubzy

    So does that mean that some features aren't added?
     
  29. Offline

    I Al Istannen

    @Skrubzy
    No, it does save the config now. I just fixed the not-saving-part. I added every feature I read, maybe I have skipped one. But I will got to sleep now, so bye :)
     
  30. Offline

    Skrubzy

    Ok it's working now, thank you so much for making this :) I'm surprised you even found this thread lol it's been like 2 weeks since anyone replied to it before you.
     
    Last edited: May 7, 2016
Thread Status:
Not open for further replies.

Share This Page