Compare commits
7 Commits
main
...
612018194c
| Author | SHA1 | Date | |
|---|---|---|---|
|
612018194c
|
|||
|
4e129a459d
|
|||
|
3c3184c974
|
|||
|
e7080a69a7
|
|||
|
07bfca309a
|
|||
|
f7b2cf8596
|
|||
|
d6b90dd7a5
|
17
.github/dependabot.yaml
vendored
17
.github/dependabot.yaml
vendored
@@ -1,17 +0,0 @@
|
|||||||
version: 2
|
|
||||||
|
|
||||||
updates:
|
|
||||||
- package-ecosystem: "cargo"
|
|
||||||
directory: "/"
|
|
||||||
schedule:
|
|
||||||
interval: "monthly"
|
|
||||||
|
|
||||||
- package-ecosystem: "nix"
|
|
||||||
directory: "/"
|
|
||||||
schedule:
|
|
||||||
interval: "monthly"
|
|
||||||
|
|
||||||
- package-ecosystem: "github-actions"
|
|
||||||
directory: ".github/workflows"
|
|
||||||
schedule:
|
|
||||||
interval: "monthly"
|
|
||||||
6
.github/workflows/build.yaml
vendored
6
.github/workflows/build.yaml
vendored
@@ -24,13 +24,13 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone repository
|
- name: Clone repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: sudo apt install -y libluajit-5.1-dev mold
|
run: sudo apt install -y libluajit-5.1-dev mold
|
||||||
|
|
||||||
- name: Set up build cache
|
- name: Set up build cache
|
||||||
uses: actions/cache@v5
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: |
|
path: |
|
||||||
~/.cargo/bin/
|
~/.cargo/bin/
|
||||||
@@ -46,7 +46,7 @@ jobs:
|
|||||||
- run: cargo build --release ${{ matrix.feature.flags }}
|
- run: cargo build --release ${{ matrix.feature.flags }}
|
||||||
|
|
||||||
- name: Upload build artifacts
|
- name: Upload build artifacts
|
||||||
uses: actions/upload-artifact@v7
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: errornowatcher_${{ matrix.feature.name }}_${{ matrix.os }}
|
name: errornowatcher_${{ matrix.feature.name }}_${{ matrix.os }}
|
||||||
path: target/release/errornowatcher
|
path: target/release/errornowatcher
|
||||||
|
|||||||
8
.github/workflows/lint.yaml
vendored
8
.github/workflows/lint.yaml
vendored
@@ -15,7 +15,7 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone repository
|
- name: Clone repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install taplo
|
- name: Install taplo
|
||||||
uses: uncenter/setup-taplo@v1
|
uses: uncenter/setup-taplo@v1
|
||||||
@@ -47,13 +47,13 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone repository
|
- name: Clone repository
|
||||||
uses: actions/checkout@v6
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: sudo apt install -y libluajit-5.1-dev mold
|
run: sudo apt install -y libluajit-5.1-dev mold
|
||||||
|
|
||||||
- name: Set up build cache
|
- name: Set up build cache
|
||||||
uses: actions/cache@v5
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: |
|
path: |
|
||||||
~/.cargo/bin/
|
~/.cargo/bin/
|
||||||
@@ -69,7 +69,7 @@ jobs:
|
|||||||
- name: Install components
|
- name: Install components
|
||||||
run: rustup component add clippy rustfmt
|
run: rustup component add clippy rustfmt
|
||||||
|
|
||||||
- run: cargo clippy ${{ matrix.feature.flags }} -- -D clippy::pedantic
|
- run: cargo clippy ${{ matrix.feature.flags }} -- -D warnings -D clippy::pedantic
|
||||||
|
|
||||||
- if: always()
|
- if: always()
|
||||||
run: cargo fmt --check
|
run: cargo fmt --check
|
||||||
|
|||||||
75
Cargo.lock
generated
75
Cargo.lock
generated
@@ -375,8 +375,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea"
|
name = "azalea"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "4499cd2a5bbf1ead434e457fd40fc6f3a3597c577564c12f4c21fd110b07cdaf"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-auth",
|
"azalea-auth",
|
||||||
"azalea-block",
|
"azalea-block",
|
||||||
@@ -413,8 +412,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-auth"
|
name = "azalea-auth"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "c74117dc3c3805946ac16cdd2f48fcecd7aa7e950c7da86e681e5ad921eb8885"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
"azalea-crypto",
|
"azalea-crypto",
|
||||||
@@ -434,8 +432,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-block"
|
name = "azalea-block"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "ea45cc5ae686461c81716f08bdee08857be2ffa0eb6562c213c35c67aa78db6c"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-block-macros",
|
"azalea-block-macros",
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
@@ -445,8 +442,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-block-macros"
|
name = "azalea-block-macros"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "cdcc882d1a9b05af79b1bbd592d920e3a7ec252ac403877105bce5a2fdb21e1e"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -456,8 +452,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-brigadier"
|
name = "azalea-brigadier"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "f5a6d6986eccbf3902dd72432d56244dc5debca6ccbb1f47393c4d9277b044c5"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
"azalea-chat",
|
"azalea-chat",
|
||||||
@@ -467,8 +462,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-buf"
|
name = "azalea-buf"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "8b8fb450761479a164cd94fbf7353c758f154a03d337ffaff8166a42e6937ff0"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf-macros",
|
"azalea-buf-macros",
|
||||||
"byteorder",
|
"byteorder",
|
||||||
@@ -483,8 +477,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-buf-macros"
|
name = "azalea-buf-macros"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "29bc6a8dec6782886d06d1adf4a304d3babe7c61f28c407a10610dbac8db1d00"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -494,8 +487,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-chat"
|
name = "azalea-chat"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "665a5c4cd3488722302f69711027d29010d2e5b9f92d744f46605271afe2cf56"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
"azalea-language",
|
"azalea-language",
|
||||||
@@ -509,8 +501,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-client"
|
name = "azalea-client"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "b1b6d6f2298959bc66bbf7744ba880ac45c84f78ed383e2360ce085b73a73835"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-compat",
|
"async-compat",
|
||||||
"azalea-auth",
|
"azalea-auth",
|
||||||
@@ -548,8 +539,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-core"
|
name = "azalea-core"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "bf3c7e9ec40c983b9a5e17cc75cb744896e4cce279ef355da1750c11632d37a0"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
"azalea-chat",
|
"azalea-chat",
|
||||||
@@ -570,8 +560,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-crypto"
|
name = "azalea-crypto"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "7eb0ec0995af57e34a130e61869bb865e092d838d98d601fab64b9291d837adf"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aes",
|
"aes",
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
@@ -590,8 +579,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-entity"
|
name = "azalea-entity"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "eac94303362f7576efe063f8db36552f97258e729b3e4bd32a864ec797dc393f"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-block",
|
"azalea-block",
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
@@ -611,11 +599,18 @@ dependencies = [
|
|||||||
"uuid",
|
"uuid",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "azalea-hax"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "git+https://github.com/azalea-rs/azalea-hax#ef06856f1e6c45cab614ac78d2224a8228d9c426"
|
||||||
|
dependencies = [
|
||||||
|
"azalea",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-inventory"
|
name = "azalea-inventory"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "f15103d879c9967c37fd13361d08db062dc9529a5593b14ef8301f322d42cd3e"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-auth",
|
"azalea-auth",
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
@@ -633,8 +628,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-inventory-macros"
|
name = "azalea-inventory-macros"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "94afbf2cb10a6cfc26a723430b42d0a1933291f176f10081c69f21651e56052d"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -644,8 +638,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-language"
|
name = "azalea-language"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "1e58005bd5a7bdc0bed973640ae281aecd09fdbaa7312b959fc3f6f2232d3a64"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"compact_str",
|
"compact_str",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
@@ -654,8 +647,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-physics"
|
name = "azalea-physics"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "5963fd337c81663ec89745f1baf7b97e823bf820c76c35f26e14a70233787923"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-block",
|
"azalea-block",
|
||||||
"azalea-core",
|
"azalea-core",
|
||||||
@@ -672,8 +664,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-protocol"
|
name = "azalea-protocol"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "15e2203a1d672290513a9c62d4753f1004a69a6767aebb788b06b02779071156"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-auth",
|
"azalea-auth",
|
||||||
"azalea-block",
|
"azalea-block",
|
||||||
@@ -708,8 +699,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-protocol-macros"
|
name = "azalea-protocol-macros"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "ab6a0f484a4cb105cd178f0cf54755f281625cda1beaf84d65e696af3383fd15"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
@@ -719,8 +709,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-registry"
|
name = "azalea-registry"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "c3960fd7f1dcd6ea6941fcb5e8a756ff0c8e13f13fa989bc1cde7cfb4563bb35"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
"azalea-registry-macros",
|
"azalea-registry-macros",
|
||||||
@@ -731,8 +720,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-registry-macros"
|
name = "azalea-registry-macros"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "8a8c09e57b12a674726eb5570b88828756c56fab90ce6f473a0a4a0a02bf18ea"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"quote",
|
"quote",
|
||||||
"syn 2.0.117",
|
"syn 2.0.117",
|
||||||
@@ -741,8 +729,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "azalea-world"
|
name = "azalea-world"
|
||||||
version = "0.16.0+mc26.1"
|
version = "0.16.0+mc26.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/azalea-rs/azalea#ddef37118448b639ff56b86ae339e8913cb4ed11"
|
||||||
checksum = "59258b4001f420e0fb7fc418566b9fed25bac171e8fe6ebbee93d588118370a2"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"azalea-block",
|
"azalea-block",
|
||||||
"azalea-buf",
|
"azalea-buf",
|
||||||
@@ -1095,8 +1082,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "built"
|
name = "built"
|
||||||
version = "0.8.0"
|
version = "0.8.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "git+https://github.com/lukaslueg/built#7cebe3e8d802502f55d2cf799abf1e5c983fb7a9"
|
||||||
checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64"
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"git2",
|
"git2",
|
||||||
]
|
]
|
||||||
@@ -1983,6 +1969,7 @@ version = "0.2.0"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"azalea",
|
"azalea",
|
||||||
|
"azalea-hax",
|
||||||
"bevy_app",
|
"bevy_app",
|
||||||
"bevy_ecs",
|
"bevy_ecs",
|
||||||
"bevy_log",
|
"bevy_log",
|
||||||
|
|||||||
13
Cargo.toml
13
Cargo.toml
@@ -15,20 +15,13 @@ codegen-units = 1
|
|||||||
lto = true
|
lto = true
|
||||||
strip = true
|
strip = true
|
||||||
|
|
||||||
[profile.release-no-lto]
|
|
||||||
inherits = "release"
|
|
||||||
lto = false
|
|
||||||
|
|
||||||
[profile.small]
|
|
||||||
inherits = "release"
|
|
||||||
opt-level = "z"
|
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
built = { version = "0", features = ["git2"] }
|
built = { git = "https://github.com/lukaslueg/built", features = ["git2"] }
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
anyhow = "1"
|
anyhow = "1"
|
||||||
azalea = "0"
|
azalea = { git = "https://github.com/azalea-rs/azalea" }
|
||||||
|
azalea-hax = { git = "https://github.com/azalea-rs/azalea-hax" }
|
||||||
bevy_app = "0"
|
bevy_app = "0"
|
||||||
bevy_ecs = "0"
|
bevy_ecs = "0"
|
||||||
bevy_log = "0"
|
bevy_log = "0"
|
||||||
|
|||||||
@@ -21,13 +21,7 @@ A Minecraft bot with Lua scripting support, written in Rust with [azalea](https:
|
|||||||
$ git clone https://github.com/ErrorNoInternet/ErrorNoWatcher
|
$ git clone https://github.com/ErrorNoInternet/ErrorNoWatcher
|
||||||
$ cd ErrorNoWatcher
|
$ cd ErrorNoWatcher
|
||||||
$ cargo build --release
|
$ cargo build --release
|
||||||
$ ./target/release/errornowatcher
|
$ # ./target/release/errornowatcher
|
||||||
```
|
|
||||||
|
|
||||||
#### Nix
|
|
||||||
|
|
||||||
```sh
|
|
||||||
nix run github:ErrorNoInternet/ErrorNoWatcher
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Make sure the `Server` and `Username` globals are defined in `main.lua` before starting the bot.
|
Make sure the `Server` and `Username` globals are defined in `main.lua` before starting the bot.
|
||||||
|
|||||||
24
default.nix
24
default.nix
@@ -1,24 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
rust,
|
|
||||||
self,
|
|
||||||
}:
|
|
||||||
pkgs.rustPlatform.buildRustPackage {
|
|
||||||
pname = "errornowatcher";
|
|
||||||
version = self.shortRev or self.dirtyShortRev;
|
|
||||||
|
|
||||||
cargoLock.lockFile = ./Cargo.lock;
|
|
||||||
src = lib.cleanSource ./.;
|
|
||||||
|
|
||||||
nativeBuildInputs = with pkgs; [
|
|
||||||
rust
|
|
||||||
|
|
||||||
mold
|
|
||||||
pkg-config
|
|
||||||
];
|
|
||||||
|
|
||||||
buildInputs = with pkgs; [
|
|
||||||
luajit
|
|
||||||
];
|
|
||||||
}
|
|
||||||
86
devenv.lock
Normal file
86
devenv.lock
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"devenv": {
|
||||||
|
"locked": {
|
||||||
|
"dir": "src/modules",
|
||||||
|
"lastModified": 1775928269,
|
||||||
|
"narHash": "sha256-kolsui5s7citDkwz2RL4Au8/BUdH9/TYbfMthLrarrc=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"rev": "b908ac3d4b59f28cb32e7294c621b1c7325002c7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "src/modules",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-src": "nixpkgs-src"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1774287239,
|
||||||
|
"narHash": "sha256-W3krsWcDwYuA3gPWsFA24YAXxOFUL6iIlT6IknAoNSE=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv-nixpkgs",
|
||||||
|
"rev": "fa7125ea7f1ae5430010a6e071f68375a39bd24c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"ref": "rolling",
|
||||||
|
"repo": "devenv-nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1773840656,
|
||||||
|
"narHash": "sha256-9tpvMGFteZnd3gRQZFlRCohVpqooygFuy9yjuyRL2C0=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "9cf7092bdd603554bd8b63c216e8943cf9b12512",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"devenv": "devenv",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"rust-overlay": "rust-overlay"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rust-overlay": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1775877051,
|
||||||
|
"narHash": "sha256-wpSQm2PD/w4uRo2wb8utk0b5hOBkkg/CZ1xICY+qB7M=",
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"rev": "08b4f3633471874c8894632ade1b78d75dbda002",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "oxalica",
|
||||||
|
"repo": "rust-overlay",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
||||||
19
devenv.nix
Normal file
19
devenv.nix
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
packages = with pkgs; [
|
||||||
|
git
|
||||||
|
jujutsu
|
||||||
|
|
||||||
|
luajit
|
||||||
|
openssl
|
||||||
|
];
|
||||||
|
|
||||||
|
languages.rust = {
|
||||||
|
enable = true;
|
||||||
|
channel = "nightly";
|
||||||
|
};
|
||||||
|
}
|
||||||
8
devenv.yaml
Normal file
8
devenv.yaml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
inputs:
|
||||||
|
nixpkgs:
|
||||||
|
url: github:cachix/devenv-nixpkgs/rolling
|
||||||
|
rust-overlay:
|
||||||
|
url: github:oxalica/rust-overlay
|
||||||
|
inputs:
|
||||||
|
nixpkgs:
|
||||||
|
follows: nixpkgs
|
||||||
82
flake.lock
generated
82
flake.lock
generated
@@ -1,82 +0,0 @@
|
|||||||
{
|
|
||||||
"nodes": {
|
|
||||||
"flake-parts": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1772408722,
|
|
||||||
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "hercules-ci",
|
|
||||||
"repo": "flake-parts",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1774709303,
|
|
||||||
"narHash": "sha256-D3Q07BbIA2KnTcSXIqqu9P586uWxN74zNoCH3h2ESHg=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "8110df5ad7abf5d4c0f6fb0f8f978390e77f9685",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-lib": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1772328832,
|
|
||||||
"narHash": "sha256-e+/T/pmEkLP6BHhYjx6GmwP5ivonQQn0bJdH9YrRB+Q=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"rev": "c185c7a5e5dd8f9add5b2f8ebeff00888b070742",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "nixpkgs.lib",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-parts": "flake-parts",
|
|
||||||
"nixpkgs": "nixpkgs",
|
|
||||||
"rust-overlay": "rust-overlay"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1775013181,
|
|
||||||
"narHash": "sha256-zPrt6oNM1r/RO5bWYaZ3hthfG9vzkr6kQdoqDd5x4Qw=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "e8046c1d9ccadd497c2344d8fa49dab62f22f7be",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": "root",
|
|
||||||
"version": 7
|
|
||||||
}
|
|
||||||
66
flake.nix
66
flake.nix
@@ -1,66 +0,0 @@
|
|||||||
{
|
|
||||||
inputs = {
|
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
|
||||||
|
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
||||||
|
|
||||||
rust-overlay = {
|
|
||||||
url = "github:oxalica/rust-overlay";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs =
|
|
||||||
{
|
|
||||||
flake-parts,
|
|
||||||
nixpkgs,
|
|
||||||
rust-overlay,
|
|
||||||
self,
|
|
||||||
...
|
|
||||||
}@inputs:
|
|
||||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
|
||||||
systems = [
|
|
||||||
"aarch64-linux"
|
|
||||||
"x86_64-linux"
|
|
||||||
];
|
|
||||||
|
|
||||||
perSystem =
|
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
self',
|
|
||||||
system,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
rust = pkgs.rust-bin.nightly.latest.default.override {
|
|
||||||
extensions = [
|
|
||||||
"rust-src"
|
|
||||||
"rust-analyzer-preview"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
|
||||||
_module.args.pkgs = import nixpkgs {
|
|
||||||
inherit system;
|
|
||||||
overlays = [ rust-overlay.overlays.default ];
|
|
||||||
};
|
|
||||||
|
|
||||||
devShells.default = pkgs.mkShell {
|
|
||||||
name = "errornowatcher";
|
|
||||||
|
|
||||||
inputsFrom = [ self'.packages.default ];
|
|
||||||
nativeBuildInputs = [ pkgs.pkg-config ];
|
|
||||||
buildInputs = [ pkgs.taplo ];
|
|
||||||
|
|
||||||
RUST_BACKTRACE = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
packages = rec {
|
|
||||||
default = errornowatcher;
|
|
||||||
errornowatcher = pkgs.callPackage ./. { inherit rust self; };
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
description = "A Minecraft bot with Lua scripting support";
|
|
||||||
}
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
use azalea::{brigadier::prelude::*, chat::ChatPacket, prelude::*};
|
use azalea::{brigadier::prelude::*, client_chat::ChatPacket, prelude::*};
|
||||||
use futures::lock::Mutex;
|
use futures::lock::Mutex;
|
||||||
use mlua::{Error, Result, Table, UserDataRef};
|
use mlua::{Error, Result, Table, UserDataRef};
|
||||||
use ncr::{
|
use ncr::{
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
use azalea::{
|
|
||||||
entity::Physics,
|
|
||||||
movement::{KnockbackEvent, handle_knockback},
|
|
||||||
prelude::*,
|
|
||||||
};
|
|
||||||
use bevy_ecs::{observer::On, query::With, system::Query};
|
|
||||||
|
|
||||||
#[derive(Component)]
|
|
||||||
pub struct AntiKnockback;
|
|
||||||
|
|
||||||
pub fn anti_knockback(
|
|
||||||
knockback: On<KnockbackEvent>,
|
|
||||||
entity_query: Query<(), With<AntiKnockback>>,
|
|
||||||
handle_knockback_query: Query<&mut Physics>,
|
|
||||||
) {
|
|
||||||
if entity_query.get(knockback.entity).is_err() {
|
|
||||||
handle_knockback(knockback, handle_knockback_query);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
pub mod anti_knockback;
|
|
||||||
|
|
||||||
use azalea::movement::KnockbackEvent;
|
|
||||||
use bevy_app::{App, Plugin, PostStartup};
|
|
||||||
use bevy_ecs::world::World;
|
|
||||||
|
|
||||||
pub struct HacksPlugin;
|
|
||||||
|
|
||||||
impl Plugin for HacksPlugin {
|
|
||||||
fn build(&self, app: &mut App) {
|
|
||||||
app.add_systems(PostStartup, init_hacks);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
fn init_hacks(ecs: &mut World) {
|
|
||||||
let observers = ecs
|
|
||||||
.observers()
|
|
||||||
.try_get_observers(ecs.event_key::<KnockbackEvent>().unwrap());
|
|
||||||
let mut to_despawn = Vec::new();
|
|
||||||
for (observer_entity, _) in observers.unwrap().global_observers() {
|
|
||||||
to_despawn.push(*observer_entity);
|
|
||||||
}
|
|
||||||
for observer_entity in to_despawn {
|
|
||||||
ecs.despawn(observer_entity);
|
|
||||||
}
|
|
||||||
|
|
||||||
ecs.add_observer(anti_knockback::anti_knockback);
|
|
||||||
}
|
|
||||||
@@ -92,8 +92,7 @@ pub async fn go_to(
|
|||||||
client
|
client
|
||||||
.goto_with_opts(
|
.goto_with_opts(
|
||||||
goal,
|
goal,
|
||||||
PathfinderOpts::new()
|
PathfinderOpts::new().allow_mining(options.get("without_mining").unwrap_or_default()),
|
||||||
.allow_mining(!options.get::<bool>("without_mining").unwrap_or_default()),
|
|
||||||
)
|
)
|
||||||
.await;
|
.await;
|
||||||
|
|
||||||
@@ -117,8 +116,7 @@ pub async fn start_go_to(
|
|||||||
)?;
|
)?;
|
||||||
client.start_goto_with_opts(
|
client.start_goto_with_opts(
|
||||||
goal,
|
goal,
|
||||||
PathfinderOpts::new()
|
PathfinderOpts::new().allow_mining(options.get("without_mining").unwrap_or_default()),
|
||||||
.allow_mining(!options.get::<bool>("without_mining").unwrap_or_default()),
|
|
||||||
);
|
);
|
||||||
let _ = client.get_tick_broadcaster().recv().await;
|
let _ = client.get_tick_broadcaster().recv().await;
|
||||||
|
|
||||||
|
|||||||
@@ -2,10 +2,11 @@ use azalea::{
|
|||||||
ClientInformation, entity::metadata::AirSupply, pathfinder::debug::PathfinderDebugParticles,
|
ClientInformation, entity::metadata::AirSupply, pathfinder::debug::PathfinderDebugParticles,
|
||||||
protocol::common::client_information::ModelCustomization,
|
protocol::common::client_information::ModelCustomization,
|
||||||
};
|
};
|
||||||
|
use azalea_hax::AntiKnockback;
|
||||||
use mlua::{Error, Lua, Result, Table, UserDataRef};
|
use mlua::{Error, Lua, Result, Table, UserDataRef};
|
||||||
|
|
||||||
use super::Client;
|
use super::Client;
|
||||||
use crate::{hacks::anti_knockback::AntiKnockback, unpack};
|
use crate::unpack;
|
||||||
|
|
||||||
pub fn air_supply(_lua: &Lua, client: &Client) -> Result<i32> {
|
pub fn air_supply(_lua: &Lua, client: &Client) -> Result<i32> {
|
||||||
Ok(client.component::<AirSupply>().0)
|
Ok(client.component::<AirSupply>().0)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
macro_rules! get_entities {
|
macro_rules! get_entities {
|
||||||
($client:ident) => {{
|
($client:ident) => {{
|
||||||
let ecs = $client.ecs.read();
|
let ecs = $client.ecs.read();
|
||||||
ecs.try_query::<(
|
if let Some(mut query) = ecs.try_query::<(
|
||||||
&AzaleaPosition,
|
&AzaleaPosition,
|
||||||
&CustomName,
|
&CustomName,
|
||||||
&EntityKindComponent,
|
&EntityKindComponent,
|
||||||
@@ -11,8 +11,7 @@ macro_rules! get_entities {
|
|||||||
&MinecraftEntityId,
|
&MinecraftEntityId,
|
||||||
Option<&Owneruuid>,
|
Option<&Owneruuid>,
|
||||||
&Pose,
|
&Pose,
|
||||||
)>()
|
)>() {
|
||||||
.map(|mut query| {
|
|
||||||
query
|
query
|
||||||
.iter(&ecs)
|
.iter(&ecs)
|
||||||
.map(
|
.map(
|
||||||
@@ -30,8 +29,9 @@ macro_rules! get_entities {
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
})
|
} else {
|
||||||
.unwrap_or_default()
|
Vec::new()
|
||||||
|
}
|
||||||
}};
|
}};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ macro_rules! get_entities {
|
|||||||
macro_rules! get_players {
|
macro_rules! get_players {
|
||||||
($client:ident) => {{
|
($client:ident) => {{
|
||||||
let ecs = $client.ecs.read();
|
let ecs = $client.ecs.read();
|
||||||
ecs.try_query_filtered::<(
|
if let Some(mut query) = ecs.try_query_filtered::<(
|
||||||
&MinecraftEntityId,
|
&MinecraftEntityId,
|
||||||
&EntityUuid,
|
&EntityUuid,
|
||||||
&EntityKindComponent,
|
&EntityKindComponent,
|
||||||
@@ -47,7 +47,7 @@ macro_rules! get_players {
|
|||||||
&LookDirection,
|
&LookDirection,
|
||||||
&Pose,
|
&Pose,
|
||||||
), (With<Player>, Without<Dead>)>()
|
), (With<Player>, Without<Dead>)>()
|
||||||
.map(|mut query| {
|
{
|
||||||
query
|
query
|
||||||
.iter(&ecs)
|
.iter(&ecs)
|
||||||
.map(|(id, uuid, kind, position, direction, pose)| {
|
.map(|(id, uuid, kind, position, direction, pose)| {
|
||||||
@@ -61,7 +61,8 @@ macro_rules! get_players {
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
})
|
} else {
|
||||||
.unwrap_or_default()
|
Vec::new()
|
||||||
|
}
|
||||||
}};
|
}};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ mod arguments;
|
|||||||
mod build_info;
|
mod build_info;
|
||||||
mod commands;
|
mod commands;
|
||||||
mod events;
|
mod events;
|
||||||
mod hacks;
|
|
||||||
mod http;
|
mod http;
|
||||||
mod lua;
|
mod lua;
|
||||||
mod particle;
|
mod particle;
|
||||||
@@ -28,6 +27,7 @@ use arguments::Arguments;
|
|||||||
use azalea::{
|
use azalea::{
|
||||||
DefaultPlugins, bot::DefaultBotPlugins, brigadier::prelude::CommandDispatcher, prelude::*,
|
DefaultPlugins, bot::DefaultBotPlugins, brigadier::prelude::CommandDispatcher, prelude::*,
|
||||||
};
|
};
|
||||||
|
use azalea_hax::HaxPlugin;
|
||||||
use bevy_app::PluginGroup;
|
use bevy_app::PluginGroup;
|
||||||
use bevy_log::{
|
use bevy_log::{
|
||||||
LogPlugin,
|
LogPlugin,
|
||||||
@@ -45,8 +45,6 @@ use {
|
|||||||
replay::{plugin::RecordPlugin, recorder::Recorder},
|
replay::{plugin::RecordPlugin, recorder::Recorder},
|
||||||
};
|
};
|
||||||
|
|
||||||
use crate::hacks::HacksPlugin;
|
|
||||||
|
|
||||||
#[cfg(feature = "mimalloc")]
|
#[cfg(feature = "mimalloc")]
|
||||||
#[global_allocator]
|
#[global_allocator]
|
||||||
static GLOBAL: mimalloc::MiMalloc = mimalloc::MiMalloc;
|
static GLOBAL: mimalloc::MiMalloc = mimalloc::MiMalloc;
|
||||||
@@ -116,7 +114,7 @@ async fn main() -> Result<()> {
|
|||||||
let builder = ClientBuilder::new_without_plugins()
|
let builder = ClientBuilder::new_without_plugins()
|
||||||
.add_plugins(default_plugins)
|
.add_plugins(default_plugins)
|
||||||
.add_plugins(DefaultBotPlugins)
|
.add_plugins(DefaultBotPlugins)
|
||||||
.add_plugins(HacksPlugin);
|
.add_plugins(HaxPlugin);
|
||||||
|
|
||||||
#[cfg(feature = "replay")]
|
#[cfg(feature = "replay")]
|
||||||
let builder = builder.add_plugins(RecordPlugin {
|
let builder = builder.add_plugins(RecordPlugin {
|
||||||
|
|||||||
Reference in New Issue
Block a user