Перейти к содержимому
Mineforgian

Login Daddy

Login Daddy is a Fabric mod for private friend servers(Mainly Offline-Mode servers). Requires players to have the mod installed on their client, be on the whitelist and authenticate with a password before they can play.

Загрузки
382
Подписчики
2
Обновлён
6 марта 2026 г.
Лицензия
MIT

Опубликован 17 февраля 2026 г.

Login Daddy

A Fabric mod for private friend servers (Mainly Offline-Mode servers). Requires players to have the mod installed on their client, be on the whitelist of this mod (not the server whitelist) and authenticate with a password before they can play.

How it works

  1. Player connects → sent to an invisible limbo dimension
  2. Server checks if the client has LoginDaddy installed (handshake). No mod = kicked
  3. Client is prompted to enter the server key (if one is configured). Wrong key = kicked
  4. Server checks if the player is whitelisted. Not whitelisted = kicked
  5. If the player has a valid session (logged in within the last 48 hours from the same IP), they are released automatically
  6. Otherwise, player registers or logs in with a password
  7. Player is teleported back to where they joined from

Join/leave messages and tab list are hidden until authentication is complete.

Requirements

  • Minecraft 1.21.11
  • Fabric Loader 0.18.2+
  • Fabric API

Setup

Server

  1. Drop the mod jar into your mods/ folder
  2. Start the server once to generate config/LoginDaddy/logindaddy.properties
  3. Edit logindaddy.properties with your database credentials and optionally a server key
  4. Add players to the whitelist (see commands below)

Client

Players need the same mod jar in their mods/ folder. On first join to a server with a key configured, a prompt will appear to enter the key. The key is saved automatically and reused on future joins.

Configuration

config/LoginDaddy/logindaddy.properties is generated on first launch.

# sqlite (local file) or mysql
database.type=sqlite

# MySQL only — ignored if using sqlite
mysql.host=localhost
mysql.port=3306
mysql.database=logindaddy
mysql.username=root
mysql.password=

# Optional server key — leave empty to disable
# Players will be prompted to enter this key on first join
server.key=

⚠️ Never share your logindaddy.properties file with anyone.

It contains your database credentials and server key.

Data Files

All mod data is stored under config/LoginDaddy/:

File Description
logindaddy.properties Server configuration
logindaddy.db SQLite database (only if using SQLite)
sessions.json Active login sessions (server-side)

Client-side data is stored under the client's config/LoginDaddy/:

File Description
serverlist.json Saved server keys per server address

Commands

Admin commands require operator permission or the server console.

Command Description
logindaddy whitelist add <username> Add a player to the whitelist
logindaddy whitelist remove <username> Remove a player from the whitelist
logindaddy whitelist list List all whitelisted players
resetpassword <username> <newpassword> Reset a player's password

Player commands (in-game, only usable during authentication):

Command Description
/register <password> Register with a password (first time only)
/login <password> Log in with your password
/changepassword <old> <new> Change your password (must be logged in)

License

MIT

Ченджлог

1.1.0Релиз1.21.11 · 6 марта 2026 г.

1.1.0

New Features

  • Per-server key authentication — Servers can now set a server.key in their config. Clients are prompted with a GUI window to enter the key on first join. The key is saved to config/LoginDaddy/serverlist.json and reused automatically on subsequent joins. If the server key changes, the client is prompted again to enter the new one.

  • Session caching — Players who have successfully logged in are remembered by IP for 48 hours. On rejoin, if their IP and username match a valid session, they skip the /login step entirely and are released from limbo automatically. Sessions persist across server restarts and are stored in config/LoginDaddy/sessions.json.

Changes

  • Config directory movedlogindaddy.properties is now generated at config/LoginDaddy/logindaddy.properties instead of the server root folder. To migrate: just copy your existing logindaddy.properties into the config/LoginDaddy/ folder and everything will work like nothing changed.

  • SQLite database movedlogindaddy.db is now created at config/LoginDaddy/logindaddy.db instead of the server root folder. To migrate: copy your existing logindaddy.db into the config/LoginDaddy/ folder alongside the properties file. If you're using MySQL, there's nothing to move.

  • New config propertyserver.key added to logindaddy.properties. Leave it empty to disable the key requirement entirely.

