Skip to content

Chaoscaot/schemsearch

Repository files navigation

schemsearch

A simple CLI tool to search in Sponge Schematic files


WARNING: This is a work in progress and is really simple right now. It will be improved in the future.

Feature Status
Block search
Block data less search
Tile entities data search
Entities search

Reasoning

As a Developer of the SteamWar.de Minecraft server we needed a way to search for schematics that contain a specific pattern. Focused on "competitive Redstone building" stealing of other players techniques is a big problem, so this is a little side project of mine.


Usage

The tool takes a pattern as it's first parameter, this should be a valid Sponge V2 Schematic File. The second parameter is a list of schematics or directories to search in.

schemsearch-cli <pattern> <schematic...>

Examples

Simple search

schemsearch-cli tests/endstone.schem tests/simple.schem

Help

The rest of the valid parameters can be found by using the help command.

schemsearch-cli --help

Roadmap

A list of features that are planned to be implemented in the future. In order of priority.

  • Use AVX2 for faster search
  • Tile entities data search
  • Entities search
  • McEdit Schematic support

Building

This project is build using Rust for the CLI and library. It can be built using Cargo.

cargo build --release

Features: schemsearch-sql

This feature is not enabled by default as it is a specific implementation for the SteamWar.de Minecraft server. You shouldn't enable this feature unless you know what you are doing.


License

This project is licensed under the AGPL-3.0 License. See the LICENSE file for details.