Commands
All commands live under a single root: /midnightthoughts.
Every command requires permission level 2 (game master / operator). In single player you need to have cheats enabled.
There is no /mt alias. The full /midnightthoughts name is the only one registered.
Command tree
/midnightthoughts
├── reload
│ ├── config
│ ├── achievements
│ ├── content
│ └── all
├── comfort [target]
└── wellrested
├── grant <targets> <level>
├── clear <targets>
└── info [target]
Reload
Reloads mod data from disk without restarting the server.
| Command | What it reloads |
|---|---|
/midnightthoughts reload config | midnightthoughts.json — validated, then pushed to every online player |
/midnightthoughts reload achievements | achievements.json — reports how many were loaded |
/midnightthoughts reload content | Custom facts in config/midnightthoughts/dreams/, and recreates any missing default files |
/midnightthoughts reload all | All three at once |
Running /midnightthoughts reload with no argument is the same as reload all.
Config reload also re-syncs the values to connected clients, so overlay timings, opacity and theme take effect immediately — no reconnect needed.
A reloaded config goes through the same validation as a config loaded at startup. Out-of-range values are clamped and reported in the server log rather than rejected.
Comfort
/midnightthoughts comfort [target]
Prints a full comfort report for a player: scan radius, which categories were found around the bed, the weight each one contributed, the resulting total, and whether that total triggers nightmares or blocks sleep entirely.
- Yourself
- Another player
/midnightthoughts comfort
Reports on the player running the command. Cannot be used from the console.
/midnightthoughts comfort Steve
Reports on any online player. This form also works from the server console and from command blocks.
The report looks roughly like this:
── Comfort Report: Steve ──
Scan radius: 5
Cozy surroundings
● Lighting +1
● Carpet +1
○ Furniture —
● Decoration +1
○ Structure —
Unsettling surroundings
○ Macabre —
● Hostile -1
○ Dark —
Total comfort: +2
Nightmares: no (threshold -1)
Sleep blocked: no (threshold -2)
This is the fastest way to answer "why can't I sleep here?". A filled circle means the category was found within the scan radius; the number next to it is the weight from the config.
Well Rested
Grants or removes the Rested effect manually.
- Grant
- Clear
- Info
/midnightthoughts wellrested grant <targets> <level>
level accepts 1 to 5. targets is a standard entity selector, so @a, @p and player names all work.
/midnightthoughts wellrested grant @a 5
/midnightthoughts wellrested clear <targets>
Removes the effect and fires the expiry event for anyone who actually had it.
/midnightthoughts wellrested clear @a
/midnightthoughts wellrested info [target]
Prints the current state of the effect. With no argument it reports on the player running the command; with a player name it works from the console and from command blocks too.
── Well Rested: Steve ──
Level: 5
Phase: 2 / 3
Time left: 6:41 (8020 ticks)
Duration: 15:00 (18000 ticks)
Both a readable time and the raw tick count are shown, so the output is equally useful in a bug report and while debugging.
If the Well Rested system is switched off in the config ("wellRested": { "enabled": false }), grant refuses to run and tells you so instead of silently doing nothing.
If you lower durationMinutes while an effect is already running, info will say the remaining time still exceeds the new duration. It is trimmed on the next tick, and the bar catches up with it.
Automation
Because every command is a normal Brigadier command, they can be used from command blocks, datapack functions and server consoles — with the single exception of comfort without a target, which needs a player to report on.
# Reward the whole server after a boss fight
midnightthoughts wellrested grant @a 5