Skip to main content

Fast Minecraft Java Edition seed finder with .ezsf criteria language and GUI

Project description

EZ Seed Finder

Fast, GUI-based Minecraft Java Edition seed finder with an extensive .ezsf criteria language.

Powered by cubiomes via cubiomespi-fork for accurate structure and biome generation.

Features

  • GUI — set version, structure distances, stronghold options, and spawn filters
  • .ezsf files — expressive criteria syntax for complex multi-dimension searches
  • Multi-threaded — uses all CPU cores for fast random/sequential scanning
  • Structures — villages, temples, mansions, monuments, ruined portals, ancient cities, trial chambers, and more
  • Dimensions — overworld, nether, and end criteria in one search
  • Strongholds — nearest distance, under-spawn, ring selection, full stronghold (best-effort)
  • Biomes — point checks, region percentages, spawn biome
  • Bastions — variant filtering (treasure, housing, stables, bridge)
  • Distance rules — e.g. village and ruined portal within 200 blocks of each other
  • Terrain / mobs / loot — terrain heuristics, mob biome proxies, loot structure checks

Quick Start

Install from PyPI

pip install ezseedfinder
ezsf -gui                  # graphical interface (requires tkinter)
ezsf -f criteria.ezsf      # headless CLI search
ezsf --village 500 -n 10   # quick village filter

GUI requires tkinter. On Debian/Ubuntu: sudo apt install python3-tk

Development

python3 -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -e .
ezsf -gui
ezsf -f examples/speedrun.ezsf -n 5

GUI Usage

  1. Pick a Minecraft version (1.12.2 – 1.21, default 1.16.1 for speedrun)
  2. Set structure distances in blocks (0 = ignore)
  3. Enable stronghold options if needed
  4. Optionally edit the .ezsf panel for advanced criteria
  5. Click Start Search — results appear in the table (double-click to copy seed)

.ezsf Syntax Reference

version 1.21
threads 8
max_results 10
random                    # or: sequential
seed_range start 0 end 1000000

spawn within 2000 of origin
spawn biome plains | forest

stronghold nearest within 1500 of spawn
stronghold under spawn
stronghold full
stronghold ring 1

dimension overworld {
  biome at 0, 64, 0 plains | meadow
  biome region -512, -512 to 512, 512 y 64 contains desert >= 10%
  structure village within 500 of spawn viable
  structure between village and desert_pyramid within 800 of spawn viable
  ruined_portal within 300 of spawn viable giant false top_missing 1 chest item obsidian min 1 chest item flint_and_steel min 1
  terrain at 0, 0 flat radius 128
}

dimension nether {
  structure fortress within 400 of 0,0 viable
  bastion variant treasure within 600 of spawn viable
}

dimension end {
  structure end_city within 1000 of 0,0 viable
}

distance village ruined_portal <= 200 in overworld
mob witch within 200 of spawn in overworld biome swamp
loot at ruined_portal item obsidian min 1 within 500 of spawn in overworld

Structure variants

Ruined portals support cubiomes variant flags plus frame/loot simulation (1.16.1+):

  • giant true|false — giant portal template
  • underground true|false, airpocket true|false, template 3 — placement variant
  • top_missing N — obsidian holes on the top row of the portal frame (after crying-obsidian RNG)
  • frame_missing N — total frame holes (optional; templates usually need 3+ blocks to complete)
  • chest item <name> min N — ruined portal chest loot (obsidian, flint_and_steel, gold_ingot, etc.)

Bastions: bastion variant treasure|housing|stables|bridge within 600 of spawn

Point references

  • spawn — world spawn
  • origin or 0,0 — world origin
  • x, z — explicit coordinates

Structures

village, desert_pyramid, jungle_temple, swamp_hut, igloo, ocean_ruin, shipwreck, monument, mansion, outpost, ruined_portal, ancient_city, treasure, mineshaft, fortress, bastion, end_city, trail_ruin, trial_chambers, and more.

Notes

  • Full stronghold — cubiomes does not simulate portal room layout; EZSF uses a ring-1 proximity heuristic.
  • Chest loot — ruined portal chests use the real 1.16.1 loot table (best-effort RNG). Other structures verify placement only.
  • Ruined portal frame — uses extracted vanilla structure templates; crying-obsidian replacement is simulated at ~15% per block.
  • Mob rules — use biome suitability as a proxy for spawn conditions.

Examples

See bundled examples (ezseedfinder/examples/ after install, or examples/ in the repo):

  • ruined_portal_speedrun.ezsf1.16.1 portal_6 frame + chest loot speedrun
  • speedrun.ezsf1.16.1 village + portal + stronghold + nether
  • advanced.ezsf — biomes, terrain, mobs, all dimensions

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ezseedfinder-0.1.0.tar.gz (45.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ezseedfinder-0.1.0-py3-none-any.whl (51.3 kB view details)

Uploaded Python 3

File details

Details for the file ezseedfinder-0.1.0.tar.gz.

File metadata

  • Download URL: ezseedfinder-0.1.0.tar.gz
  • Upload date:
  • Size: 45.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ezseedfinder-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c5efdd15390e59f8edae6806b73b171c9c7343ece1792e867b56995fd48e2c1a
MD5 c27ba9b1b496cc3cf78064fc7a9f82d2
BLAKE2b-256 3716f09c5cf0065fda64cbb18127cd861fb949ba772418d1aa3c257de28e76fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ezseedfinder-0.1.0.tar.gz:

Publisher: publish.yml on codingsushi79/ezseedfinder

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ezseedfinder-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ezseedfinder-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 51.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ezseedfinder-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 471d77279d82177863b8b33c9c34a2482a9a990163178bac95d0c5c82a6d6278
MD5 3263b7a4aafa141c32680fe004b38241
BLAKE2b-256 f7f365833c4556023753553d0988cd9d7285f8360f5b31638596e09fce5b96fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for ezseedfinder-0.1.0-py3-none-any.whl:

Publisher: publish.yml on codingsushi79/ezseedfinder

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page