BCountryGreeting 1.7.1

Broadcasts a message, when a player joins, where he/she is from. Now with proxy blocking!

  1. KatsuroKurosaki
    Description
    This plugin broadcasts a message when a player joins the server, saying the country where he connects from; as well when the player disconnects. Also has permission nodes to display an alternate message or a player's IP. This is also saved in a CSV log file, or not if you want. Also is capable of blocking proxies, the ones that are in the GeoIP file. A single command is enough to reload the config. No more Bungee downtimes.

    Features
    Display a Join message, and where the player is from.
    Display a Disconnect message.
    Display an alternate join/leave message for Staff members, permission based.
    Block access from known proxies, also with a broadcast message and configuration parameters.
    Display a user's IP address, permission based.
    Configurable: Save a CSV log file with relevant information

    Commands:
    bcountryreload: Reads again the configuration file and sets the new parameters.

    Permissions:
    bcountrygreeting.staff : Shows the alternate Staff join/leave message
    bcountrygreeting.showip : Appends the user's IP when displaying the join message, only shown to users with this permission.
    bcountrygreeting.reload: Allows the use of bcountryreload command for players. Not necessary for Console-tan.

    Installation:
    Drop the jar file in your BungeeCord plugins folder.
    Start the server
    A default GeoIP.dat file is copied as well the config.yml
    Ready to go! :D
    Have a look at the config file section to configure the plugin, and execute bcountryreload if you make any changes.
    Also, it is strongly recommended that you disable/hide all the other BungeeCord and/or Spigot plugins that broadcast other player join/leave messages.

    Config file:
    logging:
    ----csv: true

    This directive enables logging to a CSV file; look at the CSVLogging section for more info

    geoip:
    ----keepinmemory: false

    Keep the GeoIP database in memory. Enabling this uses less CPU and more RAM. Choose the best option for your server, but the default one must be suitable for most servers.

    join:
    ----player: "%player% has joined from %country%!"
    ----staff: "A staff member has joined!"
    ----ip: "( IP: %ip% )"

    Those are the messages displayed when a player joins, a staff member joins or the IP address message. Set to empty string to avoid broadcasting a message.

    leave:
    ----player: "%player% has disconnected."
    ----staff: "A staff member has disconnected."

    Those are the other messages displayed when the player disconnects. Also, set to empty string to avoid broadcasting a message.

    proxylogin:
    ----allow: false
    ----alertmsg: "&4Warning: %player% tried to connect via proxy!"
    ----disconnectmsg: "No proxy logins allowed."

    This setting allows players joining using proxy servers. The alertmsg directive is a broadcasted message to the currently connected players and the disconnectmsg is the message sent to the player that tried to connect via Proxy.

    The CSVLogging feature:
    Every time a user connects or disconnects, this plugin will append a new line in a CSV file, with the following fields:
    Letter C or D: C=Connect D=Disconnect
    Timestamp: A Unix Timestamp when the event happened
    User: The Minecraft username that made the action
    IP: The user's IP address
    Minecraft int version: This is an integer to get clients version: number 4 are 1.7.2, 1.7.4 and 1.7.5; number 5 are for 1.7.9 and 1.7.10 versions; and number 47 are for 1.8, 1.8.1, 1.8.2 versions.
    Minecraft String version: The same as above, but represented in String: 1.7.2-4-5; 1.7.9-10; 1.8.0-1-2

    To avoid generating a huge CSV file; it will be split into small files with the file format: yyyy-mm-dd_hh.csv generating one different file par hour. If nobody connects, no file is generated.

    Updating GeoIP data file
    This plugin includes GeoLite data created by MaxMind. Download here new GeoIP data files: http://dev.maxmind.com/geoip/legacy/geolite/
    Choose the GeoLite Country -> Binary/gzip
    Upload and overwrite IF you have disabled the keepinmemory feature. By default is disabled, so you can overwrite the current file or you will have to stop BungeeCord, overwrite the file and start it again.

    Screenshots:
    An example, translated to Spanish, for my server:
    staff.png
    An example CSV file:
    csv.png
    Proxy-blocking!
    Untitled.png

    Feature requests or found a bug?
    Feel free to drop a comment here and I will reply ASAP. Don't forget to append your BungeeCord version at least; so I can test it. Thanks! ^^

    Source Code and License:
    You can browse the stable versions on GitHub: https://github.com/KatsuroKurosaki/BCountryGreeting
    Or stay tuned with beta and development on my GitLab server: https://katsunet.com:4433/Katsuro/bcountrygreeting
    This plugin is licensed under a MIT License; for more information, check: http://choosealicense.com/licenses/mit/

    Donations:
    A programmer is an organism that converts coffee and pizza into code. Will you feed me? :p If you want, I have a Paypal donation gateway: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=S6D5YW4KNTTDN

    Thanks!!
    InstanceLabs likes this.

Recent Reviews

  1. SebasG_
    SebasG_
    5/5,
    Version: 1.7.1
    Excelente plugin, sigue subiendo buenas actualizaciones y serĂ¡ un plugin muy conocido en todo SpigotMC.
  2. Evan_mcclan
    Evan_mcclan
    3/5,
    Version: 1.7.1
    Can you please make this plugin non-dependant on bungeecord? i would really like to be able to use it on a regular spigot server.
  3. kukubaczek
    kukubaczek
    5/5,
    Version: 1.7.1
    Very good plugin. But you should add to config blacklist countries or whitelist. You should also use event.registerIntent(plugin);
  4. Carloswasthere
    Carloswasthere
    5/5,
    Version: 1.7.1
    Add command /playerip for view the ip of the player. :D
    1. KatsuroKurosaki
      Author's Response
      Thanks for your review :D
      I can do the command, but BungeeCord has already it's own command: /ip <playername> ^^
      Regards~
  5. Foster
    Foster
    5/5,
    Version: 1.7.1
    add whitelist country
    and blacklist country
    1. KatsuroKurosaki
      Author's Response
      I'm working on this right now, hoping to finish it soon, on version 2.0.
      Thanks for your review! :D
  6. Scrufdog
    Scrufdog
    5/5,
    Version: 1.6
    Simple to setup, easy to use. I use it as a simple Global join announcer without the country part. Lots of players have been asking for this, and they love it. Thanks
    1. KatsuroKurosaki
      Author's Response
      Your welcome Scrufdog, and thanks for your review! ^^