Bug Fixes

  • Fixed players being returned to the limbo dimension after re-joining. The limbo dimension (logindaddy:limbo) was being persisted to the database on disconnect and then loaded back as the return destination on the next join. The saved dimension is now always sanitized before writing to or reading from the database.

  • Fixed MySQL connection drops causing CommunicationsException and No operations allowed after connection closed errors after the server had been idle long enough for MySQL's wait_timeout to close the connection. The database now validates and reconnects before every operation, and additionally performs a keepalive check after every world save cycle.

1.0.3Релиз1.21.11 · 22 февраля 2026 г.

1.0.3

Bug Fixes

  • Fixed stuck "Loading terrain..." screen when reconnecting after having ridden a boat, horse, or any other entity. Vanilla was saving the vehicle into the player's NBT on disconnect and restoring the passenger relationship before the client finished loading, causing it to hang indefinitely.
  • Fixed ghost entity warnings (Fetching packet for removed entity, Duplicate entity UUID) that appeared in logs on every login.

Changes

  • Operators can now use commands from ingame.
  • Pressing the "Title Screen" button on the death screen now correctly sends a respawn packet before disconnecting, so the server processes the death properly instead of leaving a dead entity behind.
  • The Disconnect button in the pause menu is now hidden while the player is in the limbo/authentication phase, preventing players from bypassing the login flow.
  • Removed vehicle restore on login. vehicles are no longer saved or restored across sessions.
1.0.2Релиз1.21.11 · 19 февраля 2026 г.

Minor bug fixes

Now supports fabric loader 0.18.2 and up

1.0.1Релиз1.21.11 · 18 февраля 2026 г.

DO NOT USE THE 1.0 VERSION! USE THIS VERSION INSTEAD!

  1. Fixed a bug that previously made it impossible to play in singleplayer with this mod installed for some people.
  2. Fixed a bug that previously made it so you were teleported to the overworld if you died, didn't respawn(letting the death screen active) and rejoining to respawn which led to you teleporting to the overworld with spectator mode!
1.0Релиз1.21.11 · 17 февраля 2026 г.

LoginDaddy

A Fabric mod for private friend servers. Requires players to have the mod installed on their client, be on the whitelist and authenticate with a password before they can play.

How it works

  1. Player connects → sent to an invisible limbo dimension
  2. Server checks if the client has LoginDaddy installed (handshake). No mod = kicked
  3. Server checks if the player is whitelisted. Not whitelisted = kicked
  4. Player registers or logs in with a password
  5. Player is teleported back to where they joined from

Join/leave messages and tab list are hidden until authentication is complete.

Requirements

  • Minecraft 1.21.11
  • Fabric Loader 0.18.4+
  • Fabric API

Setup

Server

  1. Drop the mod jar into your mods/ folder
  2. Start the server once to generate logindaddy.properties
  3. Edit logindaddy.properties with your database credentials
  4. Add players to the whitelist (see commands below)

Client

Players need the same mod jar in their mods/ folder. The client side only handles the handshake — no configuration needed.

Configuration

logindaddy.properties is generated in the server root on first launch.

# sqlite (local file) or mysql
database.type=sqlite

# MySQL only — ignored if using sqlite
mysql.host=localhost
mysql.port=3306
mysql.database=logindaddy
mysql.username=root
mysql.password=

⚠️ Never commit "logindaddy.properties" to version control.

It contains your database credentials.

Commands

All admin commands require the server console (no in-game access).

Command Description
logindaddy whitelist add <username> Add a player to the whitelist
logindaddy whitelist remove <username> Remove a player from the whitelist
resetpassword <username> <newpassword> Reset a player's password

Player commands (in-game, only usable during authentication):

Command Description
/register <password> Register with a password (first time only)
/login <password> Log in with your password
/changepassword <old> <new> Change your password (must be logged in)

License

MIT

Комментарии

Загружаем…