Home›Java›Mods›Wake
Wake
Wake logo

Wake

See AI Usage

Wake

A lightweight and highly configurable framework for Minecraft boatracing

Feature Modules

Wake is a framework with isolated modules that can be toggled off

Core Module

OBU Module

Drydock Module

Axiom Module

Showcase

Wake
OBU context layering

The status dashboard for OBU settings and contexts

/wakeobu -status A collapsed context layer on hover

Shared server contexts and your own sandboxes

/wakeobu -context A context preview on hover

Sandboxes

Two sample workflows: Create, fork, switch and publish a sandbox. Add, narrow or remove single settings instead of resetting everything.

Creating/forking/switching/publishing a sandbox Setting/narrowing/clearing OBU settings

Look up and share sandboxes

/wakeobu -sandbox view /wakeobu -sandbox export

More custom OBU features

Server-side settings for the OBU module

/wakeobu -settings

Autocompletion and a command to look up OBU defaults

/wakeobu -clear with narrowed suggestions /wakeobu -defaults

All commands are listed and explained in custom help menus

/wakeobu -help /wake help

More

OBU Client handling: Outdated clients are notified and see badges on unavailable settings. Unsupported ones are refused.

An outdated OpenBoatUtils client An unsupported OpenBoatUtils client

Boostpads and durability: Wake queues every change in case of database outages and replays them on recovery.

/drydock boostpad list A database outage, journaled and replayed

Current modules in the reload dashboard

/wake reload

Documentation

Wakes documentation

AI Usage

Large parts of the codebase are written by or with the help of LLMs. They were used for code generation, reviews, drills and unit tests.
While I use them heavily to generate boilerplate, the architectural/implementation decisions, ideas and code reviews are entirely my responsibility. For releases, I dedicate days to manual testing following iterative reviews and automated tests. See PR #10: I spent 12 full days to review code, fix findings and run ~350 manual testcases on top of the automated ones for the 2.0.0 release. I'm aware that using LLMs is a dealbreaker for some. But I can ensure you that Wake is properly tested and that I'm aware of my responsibilities using LLMs. I'm developing and sharing Wake as a passion project that smaller private servers like mine might benefit from as well. Not critical infrastructure.

Developer & Admins

Wake is primarily developed and tested on Paper 1.21.11.
It is compiled on all versions Wake claims to support. It is also sporadically tested on the lowest and highest supported versions but the majority of automated and manual testing will happen on the latest Minecraft version OBU supports.

Database

By default Wake uses a SQLite database.
You can set up a MariaDB database and point Wake to it via the config. Wake automatically recovers after database outages and handles ingame notifications and cache reloading for you.

Wake caches gameplay related data in memory for instant access. Therefore the caches of individual servers can drift from the shared MariaDB database in a multi-server setup. Set up a Valkey instance and point Wake to it via the config. Backends announce changes to their cache via pub/sub and Wake handles the invalidation/reloads so your backends stay synced if you choose to use that feature.

Things you should know

Make sure to increase moved-wrongly-threshold and moved-too-quickly-multiplier in your spigot.yml

⚠ Warning Wake's OBU module cancels vehicle correction packets (VEHICLE_MOVE) for OBU clients in boats to avoid rubber banding when airstepping or at speed. Or anything that trips vanilla movement checks that isn't handled by the configs above. Make sure you account for that with a dedicated anti-cheat plugin or toggle it off via /wakeobu -settings boat-lag-fix false.
Private servers can ignore this warning.

1.21-1.21.3 will log a warning about EntityRemoveEvent which you can ignore (or suppress via deprecated-verbose: false in bukkit.yml)

Credits

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more