Commit Graph

424 Commits

Author SHA1 Message Date
Clicks
70b3132396 chore: Remove Redundant Clippy Allows (#1247)
* switch to btreemap to comply with lint

* amplifier i32 -> u8

* switch allow to expect lint

* remove many many unnecessary clippy lints

* dont use expect inside quotes
2025-12-30 12:16:31 +01:00
Hendrik Lind
b84e2e7153 feat: add times subcommand to title command (#1246)
* feat: add `times` subcommand to `title` command

* chore: make clippy happy
2025-12-30 12:14:55 +01:00
Clicks
24fff00425 Make All Dependencies Workspace Dependencies (#1245) 2025-12-30 12:13:51 +01:00
Alexander Medvedev
42c903493a port to 1.21.11 2025-12-24 13:09:01 +01:00
Alexander Medvedev
fba4d405ac ci: add Windows Arm and macOS Intel 2025-12-09 19:29:57 +01:00
Alexander Medvedev
92fe87e921 smaller structure gen preparations 2025-12-08 20:52:03 +01:00
Alexander Medvedev
3829850607 removed some clones
fix: https://github.com/Pumpkin-MC/Pumpkin/issues/1226
2025-12-07 22:43:26 +01:00
とぴ。(おーけ
dbdbc04eb4 feat: switch to dynamic config (#1201)
* remove static BASIC_CONFIG

* remove static ADVANCED_CONFIG
2025-12-06 13:32:06 +01:00
Alexander Medvedev
a2d8ca8d98 fix: pumpkin-world external crate compilation 2025-12-06 10:30:03 +01:00
Alexander Medvedev
74c66e25e8 fix typo
and some compilation changes,
fix https://github.com/Pumpkin-MC/Pumpkin/issues/1010
2025-12-01 11:23:57 +01:00
Alexander Medvedev
5e8d7221e3 fix: https://github.com/Pumpkin-MC/Pumpkin/issues/1174 2025-11-27 17:31:39 +01:00
Alexander Medvedev
03b3ff5e15 This should prevent some dead locks 2025-11-23 20:08:47 +01:00
Alexander Medvedev
2104367d0e fix: https://github.com/Pumpkin-MC/Pumpkin/issues/1216 2025-11-20 19:40:50 +01:00
Alexander Medvedev
0ce5471761 Overhaul registry loading
Registry data is now loaded dynamically for automatic future-proofing, ending the need for manual struct updates. Access to specific values now requires explicit data lookups.
2025-11-18 19:00:18 +01:00
とぴ。(おーけ
2c26124a90 use const instead of static in some places (#1198) 2025-11-12 18:18:59 +01:00
Omar Afet
2973436a9b feat(protocol): Add resource pack info, improve Ack limits & handle slot errors (#1189)
* Improve error handling for invalid slot action type

* Enforce maximum ACK record limit in packet parsing

* Add resource pack details to CResourcePacksInfo packet
2025-11-09 13:13:19 +01:00
Jonas
e3a565710c Metadata 1.21.9 (sneak problem) (#1191)
* 1.21.10

* sneaking in 1.21.9

* now cicd?
2025-11-09 12:54:32 +01:00
Alexander Medvedev
47bbc56591 this should fix plugin errors
at least for now
2025-11-01 12:13:28 +01:00
Jonas
09240202fa Update Entity metadata to 1.21.10 (#1192)
* 1.21.10
2025-10-15 09:54:01 +02:00
Jonas
ca4f92153a Added Wind Charge and Armor Stand (#1153)
* fix: use rem_euclid for yaw and head_yaw calculations in CSpawnEntity | Thanks to @teknostom

* feat: Add ArmorStand Entity, EulerAngle & EquipmentSlot's

* feat: Add checking for if space is occupied of the armor stand

* feat: clippy

* feat: Enhance ArmorStandEntity with break and drop items functionality

* chore: cargo fmt

* feat: Add WindCharge entity and item with projectile deflection mechanics

* chore: clippy & fmt

* fix: use constant for default deflect cooldown in WindChargeEntity

* feat: add invisibility functionality to Entity and ArmorStandEntity

* refactor: remove EquipmentSlot and HasEquipment trait definitions since it was already existing oops

* feat: implement NbtTag conversion for PackedRotation and update ArmorStandEntity NBT handling

* refactor: fmt

* chore: clippy & fmt

* fix: update damage handling in ArmorStandEntity to use kill instead of remove

* feat: implement ticking behavior for WindChargeEntity to update deflect cooldown and process thrown item entity

* fix: remove unnecessary trailing comma in imports

* remove logging

* fmt

* refactor: simplify EulerAngle initialization and consolidate PackedRotation fields
2025-10-15 09:47:21 +02:00
Alexander Medvedev
0c2b647a45 fix CI
Replaced old chunk files used for testing
2025-10-06 16:14:03 +02:00
Alexander Medvedev
58583da4c1 Port to 1.21.9
I did not update density functions because i'm too lazy to refactor a bunch of things because Mojang decided to remove "initial_density_without_jaggedness", but i will in the future
2025-10-02 18:27:10 +02:00
Alexander Medvedev
932512b5d6 lets try fix CI 2025-10-02 16:54:48 +02:00
C0j23T
09f96cc705 Implement equipping armor and resolve difficulty deadlock (#1170)
* feat: implement equipping armour for players

* fix: resolve deadlock when updating world difficulty

* fix: typo && forgot to clippy

* fix: fmt
2025-09-14 09:56:08 +02:00
Alexander Medvedev
91e77c33a0 add more loot table conditions
fix https://github.com/Pumpkin-MC/Pumpkin/issues/1155
2025-08-30 11:58:43 +02:00
unschlagbar
0bc7405f12 fix world y offset & bedrock update (#1121) 2025-08-30 09:27:03 +02:00
Alexander Medvedev
c066787cc1 feat: implement Mob Spawners 2025-08-24 23:02:59 +02:00
Connor
736f073b3c fix: Remove liftimes from CStatusResponse and CPlayerPosition (#1128)
* fix: Remove liftimes from CStatusResponse and CPlayerPosition

* fix: Add lifetimes to CachedBranding and fix tests

* fix: Remove lifetimes from CLoginDisconnect packet, data is dropped immediately after the packet is constructed

* fix: Apply formatting to packet_encoder.rs

---------

Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
2025-08-22 09:57:55 +02:00
Alexander Medvedev
684db059e5 feat: Support for eating food 2025-08-19 20:46:52 +02:00
Alexander Medvedev
53cef4b050 Add structures
this is by far not done and the implementation is not correct in many ways, but it is still something
2025-08-17 22:12:38 +02:00
spr-equinox
4205befa5d DataComponent serialize, deserialize and nbt. Enchantment and Damage implement (#1117)
* add

* fix hash

* Update data_component_impl.rs

* write nbt

* update enchantments

* Update data_component.rs

* fix enchant

* Update login.rs

* remove 1 todo

* KnownPack version

---------

Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
2025-08-16 17:20:56 +02:00
Connor
71dd912eb1 fix: Make all client packet members public. (#1125) 2025-08-14 09:52:12 +02:00
Alexander Medvedev
7e3a1c0972 Fix rust 1.89 warns 2025-08-11 20:45:55 +02:00
Alexander Medvedev
43e8d9b6d9 Make some packets ServerPacket 2025-08-03 23:25:02 +02:00
Alexander Medvedev
6e4a05d66d More Entity Physics work
Co-Authored-By: akashbeh <112662680+akashbeh@users.noreply.github.com>
2025-08-02 16:24:06 +02:00
spr-equinox
8ce65cc42d Refactor ItemStack to Support Vanilla-Like Data Components (#1059)
* improve tag v1

* improve tag v2

* fix typo and make BlockPredicate better

* improve get state from state id

* impl DataComponent

* make tag pub

* make component work

* apply clippy

* apply clippy

* remove unused crate

* apply to itemstack and no lifetime mark anymore

* Update tag.rs

* use Cow

* remove unnecessary lazy_static and Cow

* Update mod.rs

* Update mod.rs

* make DataComponent dyn

* remove unused crate

* fix error

* Update Cargo.toml

* Update Cargo.lock

* fix

* Update composter.rs

* update rust-version, remove unused crate, and merge

* Update furnace.rs
2025-07-28 12:24:40 +02:00
spr-equinox
15c9aa4ac8 Improve tags (#1057)
* improve tag v1

* improve tag v2

* fix typo and make BlockPredicate better

* improve get state from state id

* make tag pub

* Update tag.rs

* fix error

* Update hopper.rs

* Update hopper.rs
2025-07-27 21:34:18 +02:00
Alexander Medvedev
8ccc135d74 Update all crates 2025-07-26 17:51:15 +02:00
unschlagbar
2e2236bf3b Bedrock player joining (#1063)
Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
2025-07-26 17:31:00 +02:00
Alexander Medvedev
b0cea38596 remove some internal crates 2025-07-11 14:23:14 +02:00
Liyan Zhao
d34b3eb3f7 Macroize serde (#1029)
* macroize serde

* fix
2025-07-10 10:52:28 +02:00
4lve
60d83022be Optimize everything (#1032)
* Start fixing block entities

* Fix

* Begin performance fixing

* Fix stuff

* cleanup

* fix clippy

* Fast as fuck

* fix clippy

* Write chunks concurrently

* Disable random ticks for now

* Fix

* Merge

* fix merge errors

* Fix clippy

---------

Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>
2025-07-09 23:53:50 +02:00
Alexander Medvedev
2f6c484b2b Protocol refactor (#1006)
* fixes

* Fixed missing ACKs (#1002)

* sefesf

* efrgf

* efes

---------

Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>

* Refactor Protocol

* Add CStartGame

currently broken, i will try to fix it tomorrow

* fix start packet

* more bedrock (#1014)

* srgjtdrwa

* sgs

* reg

* rg

* rgth

* ef

* rfrgreg

---------

Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>

* rename locations to position

---------

Co-authored-by: unschlagbar <153451111+unschlagbar@users.noreply.github.com>
Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
2025-07-06 15:43:53 +02:00
Alexander Medvedev
2e643cdeb1 add more packets 2025-07-02 15:48:57 +02:00
unschlagbar
2f5bb83a28 Fixed id parsing & fragmenting work (#994)
* ug

* clippy fix

* i hate clippy

* IOjeliufrhgiufehiuf

---------

Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
2025-07-02 14:28:03 +02:00
4lve
622e2a13d2 Improve chunk generation speed by 5x (#988)
* Fewer locks and limit chunk gen to 2x per core

* remove logs

* Fix server shutdown

* Always use static blockstate

* Remove clone from block

* Fix clippy

* Imporve perf

* Implement FyorDev & MartV0 lookup tables

* Add chunk benchmark (FyorDev)

* fix c

* Fix CI

* fix clippy

* Format

* fix CI fr

* format

* Update benchmark to 1000 chunks
2025-07-02 09:48:36 +02:00
unschlagbar
5dac015dd9 Fixed gamepacket parsing (#987)
* grg

* ef

* gg

* refwd

---------

Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
2025-07-01 21:33:45 +02:00
Alexander Medvedev
e2dec9b5e2 try to implement game packet 2025-07-01 19:44:21 +02:00
unschlagbar
8d934e31c7 First valid Raknet Frame set Packet :) (#983)
* hhlzuui

* gg

* reufef

* fix

---------

Co-authored-by: unschlagbar <adrian@kuhlmann@gmx.de>
2025-07-01 14:04:23 +02:00
Alexander Medvedev
5db9bba5b7 some more bedrock work 2025-07-01 10:13:07 +02:00