Compatibility
Minecraft: Java Edition
Platforms
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
GeoLoc
Advanced Geolocation Plugin for Paper Servers
Description
GeoLoc is a powerful geolocation plugin for Paper servers that allows administrators to view the approximate geographic location of their players. With GeoLoc, server admins can easily see where their community members are connecting from around the world, enhancing community building and moderation capabilities.
Features
- Fast & Reliable: Uses multiple geolocation APIs to ensure accurate location data
- Flexible Commands: View full geolocation data or just specific information (city, region, country, local time)
- PlaceholderAPI Support: Integrate geolocation data into other plugins using our PAPI expansion
- Customizable Messages: Fully customizable messages through the messages.yml configuration file
- Join Messages: Optional location announcements when players join your server
- Tab Completion: Helpful tab completion for online players
- Lightweight: Minimal impact on server performance
Commands
/geoloc reload - Reload plugin configuration
/geoloc geolocation <player> - View full geolocation data
/geoloc geolocation full <player> - View full geolocation data with player suggestions
/geoloc geolocation city <player> - View only city information with player suggestions
/geoloc geolocation region <player> - View only region information with player suggestions
/geoloc geolocation country <player> - View only country information with player suggestions
/geoloc geolocation localTime <player> - View only local time information with player suggestions
Permissions
- geoloc.admin - Access to all GeoLoc commands
- geoloc.see - Allows the player to see the join message
PlaceholderAPI Integration
GeoLoc provides the following placeholders when PlaceholderAPI is installed:
%geoloc_full% - Full geolocation information
%geoloc_city% - Player's city
%geoloc_region% - Player's region/state
%geoloc_country% - Player's country
%geoloc_localtime% - Player's local time
Configuration
GeoLoc comes with two configuration files:
- config.yml - Main plugin settings
- messages.yml - Customizable messages for all plugin features
config.yml
# GeoLoc Plugin Configuration
# Set to true to display a welcome message to players with their location
# Set to false to disable the welcome message
# The actual message content is in messages.yml
join-message-enabled: true
# Permissions:
# geoloc.admin - Allows reloading the config
# geoloc.see - Allows seeing the join message (if enabled)
messages.yml
# GeoLoc Plugin Messages
# You can use color codes with & (e.g. &a for green, &c for red)
# Available placeholders for join-message:
# {player} - Player name
# {city} - City
# {region} - Region/State
# {country} - Country
# {localTime} - Local time in HH:mm:ss format
# Available placeholders for every message is defined by ALL CAPS
# Prefix for messages
# NONE
prefix: "&c&lGeoLoc &7&l→ &r"
# Default value when the geolocation of the player returns null (when they are in a local network)
# NONE
default-location-value: "Unknown"
# Join message (broadcasts to all players)
# PLAYER, CITY, REGION, COUNTRY, LOCALTIME
join-message: "&aPlayer &e{player} &ajoined us from &6{city}, {region}, {country}&a! It's &b{localTime} &athere."
# Command messages
command:
# NONE
reload-success: "&aGeoLoc configuration has been reloaded successfully!"
# NONE
no-permission: "&cYou don't have permission to use this command."
# PLAYER, CITY, REGION, COUNTRY, LOCALTIME
location: "&aPlayer &e{player} &ais from &6{city}, {region}, {country}&a! Local time: &b{localTime}"
# Log messages (console only)
log:
# PLAYER, CITY, REGION, COUNTRY, LOCALTIME
player-connected: "{player} connected from: {city}, {region}, {country} (Local time: {localTime})"
# PLAYER
no-ip: "Could not get IP address for player: {player}"
# PLAYER
no-geolocation: "Could not get geolocation data for player: {player}"
error:
# PLAYER
player-not-found: "&c{player} can't be found or isn't online."
# PLAYER
ip-not-found: "&cCouldn't get IP from {player}."
# PLAYER
geolocation-not-found: "&cCouldn't get geolocation data from {player}."
# Possible Placeholders:
# - %geoloc_full% -> Returns all geolocation information from the player
# - %geoloc_city% -> Returns the city of the player
# - %geoloc_region% -> Returns the region of the player
# - %geoloc_country% -> Returns the country of the player
# - %geoloc_localTime% -> Retunrs the local time of the player (calculated by region)
# The return format of all placeholders can be defined below
# PlaceholderAPI return format
placeholder:
full: "{city}, {region}, {country}, {localTime}"
city: "{city}"
region: "{region}"
country: "{country}"
localTime: "{localTime}"
Support
For support, please visit our Discord server or create an issue on our GitHub repository.
Disclaimer
This plugin provides approximate geolocation data based on IP addresses and should not be considered 100% accurate. The data provided is for general informational purposes only and should not be used for any critical decision-making. The plugin relies on third-party geolocation services which may have varying levels of accuracy depending on the region.
GeoLoc respects player privacy and only provides general location information (city, region, country, local time) rather than exact coordinates. Server administrators should inform their players that this information may be visible to server staff.
GeoLoc is not affiliated with any geolocation service providers used in this plugin. We are not responsible for any inaccuracies in the data provided by these services.
© 2025 TSERATO | Version 1.0