promotional bannermobile promotional banner

FirstLogin

A lightweight, friendly first-join plugin for Spigot/Paper. Welcomes new players with clean MiniMessage formatting, a configurable Welcome GUI, optional reopen‑until‑accepted rules.

File Details

firstlogin-1.7.1.jar

  • R
  • Aug 22, 2025
  • 967.83 KB
  • 43
  • 1.21.8+18

File Name

firstlogin-1.7.1.jar

Supported Versions

  • 1.21.5-Snapshot
  • 1.21.8
  • 1.21.7
  • 1.21.6
  • 1.21.5
  • 1.21.4
  • 1.21.3
  • 1.21.2
  • 1.21.1
  • 1.21
  • 1.20.3-Snapshot
  • 1.20.5-Snapshot
  • 1.20.6
  • 1.20.5
  • 1.20.4
  • 1.20.3
  • 1.20.2
  • 1.20.1
  • 1.20
## 1.7.1 (2025‑08‑22)

- Fix: Eliminated server stalls when opening the Welcome GUI by removing reflection and opening the GUI after a safer delay
- Fix: Fully blocked item movement while the Welcome GUI is open (clicks, drags, creative actions, drops, hand swapping)
- Add: Player overload for `sendMsg(Player, String, Player, int)` that delegates to the `CommandSender` version
- Add: Public helpers to avoid reflection (`playersToDate()`, messaging helpers)
- Add: Locale-aware message accessors (`messagesFor()`, `msgFor()`, `msgListFor()`)
- Change: Increased/validated default `welcomeGui.openDelayTicks` to 40 ticks to avoid NMS init stalls
- Internal: Strengthened event handlers in `firstlogin/gui/WelcomeGui.java` at multiple priorities
- Performance: Players-to-date count warmed up asynchronously on enable to avoid main-thread I/O stalls
- Build: Bump version to 1.7.1
- Toggleable options
  - New in 1.7.1: `welcomeGui.openDelayTicks` – delay before opening the Welcome GUI after first join (ticks)
  - Existing toggles (for reference):
    - `formatting.useMiniMessage`, `formatting.usePlaceholders`, `formatting.usePlaceholderAPI`
    - `firstJoinVisuals.title.enabled`, `firstJoinVisuals.actionbar.enabled`, `firstJoinVisuals.sound.enabled`
    - `messageGlobal.enabled`, `message.enabled`, `messageBack.enabled`
    - `welcomeGui.enabled`, `welcomeGui.blockCloseUntilAccepted`
    - `metrics.enabled`

## 1.7 (2025‑08‑22)

- New: Full tab completion for `/firstlogin` subcommands
  - `locale <locale|reset>` with dynamic locale tag discovery from data folder
  - `clearcooldown <player> <key|all>`
  - `clearflag <player> <flag|all>`
  - `gui <open|accept|trigger>`
  - `seen <player>` / `reset <player|all>` suggest player names
- New: Automatic extraction of bundled locale files (`messages_*.yml`) to the plugin data folder on startup and on `/firstlogin reload`
- Update: `plugin.yml` usage reflects new subcommands
- Update: `messages.yml` and `messages_en_us.yml` include keys for new commands
- Internal: Refactored `onTabComplete` and deduped locale extraction on reload
- Build: Bump version to 1.7