Tags
Creators
Details
1.2.0-beta.1
Compatibility
Changes
This is a beta
NeoForge 1.21.x only. Expect rough edges. Try it on a test pack before a season world.
Last public GitHub release was 1.1.2. Everything below is new if you are still on that jar.
Updating from 1.1.2
Your existing dashboard login becomes the owner account. No password reset. Everyone signs in again after the restart (same as any reboot). WatchTower keeps a backup at watchtower/dashboard-auth.json.pre-1.1.18.bak.
What's new since 1.1.2
Ops and safety
- Soft Disable / Enable for mod jars (
*.jar.disabled). No delete. World risk badge + confirm when the save may depend on that mod. Overview shows Restart needed until you reboot. - Backup integrity verify: Verified / Suspicious / Broken on Backups, Verify now, optional test restore only under
watchtower/restore-verify/(never the live world). Issue when the newest backup fails the check. - Named accounts: owner / admin / viewer. Owner manages people under Settings > Accounts. Audit log for settings, acks, accounts, and sign-ins.
- Rail shows who is signed in, Sign out, and an optional Minecraft skin link.
- Join / pack sync clinic: failed joins from
latest.log(missing / wrong-version / channel mismatch) become Issues and show on Session > Session activity with a player-safe Copy fix. - Mods > Configs: edit TOML under
config/from the dashboard (form when it parses, raw otherwise). Saves make a backup and support undo. Admin+ only. - Insights > Configs RAM advice uses the host or container memory limit, not a fixed heap guess.
- Pack jar drift: same filename + version with a different checksum shows as an Issue (check it was intentional).
- Client-only jars on Issues when scoring is high-confidence.
- External kill / OOM: Crashes can show a Killed entry when the host or panel stopped the JVM with no Minecraft crash report.
- Soft hang / freeze: if the server tick stalls hard, WatchTower raises a critical Issue (optional hang dump under
watchtower/hangs/). When it can, it adds a likely cause and a suspect-mod hint. - Restart hygiene: Overview can suggest a maintenance restart when uptime is long and GC/heap look worse, plus a historically quiet window. Advisory only; never auto-restarts.
- Silent script / datapack fails: KubeJS, CraftTweaker, datapack JSON, and
/reloaderrors that never crash still become Issues. - Weekly ops digest: Insights > Digest (and a dismissible Overview card) summarizes the week.
- Remember me survives a Minecraft restart (sessions saved under
watchtower/dashboard-sessions.json).
Find lag and pack pain
- Spark > Map: pan/zoom chunk heat from the selected profile's entity hotspots. Click a square for the same chunk details as World.
- Insights > Storage Space map: treemap of where disk goes (world / mods / logs / backups).
- Insights > World: entity/chunk pressure by dimension (item storms, mob spikes, forceload, players) plus world-pressure Issues.
- Logs: real log viewer for
latest.log,debug.log, rotated.log.gz, and crash report files. Level filters, search, problems-only, copy/download, and jump between matches. - Activity: incident story when lag, crashes, pack changes, and backups line up in a short window; Overview teasers the latest story with a jump to Activity.
- Startup: boot phases and launch/config audit without waiting on a giant scheduled report.
- Issues inbox is severity-only (Critical / Warning / Info). Drift, silent-fail, world-pressure, join-sync, soft-hang, etc. still open with the right Fix actions.
- Mods > Log errors: Active / Reviewed + Mark reviewed.
- Mods catalog: icons, side badges, Updates / Conflicts / Modrinth / Forensics. Modrinth lookup never downloads jars.
- Support packs: pick pack type + optional note + size; Customize files stays optional. Tighter redaction and size accounting.
- Dashboard timezone preference for Schedule / quiet-window display (stored data stays UTC).
- In-app Help Center (Docs) with searchable wiki pages.
Look and feel
- Night Watch Desk look: signal-blue accent, tighter corners, clearer gauge colours (metric vs healthy/warn), shared hero plates.
- Theme + accent: Light / Dark / Black / System plus accent presets. Rail Customize and Settings > Appearance (per account). Theme and accents on one row.
- Live charts jump and flash less. Tabs scroll to top on change. Shell loads tabs lazily so it feels snappier.
- Settings desk cleaned up (stacked fields, less chrome thrash).
Bugs we fixed
- Soft-disable no longer snaps the Mods detail panel back to Enabled after a successful rename (while the mod is still loaded until restart).
- Servers that died at boot with a Checker Framework / Groovy module clash: nested core no longer ships those packages.
- Live charts used to blink empty or jitter on hover. Calmer now.
- Opening Insights after the Storage Space map animation could blank the page. Gone.
- Support zips could leak unredacted ops data into the facts/brief, and the size estimate was wrong. Both fixed.
- Spark finding detail: long method names wrap, and we stopped showing internal field names like
source_rollups.own_pct. - Spark > World busy-chunk cards stacked in one tall column when there were lots of them. Grid again (use Map if you want every chunk).
- When Overview says Degraded, it can say why.
- Mission uptime KPI no longer overflows the mission band.
Full detail: CHANGELOG.md.
Files
| File | Put it here |
|---|---|
watchtower-neoforge-1.2.0-beta.1+mc1.21.jar |
Server mods/ |
watchtower-cli-1.2.0-beta.1.jar |
Same mods/ (use java -jar when the game won't boot) |
GitHub only for this beta. Not on Modrinth yet.
Supplementary resources
| File | Type | Size | |
|---|---|---|---|
| watchtower-cli-1.2.0-beta.1.jar | Dev jar | 5.17 MiB |
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:kgkchenb:ry57I6jD"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:kgkchenb:ry57I6jD"
}

