6c6c95bedd
Updates the requirements on [sqlx](https://github.com/launchbadge/sqlx) to permit the latest version. - [Changelog](https://github.com/launchbadge/sqlx/blob/main/CHANGELOG.md) - [Commits](https://github.com/launchbadge/sqlx/compare/v0.6.0...v0.7.0) --- updated-dependencies: - dependency-name: sqlx dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> |
||
---|---|---|
.github | ||
schemsearch-cli | ||
schemsearch-faster | ||
schemsearch-files | ||
schemsearch-java | ||
schemsearch-lib | ||
schemsearch-sql | ||
tests | ||
.gitignore | ||
Cargo.toml | ||
CODE_OF_CONDUCT.md | ||
LICENSE.txt | ||
Makefile | ||
README.md | ||
SchemSearch.java |
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.