1
0
Mirror von https://github.com/Chaoscaot/schemsearch synchronisiert 2024-11-16 17:00:14 +01:00
Datei suchen
Chaoscaot 1a14d13303 build: Add SIMD optimizations to compare.c
Add SIMD (Single Instruction, Multiple Data) optimizations to the
compare.c file to improve performance. This includes vectorization
flags and architecture-specific optimizations to enhance the
processing of data in the comparison function. Additionally, the
implementation now dynamically selects an optimized code path based
on the size of the pattern data, ensuring efficient execution for
various scenarios.

By Lixfel
2024-04-27 20:07:46 +02:00
.github Update dependabot.yml 2023-04-13 00:21:24 +02:00
schemsearch-cli Improve Performance 2023-08-09 09:22:24 +02:00
schemsearch-faster Bump Version 2023-04-22 21:55:08 +02:00
schemsearch-files Bump Version 2023-05-23 20:10:41 +02:00
schemsearch-java Bump Version 2023-04-22 21:55:08 +02:00
schemsearch-lib build: Add SIMD optimizations to compare.c 2024-04-27 20:07:46 +02:00
schemsearch-sql Update sqlx requirement from 0.6 to 0.7 2023-07-10 10:49:15 +00:00
tests new Matcher 2023-12-26 21:28:46 +01:00
.gitignore build: Add SIMD optimizations to compare.c 2024-04-27 20:07:46 +02:00
Cargo.toml new Matcher 2023-12-26 21:28:46 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2023-04-13 00:25:42 +02:00
LICENSE.txt Finishing 2023-03-08 15:47:51 +01:00
Makefile new Matcher 2023-12-26 21:28:46 +01:00
README.md Update README.md 2023-04-28 00:28:34 +02:00
SchemSearch.java Add JNI 2023-03-05 15:11:51 +01:00

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.