All versions
1.0.0
Release
Fiw Admin Utility's 1.0.0last month 73
Compatibility
Minecraft: Java Edition
1.21.11
Platform
Fabric
Supported environments
Server-side
Singleplayer
Required content
Changes
Changelog
1.0.0
Initial release for Minecraft 1.21.11 ā Fabric and NeoForge, fully server-side.
Added
- Fabric and NeoForge server-side builds.
/fiwcommand tree with reload/status commands.- Maintenance mode: persistent lockout state, MOTD override, allowlist, bypass permission, kick-on-enable, and join blocking. Restart countdown via
/fiw maintenance in <duration> [message...]with broadcast warnings (chat, actionbar for the final 10s),/fiw maintenance cancel, configurablecountdownMessage, and optionalstopServerAfterCountdown. - Sweep: timed cleanup, threshold item cleanup, chunk-local cleanup, mob caps, warnings, actionbar countdowns, dry-run counts, and admin/all/off announcements.
- Alert: TPS checks, cooldown/escalation, top loaded chunk reports, clickable teleport/sweep actions, and notify sound. Discord webhook notifications (
alert.jsonādiscord.enabled+discord.webhookUrl, POSTed asynchronously) and persistent alert history inalert-history.jsonwith/fiw lag history. - Vanish: persistent state, self toggle, target toggle, list command, tab/entity hiding, join/leave suppression, ping-count filtering, a
[V]tab marker for visible vanished players, and hiding from the 1.21.6+ locator bar (hideFromLocatorBar). - Inspect:
/fiw whois <player>ā position + dimension, gamemode, health/food, ping, first/last connection (tracked inplayer-seen.json). Permissionfiw.inspect.use. - Find:
/fiw find <item>searches online players' inventories (and optionally ender chests) with per-player counts and registry tab-completion. - Freeze:
/fiw freeze <player>toggle and/fiw freeze listā server-side rubber-band plus block-break/use/attack blocking on both loaders; frozen state survives relog (frozen.json). Permissionfiw.freeze.use. - BanItem:
/fiw banitem <item> [duration]toggle +/fiw banitem listā blocks use/place/attack/break-with on both loaders and confiscates from inventories once per second; persisted with optional expiry (banned-items.json). Permissionsfiw.banitem.manage/fiw.banitem.bypass. - New-player alert: first-ever join ā customizable admin message, optional broadcast-to-all message, optional Discord message (
newplayer.json). - Scheduled announcements: rotating (or random) broadcast messages with prefix and interval (
announce.json); inactive until messages are configured; skipped while the server is empty. - Messages: customizable join/leave messages with
{player}placeholder (replaces vanilla ones, respects vanish; joins/leaves are still written to the server log) and rotating server-list MOTD with interval and random order ā each independently toggleable (messages.json). - Optional LuckPerms integration: when the LuckPerms mod is installed, its permission verdicts are consulted first on both loaders; silently ignored when absent. Without a permission mod, checks fall back to vanilla operator levels.
- JSON config files under
config/fiw-admin/, one per module, every feature with an on/off switch, live/fiw reload. - Permission nodes for all admin actions and notification channels.
- Common integration tests for config creation and persistent state.
Known Limitations
- Vanish is visual/packet-based: sounds and particles can still happen, mobs can still target vanished players, and sleep-skip still counts vanished players.
- BanItem does not block crafting the item yet.
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:f1yH9Ggq:xPBemnYp"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:f1yH9Ggq:xPBemnYp"
}


