StreetTechPro

Six bugs, one weekend

October 25, 2026 · Minecraft, troubleshooting

Building the server network went mostly to plan. "Mostly" is doing a lot of work in that sentence. Here's what broke, roughly in the order it bit us, and how each one got fixed. The short version of all of them: the error message is usually telling the truth, just not the whole truth.

1. "Click actions are disabled for this sign"

The lobby has signs you click to jump to a world. In testing, clicking them just showed that message in red.

The first culprit was spawn protection: the server stops regular players from interacting with blocks near spawn, and signs count. Turning that off for signs changed nothing, though. Same message.

The real cause was in the game itself. In this version of Minecraft, a sign only runs its click command if it carries a special permission flag, and signs placed by the server console don't get that flag by default. Digging through the game's code turned up the flag's name.

FixThe lobby re-places its signs with that flag every time it starts. Clicks work.

2. Spawning inside a wall

After rebuilding the lobby (more on that here), I logged in and saw nothing but darkness, with my health flickering down and back up. Minecraft puts you back exactly where you logged out, and that spot was now inside the new stone foundation. Claude had planned the rebuild around the new spawn point and missed that returning players don't use it.

FixThe lobby now sends everyone to the spawn point whenever they join or come back from another world. No more saved positions to land in.

3. PvP that wouldn't turn off

A friend got a chat message on the Peaceful world: "Now you can fight other players." Not ideal for a world called Peaceful. The server panel clearly said PvP was off.

It turns out this Minecraft version moved PvP from a server setting to a game rule, a per-world setting stored inside the world itself. The panel was still writing the old server setting, which the game now ignores, so the worlds kept the default, which is PvP on. The land-claims plugin had noticed PvP was on and was helpfully announcing it.

FixSet the PvP game rule to off in every dimension of the worlds that should be peaceful, and told the claims plugin to match.

4. The backup that quietly refused to run

The first night of scheduled backups, one world's backup failed with "backup exceeds individual size limit." The limit was set to 14 MB. The world is about 5 GB.

That one was Claude's. I'd asked for the number of backups to keep to be set to 14, and Claude typed the 14 into the box next door: the maximum size of a single backup. Two boxes on the same row, easy to mix up, and exactly why "check the result, not just the action" is a habit worth having.

FixPut the size limit back, ran a test backup by hand (it worked), and kept the web map's picture files out of the backups. The map can always be redrawn from the world, and leaving it out cut each backup to about a third of the size.

5. A friend's Xbox stuck on "Strict NAT"

Not a Minecraft bug, but it showed up the same week. A friend's Xbox on our network reported a Strict NAT type, which limits online play.

Claude's first theory was a naming mismatch in some router port rules, with a config change to match. It looked plausible, but before touching a production router I sent it back for a second look. The second pass found the real cause: stale state. The router was holding on to old automatic port mappings from earlier sessions and wouldn't hand out new ones cleanly. The "fix" from the first theory would have changed config and fixed nothing.

FixA planned router reboot cleared it, and the NAT test went straight to Open. Sometimes turning it off and on again really is the answer. It just helps to know why.

6. The Xbox Friends tab that works only at home

Xbox players join through the Friends tab. Inside my house that works perfectly. From outside, the console finds the server, starts connecting, and then gives up.

We tried a lot: fixed port ranges, extra port forwards, even switching connection methods. The logs eventually showed the hand-off was being dropped in the software itself, and the developer had already confirmed it as a known bug, with the fix coming alongside Minecraft's next update.

StatusWaiting on that update. Everyone else (Java, and Bedrock on phones, tablets and PCs) can already join from anywhere.

Bonus: whitelisting Bedrock players

Adding a Bedrock player to the whitelist by gamertag kept failing with "unable to find user." The lookup only knows players who have joined a Bedrock-enabled server before. The workaround is a little backwards: the player tries to join once and gets bounced, their account ID shows up in the server log, and we whitelist that ID. Now it's a two-minute routine.

Under the hood
  • Signs: in this Minecraft version a sign's click commands only run if its block data has allow_op_features:true. Found by reading the sign class in the server jar, since the docs hadn't caught up. A start-up function re-places the signs with the flag.
  • Spawn fix: a tick function sends players to spawn when they're new to the hall (a scoreboard tag) or arriving back in the lobby (the leave_game statistic).
  • PvP: now the pvp game rule, stored per world, so it had to be set in the overworld, Nether and End separately. The panel's old server-properties setting is ignored.
  • Backups: the per-backup size limit was set back, the replacement policy changed to delete the oldest, nightly jobs switched to stop-copy-restart (a clean copy instead of a live one), and the regenerable map data excluded.
  • Xbox NAT: stale UPnP mappings on the router. A planned reboot cleared them; no configuration was changed.
  • Friends tab: a known bug in the current MCXboxBroadcast release where the hand-off to a NetherNet server fails from outside the local network. The developer confirmed it in the project's issue tracker.
  • Bedrock whitelist: a Floodgate player's ID is derived from their Xbox user ID, so once you have that number, the ID can be whitelisted directly.