aboutsummaryrefslogtreecommitdiff
path: root/azalea-protocol/azalea-protocol-macros
AgeCommit message (Collapse)Author
2026-03-13drop unnecessary dependency on pasteymat
2026-01-13Merge AzaleaRead and AzaleaWrite (#305)mat
2025-11-11cleanupmat
- remove deprecated code - add `[lints] workspace=true` to every Cargo.toml, to make modifying clippy lints easier for later - remove some unnecessary #[allow]s - use Vec3i in some parts of the collision code
2025-10-12upgrade deps and clean up lots of doc commentsmat
2025-09-20more accurate mining and impl PartialEq for packetsmat
2025-05-30fix clippy issues and improve formatting everywheremat
2025-04-04remove executable bit from filesmat
2025-03-29update ServerboundContainerClick to use HashedStack from 1.21.5mat
2025-02-22update to rust edition 2024mat
2025-02-02cleanup, fix warningsmat
2025-01-25Rename Connection::configuration to config and add some clientbound ↵mat
functions that already existed serverbound taken from Shay's fork: https://github.com/Shays-Forks/azalea/commit/b0ca6076ed411b31e32a4abaa0350eb297067476
2025-01-25add ProtocolPacket::name functionmat
2024-12-04Update Bevy and migrate to workspace dependencies and package attributes (#181)EightFactorial
* Use workspace `Cargo.toml` for dependencies and package atributes * Fix a couple clippy warnings * Update bevy, update build script, move deps to workspace, and fix clippy warnings * Remove carrots from crate versions The default behavior is the same * Remove unused dependencies Compiles and all tests pass, so it should be fine * Update codegen to use `std::sync::LazyLock` instead of `once_cell::sync::Lazy` * Update Bevy to `0.15.0-rc.3` Surprisingly little needed to be changed * Update to bevy 0.15.0 * Fix leftover merge issues * Clarify the reason the swarm can't connect * Fix duplicate lint, remove `log` dependency
2024-12-031.21.4 (#189)mat
* start updating to 1.21.4 * fix block codegen and stop using block data from burger * 1.21.4-rc1 * 1.21.4
2024-11-27Refactor azalea-protocol (#190)mat
* start updating to 1.21.4 * fix block codegen and stop using block data from burger * rename packet related modules and structs to be simpler * ItemSlot -> ItemStack for more consistency with mojmap * .get() -> .into_packet() * simplify declare_state_packets by removing packet ids * rename read_from and write_into to azalea_read and azalea_write * rename McBufReadable and McBufWritable to AzaleaRead and AzaleaWrite * McBuf -> AzBuf * remove most uses of into_variant * update codegen and use resourcelocation names for packets * implement #[limit(i)] attribute for AzBuf derive macro * fixes for 1.21.4 * fix examples * update some physics code and fix ChatType * remove unused imports in codegen * re-add some things to migrate.py and update +mc version numbers automatically * downgrade to 1.21.3 lol
2024-11-23Update and merge the dependencies (#187)Shayne Hartford
* Add rust rover to .gitignore * Fold dependency feature lists * Sort dependencies alphabetically * Update dependencies * Upgrade dependencies * Comment out unused dependencies * Nightly is broken right now :) * Fix conflict with derive_more * cargo autoinherit to merge dependencies * Fix clippy lints
2024-10-22Release 0.10.3+mc1.21.1mat
azalea@0.10.3+mc1.21.1 azalea-auth@0.10.3+mc1.21.1 azalea-block@0.10.3+mc1.21.1 azalea-block-macros@0.10.3+mc1.21.1 azalea-brigadier@0.10.3+mc1.21.1 azalea-buf@0.10.3+mc1.21.1 azalea-buf-macros@0.10.3+mc1.21.1 azalea-chat@0.10.3+mc1.21.1 azalea-client@0.10.3+mc1.21.1 azalea-core@0.10.3+mc1.21.1 azalea-crypto@0.10.3+mc1.21.1 azalea-entity@0.10.3+mc1.21.1 azalea-inventory@0.10.3+mc1.21.1 azalea-inventory-macros@0.10.3+mc1.21.1 azalea-language@0.10.3+mc1.21.1 azalea-physics@0.10.3+mc1.21.1 azalea-protocol@0.10.3+mc1.21.1 azalea-protocol-macros@0.10.3+mc1.21.1 azalea-registry@0.10.3+mc1.21.1 azalea-registry-macros@0.10.3+mc1.21.1 azalea-world@0.10.3+mc1.21.1 Generated by cargo-workspaces
2024-07-05upgrade to simdnbt 0.6 (#160)mat
2024-04-23Release 0.10.0mat
azalea@0.10.0 azalea-auth@0.10.0 azalea-block@0.10.0 azalea-block-macros@0.10.0 azalea-brigadier@0.10.0 azalea-buf@0.10.0 azalea-buf-macros@0.10.0 azalea-chat@0.10.0 azalea-client@0.10.0 azalea-core@0.10.0 azalea-crypto@0.10.0 azalea-entity@0.10.0 azalea-inventory@0.10.0 azalea-inventory-macros@0.10.0 azalea-language@0.10.0 azalea-physics@0.10.0 azalea-protocol@0.10.0 azalea-protocol-macros@0.10.0 azalea-registry@0.10.0 azalea-registry-macros@0.10.0 azalea-world@0.10.0 Generated by cargo-workspaces
2024-04-24Revert "Release 0.10.0"mat
This reverts commit f26aa56f427d8a0e88ad3b0d8f11438a01090f37.
2024-04-23Release 0.10.0mat
azalea@0.10.0 azalea-auth@0.10.0 azalea-block@0.10.0 azalea-block-macros@0.10.0 azalea-brigadier@0.10.0 azalea-buf@0.10.0 azalea-buf-macros@0.10.0 azalea-chat@0.10.0 azalea-client@0.10.0 azalea-core@0.10.0 azalea-crypto@0.10.0 azalea-entity@0.10.0 azalea-inventory@0.10.0 azalea-inventory-macros@0.10.0 azalea-language@0.10.0 azalea-physics@0.10.0 azalea-protocol@0.10.0 azalea-protocol-macros@0.10.0 azalea-registry@0.10.0 azalea-registry-macros@0.10.0 azalea-world@0.10.0 Generated by cargo-workspaces
2024-04-231.20.5 (#127)mat
* 23w51b * make recalculate_near_end_of_path public so other plugins can do .after(recalculate_near_end_of_path) * update to 24w03a i think * start implementing 24w13a * registries work (but a lot of packets are still broken) * fix recipes and commands packets * i love codecs :D i am not going insane :D mojang's java is very readable :D * item components are "implemented" meowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeowmeow * update to 1.20.5-pre3 * fix all the broken packets and clippy (mojang please don't do an update like this again or i will murder someone) * 1.20.5-rc1 * fix failing tests * 1.20.5
2024-04-20upgrade depsmat
2024-04-18Release 0.9.1mat
azalea@0.9.1 azalea-auth@0.9.1 azalea-block@0.9.1 azalea-block-macros@0.9.1 azalea-brigadier@0.9.1 azalea-buf@0.9.1 azalea-buf-macros@0.9.1 azalea-chat@0.9.1 azalea-client@0.9.1 azalea-core@0.9.1 azalea-crypto@0.9.1 azalea-entity@0.9.1 azalea-inventory@0.9.1 azalea-inventory-macros@0.9.1 azalea-language@0.9.1 azalea-physics@0.9.1 azalea-protocol@0.9.1 azalea-protocol-macros@0.9.1 azalea-registry@0.9.1 azalea-registry-macros@0.9.1 azalea-world@0.9.1 Generated by cargo-workspaces
2024-02-22fix for hypixel limbomat
2024-02-17upgrade deps, bevy 0.13mat
2024-01-25update depsmat
2024-01-08upgrade depsmat
2023-12-05Release 0.9.0mat
azalea@0.9.0 azalea-auth@0.9.0 azalea-block@0.9.0 azalea-block-macros@0.9.0 azalea-brigadier@0.9.0 azalea-buf@0.9.0 azalea-buf-macros@0.9.0 azalea-chat@0.9.0 azalea-client@0.9.0 azalea-core@0.9.0 azalea-crypto@0.9.0 azalea-entity@0.9.0 azalea-inventory@0.9.0 azalea-inventory-macros@0.9.0 azalea-language@0.9.0 azalea-physics@0.9.0 azalea-protocol@0.9.0 azalea-protocol-macros@0.9.0 azalea-registry@0.9.0 azalea-registry-macros@0.9.0 azalea-world@0.9.0 Generated by cargo-workspaces
2023-12-05upgrade depsmat
2023-11-06bevy 0.12mat
2023-10-08update repo linksmat
2023-10-03also upgrade deps everywhere else lolmat
2023-09-211.20.2 (#99)mat
* add configuration state * start updating to 23w31a * implement a bit more of 23w31a * chunk batching * start adding configuration state * ioasfhjgsd * almost works * configuration state mostly implemented * handle other packets in configuration state and fix keepalive * cleanup, fix warnings * 23w32a * fix some doctests * 23w33a * 23w35a * 1.20.2-pre2 * fix system conflicts * 1.20.2-pre4 * make tests compile * tests pass * 1.20.2-rc2 * 1.20.2 * Revert "1.20.2" This reverts commit dd152fd265332ead333c919e585ded6d609d7468. * didn't mean to commit that code --------- Co-authored-by: mat <git@matdoes.dev>
2023-09-14Release 0.8.0mat
azalea@0.8.0 azalea-auth@0.8.0 azalea-block@0.8.0 azalea-block-macros@0.8.0 azalea-brigadier@0.8.0 azalea-buf@0.8.0 azalea-buf-macros@0.8.0 azalea-chat@0.8.0 azalea-client@0.8.0 azalea-core@0.8.0 azalea-crypto@0.8.0 azalea-entity@0.8.0 azalea-inventory@0.8.0 azalea-inventory-macros@0.8.0 azalea-language@0.8.0 azalea-nbt@0.8.0 azalea-physics@0.8.0 azalea-protocol@0.8.0 azalea-protocol-macros@0.8.0 azalea-registry@0.8.0 azalea-registry-macros@0.8.0 azalea-world@0.8.0 Generated by cargo-workspaces
2023-09-08upgrade depsmat
2023-08-15upgrade thiserror and other depsmat
2023-07-09Update to Bevy 0.11 (#94)mat
* update to bevy 0.11 * clippy --------- Co-authored-by: mat <git@matdoes.dev>
2023-05-17chore: Releasemat
2023-02-09chore: Releasemat
2023-02-04Use an ECS (#52)mat
* add EntityData::kind * start making metadata use hecs * make entity codegen generate ecs stuff * fix registry codegen * get rid of worldhaver it's not even used * add bevy_ecs to deps * rename Component to FormattedText also start making the metadata use bevy_ecs but bevy_ecs doesn't let you query on Bundles so it's annoying * generate metadata.rs correctly for bevy_ecs * start switching more entity stuff to use ecs * more ecs stuff for entity storage * ok well it compiles but it definitely doesn't work * random fixes * change a bunch of entity things to use the components * some ecs stuff in az-client * packet handler uses the ecs now and other fun changes i still need to make ticking use the ecs but that's tricker, i'm considering using bevy_ecs systems for those bevy_ecs systems can't be async but the only async things in ticking is just sending packets which can just be done as a tokio task so that's not a big deal * start converting some functions in az-client into systems committing because i'm about to try something that might go horribly wrong * start splitting client i'm probably gonna change it so azalea entity ids are separate from minecraft entity ids next (so stuff like player ids can be consistent and we don't have to wait for the login packet) * separate minecraft entity ids from azalea entity ids + more ecs stuff i guess i'm using bevy_app now too huh it's necessary for plugins and it lets us control the tick rate anyways so it's fine i think i'm still not 100% sure how packet handling that interacts with the world will work, but i think if i can sneak the ecs world into there it'll be fine. Can't put packet handling in the schedule because that'd make it tick-bound, which it's not (technically it'd still work but it'd be wrong and anticheats might realize). * packet handling now it runs the schedule only when we get a tick or packet :smile: also i systemified some more functions and did other random fixes so az-world and az-physics compile making azalea-client use the ecs is almost done! all the hard parts are done now i hope, i just have to finish writing all the code so it actually works * start figuring out how functions in Client will work generally just lifetimes being annoying but i think i can get it all to work * make writing packets work synchronously* * huh az-client compiles * start fixing stuff * start fixing some packets * make packet handler work i still haven't actually tested any of this yet lol but in theory it should all work i'll probably either actually test az-client and fix all the remaining issues or update the azalea crate next ok also one thing that i'm not particularly happy with is how the packet handlers are doing ugly queries like ```rs let local_player = ecs .query::<&LocalPlayer>() .get_mut(ecs, player_entity) .unwrap(); ``` i think the right way to solve it would be by putting every packet handler in its own system but i haven't come up with a way to make that not be really annoying yet * fix warnings * ok what if i just have a bunch of queries and a single packet handler system * simple example for azalea-client * :bug: * maybe fix deadlock idk can't test it rn lmao * make physicsstate its own component * use the default plugins * azalea compiles lol * use systemstate for packet handler * fix entities basically moved some stuff from being in the world to just being components * physics (ticking) works * try to add a .entity_by function still doesn't work because i want to make the predicate magic * try to make entity_by work well it does work but i couldn't figure out how to make it look not terrible. Will hopefully change in the future * everything compiles * start converting swarm to use builder * continue switching swarm to builder and fix stuff * make swarm use builder still have to fix some stuff and make client use builder * fix death event * client builder * fix some warnings * document plugins a bit * start trying to fix tests * azalea-ecs * azalea-ecs stuff compiles * az-physics tests pass :tada: * fix all the tests * clippy on azalea-ecs-macros * remove now-unnecessary trait_upcasting feature * fix some clippy::pedantic warnings lol * why did cargo fmt not remove the trailing spaces * FIX ALL THE THINGS * when i said 'all' i meant non-swarm bugs * start adding task pool * fix entity deduplication * fix pathfinder not stopping * fix some more random bugs * fix panic that sometimes happens in swarms * make pathfinder run in task * fix some tests * fix doctests and clippy * deadlock * fix systems running in wrong order * fix non-swarm bots
2022-12-09(cargo-release) version 0.5.0Ubuntu
2022-12-071.19.3 (#34)mat
* start updating to 22w42a * work a bit more on 22w42a * player chat packet * serverbound hello packet * Update mod.rs * add more stuff to clientbound player chat packet * ClientboundPlayerInfoUpdatePacket * features enabled and container closed * serverbound chat packets * make it compile * 22w43a * ServerboundChatSessionUpdatePacket * profile_public_key isn't Option anymore * Update bitset.rs * joining a server works * fix entitydatavalue * backtraces + fix clientbound chat message * fix some warnings and add more ecomments * 22w44a * generate en_us.json * add updating guide to codegen/readme * fix some markdown * update list of generated things * metadata stuff * Replace PJS generator mod with PixLyzer (#38) * pixlizer extractor * start working on shape extraction * fix generating language * fix pixlyzer shape generation * use empty_shape * generate blocks and shapes * update pixlyzer dir * Revert "update pixlyzer dir" This reverts commit ee9a0e7a49936dd8569c610ba9b6455895eeff71. * fix * fix * Revert "fix" This reverts commit ad12ddcb009ccc4eeb13ddef0871db1d9322ab7d. * fix * detect pixlyzer fail * fix pixlyzer * 22w45a * gen entities * add async-trait dep * update codegen/readme.md * explain when rust_log should be used * remove some unused code * start fixing pixlyzer issues * fix a thing in codegen * almost fixed * more progress towards 1.19.3 * 1.19.3-pre2 * fixes * revert some hardcoded property names * Delete clientbound_player_info_packet.rs * handle 1.19.3 player info packets * handle playerinforemove * start updating to 1.19.3-rc1 * optional registries work * fix some issues with 1.19.3 chat doesn't work yet * aaaaaaaaaaaaaaaaa * oh * ignore unused shapes * uncomment generate_blocks * fix migrate * 1.19.3-rc2 * fix clippy warnings * 1.19.3-rc3 * split the azalea-buf macro into separate modules * improve Recipe in protocol * 1.19.3
2022-11-19chore: Releasemat
2022-11-12Pathfinder (#25)mat
Pathfinding is very much not done, but it works enough and I want to get this merged. TODO: fast replanning, goals that aren't a single node, falling moves (it should be able to play the dropper), parkour moves
2022-10-30chore: Releasemat
2022-10-30add "repository" field to all cratesmat
2022-10-17(cargo-release) version 0.2.0Ubuntu
2022-10-07Replace impl Read with Cursor<&[u8]> (#26)mat
* Start getting rid of Cursor * try to make the tests pass and fail * make the tests pass * remove unused uses * fix clippy warnings * fix potential OOM exploits * fix OOM in az-nbt * fix nbt benchmark * fix a test * start replacing it with Cursor<Vec<u8>> * wip * fix all the issues * fix all tests * fix nbt benchmark * fix warnings
2022-09-11no unused variablemat