FirstLogin icon

FirstLogin -----

A lightweight, friendly first-join experience plugin for Spigot/Paper.



[​IMG]
FirstLogin
A welcoming first-join experience with titles, action bar, sounds, and clean MiniMessage formatting (with legacy & colors supported).
Version: 1.7.2 • Minecraft: 1.20+ • Java: 17 • Author: BooPug Studios
Why FirstLogin?
Give new players a warm welcome and a tasteful first impression. FirstLogin is simple, lightweight, and focused on a polished onboarding moment.
Features
  • Global + private welcome messages
  • Adventure MiniMessage support (e.g., <green>, <gray>)
  • Legacy color code fallback for "&" formatting
  • Optional visuals: Title, Action Bar, Sound
  • Returning player gate: greet again only if offline X days
  • Simple stats: online count and players who have ever joined
  • Built-in placeholders: {player}, {online}, {total}, {owner}
  • Optional PlaceholderAPI support
  • Welcome GUI: per-item permission + gating, once/cooldown/closeOnClick, clickSound
  • Reopen-on-join until rules are accepted (configurable)
  • Optional confirmation dialog before accepting rules in GUI
  • Admin command: /firstlogin (reload, seen, reset, gui, clearcooldown, clearflag, set, metrics)
  • In-plugin telemetry counters (today): GUI opens, rules accepted
  • Asynchronous player data saving (non-blocking players.yml writes)
  • bStats metrics (configurable/opt‑out)
Commands
  • /listp – number of players who have joined to date
  • /pnames – list of names who have joined to date
  • /owner – prints configured server owner
  • /onlinep – online/total summary
  • /firsthelp – quick help
  • /firstlogin reload|seen <player>|reset <player|all>|gui|clearcooldown|clearflag|set|metrics – admin utilities
Permissions
  • firstlogin.admin – use /firstlogin (default: op)
  • firstlogin.command.listp – /listp (default: op)
  • firstlogin.command.pnames – /pnames (default: op)
  • firstlogin.command.owner – /owner (default: op)
  • firstlogin.command.onlinep – /onlinep (default: op)
  • firstlogin.command.firsthelp – /firsthelp (default: true)
Configuration
Code (YAML):

formatting
:
  useMiniMessage
: true
  usePlaceholders
: true
  usePlaceholderAPI
: true
firstJoinVisuals
:
  title
:
    enabled
: true
    title
: "<green>Welcome, {player}!"
    subtitle
: "<gray>Enjoy your stay."
    fadeIn
: 10
    stay
: 60
    fadeOut
: 10
  actionbar
:
    enabled
: false
    message
: "<yellow>First time here!"
  sound
:
    enabled
: false
    name
: "ENTITY_PLAYER_LEVELUP"
    volume
: 1.0
    pitch
: 1.0
returningGate
:
  minDaysOffline
: 0
welcomeGui
:
  enabled
: true
  title
: "&aWelcome"
  rows
: 3
  openDelayTicks
: 40   # delay before opening GUI after first join (ticks)
  blockCloseUntilAccepted
: true
  rulesVersion
: 1
metrics
:
  enabled
: true
  pluginId
: 27008
 
Placeholders
  • {player} – player name
  • {online} – number of online players
  • {total} – players who have ever joined
  • {owner} – value from config: World.Owner
If PlaceholderAPI is installed and enabled in config, its placeholders will also be resolved in messages.
Installation
  1. Drop firstlogin-1.7.2.jar into your plugins/ folder
  2. Start the server to generate configs (config.yml, messages.yml, players.yml)
  3. Customize your messages and visuals
  4. Restart the server (recommended over /reload)
Requirements
  • Spigot/Paper 1.20+
  • Java 17
bStats
Anonymous usage statistics help guide development. You can opt out globally via plugins/bStats/config.yml or disable this plugin’s metrics in config.yml.
What’s New in 1.7.2
  • Asynchronous players.yml saving for Welcome GUI state (non-blocking)
  • Persisted timestamps: timestamps.<uuid>.first_join, timestamps.<uuid>.rules_accepted
  • PlaceholderAPI: first join + rules dates/epoch, days-since; telemetry counters and join order
    - %firstlogin_gui_opens_today%, %firstlogin_rules_accepted_today%
    - %firstlogin_item_clicks_today_<key>%, %firstlogin_join_order%
  • Telemetry command: /firstlogin metrics (view/reset today’s counts)
  • GUI improvements: reopen-on-join until accepted, optional confirm dialog on accept
What’s New in 1.6
  • MiniMessage formatting with seamless legacy "&" fallback
  • Title/Action Bar/Sound options for first join
  • New admin command: /firstlogin (reload, seen, reset)
  • Returning player gate via minDaysOffline
  • Placeholder support (built‑in + optional PlaceholderAPI)
  • Cleaner logs, dependency shading, and general polish
Support
Questions or suggestions? Post in the discussion thread or reach out to BooPug Studios.
Resource Information
Author:
----------
Total Downloads: 38
First Release: Aug 22, 2025
Last Update: Aug 24, 2025
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings