All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Fetchr Bingo

Fetchr Bingo

by NeunEinser • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Fetchr - Bingo v5

Fetchr is a custom gamemode where you play in survival Minecraft with a 5x5 Bingo board.

Try to collect all 5 items in a line for a quick Bingo or all 25 items for a longer Blackout game as quickly as possible!

Example of a Bingo Card as shown in the Fetchr lobby:

Example of a Bingo Card as shown in the Fetchr lobby:
Lobby Card

General information

Fetchr / Minecraft Bingo is quite a simple concept as it builds ontop of the vanilla survival gameplay. You will start with an empty inventory at a random, unknown spawn point within the world and get an experience similar to starting a new survival world.

Your goal is to get items from the Bingo Board. There are multiple goals that are detected by the pack:

  • Bingo: All 5 items in any of the rows, columns, or diagonals
  • Blackout: All 25 items on the board
  • 20 No Bingo: Get 20 items while avoiding any Bingo. This is the maximum number of items that can be obtained without triggering a Bingo and requires careful planning
  • Multi Bingo: Obtain multiple Bingos at once. This can be accomplished by obtaining items of two intersecting lines and getting the item at the intersection last, effectively unlocking a combination of 2-4 rows, columns and/or diagonals at once.

You may also play in either (or both at the same time):

  • Lockout Mode: Only one team can obtain each item, locking other teams out from scoring it. Once a team has obtained more items than any other team still can, this team will win.
  • Blind Mode: The card is not visible and items get revealed as any player gets them. Knowing possible items and mutual exclusivity from the category chests is expected for this mode.

The map will always detect all goals. Don't worry when a Bingo is announced while you want to go for a blackout - just keep going, there is no automatic mechanism that ends the game before you desire to do so.

Download and Installation

This requires a fresh world. You may also use the world version from CurseForge while Modrinth is not yet supporting worlds for an easier installation.
!Don't attempt to use this pack in an existing world!

Singleplayer

  1. Start the game and select singleplayer
  2. Make sure you are using the correct Minecraft Version (as indicated at the release you are downloading)
  3. Select "Create New World"
  4. Select "Data Packs" and drag the downloaded file into the screen
  5. Enable the data pack by clicking the arrow and moving it to the right section saying "selected".
  6. Select "Done"
  7. If you want to run this competitively, select "More World Options" and enter the seed 91 into the text field at the top. This will make sure you get the same spawn points for the same Fetchr seeds as anyone else using this pack.
  8. Select "Create New World"
  9. You will be prompted to download a resource pack. Download the pack, and enable it via Options -> Resource Packs and enable it like you did with the data pack before.

Multiplayer

  1. Make sure you are using a supported version (as indicated at the release you are downloading, vanilla, or Fabric with Lithium. Paper/Spigot are not supported.)
  2. Create a new world on the server and stop the server afterwards.
  3. Copy the downloaded file into the datapacks sub directory.
  4. Delete the folder called region.
  5. Make sure the server.properties file is set according to this file. (For beta versions please look for an updated file in the changelog section)
    • Note that this file is made for the world version and assumes your world directory is called Fetchr-5.1. Just ignore the level-name setting
    • If you already have a custom server.properties, make sure all the settings mentioned in that file are set correctly.
    • If you don't have a custom server.properties override it with that file (and set level-name to the name of the world folder of your server). When the server starts, all missing settings will be filled with default values
  6. Start the server - everything is setup now.

Updating a previous installation

Always do a backup of your world before updating! There is a chance of corruption

  • Make a backup of your previous save file
  • Download the datapack
  • Delete the old datapack in your saves//datapacks directory
  • Add the new datapack to the directory

Detailed Feature Overview

Custom HUD

While in-game you will have a bunch of custom HUD elements around your hotbar. This utilizes a custom font and does not require any mods. Custum HUD

The HUD can be customized in the Lobby and elements can be moved however you prefer them to be layed out, or individual components can be removed.

Bingo Card

The Bingo card shows all items of the current game and a summary of which team obtained which item so far. Items your own team has already gotten appear a little bit darker. Depending on the amount of teams, this display will be adjusted to fit all teams in.

Bingo Card with 2 teams

From the lobby, 10 team colors are available.

Timer

There is a timer that counts up. This allows you to keep track of your time without any third party software. There is no time limit imposed by the map, but you can of course set your own goal. The timer counts real time. The timer icon also represents a functional Minecraft clock, showing the time within the current day

Timer

Player position

There is a player position visible which shows the coordinates relative to the spawn point. The coordinates on your F3 screen will be extremely high and hard to parse / communicate, due to the random spawn point. The icon also functions as a regular compass and can be changed to appear like the Minecraft compass icon via the preference settings.

Below the regular coordinates, there is by default also a chunk coordinate display. This is useful during certain times, for example when following a treasure map, the treasure will always be located at chunk coordinates 9 9, or to keep track of chunk boarders if you want to use the Lapis Trick

And below that, there is also a separated Y coordinate display, which is useful when digging down without requiring F3.

Coordinate Display

Fetchr Seed

Finally, there is a visible display for the Fetchr seed. Like a Minecraft world, where the same seed will generate the same world, the same Fetchr seed will generate the same Bingo Board and the same spawn point. When generating a card, you can choose to manually set a seed instead of generating a random card for competitive races or set-seed runs.

Seed

Custom Worldgen

Fetchr uses custom Worldgen to make certain items more reliable in a Bingo run.

Compressed World

Biome sizes are decreased to make finding biome-specific items more fun and reliable, and structure frequencies are increased.

No Nether

Owing to technical limitations with custom worlds, the Nether is disabled.

No Ites

All stone variants that end in -ite have been disabled from generating. This includes diorite, andesite and granite. This was done as a qol change to reduce inventory clutter and make digging for stone consistent.

Granite may still generate as part of copper ore veins.

Ambient lighting

There is a constant lighting factor in the overworld, similarly to the vanilla Nether. This allows seeing in caves clearly without torches.

Game Rule changes

  • Weather is always sunny
  • Phantoms, wandering traders and patrol spawns (which all work on a world-global timer) are disabled

Credits

Original idea and 1.11 implementation by Lorgon111: http://www.playminecraftbingo.com/

Code Contributors

NeunEinser - Main / Lead developer
Kri5t0fK
UnlucksMcGee

Translators

German by NeunEinser, gbegerow and LawrenceB
Polish by Kri5t0fK
Italian by Loweredgames
Dutch by ThomasToSpace
Portuguese (Brazil) by Draacoun
French by Aurélien
Spanish by Alvaro Orrego and HolaSoyElmo
Chinese (simplified) by 雨夢 YoMon and Sora

Contributing

This project is open source on Github.

Translating

Translations are hosted on Crowdin. Any contributions are appreciated.

If your language is missing, get in touch, and it can be added.

See Translation Help & Guidelines for more information.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3.x 26.2.x 26.1.x +38
Datapack
8h ago 1
26.3-snapshot-1 26.2.x 26.1.x +39
Datapack
8h ago 1
26.2.x 26.1.x 26w14a +38
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w37a 25w36b 25w36a +29
Datapack
8h ago 1
25w35a 25w34b 25w34a +26
Datapack
8h ago 1
25w33a 25w32a 25w31a +23
Datapack
8h ago 1
25w10a 25w09b 24w46a +13
Datapack
8h ago 1
25w09b 24w46a 24w45a +12
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w46a 24w45a 24w44a +11
Datapack
8h ago 1
24w40a 24w39a 24w38a +8
Datapack
8h ago 1
24w40a 24w39a 24w38a +8
Datapack
8h ago 1
1.20.x
Datapack
8h ago 1
1.20.x
Datapack
8h ago 1
24w14a 24w13a 24w12a +25
Datapack
8h ago 1
24w14a 24w13a 24w12a +13
Datapack
8h ago 1
24w12a 24w11a 24w10a +11
Datapack
8h ago 1
1.20.x
Datapack
8h ago 1
1.20.x
Datapack
8h ago 1
23w35a 23w33a 23w32a +2
Datapack
8h ago 1
23w35a 23w33a 23w32a +2
Datapack
8h ago 1
23w35a 23w33a 23w32a +2
Datapack
8h ago 1
1.20.1
Datapack
8h ago 1
1.20.1
Datapack
8h ago 1
1.20.1
Datapack
8h ago 1
1.20.1
Datapack
8h ago 1
1.20.x
Datapack
8h ago 1
1.19.4
Datapack
8h ago 1
1.16.5
Datapack
8h ago 1
[5.4-beta3] Fetchr 5.4 Beta 3 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.4-beta3.properties)

## Changelog
  • Updated to 26.3-pre2
  • Added “abandoned camp” category (only available in 26.3-snapshot7 and later)
  • Added cushion (also part of wool category)
  • Added abandoned camp explorer map
  • Added burried treasure map to shipwreck category (only available in
26.3-snapshot7 and later because of distinctive texture)
  • Added straw bed to wheat category
[5.4-beta2] Fetchr 5.4 Beta 2 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.4-beta2.properties)

## Changelog
  • 26.3-snapshot-1 is now supported
  • Removed sulfur cave items
  • Added dappled forest items
  • Only available in 26.3-snapshot-1
  • Added poplar shelf
  • Added red shrub
  • Added poplar sapling
  • Added shelf mushroom (also part of mushroom category)
  • Added yellow poplar leaves (also part of shearable category)
  • Changes to mushroom category
  • Added red mushroom
  • Added brown mushroom
  • Added shelf mushroom (also part of dappled forest category)
  • Note that in 26.3, mushroom stew and suspicious stew can now be crafted with
two muchrooms of any kind (even the same mushroom twice), including shelf
mushroom.

## Bug Fixes
  • Fixed tipped arrows not getting detected in 26.1-snapshot-5 and later
  • Fixed dye items showing the updated texture for old minecraft versions
([#316](<https://github.com/NeunEinser/bingo/issues/316>))
[5.4-beta1] Fetchr 5.4 Beta 1 by NeunEinser on Oct 16, 2026
Download
5.4 is intended to be a smaller release mostly bringing compatibility with up to
26.2.

## Changelog
  • Added compatibility with all versions from 1.21 - 26.2
  • When playing in a 26.2 version, sulfur caves can now appear
  • Error messages when opening Fetchr in an unsupported Minecraft version now
use the full development version name if the version name is in the new style
(e.g. the 26.x download will now say “This pack has been made compatible for
Minecraft versions 26.1 Snapshot 6 to 26.2 Release Candidate 2”, whereas it
is the following for the old format: “This pack has been made compatible for
Minecraft versions 1.21-1.21.10, or up to snapshot 25w44a”)
  • Since all development versions are now possible to associate with their
actual version name, this is now possible.
  • Adjusted the item pool
  • Renamed ”category chests” to “item pool display”
  • The item pool chests now have a “Item Pool Display” name in their inventory
  • All entities that are connected to another entity connected to the player
will now be preserved correctly when returning to the lobby

## Lobby Update Changes
There are now two world downloads. The one without a version name in their file
name is compatible with all versions, and **must be** used when updating a
old lobby from a Minecraft version prior to 26.1-snapshot-6, in order to apply
the world format changes to your existing save file from that version.

The world download specifically for 26.x should be used to upgrade an existing
world that originates from 26.1-snapshot-6 or later (which for this first beta
should not happen yet, but is relevant for following versions).

## Item Pool Changes

### Sulfur Caves
Added new sulfur caves category which is available in 26.2-snapshot-1 and later.

  • Developer's Note**: _Suflur caves are quite a bit rarer compared to lush caves
and dripstone caves. Feedback on the difficulty of these items is appreciated_

  • Sulfur Bricks
  • Polished Cinnabar
  • Bucket of Sulfur Cube
  • Sulfur Spike

### Gold and Ruined Portal
This category has been removed and split into three smaller categories with a
couple of new entries

### Gold

This category has been split from the previous “Gold and ruined portal” category

  • Golden Dandelion (new item available in 26.1-snapshot-5 and later)
  • Block of Gold
  • Block of Raw Gold
  • Golden Axe
  • Golden Sword
  • Golden Shovel

### Gold with Redstone

This category has been split from the previous “Gold and ruined portal” category

  • Powered Rail
  • Clock

### Ruined Portal

This category has been split from the previous “Gold and ruined portal” category

  • Lodestone (previously only with lodestone compass)
  • Magma Block
  • Obsidian (Previously only with diamond)
  • Netherrack (New item; available in all supported Minecraft versions)
  • Nether Brick (New item; available in all supported Minecraft versions)

### Books -> Paper
The “Books” category has been renamed to ”Paper”. Empty Map is intentionally not
included.

  • Added Name Tag (available in 26.1-snapshot-2 and later)

### Night Time Mob Drops

  • Poison arrow is now only available until version 1.21.11 (25w44a)
  • Added Weeakness arrow (available in 1.21.11 (25w44a) and later)
  • Also exclusive with Skeleton Drops and Warm Biome items

### Taiga

  • Removed Snow from Taiga category.

### Snowy Biomes

  • Includes snow
  • Includes slowness arrow

### Roots
Removed category and moved all items to new Village category

### Shipwreck loot

  • Removed emerald from category
  • Added new item “Prismarine Crystals” (available in all Minecraft versions)

### Village

New Category

  • Contains all items from the previous ”Roots” category (carrot and potato-
related)
  • Emerald is now only in the village category
  • Added Bell (available in all versions)

  • Developer's Note**: _Bell has been previously tested as part of the 5.0
release in 1.16 and has been deemed too uncommon. I feel like villages are more
common in the updated generation. Feedback is appreciated._

### Basic Iron
  • Added Iron Spear

## Bug Fixes
  • Fixed item pools that featre a category where every item is also part of
another category breaking card generation if no item is available in that
category anymore
  • Fixed entities getting dismounted during a lobby update
([#315](<https://github.com/NeunEinser/bingo/issues/315>))

## Technical Changes
  • All internal references in function names, storages, scoreboards, tags,
translation keys, and other references to “skybox” have now been renamed to
“spawn_preview”
  • All internal references in function names, storages, scoreboards, tags,
translation keys, and other references to “points_goal” and “points_race” have
now been renamed to “target_time”
  • Updated structure version of fetchr:tutorial
  • Translation keys fetchr.lobby.tutorial.skybox.sign.line<1..4> and
fetchr.lobby.tutorial.skybox.dummy_card_frame.<item_name> have skybox
changed to spawn_preview in their name
  • Translation key fetchr.lobby.tutorial.chests.lectern.heading has been
changed to fetchr.lobby.tutorial.chests.heading
  • Updated structure version of fetchr:card_generation
  • Translation keys fetchr.settings.points_goal.sign.line1<1..4>,
fetchr.settings.points_goal.lectern.page_<1..2> and
fetchr.settings.points_goal.name have points_goal changed to
target_time in their name
[5.3.3] Fetchr 5.3.3 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3.3.properties)

5.3.3 fixes an oversight where the team name on the points scoreboard did not
show up correctly after generating a new card from the spawn preview
([#317](<https://github.com/NeunEinser/bingo/issues/317>))

## Upgrade a previous release
  • Make a backup of your previous save file
  • Download the datapack
  • Delete the old datapack in your saves/<save>/datapacks directory
  • Add the new datapack to the directory
[5.3.2] Fetchr 5.3.2 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3.2.properties)

5.3.2 fixes more bugs that didn't get caught before

## Bug fixes
  • Fixed blue trimmed boots and tipped arrows still being mis-detected on
servers after a server restart under the same conditions as 5.3
  • Fixed tipped arrows still being always mis-detected in versions 1.21-1.21.4
  • Fixed entities in the lobby being killed during the game start sequence
instead of entities that were spawned after world generation in the game
dimension
  • In order to restore the armor stands in the lobby, the tutorial section has
updated its version in order to trigger a lobby update. There have been no
changes to the structure.

## Upgrade a previous release
  • Make a backup of your previous save file
  • Download the datapack
  • Delete the old datapack in your saves/<save>/datapacks directory
  • Add the new datapack to the directory
[5.3.1] Fetchr 5.3.1 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3.properties)

5.3.1 fixes two overlooked issues in 5.3.

## Bug fixes
  • Fixed blue trimmed boots not getting detected and any tipped arrow being
falsely detected as slowness or poison arrow after reloading the world under
certain conditions
  • In 1.21-1.21.8 after reloading the world at any point
  • In 1.21.9 and 1.21.10 after reloading the world during an active game
  • Or if the worldspawn would not be in the lobby dimension for some other
reason during a reload
  • Fixed armor stands in the lobby tutorial area spawning without equipment in
version 1.21.5-1.21.10, and deleting equipment when doing a world upgrade from
earlier Fetchr versions (5.3-beta5 or earlier)
  • The equipment will be restored when upgrading a world in those cases.

## Upgrade a previous release
  • Make a backup of your previous save file
  • Download the datapack
  • Delete the old datapack in your saves/<save>/datapacks directory
  • Add the new datapack to the directory
[5.3] Fetchr 5.3 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3.properties)

5.3 brings compatability with all Minecraft versions from 1.21 to 1.21.10,
brings support for updating a save file from a previous version, makes use of
the new dialog system, and as always adds new items available in more recent
Minecraft versions.

## Changelog
  • Updated to 1.21.10
  • All versions starting from 1.21 are still supported
  • It is now supported to update old Fetchr installations to the current release
  • Updating version 5.0.1 and prior is not supported and will print an error
message.
  • 5.1, all its beta versions, and later is supported.
  • Instructions below.
  • It is also now always supported to change the Minecraft version without
re-downloading Fetchr
  • Updated the item pool
  • Players now receive a spyglass in the spawn preview
  • Added custom Fetchr options to main menu
  • Added Quick Actions dialog
  • Replaced some chat dialogs with new in-game dialogs when playing in 1.21.6 or
later.
  • Renamed “Blind Mode” to “Concealed Card”
  • Renamed “Points Race” to “Target Time”
  • Renamed “Preferences” to “Personal Preferences“ to highlight that these are
settings that only apply to your player.
  • Improved goal completion announcements
  • If you win and your team only has one player, all goal announcement title
messages now say “You” instead of “Your team” (e.g. “You got a blackout!”)
  • When another team with only one player wins, all goal announcement title
messages now say “<player name>” instead of “The ... team” (e.g. “NeunEinser
got a blackout!”)
  • Target Time and Lockout Mode announcements titles now work like other
announcement titles and say the team name if another team wins (or the
player name).
  • Target Time and Lockout Mode now show a yellow title with a special message
in case the game was tied (and you got the winning points).
  • Target time announcemnt titles now show the number of points the winning
team achieved.
  • Target time announcements now have a special title announcement when playing
in singleplayer: “You reached xx points” instead of “You won with xx
points”.
  • When a team has only a single player, the scoreboard on the right side of the
screen will now show the player name instead of the team color.
  • Credits for people that do not have a player head block now have a profile
icon next to their name on the sign if their Minecraft in-game name is known.
  • The worldspawn is no longer set in the overworld
  • During a game, it is set to the game dimension
  • When the last player returns to the lobby, or when first opening the world,
it will be set to the lobby.
  • This also means compasses will now function like in vanilla and point
towards the spawn point
  • The datapack and resourcepack are now packaged in a way that they should
always load and be able to spam an error message when trying to play in an
unsupported version.
  • The error messages when playing in an unsupported version now tell you the
supported version range exactly.
  • Removed shadow behind icons in custom HUD
  • Text still has shadow for readability
  • This only applies for Minecraft version 1.21.4 and later.
  • This restores the HUD to what it used to look like in 5.0 (1.16)
  • In 1.21.9, pvp is now disabled by default using a gamerule
  • Removed Twitter link from Community & Support book
  • Deactivated random ticks during the spawn preview phase
  • Improved performance with team name calculation in spawn preview, and only
update them when it's actually necessary
  • Error logs caused by the datapack have been reduced
  • Only creating item frames in Minecraft versions 1.21.4 and lower still
causes error logs.
level.dat
  • Error message for spigot is changed.

## Updating a previous installation
Always do a backup of your world before updating! There is a chance of
corruption

  • Make a backup
  • Download the datapack
  • Delete the old datapack
  • Copy the new zip file

### More information and caveats
When updating, player-placed blocks are preserved if possible, and dropped if
the original block has changed compared to the new lobby version. If the part of
the lobby has been entirely removed (like the machinery), blocks are dropped at
the lobby spawn, otherwise they are dropped were they used to be placed.

For Fetchr versions that still had the machinery, the lobby will be moved
slightly. In case there is a player-placed structure that partially intersects
with the bounding box of a lobby section, the lobby section including that part
of the player-placed structure will be moved, slicing the player-placed
structure.

If you create a backup, you can safely test how the lobby update treats your
lobby.

Entities that were changed will have their changed data updated, while
preserving any changes that may have been made by the player (like switching the
armor of an armor stand)

## Dialogs

### Quick Actions
A static quick actions dialog can now be accessed when pressing G by default
(see “Quick Actions” keybind in the Miscellenaeous section).

The Quick Actions dialog is only available when playing in Minecraft version
1.21.6 or later.

Quick actions allow:
  • Genreate a random card
  • A confirmation dialog to end the game will be shown if the player is
currently in a game
  • Genreate a card from seed
  • A confirmation dialog to end the game will be shown if the player is
currently in a game
  • Return to Lobby or Join Game
  • If the player is in the lobby, attempts to join a game, otherwise returns to
the lobby
  • Enter Spectator Mode
  • During the game, allows to enter spectator mode
  • Move Players to Lobby or Spawn Preview
  • During an active game, moves all players to the lobby
  • When the spawn preview is ready, moves all players to the spawn preview
  • Reveal Bingo Card
  • During a Concealed Card run, reveals the Bingo Card.
  • Change Settings (see below)
  • Find links to the issue tracker, Discord, and Map Download sources

Since there is no way to make the Quick Actions screen dynamic, all options will
always be shown, even if they are not releveant.

You can also access the Quick Actions from the Fetchr Options screen, were they
will be dynamically adjusted to only show relevant things.

### Fetchr Options

In version 1.21.6 and later, all settings from the lobby have been added as a
custom main menu entry. You can still change settings in the lobby as well.

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/main_menu_custom_options.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/main_menu_custom_options.png)
[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/fetchr_options.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/fetchr_options.png)

### Game Settings

The game settings dialog lets you change all settings you can also access in the
lobby:

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/game_settings_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/game_settings_dialog.png)

The settings screen is be reduced when in single player just like the lobby is.

On a server, you may be prompted to confirm your operator status first before
being able to access this menu if operator-only controls are enabled.

### Confirm Operator status
In version 1.21.6 and later, the prompt to confirm your operator status is now
implemented as a dialog.

Additionally, the game now remembers the action you tried to perform and upon
successful confirmation executes that action without the need to click the same
sign again.

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/confirm_operator_status_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/confirm_operator_status_dialog.png)


### Generate Card from Seed

In version 1.21.6 and later, setting a seed is now done from a dialog. If you
prefer, you can still directly use /trigger fetchr.seed set <seed> as well
while in the lobby or the spawn preview area.

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/set_seed_dialog_final.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/set_seed_dialog_final.png)

### Target Time

In version 1.21.6 and later, setting a target time (previously “Points Race”)
now happens through a dialog.

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/target_time_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/target_time_dialog.png)

### Pre-generation Radius

In version 1.21.6 and later, the selection of the area to pre-generate is now
implemented as a dialog.

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/pre_generation_radius_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/refs/tags/5.3/images/5.3/pre_generation_radius_dialog.png)

## Item Changes

### Leather Items
  • Added Yellow Harness
  • Only available in 1.21.6 and later
  • Added Saddle
  • Only available in 1.21.6 and later
  • Now craftable with 3 leather and 1 iron

### Lodestone
  • New category
  • Only available when playing 1.21.5
  • Added Lodestone
  • was changed in 1.21.5 to use an iron ingot instead of netherite
  • Added Lodestone compass
  • Also mutually exclusive with compass and map
  • Likelihood is split with compass in that category, making map still as
likely as before

### Swamp
  • New Category
  • Only available when playing 1.21.5
  • Contains existing items: slime ball, sticky piston, leash and poison arrow
  • Added firefly bush

### Warm Biomes
  • Added dead bush to this category (previously only categorized as "shearable")
  • Added Cactus Flower
  • Only available when playing 1.21.5
  • Added Short dry grass
  • Only available when playing 1.21.5
  • Also added to the shearables category

### Miscellaneous
  • Added bush
  • Only available when playing 1.21.5
  • Mutually exclusive with other shearable items
  • Replaced pale moss block with pale moss carpet
  • This is to make it easier to distinguish from tuff and other gray blocks
  • Replaced moss carpet with moss block
  • Cannot be found in mangrove swamps, and only shipwreck food chests and lush
caves
  • Added copper lantern to the copper category
  • Only available in 1.21.9 or later
  • Lead categories now depend on the Minecraft version
  • Moved lead from slime category to spider category in 1.21.6 and later
  • Now craftable with an additional string instead of slime ball in these MC
versions
  • Replaced blue trimmed leather boots with blue trimmed golden boots or blue
trimmed copper boots when playing in 1.21.9 or later
  • This is to offset the leather usage from some of the newly added items

## Worldgen
  • Made armadillos more likely in badlands in 1.21.5
  • Badlands can now spawn some warm farm animal variations, were previously
only armadillos could spawn
  • This was adjusted the same way as savanna previously, meaning armadillos
take up a bit over half the peaceful spawns in these biomes
  • Worldgen is updated to match 1.21.5 when playing in this version
  • Most notably, pale gardens spawn about twice as often now

## Blind Mode -> Concealed Card
“Blind Mode” has been renamed to “Concealed Card”. This is to diambiguate it
with weekly “blind” seed challenges, which are played without knowing the card
beforehand.

## Bug Fixes
  • Fixed lockout mode when playing with one team causing the colored card
backgrounds of unlocked items to not show up properly
  • Fixed players of the yellow team always getting the “Loser” notification when
completing a Lockout or reaching the Target Time, even if they won.
  • Fixed error chat spam not showing up when playing in a version that's too old
  • Fixed resource pack check sign when joining a server for the first time with
the resourcepack disabled not being lit up properly (mojank)
([#241](<https://github.com/NeunEinser/bingo/issues/241>))
  • Fixed players not being assigned correctly when multiple buttons are pressed
by different players in the same game tick
  • Fixed compass player position icon showing colors that are slightly off (due
to the image using an outdated palette)
  • Fixed lodestone compass spinning in the spawn preview
  • Fixed github link in the Community & Support book going to NeunEinser/fetchr
rather than NeunEinser/bingo
([#266](<https://github.com/NeunEinser/bingo/issues/266>))
  • Fixed pre-generation and target time signs not updating immediately after
changing their value
  • Fixed additional spaces in configure custom HUD chat menu
([#287](<https://github.com/NeunEinser/bingo/issues/287>))
  • Fixed scaffoldings dropping when reloading (or regenerating the item pool
display) if the item pool exceeds a certain size
([#301](<https://github.com/NeunEinser/bingo/issues/301>))

## Technical changes
  • It is now fully supported for extension packs to alter or add to the lobby.
  • During a lobby update, all marker entities inside a lobby structure may be
deleted.
  • The topmost item pool display chest is no longer forced to be a double chest,
and may be a single chest depending on the item pool now
  • Most of the data and resource pack are now disabled when playing in an
unsupported version
  • The only exception to this is the languages from the resource pack, and the
ticking function which is responsible for posting the error message
  • Everything in the build datapack and resoucepack is now part of an overlay
and no longer inside the root data and assets directories, with the
exception of language files.
  • The HUD now updates after every reload and applies changes to selected
components of players. New components are currently not automatically added.
to existing player's HUDs as of now
  • Images in the resourcepack are saved more efficiently now and have metadata
stripped
  • Release files now are generated with consistent meta contents, resulting in
verifiable hashes when building locally

### Registering a lobby structure

  • Use fetchr:registries structures

  • id - (namespaced id) The id of your structure file
  • override_id (optional, namespaced id) Should be left empty for structures
you define. Can be used to override a structure from a foreign pack (e.g.
vanilla Fetchr) with a different structure file you define.
  • version (int) The numeric version of the structure. Should be changed
when your structure file is updated, so that the lobby can be updated.

This should be unique for the combination of id and override_id.
  • entrance_position int array of length 3. Indicates the position of this
structure's entrance. If the x position is set higher than 1, it is currently
not supported to have any blocks in front of the entrance.
  • after_structure (optional, namespaced id) The id of the structure to place
this structure after. This can be used to insert a structure after another
known structure. If set, this structure will be placed after the existing
structure, or a structure that has set the same after_structure.

This should _not_ be set to a structure of your own pack. The order of your
structures will be preserved. If you want to insert a structure after one of
your own structures, simply set it to the same after_structure as the other
structure and register it later.

Removing a structure after it has been added is fully supported (e.g. if your
pack is uninstalled).

### #fetchr:lobby_update/manipulate_special_block & #fetchr:has_special_lobby_update_behavior tags

During a lobby update, if a block was changed in your structure, this change
will be applied to the existing structure. In case this block has been altered
by the player, it will be dropped. This will do a strict comparision, including
nbt data and block states.

In some cases this can be too strict. For example, vanilla fetchr handles doors
and player heads specially, and makes sure doors that were only opened or
closed, and player heads that have additional data from a previous minecraft
version when profile data was still resolved and saved on the block are treated
equally.

You can add blocks you want to handle specially to the
#fetchr:has_special_lobby_update_behavior block tag. If you do this, in case
this block is detected altered, functions in the function tag
#fetchr:lobby_update/manipulate_special_block will be called.

#fetchr:lobby_update/manipulate_special_block context:
  • location: This function will be executed at the location of the old block that
has changed and will be dropped if there is a difference between this block
and the previous unaltered structure
  • macro arguments:
  • reference_x: The x location of the reference. The reference is an
unaltered version of the lobby. This location will contain the unaltered
block

You may alter either the block at the reference or the block that is compared
against to make them equal, preventing the block in the lobby from being
dropped.

You should check whether both the block in the reference and the old block are
a block you want to handle.

### #fetchr:lobby_update/manipulate_updated_entity

This function tag can be used to do additional changes to an entity after it
has been updated.

Context:
  • current entity (@s): The entity that has been updated
  • location: The location of the entity
  • @e[tag=fetchr.current_new]: The unaltered new entity as it is defined in
your structure

### #fetchr:lobby_update/add_legacy_structures

This function tag can be used to update a lobby of an older version of fetchr.

You do not need this for updating structures when using this version of Fetchr
or beyond. This is only for updating lobbies from 5.1-beta1 - 5.3-beta5.

Add the structures that would have been there in your version configured
correctly to storage io.fetchr:structures structures.

id should be the namespaced id of the structure which matches the structure
file of the new structure.

entrance_position should be the entrance position according to the old
structure

legacy_id should be the id of the structure file which produces the structure
as it has been part of the old lobby

### #fetchr:lobby/generated

This function tag is called after the lobby has been genreated either for the
first time, or a lobby update has been completed.

Use this to e.g. spawn marker entities. Make sure your marker entity doesn't
exist already from a previous generation.

You should also run this function when your datapack is loaded for the first
time and the score $lobby_genreated in fetchr.state equals 4.

### Other new function tags

  • #fetchr:goal_and_item_detection/achieved_goal: Any goal has been achieved
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
goal
  • storage io.fetchr:find_team current_team the current team data
  • #fetchr:goal_and_item_detection/achieved_20_no_bingo
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
20 no bingo
  • storage io.fetchr:find_team current_team the current team data
  • #fetchr:goal_and_item_detection/achieved_bingo
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
bingo
  • storage io.fetchr:find_team current_team the current team data
  • #fetchr:goal_and_item_detection/achieved_blackout
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
blackout
  • storage io.fetchr:find_team current_team the current team data
  • #fetchr:goal_and_item_detection/achieved_lockout
  • @s: Player who got the last item
  • @a[tag=fetchr.in_winning_team]: Players who are in a team winning the
lockout race. Maybe players of multiple teams in case of a tie.
  • storage io.fetchr:find_team current_team the current team data
  • #fetchr:goal_and_item_detection/finished_points_race: The points race ended.
  • @a[tag=fetchr.in_winning_team]: All players who were in a winning team
  • #fetchr:goal_and_item_detection/item_detected: A player got an item that is
on the card. The item announcement has not happened yet.
  • @s: The player who got the item
  • @a[tag=fetchr.in_current_team]: All players who are in @s' team
  • io.fetchr:find_team current_team: Team id color, and other team data
  • Macro parameters according to ::fetchr::storages::card::CardSlot
  • Slot information also available in storage using a macro as
fetchr:card slots[$(slot_id)]
  • #fetchr:goal_and_item_detection/item_get_announced: Player @s got
an item that is on the card and the announcement has been made.
  • @s: The player who got the item
  • @a[tag=fetchr.in_current_team]: All players who are in @s' team
  • io.fetchr:find_team current_team: Team id color, and other team data
  • Macro parameters according to ::fetchr::storages::card::CardSlot
  • Slot information also available in storage using a macro as
fetchr:card slots[$(slot_id)]
  • #fetchr:game/tick Ticking function that is called while a game is in
progress
  • #fetchr:lobby/tick: Ticking function that is called while the lobby is
loaded by at least one player
  • #fetchr:spawn_preview/tick: Ticking function that is called while the spawn
preview is available
  • #fetchr:lobby/tick: Ticking function that is called while the lobby is
loaded by at least one player
  • #fetchr:player_tick: Ticking function that is called for every player
  • @s: The current player who is in the lobby
  • Position: Function is executed at the player's location
  • #fetchr:game/player_tick: Ticking function that is called for every player
in a running game
  • @s: The current player who is playing in the game
  • Position: Function is executed at the player's location
  • #fetchr:lobby/player_tick: Ticking function that is called for every player
  • @s: The current player
  • Position: Function is executed at the player's location
  • #fetchr:spawn_preview/player_tick: Ticking function that is called for every
player in the spawn preview
  • @s: The current player who is in the spawn preview
  • Position: Function is executed at the player's location
  • #fetchr:spawn_preview/created: The spawn preview area has been created
  • Position: Function executed at the center of the spawn preview
  • #fetchr:spawn_preview/player_entered: Player entered the spawn preview
area
  • @s: Player who entered
  • Position: Function executed at spawn preview center
  • #fetchr:spawn_preview/teleported_all_players: All players have been
forcefully teleported to the spawn preview area
  • @s: Player who triggered the teleport
  • #fetchr:spawn_preview/joined_team: During the spawn preview phase, a player
has joined a team.
  • @s: Player who joined the team
  • Team color available from @s[team=fetchr.color] from this point onward.
  • #fetchr:start_sequence/start_sequence: The “start game” sign has just been
activated, and the spawn sequence starts
  • @s: Player who activated the sequence
  • Position: The center of the spawn preview
  • #fetchr:start_sequence/players_start_falling: Players start falling as part
of the spawn sequence
  • @e[type=minecraft:marker, tag=fetchr.spawn, limit=1]: Marker for position
at the top of the drop chute
  • #fetchr:start_sequence/all_players_landed: Players landed as part of the
start sequence
  • Position: The location on the ground that will become the spawn point.
  • #fetchr:start_sequence/advance_countdown: Countdown before a game starts
decreases
  • @e[type=minecraft:marker, tag=fetchr.spawn, limit=1]: Marker at the location
of the spawn point.
  • #fetchr:start_sequence/countdown_ended: The countdown ended and the game
starts
  • Position: The location on the ground that will become the spawn point.
  • #fetchr:game/ended: A card generation was requested, and the current game
has ended (players returned to lobby, game state changed, etc). The card
generation will take place after this tag has been called.
  • #fetchr:game/revealed_concealed_card: While the concealed card setting is
active, player @s has revealed the card.
  • #fetchr:game/joined_as_spectator: Player @s has entered a running game as
a spectator
  • #fetchr:dialog/add_to_quick_actions: The dynamic Quick Actions dialog
acessible from the pause menu under Fetchr Options is about to be generated.

Use this tag to add your own Quick Actions.

Note that this is not related to the Quick Actions dialog accessible from the
G hotkey
  • storage io.fetchr:dialog dialog: The dialog to show to the user. This is
always a type multi_action dialog.
  • #fetchr:lobby/player_returned: Player @s has returned to the lobby
  • #fetchr:lobby/teleported_all_players: All players have been forcefully
teleported to the lobby
  • @s: Player who activated the teleport
  • #fetchr:confirmed_operator_status: Player @s has successfully confirmed
their operator status
  • #fetchr:lobby/before_item_pool_chest_incremented: During item pool chest
generation, a new chest is about to be added
  • Position: The location at the bottom of the chest stack and the lower z
coordinate
  • Macro parameter height: The current height of the chest stack
  • #fetchr:lobby/item_pool_chest_incremented: During item pool chest
generation, a new chest has been added
  • Position: The location at the bottom of the chest stack and the lower z
coordinate
  • Macro parameter height: The current height of the chest stack
  • #fetchr:lobby/item_pool_chests_generated: The item pool chest generation has
completed
  • Position: The location at the bottom of the chest stack and the lower z
coordinate
  • #fetchr:hud_component_updated: A HUD component has been updated after a
reload. You can do custom updates for your components here to support older
versions of your pack being updated
  • storage io.fetchr:custom_hud custom: The custom part of the component.
  • #fetchr:item_pool_changed: The item pool has changed.

### Item pool registrations
  • Removed fetchr:negated_component item_test
  • Added fetchr:component_exists item_test also supporting negated funcionality
  • Category lists now support a mixed typed list

#### fetchr:component_exists item_test
New item test that can bes specified in the item pool to check for an item
component to exist

  • Requires the item component to exist on this item, with any contents
  • id - The item component id
  • negated - Optional. When set to true, requires the component to **not**
exist (same as previous fetchr:negated_component)

### Heterogeneously typed category lists
When registering items, category lists can now be heterogeneous in 1.21.5 (in
1.21.4, this would be an SNBT syntax error)

This means instead of specifying a compound with only an id and no weight, you
can now always specify a string, even when there is another compound in the same
list

For example, [ {id: "fetchr:pumpkin" }, {id: "fetchr:egg", weight: 2 } ] can
now be written as [ "fetchr:pumpkin", {id: "fetchr:egg", weight: 2 } ]

### Text Components
In accordance with the 1.21.5 changes, text components are now in SNBT format
and no longer stored as stringified JSON in Minecraft versions 1.21.5 and
later

This affects all storages that stored text components before.
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-rc4.properties)

## Bug Fixes
  • Fixed blue trimmed golden boots showing up as copper boots in 1.21-1.21.4
  • Fixed blue trimmed golden boots showing as a blank tile in 1.21.5-1.21.8
([#312](<https://github.com/NeunEinser/bingo/issues/312>))
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-rc3.properties)

## Bug Fixes
  • Fixed item pool generation not waiting until marker in lobby is loaded
  • This would cause card generation to be completely broken on servers after
a restart.
  • Fixed some remaining error logs caused by item frames on initial load
  • Fixed item pool being generated twice on initial load
  • This didn't actually cause any visible bugs, but was just unnecessary.
  • Fixed spawn preview generating too high when generating a card from seed
and inputting the same seed that is currently loaded
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-rc2.properties)

## Changelog
  • Improved performance with team name calculation in spawn preview, and only
update them when it's actually necessary
  • Updated pack and world icon to align with the new seed generation

## Bug Fixes
  • Fixed a critical bug were the item pool was re-generated every tick, causing
massive strain on TPS and other issues like item pool display chests not
appearing automatically
  • Actually fixed clock still spinning in game dimension
  • Fixed setting signs potentially getting desynced after a lobby update
  • Fixed pre-generation and target time signs not updating immediately after
changing their value
  • Fixed versions prior to 1.21.5 showing a non-existing translation string for
the target time sign when it is set to a time.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-rc1.properties)

## Changelog
  • The worldspawn is no longer set in the overworld
  • During a game, it is set to the game dimension
  • When the last player returns to the lobby, or when first opening the world,
it will be set to the lobby.
  • This also means compasses will now function like in vanilla and point
towards the spawn point
  • Added Links to issue tracker, discord, and map downloads to the custom options
screen and quick actions
  • Added settings button to quick action menu
  • Error logs caused by the datapack have been reduced
  • Only creating item frames in Minecraft versions 1.21.4 and lower still
causes error logs.

## Upgrade a previous release
  • Make a backup of your previous save file
  • Download the datapack
  • Remove the old data pack in your save file
  • Add the new data pack

## Technical Changes
  • #fetchr:goal_and_item_detection/item_gotten renamed to
#fetchr:goal_and_item_detection/item_detected
  • No longer has team information available as macro arguments
  • Team information is now only available in io.fetchr:find_team current_team
  • Now has macro arguments according to mcdoc definition
::fetchr::storages::card::CardSlot
  • Slot information also available in storage using a macro as
fetchr:card slots[$(slot_id)]
  • #fetchr:goal_and_item_detection/item_gotten_and_card_updated renamed to
#fetchr:goal_and_item_detection/item_get_announced
  • No longer has team information available as macro arguments
  • Team information is now only available in io.fetchr:find_team current_team
  • Now has macro arguments according to mcdoc definition
::fetchr::storages::card::CardSlot
  • Slot information also available in storage using a macro as
fetchr:card slots[$(slot_id)]
#fetchr:goal_and_item_detection/item_get_announced
  • #fetchr:spawn_preview/created
  • Now executed at the center of the preview instead of the lower xyz
coordinates of the barrier blocks
  • fetchr:start_sequence/countdown_ended
  • Will now always be executed at the correct y coordinate
  • #fetchr:start_sequence/advance_countdown
  • @e[type=minecraft:marker, tag=fetchr.spawn, limit=1]: Will now be located at
the correct y coordinate for the future spawn.
  • #fetchr:lobby/before_item_pool_chest_incremented
  • Now includes height as a macro parameter
  • #fetchr:lobby/item_pool_chest_incremented
  • Now includes height as a macro parameter

## Bug Fixes
  • Fixed Spigot dection not working
([#260](<https://github.com/NeunEinser/bingo/issues/260>))
  • Fixed some signs in the lobby not updating continously to reflect resourcepack
or language changes on the client side
([#306](<https://github.com/NeunEinser/bingo/issues/306>))
  • Fixed settings from HUD components from old versions not updating correctly
  • Fixed piston and sticky piston no longer being turned towards the player in
item frames for Minecraft versions 1.21.4 and later
  • Fixed spectators carrying items that are on the card from the lobby counting
towards the “$none” team and triggering item detection
  • Fixed team name not showing at all on the sidebar in Minecraft versions 1.21.4
and earlier
  • Fixed initial falling during world load in single player
[5.3-pre3] 5.3 Pre-Release 3 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-pre3.properties)

## Changelog
  • Renamed “Points Race” to “Target Time”
  • Improved goal completion announcements
  • If you win and your team only has one player, all goal announcement title
messages now say “You” instead of “Your team” (e.g. “You got a blackout!”)
  • When another team with only one player wins, all goal announcement title
messages now say “<player name>” instead of “The ... team” (e.g. “NeunEinser
got a blackout!”)
  • Target Time and Lockout Mode announcements titles now work like other
announcement titles and say the team name if another team wins (or the
player name).
  • Target Time and Lockout Mode now show a yellow title with a special message
in case the game was tied (and you got the winning points).
  • Target time announcemnt titles now show the number of points the winning
team achieved.
  • Target time announcements now have a special title announcement when playing
in singleplayer: “You reached xx points” instead of “You won with xx
points”.
  • When a team has only a single player, the scoreboard on the right side of the
screen will now show the player name instead of the team color.
  • The update error message now additionally shows below each resource pack check
message to make it less missable.

## Bug Fixes
  • Fixed update error message showing on servers for players joining the server
for the first time.
  • Fixed generating a card from a seed not working in the lobby on a dedicated
server.
  • Fixed players of the yellow team always getting the “Loser” notification when
completing a Lockout or reaching the Target Time, even if they won.
[5.3-pre2] 5.3 Pre-Release 2 by NeunEinser on Oct 16, 2026
Download
## Changelog
  • There is now an error message when duplicate entities are detected after a
lobby upgrade
  • Please backup your world before upgrading, even if it is not important to
you it might help debug a bug that could so far not be reproduced**
  • Deactivated random ticks during the spawn preview phase
  • The function tag #fetchr:spawn_preview/player_tick is now executed at the
position of the player, like player_tick function tags.

## Upgrade an existing world
  • Make a backup of your previous save file
  • Download the datapack
  • Remove the previous datapack
  • Add the new datapack

## Bug Fixes
  • Fixed timer being reset on world reload (Workaround for
[MC-305239](<https://bugs.mojang.com/browse/MC-305239>))
  • This will not work when upgrading a world that had an active run from
before, only for runs started in pre2.
  • Fixed marked item frames from the lobby not getting copied correctly to the
spawn preview
  • Fixed resource pack download prompt missing some spaces
  • Fixed button to enter the “Advanced Settings” door in multiplayer not
appearing by default after a lobby upgrade
  • It will still be missing if you opened this world in pre1, just place it
manually
  • Fixed #fetchr:goal_and_item_detection/item_gotten function tag not loading
caused by an invalid reference.
  • Fixed the wrong chat message showing when switching lobby gamemode
([#298](<https://github.com/NeunEinser/bingo/issues/298>))
[5.3-pre1] 5.3 Pre-Release 1 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-pre1.properties)

## Changelog
  • It is now supported to update old Fetchr installations to the current release
  • Updating version 5.0.1 and prior is not supported and will print error
messages
  • It is now always supported to change the Minecraft version without
re-downloading Fetchr
  • Added Quick Actions dialog
  • Credits for people that do not have a player head block now have a profile
icon next to their name on the sign if their Minecraft in-game name is known.
  • It is now fully supported for extension packs to alter or add to the lobby.
  • Images in the resourcepack are saved more efficiently now and have metadata
stripped
  • The topmost item pool display chest is no longer forced to be a double chest,
and may be a single chest depending on the item pool now
  • Compatibility warning spam will show in all past and future versions now, even
if the future version has changes that would normally prevent the datapack
from loading
  • Most of the data and resource pack are now disabled when playing in an
unsupported version
  • The only exception to this is the languages from the resource pack, and the
ticking function which is responsible for posting the error message
  • The HUD now updates after every reload and applies changes to selected
components of players. New components are currently not automatically added.
to existing player's HUDs

## Updating a previous installation
Always do a backup of your world before updating! There is a chance of
corruption

  • Download the world download
  • Unzip the zip file
  • Copy and replace all files from the world download in your save file

When updating, player-placed blocks are preserved if possible, and dropped if
the original block has changed compared to the new lobby version. If the part of
the lobby has been entirely removed (like the machinery), blocks are dropped at
the lobby spawn, otherwise they are dropped were they used to be placed.

For Fetchr versions that still had the machinery, the lobby will be moved
slightly. In case there is a player-placed structure that partially intersects
with the bounding box of a lobby section, the lobby section including that part
of the player-placed structure will be moved, slicing the player-placed
structure.

If you create a backup, you can safely test how the lobby update treats your
lobby.

Entities that were changed will have their changed data updated, while
preserving any changes that may have been made by the player (like switching the
armor of an armor stand)

## Quick Actions Dialog

A static quick actions dialog can now be accessed when pressing G by default
(see “Quick Actions” keybind in the Miscellenaeous section).

The Quick Actions dialog is only available when playing in Minecraft version
1.21.6 or later.

Quick actions allow:
  • Genreate a random card
  • A confirmation dialog to end the game will be shown if the player is
currently in a game
  • Genreate a card from seed
  • A confirmation dialog to end the game will be shown if the player is
currently in a game
  • Return to Lobby or Join Game
  • If the player is in the lobby, attempts to join a game, otherwise returns to
the lobby
  • Enter Spectator Mode
  • During the game, allows to enter spectator mode
  • Move Players to Lobby or Spawn Preview
  • During an active game, moves all players to the lobby
  • When the spawn preview is ready, moves all players to the spawn preview
  • Reveal Bingo Card
  • During a Concealed Card run, reveals the Bingo Card.

Since there is no way to make the Quick Actions screen dynamic, all options will
always be shown, even if they are not releveant.

You can also access the Quick Actions from the Pause Screen, after clicking
“Fetchr Options”. The Quick Actions screen navigated to from this screen behaves
differently and is dynamically generated with only relevant actions visible.

## Profile pictures in the credits room

All signs mentioning player names now display a profile picture if the in-game
name of the creditee is known, and they don't already have a player head
associated with them.

[<img src="/images/5.3/new_translator_credits.png" width="500">](/images/5.3/new_translator_credits.png)
[<img src="/images/5.3/new_special_thanks.png" width="500">](/images/5.3/new_special_thanks.png)

## Technical Changes

  • During a lobby update, all marker entities inside a lobby structure may be
deleted.
  • Everything in the build datapack and resoucepack is now part of an overlay and
no longer inside the root data and assets directories, with the exception
of language files.

### Registering a lobby structure

  • Use fetchr:registries structures

  • id - (namespaced id) The id of your structure file
  • override_id (optional, namespaced id) Should be left empty for structures
you define. Can be used to override a structure from a foreign pack (e.g.
vanilla Fetchr) with a different structure file you define.
  • version (int) The numeric version of the structure. Should be changed
when your structure file is updated, so that the lobby can be updated.

This should be unique for the combination of id and override_id.
  • entrance_position int array of length 3. Indicates the position of this
structure's entrance. If the x position is set higher than 1, it is currently
not supported to have any blocks in front of the entrance.
  • after_structure (optional, namespaced id) The id of the structure to place
this structure after. This can be used to insert a structure after another
known structure. If set, this structure will be placed after the existing
structure, or a structure that has set the same after_structure.

This should _not_ be set to a structure of your own pack. The order of your
structures will be preserved. If you want to insert a structure after one of
your own structures, simply set it to the same after_structure as the other
structure and register it later.

Removing a structure after it has been added is fully supported (e.g. if your
pack is uninstalled).

### #fetchr:lobby_update/manipulate_special_block & #fetchr:has_special_lobby_update_behavior tags

During a lobby update, if a block was changed in your structure, this change
will be applied to the existing structure. In case this block has been altered
by the player, it will be dropped. This will do a strict comparision, including
nbt data and block states.

In some cases this can be too strict. For example, vanilla fetchr handles doors
and player heads specially, and makes sure doors that were only opened or
closed, and player heads that have additional data from a previous minecraft
version when profile data was still resolved and saved on the block are treated
equally.

You can add blocks you want to handle specially to the
#fetchr:has_special_lobby_update_behavior block tag. If you do this, in case
this block is detected altered, functions in the function tag
#fetchr:lobby_update/manipulate_special_block will be called.

#fetchr:lobby_update/manipulate_special_block context:
  • location: This function will be executed at the location of the old block that
has changed and will be dropped if there is a difference between this block
and the previous unaltered structure
  • macro arguments:
  • reference_x: The x location of the reference. The reference is an
unaltered version of the lobby. This location will contain the unaltered
block

You may alter either the block at the reference or the block that is compared
against to make them equal, preventing the block in the lobby from being
dropped.

You should check whether both the block in the reference and the old block are
a block you want to handle.

### #fetchr:lobby_update/manipulate_updated_entity

This function tag can be used to do additional changes to an entity after it
has been updated.

Context:
  • current entity (@s): The entity that has been updated
  • location: The location of the entity
  • @e[tag=fetchr.current_new]: The unaltered new entity as it is defined in
your structure

### #fetchr:lobby_update/add_legacy_structures

This function tag can be used to update a lobby of an older version of fetchr.

You do not need this for updating structures when using this version of Fetchr
or beyond. This is only for updating lobbies from 5.1-beta1 - 5.3-beta5.

Add the structures that would have been there in your version configured
correctly to storage io.fetchr:structures structures.

id should be the namespaced id of the structure which matches the structure
file of the new structure.

entrance_position should be the entrance position according to the old
structure

legacy_id should be the id of the structure file which produces the structure
as it has been part of the old lobby

### #fetchr:lobby/generated

This function tag is called after the lobby has been genreated either for the
first time, or a lobby update has been completed.

Use this to e.g. spawn marker entities. Make sure your marker entity doesn't
exist already from a previous generation.

You should also run this function when your datapack is loaded for the first
time and the score $lobby_genreated in fetchr.state equals 4.

### Other new function tags

  • #fetchr:goal_and_item_detection/achieved_goal: Any goal has been achieved
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
goal
  • #fetchr:goal_and_item_detection/achieved_20_no_bingo
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
20 no bingo
  • #fetchr:goal_and_item_detection/achieved_bingo
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
bingo
  • #fetchr:goal_and_item_detection/achieved_blackout
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in the team achieving the
blackout
  • #fetchr:goal_and_item_detection/achieved_lockout
  • @s: Player who got the last item
  • @a[tag=fetchr.in_current_team]: Players who are in a team winning the
lockout race. Maybe players of multiple teams in case of a tie.
  • #fetchr:goal_and_item_detection/finished_points_race: The points race ended.
  • @a[tag=fetchr.in_current_team]: All players who were in a winning team
  • #fetchr:goal_and_item_detection/item_gotten: A player got an item that is on
the card
  • @s: The player who got the item
  • @a[tag=fetchr.in_current_team]: All players who are in @s' team
  • Macro parameter color: The color of the team
  • #fetchr:goal_and_item_detection/item_gotten_and_card_updated: Player @s got
an item that is on the card. Will be called after the card has been updated,
and potentially a goal has been detected and announced.
  • @s: The player who got the item
  • @a[tag=fetchr.in_current_team]: All players who are in @s' team
  • Macro parameter color: The color of the team
  • #fetchr:game/tick Ticking function that is called while a game is in
progress
  • #fetchr:lobby/tick: Ticking function that is called while the lobby is
loaded by at least one player
  • #fetchr:spawn_preview/tick: Ticking function that is called while the spawn
preview is available
  • #fetchr:lobby/tick: Ticking function that is called while the lobby is
loaded by at least one player
  • #fetchr:player_tick: Ticking function that is called for every player
  • @s: The current player who is in the lobby
  • Position: Function is executed at the player's location
  • #fetchr:game/player_tick: Ticking function that is called for every player
in a running game
  • @s: The current player who is playing in the game
  • Position: Function is executed at the player's location
  • #fetchr:lobby/player_tick: Ticking function that is called for every player
  • @s: The current player
  • Position: Function is executed at the player's location
  • #fetchr:spawn_preview/player_tick: Ticking function that is called for every
player in the spawn preview
  • @s: The current player who is in the spawn preview
  • #fetchr:spawn_preview/created: The spawn preview area has been created
  • #fetchr:spawn_preview/player_entered: Player @s entered the spawn preview
area
  • #fetchr:spawn_preview/teleported_all_players: All players have been
forcefully teleported to the spawn preview area
  • #fetchr:spawn_preview/joined_team: During the spawn preview phase, a player
has joined a team.
  • #fetchr:start_sequence/start_sequence: The “start game” sign has just been
activated, and the spawn sequence starts
  • #fetchr:start_sequence/players_start_falling: Players start falling as part
of the spawn sequence
  • #fetchr:start_sequence/all_players_landed: Players landed as part of the
start sequence
  • #fetchr:start_sequence/advance_countdown: Countdown before a game starts
decreases
  • #fetchr:start_sequence/countdown_ended: The countdown ended and the game
starts
  • #fetchr:game/ended: A card generation was requested, and the current game
has ended (players returned to lobby, game state changed, etc). The card
generation will take place after this tag has been called.
  • #fetchr:game/revealed_concealed_card: While the concealed card setting is
active, player @s has revealed the card.
  • #fetchr:game/joined_as_spectator: Player @s has entered a running game as
a spectator
  • #fetchr:dialog/add_to_quick_actions: The dynamic Quick Actions dialog
acessible from the pause menu under Fetchr Options is about to be generated.

Use this tag to add your own Quick Actions.

Note that this is not related to the Quick Actions dialog accessible from the
G hotkey
  • storage io.fetchr:dialog dialog: The dialog to show to the user. This is
always a type multi_action dialog.
  • #fetchr:lobby/player_returned: Player @s has returned to the lobby
  • #fetchr:lobby/teleported_all_players: All players have been forcefully
teleported to the lobby
  • #fetchr:confirmed_operator_status: Player @s has successfully confirmed
their operator status
  • #fetchr:lobby/before_item_pool_chest_incremented: During item pool chest
generation, a new chest is about to be added
  • #fetchr:lobby/item_pool_chest_incremented: During item pool chest
generation, a new chest has been added
  • #fetchr:lobby/item_pool_chests_generated: The item pool chest generation has
completed
  • #fetchr:hud_component_updated: A HUD component has been updated after a
reload. You can do custom updates for your components here to support older
versions of your pack being updated
  • #fetchr:item_pool_changed: The item pool has changed.

## Bug Fixes
  • Fixed compass player position icon showing colors that are slightly off (due
to the image using an outdated palette)
  • Fixed “This setting will only take affect after generating a new card” hint
showing an incorrect non-existing translation key.
([#302](<https://github.com/NeunEinser/bingo/issues/302>))
  • Fixed scaffoldings dropping when reloading (or regenerating the item pool
display) if the item pool exceeds a certain size
([#301](<https://github.com/NeunEinser/bingo/issues/301>))
[5.3-beta5] 5.3 Beta 5 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-beta5.properties)

## Changelog
  • Updated to 1.21.9 release version
  • Added custom Fetchr options to main menu
  • Added promotion for weekly challenge seeds to “Generate Card from Seed” dialog.
  • Release files now are generated with consistent meta contents, resulting in
verifiable hashes when building locally

## Fetchr Options

In version 1.21.6 and later, all settings from the lobby have been added as a
custom main menu entry. You can still change settings in the lobby as well.

[<img src="https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/main_menu_custom_options.png" width="500">](https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/main_menu_custom_options.png)
[<img src="https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/custom_options_dialog.png" width="500">](https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/custom_options_dialog.png)

### Game Settings

The game settings dialog lets you change all settings you can also access in the
lobby:

[<img src="https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/game_settings_dialog.png" width="500">](https://github.com/NeunEinser/bingo/raw/5.3-beta5/images/5.3/game_settings_dialog.png)

This settings will be reduced when in single player just like the lobby is.

On a server, you may be prompted to confirm your operator status first before
being able to access this menu if operator-only controls is enabled.

### Quick Actions

This is an upcoming menu which has not been implemented yet.

## Bug Fixes
  • Fixed additional spaces in configure custom HUD chat menu
([#287](<https://github.com/NeunEinser/bingo/issues/287>))
  • Fixed items that have additional data not being detected correctly in 1.21.4
and earlier versions
[5.3-beta4] 5.3 Beta 4 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-beta4.properties)

## Changelog
  • Updated up to snapshot 25w35a (all versions starting from 1.21 are still
supported)
  • Added dialogs for confirming operator status and pre-generation radius
  • When confirming operator status, the action you attempted to perform is now
remembered and will be performed again after successfully confirming your
operator status.
  • The points race dialog now uses a step size of 5 minutes rather than 1 minute
  • The points race dialog now has a cancel button
  • In 25w35a, pvp is now disabled via gamerule
  • Removed Twitter link from Community & Support book

## Dialogs

### Confirm Operator status
In version 1.21.6 and later, the prompt to confirm your operator status is now
implemented as a dialog.

Additionally, the game now remembers the action you tried to perform and upon
successful confirmation executes that action without the need to click the same
sign again.

[<img src="https://github.com/NeunEinser/bingo/raw/5.3-beta4/images/5.3/confirm_operator_status_dialog.png" width="500">](https://github.com/NeunEinser/bingo/raw/5.3-beta4/images/5.3/confirm_operator_status_dialog.png)

### Pre-generation Radius

In version 1.21.6 and later, the selection of the area to pre-generate is now
implemented as a dialog.

[<img src="https://github.com/NeunEinser/bingo/raw/5.3-beta4/images/5.3/pre_generation_radius_dialog.png" width="500">](https://github.com/NeunEinser/bingo/raw/5.3-beta4/images/5.3/pre_generation_radius_dialog.png)

### Points Race

The points race dialog now has a cancel button and uses a step size of 5
minutes, rather than 1 minute.

## Bug Fixes
  • Fixed lockout mode not announcing the winner
([#262](<https://github.com/NeunEinser/bingo/issues/262>))
  • Fixed github link in the Community & Support book going to NeunEinser/fetchr
rather than NeunEinser/bingo
([#266](<https://github.com/NeunEinser/bingo/issues/266>))
[5.3-beta3] 5.3 Beta 3 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-beta3.properties)

## Changelog
  • Updated to 1.21.9 (?) snapshot 25w33a
  • Adjusted item pool for new Minecraft version
  • Replaced some chat dialogs with new in-game dialogs when playing in 1.21.6 or
later.
  • Renamed “Preferences” to “Personal Preferences“ to highlight that these are
settings that only apply to your player.

## Item Changes
### Leather Items
  • Added Yellow Harness
  • Only available in 1.21.6 and later
  • Added Saddle
  • Only available in 1.21.6 and later
  • Now craftable with 3 leather and 1 iron

### Miscellaneous
  • Added copper lantern to the copper category
  • Only available in 25w32a or later
  • Lead categories now depend on the Minecraft version
  • Moved lead from slime category to spider category in 1.21.6 and later
  • Now craftable with an additional string instead of slime ball in these MC
versions
  • Replaced blue trimmed leather boots with blue trimmed golden boots or blue
trimmed copper boots when playing in 25w31a or later
  • This is to offset the leather usage from some of the newly added items

## Dialogs

### Set Seed Dialog

When playing in Minecraft version 1.21.6 or later, instead of the chat dialog,
a Minecraft dialog will show now to set the seed:

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/0b4b8b0a9ada0b66a88661251888b36e2511cf21/images/5.3/set_seed_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/0b4b8b0a9ada0b66a88661251888b36e2511cf21/images/5.3/set_seed_dialog.png)

### Points Race Dialog

When playing in Minecraft version 1.21.6 or later, instead of the chat dialog,
a Minecraft dialog will show now to set points timer:

[<img src="https://raw.githubusercontent.com/NeunEinser/bingo/0b4b8b0a9ada0b66a88661251888b36e2511cf21/images/5.3/points_race_dialog.png" width="500">](https://raw.githubusercontent.com/NeunEinser/bingo/0b4b8b0a9ada0b66a88661251888b36e2511cf21/images/5.3/points_race_dialog.png)

## Bug Fixes
  • Fix being unable to pick up tossed spyglass in Skybox when spam dropping
([#264](https://github.com/NeunEinser/bingo/issues/264))
  • Fix an issue where entities were un-frozen when picking a previously generated
seed again ([#265](https://github.com/NeunEinser/bingo/issues/265))
  • Fixed card frames in the lobby and skybox sometimes having a desynced rotation
and rendering facing downwards on mutliplayer servers.
([#273](https://github.com/NeunEinser/bingo/issues/273))
  • Fix server.properties being generated with resource-pack-sha1=None
([#274](https://github.com/NeunEinser/bingo/issues/274))
  • Fixed log error on first load due to missing DragonFight compound in level.dat
[5.3-beta2] 5.3 Beta 2 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-beta2.properties)

## Changelog
  • Updated to 1.21.5 release
  • Players now receive a spyglass in the skybox
  • Removed blue egg
  • Removed shadow behind icons in custom HUD
  • Text still has shadow for readability
  • This only applies for Minecraft version 1.21.4 and later.
  • This restores the HUD to what it used to look like in 5.0 (1.16)
  • The map will no longer attempt to initialize in an unsupported version
  • The error messages for playing in an unsupported version are more helpful and
automated now

## Bug Fixes
  • Fixed resource pack check sign when joining a server for the first time with
the resourcepack disabled not being lit up properly (mojank)
([#241](<https://github.com/NeunEinser/bingo/issues/241>))
  • Fixed players not being assigned correctly when multiple buttons are pressed
by different players in the same game tick
  • Fixed the "join game" sign not working from the front
  • Fixed lodestone compass spinning in the skybox
[5.3-beta1] 5.3 Beta 1 by NeunEinser on Oct 16, 2026
Download
[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.3-beta1.properties)

  • ⚠️ While both 1.21-1.21.4 and 1.21.5 snapshots are supported, upgrading a world from
1.21.x to 1.21.5 is currently not supported.**

Version 5.2.3 updates the map to Minecraft version 1.21.5 and adds some new
items

## Changelog
  • Updated to 1.21.5
  • All versions starting from 1.21 are still supported
  • Snapshots 25w02a - 25w09a are unsupported
  • Because of issues in earlier snapshots, you need snapshot 25w09b or later
  • Updated the item pool
  • Updated Worldgen for 1.21.5
  • The entire tick logic besides the error chat spam is no disabled when playing
in an unsupported version
  • Renamed Blind Mode to Concealed Card
  • Technical changes

## Item Changes

### Lodestone
  • New category
  • Only available when playing 1.21.5
  • Added Lodestone
  • was changed in 1.21.5 to use an iron ingot instead of netherite
  • Added Lodestone compass
  • Also mutually exclusive with compass and map
  • Likelihood is split with compass in that category, making map still as
likely as before

### Swamp
  • New Category
  • Only available when playing 1.21.5
  • Contains existing items: slime ball, sticky piston, leash and poison arrow
  • Added firefly bush

### Warm Biomes
  • Added dead bush to this category (previously only categorized as "shearable")
  • Added Cactus Flower
  • Only available when playing 1.21.5
  • Added Short dry grass
  • Only available when playing 1.21.5
  • Also added to the shearables category

### Miscellaneous
  • Added blue egg
  • Only available when playing 1.21.5
  • Mutually exclusive with other egg items
  • Shares probability with normal egg
  • Added bush
  • Only available when playing 1.21.5
  • Mutually exclusive with other shearable items
  • Replaced pale moss block with pale moss carpet
  • This is to make it easier to distinguish from tuff and other gray blocks
  • Replaced moss carpet with moss block
  • Cannot be found in mangrove swamps, and only shipwreck food chests and lush
caves

## Worldgen
  • Made armadillos more likely in badlands in 1.21.5
  • Badlands can now spawn some warm farm animal variations, were previously
only armadillos could spawn
  • This was adjusted the same way as savanna previously, meaning armadillos
take up a bit over half the peaceful spawns in these biomes
  • Worldgen is updated to match 1.21.5 when playing in this version
  • Most notably, pale gardens spawn about twice as often now

## Blind Mode -> Concealed Card
"Blind Mode" has been renamed to "Concealed Card". This is to diambiguate it
with weekly "blind" seed challenges, which are played without knowing the card
beforehand.

## Technical changes
  • Text components are no longer stringified
  • Removed fetchr:negated_component item_test
  • Added fetchr:component_exists item_test
  • Category lists now support a mixed typed list

### Text Components
In accordance with the 1.21.5 changes, text components are now in SNBT format
and no longer stored as stringified JSON.

This affects all storages that stored text components before.

### fetchr:component_exists item_test
New item test that can bes specified in the item pool to check for an item
component to exist

  • Requires the item component to exist on this item, with any contents
  • id - The item component id
  • negated - Optional. When set to true, requires the component to **not**
exist (same as previous fetchr:negated_component)

### Heterogeneously typed category lists
When registering items, category lists can now be heterogeneous in 1.21.5 (in
1.21.4, this would be an SNBT syntax error)

This means instead of specifying a compound with only an id and no weight, you
can now always specify a string, even when there is another compound in the same
list

For example, [ {id: "fetchr:pumpkin" }, {id: "fetchr:egg", weight: 2 } ] can
now be written as [ "fetchr:pumpkin", {id: "fetchr:egg", weight: 2 } ]

## Bug Fixes
  • Fixed lockout mode automatically being disabled when playing with one team
causing the colored card backgrounds of unlocked items to not show up properly
  • Fixed error chat spam not showing up when playing in a version that's too old
[5.2.2] 5.2.2 by NeunEinser on Oct 16, 2026
Download
5.2.2 is released to address yet another critical bug in 5.2.x that can cause
entities to stay frozen when altering render distance before the game starts.

This version is fully compatible with 5.2 and 5.2.1, meaning you can keep the
same server config and just replace the datapack without replacing the world.

## Bug Fixes
  • Fixed entities outside of render distance staying frozen when lowering render
distance

[5.2.1] 5.2.1 by NeunEinser on Oct 16, 2026
Download
5.2.1 is released to address a critical bug in 5.2 that could cause spawn points
to be swapped and mangled after playing multiple runs. You are highly encouraged
to update.

This version is fully compatible with 5.2, meaning you can keep the same server
config and just replace the datapack without replacing the world.

## Bug Fixes
  • Fixed spawn marker not being cleared properly after a run, causing
spawn points to be potentially swapped and messed up.
[5.2] 5.2 by NeunEinser on Oct 16, 2026
Download
5.2 updates the map to 1.21, brings new items, and a few improvements

## Changelog
  • The targeted Minecraft version is now 1.21-1.21.4
  • Added new items and changed categories of existing items
  • Worldgen Tweaks
  • Armadillos are more common to generate in savanna biomes compared to vanilla
  • Items taken from the game that include an inner inventory now return their
inventory to the player
  • This includes bundles, shulker boxes and loaded crossbows
  • Item get messages in chat now contain a tooltip with the exact item that was
taken
  • Improved category chest
  • Improved big lobby & skybox card interaction
  • Creepers and tnt no longer cause damage in the lobby
  • Technical Improvements and better Performance
  • Removed machinery as command blocks are no longer necessary
  • Command blocks are no longer required to be enabled in a server environment
  • Updated translations from Crowdin
  • 1EEFEzBzXBZzUPzCSJOHzNPSFzNPCTzUPzUIFzMPCCZAz3BNFMT1SFiIF2FTUAz7PzUPzUIFzHJUIVCAz7PzUPzDPEFAz3MJDLzPOzUIFzJNBHFTzEJSFDUPSZAziBLFzBzMPPLzBUzuArAz8PQFzUIJTzIFMQTAzLBZzCZF
  • sorry this got corrupted
  • dont worry about it
  • possible characters are [a-zA-Z0-9 .]

## Item Changes

### Roots
New category "Roots" with:
  • Carrot
  • Golden Carrot
  • Carrot on a Stick
  • Baked Potato

### Armadillo
New "Armadillo" Category with:
  • Armadillo Scute
  • Wolf Armor

### Pale Garden
New category "Pale Garden"
These items are only available when playing in 1.21.4

  • Pale Moss Block
  • Closed Eyeblossom
  • Open Eyeblossom
  • Pale Hanging Moss (also mutually exclusive with shear items)
  • Resin Clump (also mutually exclusive with nighttime mob drops)
  • Chiseled Resin Bricks (also mutually exclusive with nighttime mob drops)
  • Creaking Heart (also mutually exclusive with nighttime mob drops)

### Other new items
  • Jungle Sapling as part of the jungle category
  • White Stained Glass exclusive with glass bottle and orange concrete
  • Brown Banner as part of the wool category
  • Light Blue Bundle as part of the leather category
  • This is only active in 1.21.2 or higher
  • Added Poison arrow which splits its weight with slowness arrow

### Changes
  • Book items have been separated from the leather category and are no longer
exclusive with item frames
  • Tnt and Tnt Minecart are no longer exclusive with glass bottle and orange
concrete
  • Saplings are no longer mutually exclusive
  • Mangrove propagule is exclusive with mud items
  • spruce sapling is exclusive with sweet berries, fern and snow
  • acacia is exclusive with cactus green, lime dye and sea pickle
  • dark oak is exclusive with apple and golden apple

### Removed Items
  • Birch sapling
  • Golden hoe, golden pickaxe
  • Diamond shovel, diamod axe, diamond sword

The variety in gold and diamond tools was reduced to make blind runs need to
craft fewer of them.

## Lobby & Skybox
  • The machinery is gone, as command blocks are no longer needed
  • Removed the floating property in front of the big lobby & skybox card
  • The reach to interact with item frames and other entities is now increased
while in the lobby or skybox.
  • Item chests in the lobby now show the global item weight.
  • Item chests in the lobby now generate with scaffolding and make the room grow
in height depending on the item pool (without pale garden items, the room is
shorter, for example.)

## Worldgen Tweaks

  • Buried treasure is now more common like other structures
  • This means map chests are now less likely to have no map
  • Buried treasure will generally be closer to their map
  • Pillager outposts now require less distance from villages
  • Trial chambers are more common, just like other structures in Fetchr
  • Creaking heart frequency in pale oak trees has been increased compared to
vanilla from 10% to 35%

## Technical Changes
  • Overhauled item registration card generation and item detection with new
Minecraft Features in Mind such as Macros

### Item Registration
Item registration has been overhauled and existing forks that change the item
pool will need to update to the new system.

  • textComponent has been removed
  • clearCommand has been removed
  • detectCommand has been removed
  • icon is no longer a text component and instead the 4 digit hex code of the
unicode character representing the item on the HUD bingo card
  • icon_font specifies a own custom font to use for this item. Can be used to
avoid conflicts in the vanilla Fetchr font files when maintaining forks
  • actionbar A list of 5 font definitions to use for the card displayed in
the actionbar. Each definition is for a different row on the Bingo card
and needs to have the corresponding ascend value set. Reference the vanilla
Fetchr assets.
  • translation New property for the translation key of the item
  • item_tests Optional. Can be used for custom item tests.
  • type see blow
  • Type specific fields (see below)

#### Item Tests
Item tests can be used to further specify an item or override default behavior.
By default, any item in the item field will match, including any defined
components.

If item_tests is specified the components of the item definition will be
ignored for testing purposes and only be used to construct a display item
for the item frame card or the category chests.

  • fetchr:component**
A component the item must have exactly like specified.
  • id The data component id
  • component The component value
  • fetchr:negated_component**
A component the item must not have
  • id The data component id
  • fetchr:predicate**
An item sub predicate that must succeed for the item
  • id The item sub predicate type
  • predicate The predicate data

At runtime, this will be parsed together with the item id into a command item
argument.

For example this definition would leather boots with a blue shaper trim which is
not shown in the tooltip and a custom lore text whenever it is displayed, and
any leather boots that have any kind of blue trim would match:
``js
{
item: {
id: "minecraft:leather_boots",
components: {
"minecraft:trim": {
pattern: "minecraft:shaper",
material: "minecraft:lapis",
show_in_tooltip: false
},
"minecraft:lore": [
'{"translate": "item.minecraft.smithing_template.upgrade", "color": "gray", "italic": false}',
'[" ", {"translate": "fetchr.item.description.any_trim", "color": "#406d95", "italic": false}]',
'[" ", {"translate": "trim_material.minecraft.lapis", "color": "#406d95", "italic": false}]'
]
}
},
item_tests: [
{
type: "fetchr:predicate",
id: "minecraft:trim",
predicate: {material: "minecraft:lapis" }
}
]
}
`
When testing the item id together with the specified item tests would check for
minecraft:leather_boots["minecraft:trim"~{material:"minecraft:lapis"}]

### Renamed properties in storages
Properties in the item storage and the card storage have been renamed to follow
snake_case convention.

### Item Detection & Performance
The machinery room is obsolete now and has been removed. Item detection has
been fully implemented using macros and no longer needs any command blocks.

This should improve the performance quite significantly, as running command
blocks every tick was quite expensive.

Item detection now only runs for a player who had a change to their inventory
and does not have any active checks that run every tick anymore.

Command blocks are also more expensive because they parse their command
every time they are executed anew while functions are pre-parsed. Macro lines
still may need to be parsed more often, but because of macro caching, they will
only need to be re-parsed when a new card with different items is generated.
The cache only caches up to 8 unique combinations of arguments per function file
which means some functions have been duplicated to take advantage of the cache
for 25 items. There will still be a small performance overhead for cache lookup.

### Card Generation
Card generation also could be simplified using macros. Furthermore, there is no
custom random number generator in place anymore, and instead the built-in
random command is used.

## Bug Fixes
  • Fixed Green Dye having the wrong internal id of fetchr:lime_dye` ([#236](<https://github.com/NeunEinser/bingo/issues/236>))
  • Fixed spawning inside leaves in some spawn points
  • Fixed vines not getting replaced by drop chute
  • Fixed old skybox remaining when generating new card
  • This would lead to a black box hovering underneath the spawn point when
re-generating a card with the same seed again.
This is the third release candidate fixing two more issues.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.2-rc3.properties)

## Changelog
  • Scaffolding in the lobby is now not re-generated when the bottom-most
scaffolding is broken

## Bug Fixes
  • Fixed built script not generating translation override for "Fetchr Fx" sound
category for all languages correctly (if no explicit translation is provided
for that language)
  • Fixed Lobby scaffolding not regenerating correctly and drop scaffolding blocks
on reload if broken ([#254](<https://github.com/NeunEinser/bingo/issues/254>))
This is the second release candidate for 5.2 fixing two bugs that have been
discovered in rc1.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.2-rc2.properties)

## Bug Fixes
  • Fixed items in offhand being detected but not cleared, allowing to reuse items
after they have been registered on the card.
  • Fixed spawn point not being set correctly in the lobby under rare
circumstances.
This is the first release candidate for 5.2. 5.1.4 has been re-branded as 5.2 as
the release became a bit bigger than initially anticipated.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.2-rc1.properties)

## Changelog
  • The room with the category chests in the lobby now grows in height dynmaically
depending on the needed amount of space
  • Creepers and tnt no longer cause damage in the lobby
  • Updated translator credits
  • Updated pack and workd icons to reflect item changes
  • 1EEFEzBzXBZzUPzCSJOHzNPSFzNPCTzUPzUIFzMPCCZAz3BNFMT1SFiIF2FTUAz7PzUPzUIFzHJUIVCAz7PzUPzDPEFAz3MJDLzPOzUIFzJNBHFTzEJSFDUPSZAziBLFzBzMPPLzBUzuArAz8PQFzUIJTzIFMQTAzLBZzCZF
  • sorry this got corrupted
  • dont worry about it
  • possible characters are [a-zA-Z0-9 .]

## Bug Fixes
  • Fixed lockout mode not showing team colors on the HUD card when a team got an
item
  • Fixed category chests in lobby penetrating the ceiling
  • Fixed spawning inside leaves in some spawn points
  • Fixed vines not getting replaced by drop chute
  • Fixed interaction range not getting reset when joining the game as a spectator
after it already started
  • Fixed old skybox remaining when generating new card
  • This would lead to a black box hovering underneath the spawn point when re-
generating a card with the same seed again.
This pre-release brings full 1.21.x compatiblity, and some pale garden rebalancing

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.1.4-pre4.properties)

## Changelog
  • The map is now compatible with all versions starting from 1.21 and up to 1.21.4-rc3
  • Increased creaking heart frequency in pale oak trees from 10% to 35%
  • All resin-related items are now mutually exclusive with other hard night-time mob drops
  • Added two new items from the pale garden

### Pale Garden items
These items are only available when playing in 1.21.4

  • All resin-related items are now mutually exclusive with other hard night-time mob drops
  • Added pale hanging moss to categories pale garden and shearables
  • Added pale moss block to the pale garden category

## Bug Fixes
Pre Release 3 is here to fix one bug from pre2.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.1.4-pre3.properties)

## Bug Fixes
  • Fixed Chiseled Resin Bricks and Creaking Heart using the wrong icon on the HUD card
This pre-release adds compatability with 1.21.4-pre1, adds pale garden items, and includes some small tweaks

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.1.4-pre2.properties)

## Changelog
  • The map is now compatible with up to 1.21.4-pre1
  • When playing in 1.21.4, items from the pale garden are now available
  • Items taken from the game that include an inner inventory now return their inventory to the player
  • Item get messages in chat now contain a tooltip with the exact item that was taken
  • Improved the big preview card in the lobby and skybox
  • Bug fixes

### Pale Garden items
These items are only available when playing in any 1.21.4 snapshot or pre-release

  • Closed Eyeblossom
  • Open Eyeblossom
  • Resin Clump
  • Chiseled Resin Bricks
  • Creaking Heart

### Improved item get handling

The map is now aware of the exact item that matches in the player's inventory.

The tooltip in chat messages now shows the exact item that was obtained. For example, an enchanted book will now list the enchantments that the specific book which has been obtained had.

Items that can have an inventory like bundles or shulkers now will return their inventory to the player, when obtaining them

### Lobby & Skybox card

There is no longer an area were the player floats in front of the card.

Instead, players now have extended entity interaction range, allowing the player
to interact with the card from far away.

## Bug Fixes
  • Fixed rarity color no longer being shown in item get messages
  • Fixed item tooltip missing from item get messages in 5.1.4 versions
A small pre-release with some fixes, tweaks and a new item!

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.1.4-pre1.properties)

A small omission from the beta 1 changelog:
  • Item chests in the lobby now show the global item weight.


## Changelog
  • Added Poison arrow which splits its weight with slowness arrow now
  • Command blocks are no longer required to be enabled in a server enviornment
  • Burried treasure is now more common like other structures
  • This means map chests are now less likely to have no map
  • Burried treasure will generally be closer to their map
  • Trial chambers are now more common like other structures
  • Pillager outposts now require less distance from villages
  • Armadillos are now more common to generate in savanna biomes
  • Bug fixes

## Bug Fixes
[5.1.4-beta1] 5.1.4 Beta 1 by NeunEinser on Oct 16, 2026
Download
5.1.4 will be a feature-wise small release which updates the game to 1.21 with
some technical improvements taking advantage of new Minecraft features, and of
course new items.

[server.properties](https://gist.githubusercontent.com/NeunEinser/dac27cc76dbc83bdd1ea22a99cff3967/raw/5.1.4-beta1.properties)

## Changelog
  • The targeted Minecraft version is now 1.21-1.21.2-pre5
  • Added new items and changed categories of existing items
  • Technical Improvements and better Performance
  • Removed machinery as command blocks are no longer neccesary
  • Updated translations from Crowdin

## Item Changes

### Roots
New category "Roots" with:
  • Carrot
  • Golden Carrot
  • Carrot on a Stick
  • Baked Potato

### Armadillo
New "Armadillo" Category with:
  • Armadillo Scute
  • Wolf Armor

### Other new items
  • Jungle Sapling as part of the jungle category
  • White Stained Glass exclusive with glass bottle and orange concrete
  • Brown Banner as part of the wool category
  • Light Blue Bundle as part of the leather category
  • This is only active in 1.21.2 (or specifically in any version greater than or equal 24w39a). Earlier versions will not use this item

### Changes
  • Book items have been separated from the leather category and are no longer
exclusive with item frames
  • Tnt and Tnt Minecart are no longer exclusive with glass bottle and orange
concrete
  • Saplings are no longer mutually exclusive
  • Mangrove propagule is exclusive with mud items
  • spruce sapling is exclusive with sweet berries, fern and snow
  • acacial is exclusive with cactus green, lime dye and sea pickle
  • dark oak is exclusive with apple and golden apple

#### Removed Items
  • Birch sapling
  • Golden hoe, golden pickaxe
  • Diamond shovel, diamod axe, diamond sword

The variety in gold and diamond tools was reduced to make blind runs need to craft fewer of them.

## Technical Changess
  • Overhauled item registration card generation and item detecion with new
Minecraft Features in Mind such as Macros

### Item Registration
Item registration has been overhauled and existing forks that change the item
pool will need to update to the new system.

  • textComponent has been removed
  • clearCommand has been removed
  • detectCommand has been removed
  • icon is no longer a text component and instead the 4 digit hex code of the
unicode character representing the item on the HUD bingo card
  • icon_font specifies a own custom font to use for this item. Can be used to
avoid conflicts in the vanilla fetchr font files when maintaining forks
  • actionbar A list of 5 font definitions to use for the card displayed in
the actionbar. Each definition is for a different row on the Bingo card
and needs to have the corresponding ascend value set. Reference the vanilla
Fetchr assets.
  • translation New property for the translation key of the item
  • item_tests Optional. Can be used for custom item tests.
  • type see blow
  • Type specific fields (see below)

#### Item Tests
Item tests can be used to further specify an item or override default behavior.
By default, any item in the item field will match, including any defined
components.

If item_tests is specified the components of the item definition will be
ignored for testing purposes and only be used to construct a display item
for the item frame card or the category chests.

  • fetchr:component**
A component the item must have exactly like specified.
  • id The data component id
  • component The component value
  • fetchr:negated_component**
A component the item must not have
  • id The data compontent id
  • fetchr:predicate**
An item sub predicate that must succeed for the item
  • id The item sub predicate type
  • predicate The predicate data

At runtime, this will be parsed together with the item id into a command item
argument.

For example this definition would leather boots with a blue shaper trim which is
not shown in the tooltup and a custom lore text whenever it is displayed, and
any leather boots that have any kind of blue trim would match:
``js
{
item: {
id: "minecraft:leather_boots",
components: {
"minecraft:trim": {
pattern: "minecraft:shaper",
material: "minecraft:lapis",
show_in_tooltip: false
},
"minecraft:lore": [
'{"translate": "item.minecraft.smithing_template.upgrade", "color": "gray", "italic": false}',
'[" ", {"translate": "fetchr.item.description.any_trim", "color": "#406d95", "italic": false}]',
'[" ", {"translate": "trim_material.minecraft.lapis", "color": "#406d95", "italic": false}]'
]
}
},
item_tests: [
{
type: "fetchr:predicate",
id: "minecraft:trim",
predicate: {material: "minecraft:lapis" }
}
]
}
`
When testing the item id together with the specified item tests would check for
minecraft:leather_boots["minecraft:trim"~{material:"minecraft:lapis"}]

### Item Detection & Performance
The machinery room is obsolete now and has been removed. Item detection has
been fully implemented using macros and no longer needs any command blocks.

This should improve the performance quite significantly, as running command
blocks every tick was quite expensive.

Item detection now only runs for a player who had a change to their inventory
and does not have any active checks that run every tick anymore.

Command blocks are also more expensive because they parse their command
everytime they are executed anew while functions are pre-parsed. Macro lines
still may need to be parsed more often, but because of macro caching, they will
only need to be re-parsed when a new card with different items is generated.
The cache only caches up to 8 unique combinations of arguments per function file
which means some functions have been duplicated to take advantage of the cache
for 25 items. There will still be a small performance overhead for cache lookup.

### Card Generation
Card generation also could be simplified using macros. Furthermore, there is no
custom random number generator in place anymore, and instead the built-in
random command is used.

## Bug Fix
  • Fixed Green Dye having the wrong internal id of fetchr:lime_dye` (#236)
Fetchr Bingo Icon
Download Fetchr Bingo
Select game version
Select platform