File Details
welcomescreen-1.20.1-2.0.0.jar
- R
- Apr 7, 2026
- 36.60 KB
- 26
- 1.20.1
- Forge
File Name
welcomescreen-1.20.1-2.0.0.jar
Supported Versions
- 1.20.1
Curse Maven Snippet
Welcome Screen v2.0.0 for Minecraft 1.20.1
A configurable fullscreen welcome screen that greets players when they join your server.
Ported from 1.12.2 to 1.20.1. Players must accept your rules or terms before they can play — or get kicked. Simple, clean, and fully server-configurable.
Requires Java 17+ and Forge 47.2.20+. Works on Mohist and Arclight hybrid servers.
What It Does
When a player joins, a fullscreen overlay appears with:
- Title and subtitle — your server name, welcome message, whatever you want
- Body text — rules, terms of service, important info (scrollable)
- Accept / Refuse buttons — refuse kicks the player with a configurable message
- Countdown timer — optional delay before the Accept button becomes clickable (prevents speed-clicking past your rules)
- Info button — opens a multi-page info menu with categories and pages (driven by a JSON file on the server)
Everything is configured server-side. The client just displays what the server sends — no client config needed.
Features
- Fully server-driven — title, body, buttons, delay, pages are all sent from the server to the client via network packets. Change the config, players see the new content on next login.
- Accept tracking — once a player accepts, they're recorded in
welcomescreen_accepted.txt. They won't see the screen again unless you clear the list or enable "show every login." - Configurable delay — force players to wait X seconds before they can accept. Great for making sure they actually read your rules.
- Info menu — a built-in multi-page browser for server info, mod lists, Discord links, etc. Defined in
welcomescreen_pages.jsonwith categories and pages. Pages can include clickable URLs. - Kick on refuse — players who click Refuse are disconnected with a configurable message
- Pause game — optionally pauses singleplayer (irrelevant on servers, but works)
What Changed from 1.12.2
Port to 1.20.1
The entire mod was rewritten for modern Forge:
@Modannotation and lifecycle updated for Forge 1.20.1- Proxy system (
ClientProxy/CommonProxy) removed — login handling moved directly into the main mod class - Config migrated from
Configurationfile API toForgeConfigSpec(generateswelcomescreen.toml) - Networking migrated from
SimpleNetworkWrappertoSimpleChannelwithmessageBuilderpattern - GUI rewritten from
GuiScreentoScreenwithGuiGraphics,Button.builder(), and GLFW key constants - Text rendering updated for
Component.literal()andFormattedCharSequence - Mouse/keyboard input uses modern
mouseScrolled()/keyPressed()instead of legacy handlers
Fixes
- Server crash on startup — the packet handler no longer references client-only classes (
Screen,Minecraft) on the server side. Client rendering is isolated in a separate class to preventNoClassDefFoundErroron dedicated servers. - URL confirmation — uses the modern
ConfirmLinkScreeninstead of the deprecatedGuiConfirmOpenLink - Countdown scaling — large countdown text uses
PoseStacktransforms instead of legacyGlStateManager
Configuration
All settings are in welcomescreen.toml (auto-generated on first run):
| Setting | Default | Description |
|---|---|---|
enabled |
true |
Master toggle |
showEveryLogin |
false |
Show screen every time, not just first join |
pauseGame |
false |
Pause singleplayer while screen is open |
acceptDelaySeconds |
0 |
Seconds before Accept becomes clickable |
allowRefuseDuringDelay |
true |
Let players refuse before the delay expires |
title |
"Welcome" |
Main title text |
subtitle |
"" |
Subtitle below the title |
bodyLines |
[] |
Array of body text lines (scrollable) |
acceptButtonText |
"Accept" |
Accept button label |
refuseButtonText |
"Refuse" |
Refuse button label |
kickMessageRefuse |
"You must accept to play." |
Kick message on refuse |
infoButtonEnabled |
true |
Show the Info button |
The info pages are defined in welcomescreen_pages.json — a JSON file with categories and pages, each with a title, body, and optional URL.
Requirements
| Minecraft | 1.20.1 |
| Forge | 47.2.20 or newer |
| Java | 17 or newer |
Drop welcomescreen-1.20.1-2.0.0.jar into your mods/ folder. Config and pages file generate on first run. Edit them, restart (or relog for most changes), and you're set.
Made by Luc Bellefeuille.

