1
2
Fork 0
mirror of https://github.com/mat-1/azalea.git synced 2025-08-02 14:26:04 +00:00
A collection of Rust crates for making Minecraft bots, clients, and tools. https://azalea.matdoes.dev
Find a file
mat f42d630544
Physics (#11)
* Put physics module in azalea-entity

* port aabb

* add more stuff to PositionXYZ

* azalea-physics

* important collision things

* more physics stuff

* backup because i'm about to delete shapes

* more shape stuff

* CubeVoxelShape

* no compile errors???

insane

* impl VoxelShape for ArrayVoxelShape

* Shapes stuff

* collide_x but it doesn't work yet

* binary_search

* it compiles

* Entity has bounding box

* Update discrete_voxel_shape.rs

* Entity::make_bounding_box

* ok i'm about to merge az-entity and az-world

might be a terrible idea which is why i'm committing first

* ok so i moved entity to world

* on_pos and move_entity compiles

* add send_position

* move collision stuff to collision module in az-physics

* dimension is no longer an Option

* start trying to do collision for the client

* collision works 🎉

* start adding palette resizing

* get_and_set (pain)

* it compiles but probably won't work

* add a test

* remove printlns

* add more tests for palette stuff

* ClientboundMoveVec3Packet -> ClientboundMoveEntityPosPacket

i think i changed this on accident once

* palette resizing works

todo: remove the printlns

* Remove printlns in palette.rs

* fix issues from merge

* fixes + work a bit more on physics

* Better entities (#19)

* well it compiles

* add tests to entity storage

* add suggestions in azalea-brigadier

* this probably causes ub

* fix brigadiersuggestions

* get rid of entityid

* test From<EntityMut> for EntityRef

* don't mention other libraries since there's too many

* fix warnings

* do todos in brigadier suggestions

* work on physics

* more physics stuff

* remove trait feature on az-block

i think rust gets confused and compiles the macro without the feature

* bump ahash

* aes tests in az-crypto

* optimize aes's deps

* fix crashes

* fix section_index for negative numbers and test

* fix BlockPos protocol implementation

* remove some debug prints

* prepare to add ai_step

* make ai step work

* clippy
2022-08-29 20:41:01 -05:00
.cargo improve compilation time 2022-08-18 23:18:35 -05:00
.github/workflows Update check.yml 2022-06-29 22:10:20 -05:00
.vscode simplify error handling 2022-04-22 04:33:58 +00:00
azalea-auth Better errors (#14) 2022-08-06 02:22:19 -05:00
azalea-block Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-brigadier Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-buf Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-chat Implement ALL packets (#16) 2022-08-20 15:17:07 -05:00
azalea-client Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-core Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-crypto Update my_benchmark.rs 2022-08-28 15:47:34 -05:00
azalea-language Upgrade crates and remove num_* deps 2022-06-24 03:50:19 -05:00
azalea-nbt Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-physics Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-protocol Physics (#11) 2022-08-29 20:41:01 -05:00
azalea-registry Azalea registry (#20) 2022-08-27 20:31:21 -05:00
azalea-world Physics (#11) 2022-08-29 20:41:01 -05:00
bot Physics (#11) 2022-08-29 20:41:01 -05:00
codegen Azalea registry (#20) 2022-08-27 20:31:21 -05:00
examples Update craft_dig_straight_down.rs 2022-06-25 15:04:21 -05:00
.gitignore code-generator/lib 2022-05-24 19:50:19 -05:00
.gitpod.yml simplify error handling 2022-04-22 04:33:58 +00:00
Cargo.lock Physics (#11) 2022-08-29 20:41:01 -05:00
Cargo.toml Physics (#11) 2022-08-29 20:41:01 -05:00
README.md Physics (#11) 2022-08-29 20:41:01 -05:00

Azalea

A collection of Rust crates primarily for creating Minecraft bots.

Azalea

Currently supported Minecraft version: 1.19.2.

⚠️ Azalea is still super unfinished, you probably shouldn't use it

I named this Azalea because it sounds like a cool word and this is a cool library. This project was heavily inspired by PrismarineJS.

Why

I wanted a fun excuse to do something cool with Rust, and I also felt like I could do better than Mineflayer in some areas.

Goals

  • Do everything a vanilla client can do.
  • Be intuitive and easy to use.
  • Bypass most/all anticheats.
  • Support the latest Minecraft version.
  • Be fast and memory efficient.

Non-goals

  • Supporting several versions of Minecraft on the same branch.
  • Bedrock edition.
  • Graphics.

Stretch goals

  • Server implementation.
  • Having branches for several popular Minecraft versions.